Re: [PATCH] ARM: dts: r8a7791: Don't disable referenced optional clocks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Wed, 2016-04-06 at 15:11 +0200, Geert Uytterhoeven wrote:
> CC Mike, Stephen, linux-clk (this time with the new Mike)
> 
> On Wed, Apr 6, 2016 at 2:52 PM, Sjoerd Simons
> <sjoerd.simons@xxxxxxxxxxxxxxx> wrote:
> > 
> > clk_get on a disabled clock node will return EPROBE_DEFER, which
> > can
> > cause drivers to be deferred forever if such clocks are referenced
> > in
> > their clocks property.
> Is this a side effect of commit 3e5dd6f6e690048d ("clk: Ignore
> disabled DT
> clock providers")?

Yes it seems so. Reverting that patch means that i can drop this one
and get the expected behaviour again.

Though even so I'm not sure what the convention is for clocks like
these, the r8a7791.dtsi is inconsistent, as some are disabled while
others (e.g. the audio clocks) are 0hz. Would be good to get some input
on that regardless.

> > 
> > Update the various disabled external clock nodes to default to a
> > frequency of 0, but don't disable them to prevent this.
> > 
> > Signed-off-by: Sjoerd Simons <sjoerd.simons@xxxxxxxxxxxxxxx>
> > 
> > ---
> > 
> >  arch/arm/boot/dts/r8a7791-koelsch.dts | 1 +
> >  arch/arm/boot/dts/r8a7791-porter.dts  | 1 +
> >  arch/arm/boot/dts/r8a7791.dtsi        | 5 +----
> >  3 files changed, 3 insertions(+), 4 deletions(-)
> > 
> > diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts
> > b/arch/arm/boot/dts/r8a7791-koelsch.dts
> > index 1adf877..da59c28 100644
> > --- a/arch/arm/boot/dts/r8a7791-koelsch.dts
> > +++ b/arch/arm/boot/dts/r8a7791-koelsch.dts
> > @@ -660,6 +660,7 @@
> >  };
> > 
> >  &pcie_bus_clk {
> > +       clock-frequency = <100000000>;
> >         status = "okay";
> >  };
> > 
> > diff --git a/arch/arm/boot/dts/r8a7791-porter.dts
> > b/arch/arm/boot/dts/r8a7791-porter.dts
> > index 9554d13..19b257e 100644
> > --- a/arch/arm/boot/dts/r8a7791-porter.dts
> > +++ b/arch/arm/boot/dts/r8a7791-porter.dts
> > @@ -413,6 +413,7 @@
> >  };
> > 
> >  &pcie_bus_clk {
> > +       clock-frequency = <100000000>;
> >         status = "okay";
> >  };
> > 
> > diff --git a/arch/arm/boot/dts/r8a7791.dtsi
> > b/arch/arm/boot/dts/r8a7791.dtsi
> > index 8693888..676df63 100644
> > --- a/arch/arm/boot/dts/r8a7791.dtsi
> > +++ b/arch/arm/boot/dts/r8a7791.dtsi
> > @@ -1104,8 +1104,7 @@
> >                 pcie_bus_clk: pcie_bus {
> >                         compatible = "fixed-clock";
> >                         #clock-cells = <0>;
> > -                       clock-frequency = <100000000>;
> > -                       status = "disabled";
> > +                       clock-frequency = <0>;
> >                 };
> > 
> >                 /* External SCIF clock */
> > @@ -1114,7 +1113,6 @@
> >                         #clock-cells = <0>;
> >                         /* This value must be overridden by the
> > board. */
> >                         clock-frequency = <0>;
> > -                       status = "disabled";
> >                 };
> > 
> >                 /* External USB clock - can be overridden by the
> > board */
> > @@ -1130,7 +1128,6 @@
> >                         #clock-cells = <0>;
> >                         /* This value must be overridden by the
> > board. */
> >                         clock-frequency = <0>;
> > -                       status = "disabled";
> >                 };
> > 
> >                 /* Special CPG clocks */
> > --
> > 2.8.0.rc3
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linu
> x-m68k.org
> 
> In personal conversations with technical people, I call myself a
> hacker. But
> when I'm talking to journalists I just say "programmer" or something
> like that.
>                                 -- Linus Torvalds

-- 
Sjoerd Simons
Collabora Ltd.
��.n��������+%������w��{.n����z�{��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux