fbdev: ep93xx-fb: Add missing clk_disable_unprepare in ep93xxfb_probe()
authorGaosheng Cui <cuigaosheng1@huawei.com>
Wed, 23 Nov 2022 09:29:43 +0000 (17:29 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:43 +0000 (13:32 +0100)
[ Upstream commit c84bf485a5aaf9aa0764a58832b7ef4375c29f03 ]

The clk_disable_unprepare() should be called in the error handling
of register_framebuffer(), fix it.

Fixes: 0937a7b3625d ("video: ep93xx: Prepare clock before using it")
Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/video/fbdev/ep93xx-fb.c

index 2398b3d..305f158 100644 (file)
@@ -552,12 +552,14 @@ static int ep93xxfb_probe(struct platform_device *pdev)
 
        err = register_framebuffer(info);
        if (err)
-               goto failed_check;
+               goto failed_framebuffer;
 
        dev_info(info->dev, "registered. Mode = %dx%d-%d\n",
                 info->var.xres, info->var.yres, info->var.bits_per_pixel);
        return 0;
 
+failed_framebuffer:
+       clk_disable_unprepare(fbi->clk);
 failed_check:
        if (fbi->mach_info->teardown)
                fbi->mach_info->teardown(pdev);