Re: [PATCH v2] dma: qcom: bam_dma: Manage clocks when controlled_remotely is set

From: Shawn Guo
Date: Wed Jan 27 2021 - 00:06:21 EST


On Tue, Jan 26, 2021 at 04:18:59PM -0500, Thara Gopinath wrote:
> When bam dma is "controlled remotely", thus far clocks were not controlled
> from the Linux. In this scenario, Linux was disabling runtime pm in bam dma
> driver and not doing any clock management in suspend/resume hooks.
>
> With introduction of crypto engine bam dma, the clock is a rpmh resource
> that can be controlled from both Linux and TZ/remote side. Now bam dma
> clock is getting enabled during probe even though the bam dma can be
> "controlled remotely". But due to clocks not being handled properly,
> bam_suspend generates a unbalanced clk_unprepare warning during system
> suspend.
>
> To fix the above issue and to enable proper clock-management, this patch
> enables runtim-pm and handles bam dma clocks in suspend/resume hooks if
> the clock node is present irrespective of controlled_remotely property.
>
> Signed-off-by: Thara Gopinath <thara.gopinath@xxxxxxxxxx>

Reviewed-by: Shawn Guo <shawn.guo@xxxxxxxxxx>