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
next prev parent 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).