Re: [PATCH v3 1/8] dt-bindings: clock: imx8m-clock: support spread spectrum clocking

Krzysztof Kozlowski
2024-11-08T12:23:15Z

On 07/11/2024 15:57, Dario Binacchi wrote:
> clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>, <&clk_ext2>,
> <&clk_ext3>, <&clk_ext4>;
> clock-names = "osc_32k", "osc_24m", "clk_ext1", "clk_ext2",
> "clk_ext3", "clk_ext4";
> assigned-clocks = <&clk IMX8MN_CLK_A53_SRC>,
> <&clk IMX8MN_CLK_A53_CORE>,
> <&clk IMX8MN_CLK_NOC>,
> <&clk IMX8MN_CLK_AUDIO_AHB>,
> <&clk IMX8MN_CLK_IPG_AUDIO_ROOT>,
> <&clk IMX8MN_SYS_PLL3>,
> <&clk IMX8MN_AUDIO_PLL1>,
> <&clk IMX8MN_AUDIO_PLL2>;
> assigned-clock-parents = <&clk IMX8MN_SYS_PLL1_800M>,
> <&clk IMX8MN_ARM_PLL_OUT>,
> <&clk IMX8MN_SYS_PLL3_OUT>,
> <&clk IMX8MN_SYS_PLL1_800M>;
> assigned-clock-rates = <0>, <0>, <0>,
> <400000000>,
> <400000000>,
> <600000000>,
> <393216000>,
> <361267200>;
> };
>
> The spread spectrum is not configurable on these clocks or, more
> generally, may not be
> configurable (only 4 PLLs have this capability). Therefore, I need the
> "fsl,ssc-clocks"

No. That's not true. You do not need it.

First, the clock inputs for this device are listed in clocks *only*.
What is no there, is not an input to the device. Including also Linux
aspect (missing devlinks etc). Therefore how can you configure spread
spectrum on clocks which are not connected to this device?

Second, I do no ask you to configure spread spectrum on other clocks,
only on the ones you intent to. List is fixed and ordered, so no problem
with that.

> property to list the PLLs on which I want to enable and configure
> spread spectrum.
>
> Furthermore, spread spectrum cannot be considered a new device but
> rather a property
> available only for some of the clocks managed by the clock controller
> manager (CCM).
>

My comment stands and that's a disagreement from me. Feel free to get
second DT maintainer opinion, though.

Best regards,
Krzysztof