Re: [PATCH V3 0/2] clk: imx: introduce fsl,always-on-clocks

From: Alexander Stein
Date: Tue Sep 13 2022 - 06:03:29 EST


Hello,

Am Dienstag, 13. September 2022, 11:21:34 CEST schrieb Peng Fan (OSS):
> From: Peng Fan <peng.fan@xxxxxxx>
>
> V3:
> Rename to fsl,always-on-clocks
>
> V2:
> Use protected-clocks
> https://lore.kernel.org/all/20220816130327.2987710-1-peng.fan@xxxxxxxxxxx/
>
> V1:
> Use fsl,protected-clocks
> https://lore.kernel.org/all/20220815033632.1687854-1-peng.fan@xxxxxxxxxxx/
>
> There are two cases that I wanna this property could serve:
> Virtualization: root cell linux run in parallel with inmate cell
> AMP: M7/4 runs in parallel with A53
>
> The major case is:
> Jailhouse hypervisor only support partition, so devices are partitioned.
> But there is only CCM module that provides clock, the CCM is handled by
> root cell linux, need make sure the root cell linux not shutdown the
> clocks using by inmate cell.
>
> I was thinking whether need to provide a rate entry to ask root cell
> configure the clk rate for inmate cell. But NXP downstream not have it,
> see
> https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/clk/imx/c
> lk-imx8mp.c?h=lf-5.15.y#n690 So just leave the property as uint32-array.
>
> This patchset could also benifit AMP case, check the two commits
> commit 19565ea12d61 ("clk: imx: add mcore_booted module paratemter")
> commit d097cc045b64 ("clk: imx8mp: remove SYS PLL 1/2 clock gates")
> Although I not plan to drop the upper two patches, this patchset
> exposes opportunity for better power consumption.

Has this the same intention/effect as 'critical-clocks' from [1]? I guess in
both cases you want to keep clocks enabled, even though there is no (local)
user.

Best regards,
Alexander

[1] https://lore.kernel.org/linux-clk/20220517235919.200375-1-marex@xxxxxxx/

> Peng Fan (2):
> dt-bindings: clock: imx8m/imx93: introduce fsl,always-on-clocks
> property
> clk: imx: support fsl,always-on-clocks
>
> .../bindings/clock/imx8m-clock.yaml | 4 ++++
> .../bindings/clock/imx93-clock.yaml | 4 ++++
> drivers/clk/imx/clk-imx8mm.c | 2 ++
> drivers/clk/imx/clk-imx8mn.c | 2 ++
> drivers/clk/imx/clk-imx8mp.c | 2 ++
> drivers/clk/imx/clk-imx8mq.c | 2 ++
> drivers/clk/imx/clk.c | 21 +++++++++++++++++++
> drivers/clk/imx/clk.h | 2 ++
> 8 files changed, 39 insertions(+)