Re: [RFC PATCH v2 11/11] arm64: dts: imx8mn: add clocks description

From: Dario Binacchi
Date: Fri Jan 20 2023 - 12:47:27 EST


Hi,

On Mon, Jan 16, 2023 at 3:36 PM Abel Vesa <abel.vesa@xxxxxxxxxx> wrote:
>
> On 23-01-01 18:57:40, Dario Binacchi wrote:
> > The patch creates a unique node for each clock in the imx8mn clock
> > control module (CCM).
> >
> > To ensure backwards compatibility it was not possible to separate the
> > changes to the device tree from those applied to the clocks setup code.
> > In doing so, all clocks are initialized from the device tree and the
> > legacy setup code with hardwired parameters is removed.
> >
> > Signed-off-by: Dario Binacchi <dario.binacchi@xxxxxxxxxxxxxxxxxxxx>
> >
> > ---
> >
> > (no changes since v1)
> >
> > .../boot/dts/freescale/imx8mn-clocks.dtsi | 1885 +++++++++++++++++
> > arch/arm64/boot/dts/freescale/imx8mn.dtsi | 54 +-
> > drivers/clk/imx/clk-imx8mn.c | 714 ++-----
> > 3 files changed, 2086 insertions(+), 567 deletions(-)
> > create mode 100644 arch/arm64/boot/dts/freescale/imx8mn-clocks.dtsi
> >
> > diff --git a/arch/arm64/boot/dts/freescale/imx8mn-clocks.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-clocks.dtsi
> > new file mode 100644
> > index 000000000000..21e02ea996d0
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/freescale/imx8mn-clocks.dtsi
> > @@ -0,0 +1,1885 @@
> > +// SPDX-License-Identifier: GPL-2.0-only
> > +/*
> > + * Device Tree Source for imx8mn clock data
> > + *
> > + * Copyright (c) 2022 Amarula Solutions
> > + *
> > + * Dario Binacchi <dario.binacchi@xxxxxxxxxxxxxxxxxxxx>
> > + */
> > +
> > +/ {
> > + osc_32k: clock-osc-32k {
> > + compatible = "fixed-clock";
> > + #clock-cells = <0>;
> > + clock-frequency = <32768>;
> > + clock-output-names = "osc_32k";
> > + };
> > +
>
> [...]
>
> > +
> > + clk_audio_pll2_bypass: clock-audio-pll2-bypass@14 {
> > + compatible = "fsl,imx8mn-mux-clock";
> > + #clock-cells = <0>;
> > + clocks = <&clk_audio_pll2>, <&clk_audio_pll2_ref_sel>;
> > + fsl,anatop = <&anatop 0x14>;
> > + fsl,bit-shift = <16>;
> > + fsl,set-rate-parent;
>
> NACK. I'm sorry, but this creates a huge effort on maintaining the
> bindings.

IMHO I don't think that's the point. Rather, is it correct to keep adding
platforms always replicating the same code that makes use of hardwired
parameters? When I thought about the development of this series I
thought it could be an opportunity to reverse the trend. In the direction
suggested by the linux kernel development policies.The benefits of using the
device tree have been proven for quite some time now.
The 03/11 and 04/11 patches of the series make a list of the legacy code that
has been added over time (functions with names that are sometimes unclear)
and that with the progressive use of the device tree would be removed.

As written in the cover letter, I am available to add the necessary DT
bindings to
the series.

Plus the vendor specific properties will keep increasing.
>
> I don't think Rob and Krzysztof will be OK with this either.

I hope instead that they agree with me. I didn't answer right away as
I was waiting
for their opinion. And I keep hoping for their response. And any other
recipients of
the series as well.

By the way, I add Tero Kristo and Toni Lindgren as their work done for
the TI clock
subsystem has been a great help for me in the implementation of this series.

Thanks and regards,
Dario

>
>
> > + clock-output-names = "audio_pll2_bypass";
> > + };
> > +
> > + clk_audio_pll2_out: clock-audio-pll2-out@14 {
> > + compatible = "fsl,imx8mn-gate-clock";
> > + #clock-cells = <0>;
> > + clocks = <&clk_audio_pll2_bypass>;
> > + fsl,anatop = <&anatop 0x14>;
> > + fsl,bit-shift = <13>;
> > + clock-output-names = "audio_pll2_out";
> > + };
> > +
>
> [...]
>
> > --
> > 2.32.0
> >



--

Dario Binacchi

Senior Embedded Linux Developer

dario.binacchi@xxxxxxxxxxxxxxxxxxxx

__________________________________


Amarula Solutions SRL

Via Le Canevare 30, 31100 Treviso, Veneto, IT

T. +39 042 243 5310
info@xxxxxxxxxxxxxxxxxxxx

www.amarulasolutions.com