On Sat, Nov 23, 2024 at 06:02:06PM +0100, Krzysztof Kozlowski wrote: > On 15/11/2024 07:59, Dmitry Baryshkov wrote: > > SM8650 is one of the platforms where board-level clocks (XO, sleep) > > definitions are split between the SoC dtsi file and the board file. > > This is not correct, as these two clocks are not a part of the SoC. Also > > such definitions don't fully follow the DT guidelines. Move these two > > clocks to the board files completely. > > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > > --- > > arch/arm64/boot/dts/qcom/sm8650-hdk.dts | 22 ++++++++++++++-------- > > arch/arm64/boot/dts/qcom/sm8650-mtp.dts | 22 ++++++++++++++-------- > > arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 22 ++++++++++++++-------- > > arch/arm64/boot/dts/qcom/sm8650.dtsi | 10 ---------- > > 4 files changed, 42 insertions(+), 34 deletions(-) > > > > diff --git a/arch/arm64/boot/dts/qcom/sm8650-hdk.dts b/arch/arm64/boot/dts/qcom/sm8650-hdk.dts > > index f00bdff4280af22f6f8b23e33238f53c602bc169..641bd817d75439bc6a050189565437e1c5ead3b5 100644 > > --- a/arch/arm64/boot/dts/qcom/sm8650-hdk.dts > > +++ b/arch/arm64/boot/dts/qcom/sm8650-hdk.dts > > @@ -30,6 +30,20 @@ chosen { > > stdout-path = "serial0:115200n8"; > > }; > > > > + clocks { > > + xo_board: xo-board { > > + compatible = "fixed-clock"; > > + #clock-cells = <0>; > > + clock-frequency = <76800000>; > > + }; > > + > > + sleep_clk: sleep-clk { > > + compatible = "fixed-clock"; > > + #clock-cells = <0>; > > + clock-frequency = <32000>; > > + }; > > + }; > > + > > hdmi-out { > > compatible = "hdmi-connector"; > > type = "a"; > > @@ -1112,10 +1126,6 @@ &sdhc_2 { > > status = "okay"; > > }; > > > > -&sleep_clk { > > - clock-frequency = <32000>; > > -}; > > No, code has correct style. To avoid duplication, the SoC DTSI keeps the > skeleton of the clock, which also indicates that SoC expects it to be > provided by board. Then the board provides the clock by setting the > frequency. So, what is the decision maker: a deduplication or board vs soc placement? From the duplication point of view we can keep the complete clock in SoC.dtsi (like we did for older platforms or I did for sar2130p). Most if not all boards use the same clock for the SoC family.