Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752005AbcDFNhO (ORCPT ); Wed, 6 Apr 2016 09:37:14 -0400 Received: from bhuna.collabora.co.uk ([46.235.227.227]:60301 "EHLO bhuna.collabora.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750867AbcDFNhM (ORCPT ); Wed, 6 Apr 2016 09:37:12 -0400 Message-ID: <1459949826.23936.19.camel@collabora.co.uk> Subject: Re: [PATCH] ARM: dts: r8a7791: Don't disable referenced optional clocks From: Sjoerd Simons To: Geert Uytterhoeven Cc: Simon Horman , linux-renesas-soc@vger.kernel.org, "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Michael Turquette , Stephen Boyd , linux-clk Date: Wed, 06 Apr 2016 15:37:06 +0200 In-Reply-To: References: <1459947173-6664-1-git-send-email-sjoerd.simons@collabora.co.uk> Organization: Collabora Ltd. Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.18.5.1-1 Mime-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id u36DbRSW002753 Content-Length: 4263 Lines: 115 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 > 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 > > > > --- > > > >  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.