linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv2 9/9] ARM: dts: omap4: convert to use the new clkctrl clocks for the drivers
Date: Mon, 3 Apr 2017 07:16:09 -0700	[thread overview]
Message-ID: <20170403141609.GH10760@atomide.com> (raw)
In-Reply-To: <87f1e815-baf6-f41a-99d2-8ba6ca6292c4@ti.com>

* Tero Kristo <t-kristo@ti.com> [170330 00:36]:
> On 28/03/17 18:03, Tony Lindgren wrote:
> > * Tero Kristo <t-kristo@ti.com> [170327 22:46]:
> > > On 28/03/17 03:18, Tony Lindgren wrote:
> > > > * Tero Kristo <t-kristo@ti.com> [170317 02:12]:
> > > > > Convert the drivers to use the new clkctrl clocks.
> > > > > 
> > > > > Signed-off-by: Tero Kristo <t-kristo@ti.com>
> > > > > ---
> > > > >  arch/arm/boot/dts/omap4.dtsi | 164 ++++++++++++++++++++++++++++++++++++++-----
> > > > >  1 file changed, 146 insertions(+), 18 deletions(-)
> > > > > 
> > > > > diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
> > > > > index 3ecf616..c39304a 100644
> > > > > --- a/arch/arm/boot/dts/omap4.dtsi
> > > > > +++ b/arch/arm/boot/dts/omap4.dtsi
> > > > > @@ -94,16 +94,22 @@
> > > > >  			compatible = "ti,omap4-mpu";
> > > > >  			ti,hwmods = "mpu";
> > > > >  			sram = <&ocmcram>;
> > > > > +			clocks = <&mpuss_clkctrl OMAP4_MPU_CLKCTRL 0>;
> > > > > +			clock-names = "clkctrl";
> > > > >  		};
> > > > 
> > > > Oh one more thing. I don't think we should add the clocks
> > > > here as they are now wrongly allocated to the device within
> > > > the interconnect target module. These clocks really belong
> > > > to each interconnect target module that we don't have in the
> > > > dts yet.
> > > > 
> > > > So we're better off adding the clockctrl clocks and then
> > > > changing the dts to use the interconnect target modules
> > > > with the clockctrl clocks.
> > > 
> > > The problem is, you can't just add the clkctrl clock nodes themselves alone,
> > > as this introduces the problem that any clocks with no users will get
> > > disabled => causes a boot time hang when all the device clocks get shut
> > > down.
> > 
> > Hmm yeah. I wonder how to work around that.. What if we first updated
> > the clocks in the hwmod code? Or updated the aliases?
> 
> Kind of a chicken-egg problem. You could maybe probe the "ti,clkctrl" driver
> manually to avoid the issue.
> 
> The core clocks get disabled when CCF notices they are not used. You can't
> really avoid that with updating aliases / updating the clocks in hwmod code.
> And, hwmod basically tries to still use the same registers through the
> legacy route, which leads to conflict.

Yeah OK. Using status = "disabled" won't help much there either as the
amount of patching is still pretty much the same.

> > > If you want to delay the usage of the clocks until you have interconnect
> > > target modules in place, you need to introduce the clock nodes also at that
> > > point, similar to what needs to be done now to squash patch #8 or #9.
> > 
> > I'd like to do this one device at a time without any large
> > flips as we have quite a few devices with special handling for
> > reset and idling in the hwmod code.
> 
> One thing that can be done also is to introduce the clkctrl clocks one at a
> time in the data file also, but this is going to be cumbersome, as you need
> to keep these three in sync:
> 
> - drivers/clk/ti/clk-44xx.c
> - arch/arm/mach-omap2/omap_hwmod_44xx_data.c
> - arch/arm/boot/dts/omap4.dtsi
> 
> ... and that per SoC of course.
> 
> With the interconnect driver introduction, you should be able to flip one
> device at a time from hwmod to interconnect. In this case, all the clocks
> are already there, and you just need to modify DT + hwmod data to do the
> flip.

Yes seems like that's what we should do then.

Regards,

Tony

  reply	other threads:[~2017-04-03 14:16 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-17  9:09 [PATCHv2 0/9] clk: ti: add support for clkctrl clocks Tero Kristo
2017-03-17  9:09 ` [PATCHv2 1/9] Documentation: dt-bindings: Add binding documentation for TI " Tero Kristo
2017-03-17 14:18   ` Tony Lindgren
2017-03-17 15:01     ` Tero Kristo
2017-03-17  9:09 ` [PATCHv2 2/9] clk: ti: add support for " Tero Kristo
2017-03-17  9:09 ` [PATCHv2 3/9] dt-bindings: clk: add omap4 clkctrl definitions Tero Kristo
2017-04-24 21:49   ` Tony Lindgren
2017-03-17  9:09 ` [PATCHv2 4/9] clk: ti: omap4: add clkctrl clock data Tero Kristo
2017-03-17  9:09 ` [PATCHv2 5/9] ARM: OMAP2+: hwmod: assign main clock from DT if available Tero Kristo
2017-03-17 15:41   ` Tony Lindgren
2017-03-17 21:40     ` Tero Kristo
2017-03-17 22:17       ` Tony Lindgren
2017-03-20 13:23         ` Tero Kristo
2017-03-20 14:34           ` Tony Lindgren
2017-03-20 14:36             ` Tony Lindgren
2017-03-17  9:09 ` [PATCHv2 6/9] ARM: OMAP2+: timer: add support for fetching fck handle from DT Tero Kristo
2017-03-17 15:41   ` Tony Lindgren
2017-03-17  9:09 ` [PATCHv2 7/9] ARM: dts: omap4: add bus functionality to base PRCM nodes Tero Kristo
2017-03-17  9:09 ` [PATCHv2 8/9] ARM: dts: omap4: add clkctrl nodes Tero Kristo
2017-03-17 15:43   ` Tony Lindgren
2017-03-17 21:41     ` Tero Kristo
2017-03-20 13:25       ` Tero Kristo
2017-03-20 14:35         ` Tony Lindgren
2017-03-20 14:52           ` Tero Kristo
2017-03-20 15:07             ` Tony Lindgren
2017-03-17  9:09 ` [PATCHv2 9/9] ARM: dts: omap4: convert to use the new clkctrl clocks for the drivers Tero Kristo
2017-03-28  0:18   ` Tony Lindgren
2017-03-28  5:44     ` Tero Kristo
2017-03-28 15:03       ` Tony Lindgren
2017-03-30  7:33         ` Tero Kristo
2017-04-03 14:16           ` Tony Lindgren [this message]
2017-03-17 15:25 ` [PATCHv2 0/9] clk: ti: add support for clkctrl clocks Tony Lindgren
2017-03-17 21:37   ` Tero Kristo
2017-03-23  1:00     ` Tony Lindgren
2017-03-23 17:02       ` Tony Lindgren
2017-03-28  5:41         ` Tero Kristo
2017-03-30  7:18         ` Tero Kristo
2017-03-30 16:54           ` Tony Lindgren
2017-04-03 14:51             ` Tero Kristo
2017-04-03 15:36               ` Tony Lindgren
2017-04-05 16:59                 ` Tero Kristo
2017-04-06 16:49                 ` Tero Kristo
2017-04-07 16:47                   ` Tony Lindgren
2017-04-10  7:31                     ` Tero Kristo
2017-04-10 16:18                       ` Tony Lindgren
2017-04-10 18:33                         ` Tero Kristo
2017-04-11 16:24                           ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170403141609.GH10760@atomide.com \
    --to=tony@atomide.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).