Re: [PATCH] media: mali-c55: Fix clock leak on reset deassert failure
From: Dan Scally
Date: Wed Jun 10 2026 - 02:51:15 EST
Hi David, thanks again!
On 09/06/2026 12:37, David Carlier wrote:
__mali_c55_power_on() enables the clocks before deasserting the resets,
but bails out on a deassert failure without disabling them again. Both
callers treat a failed power-on as already cleaned up, so the clocks are
left enabled.
Disable them on the error path.
Fixes: d5f281f3dd29 ("media: mali-c55: Add Mali-C55 ISP driver")
Signed-off-by: David Carlier <devnexen@xxxxxxxxx>
---
Yep looks good:
Reviewed-by: Daniel Scally <dan.scally@xxxxxxxxxxxxxxxx>
drivers/media/platform/arm/mali-c55/mali-c55-core.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/media/platform/arm/mali-c55/mali-c55-core.c b/drivers/media/platform/arm/mali-c55/mali-c55-core.c
index ee4a42674..fb81141d1 100644
--- a/drivers/media/platform/arm/mali-c55/mali-c55-core.c
+++ b/drivers/media/platform/arm/mali-c55/mali-c55-core.c
@@ -699,6 +699,8 @@ static int __mali_c55_power_on(struct mali_c55 *mali_c55)
mali_c55->resets);
if (ret) {
dev_err(mali_c55->dev, "failed to deassert resets\n");
+ clk_bulk_disable_unprepare(ARRAY_SIZE(mali_c55->clks),
+ mali_c55->clks);
return ret;
}