Re: [PATCH] media: iris: Call correct power off callback in cleanup path
From: Vikash Garodia
Date: Wed Jul 02 2025 - 13:23:57 EST
On 7/2/2025 7:11 PM, Krzysztof Kozlowski wrote:
> Driver implements different callbacks for the power off controller
> (.power_off_controller):
>
> - iris_vpu_power_off_controller,
> - iris_vpu33_power_off_controller,
>
> The generic wrapper for handling power off - iris_vpu_power_off() -
> calls them via 'iris_platform_data->vpu_ops', so shall the cleanup code
> in iris_vpu_power_on().
>
> This makes also sense if looking at caller of iris_vpu_power_on(), which
> unwinds also with the wrapper calling respective platfortm code (unwinds
> with iris_vpu_power_off()).
>
> Otherwise power off sequence on the newer VPU3.3 in error path is not
> complete.
>
> Fixes: c69df5de4ac3 ("media: platform: qcom/iris: add power_off_controller to vpu_ops")
> Cc: <stable@xxxxxxxxxxxxxxx>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> ---
> drivers/media/platform/qcom/iris/iris_vpu_common.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.c b/drivers/media/platform/qcom/iris/iris_vpu_common.c
> index 268e45acaa7c..42a7c53ce48e 100644
> --- a/drivers/media/platform/qcom/iris/iris_vpu_common.c
> +++ b/drivers/media/platform/qcom/iris/iris_vpu_common.c
> @@ -359,7 +359,7 @@ int iris_vpu_power_on(struct iris_core *core)
> return 0;
>
> err_power_off_ctrl:
> - iris_vpu_power_off_controller(core);
> + core->iris_platform_data->vpu_ops->power_off_controller(core);
> err_unvote_icc:
> iris_unset_icc_bw(core);
> err:
Reviewed-by: Vikash Garodia <quic_vgarodia@xxxxxxxxxxx>