diff options
author | Jiasheng Jiang <jiashengjiangcool@gmail.com> | 2024-11-25 19:18:17 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-02-08 10:02:01 +0100 |
commit | d7260d595bd49a5c37eeb464ba26c0eb4f6869f2 (patch) | |
tree | 2985ce9ef85f8a340ae1114eb1fa5bdda20a08de | |
parent | 3d10f5670d880edd71316c2eca2273e850f61094 (diff) | |
download | linux-d7260d595bd49a5c37eeb464ba26c0eb4f6869f2.tar.gz linux-d7260d595bd49a5c37eeb464ba26c0eb4f6869f2.tar.bz2 linux-d7260d595bd49a5c37eeb464ba26c0eb4f6869f2.zip |
media: camif-core: Add check for clk_enable()
[ Upstream commit 77ed2470ac09c2b0a33cf3f98cc51d18ba9ed976 ]
Add check for the return value of clk_enable() to gurantee the success.
Fixes: babde1c243b2 ("[media] V4L: Add driver for S3C24XX/S3C64XX SoC series camera interface")
Signed-off-by: Jiasheng Jiang <jiashengjiangcool@gmail.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | drivers/media/platform/samsung/s3c-camif/camif-core.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/media/platform/samsung/s3c-camif/camif-core.c b/drivers/media/platform/samsung/s3c-camif/camif-core.c index de6e8f151849..221e3c447f36 100644 --- a/drivers/media/platform/samsung/s3c-camif/camif-core.c +++ b/drivers/media/platform/samsung/s3c-camif/camif-core.c @@ -527,10 +527,19 @@ static void s3c_camif_remove(struct platform_device *pdev) static int s3c_camif_runtime_resume(struct device *dev) { struct camif_dev *camif = dev_get_drvdata(dev); + int ret; + + ret = clk_enable(camif->clock[CLK_GATE]); + if (ret) + return ret; - clk_enable(camif->clock[CLK_GATE]); /* null op on s3c244x */ - clk_enable(camif->clock[CLK_CAM]); + ret = clk_enable(camif->clock[CLK_CAM]); + if (ret) { + clk_disable(camif->clock[CLK_GATE]); + return ret; + } + return 0; } |