Re: [PATCH V4 2/2] clk: scmi: support state_ctrl_forbidden

From: Sudeep Holla
Date: Tue Jan 23 2024 - 06:13:28 EST


On Sun, Jan 21, 2024 at 07:09:01PM +0800, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@xxxxxxx>
>
> Some clocks may exported to linux, while those clocks are not allowed
> to configure by Linux. For example:
>
> SYS_CLK1-----
> \
> --MUX--->MMC1_CLK
> /
> SYS_CLK2-----
>
> MMC1 needs set parent, so SYS_CLK1 and SYS_CLK2 are exported to Linux,
> then the clk propagation will touch SYS_CLK1 or SYS_CLK2.
> So we need bypass the failure for SYS_CLK1 or SYS_CLK2 when enable
> the clock of MMC1, adding scmi_no_state_ctrl_clk_ops to use software
> enable counter, while not calling scmi api.
>

I would rewrite the commit message something like:
"
clk: scmi: Add support for forbidden clock state controls

Some clocks may be exported to OS agent, while certain configurations/
access to those clocks are restricted to the OS agent by the SCMI platform
firmware. For example:

SYS_CLK1-----
\
--MUX--->MMC1_CLK
/
SYS_CLK2-----

MMC1_CLK needs to set parent as part of it initialisation and enabling.
SYS_CLK1 and SYS_CLK2 are exported to the OS agent. The clk propagation
will access SYS_CLK1 or SYS_CLK2 based on the configuration. However,
we need bypass the failure to access SYS_CLK1 or SYS_CLK2 when MMC1_CLK
is accessed and enabled.

Add a separate scmi_no_state_ctrl clk_ops where the calls to the SCMI
platform firmware are avoided if the access is not permitted.
"
No need to repost.

I need Stephen's ack to take this together with scmi clk changes.

--
Regards,
Sudeep