* Re: [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree
[not found] ` <1370266965-7901-22-git-send-email-lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
@ 2013-06-04 10:57 ` Linus Walleij
2013-06-04 20:52 ` Arnd Bergmann
[not found] ` <CACRpkdaNMR=6JT+pi+9aqOJXW3gK9Yb4hztx3rOiY3c+f3UTRA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
0 siblings, 2 replies; 5+ messages in thread
From: Linus Walleij @ 2013-06-04 10:57 UTC (permalink / raw)
To: Lee Jones
Cc: Ulf Hansson, Mike Turquette, Linus WALLEIJ, Srinidhi KASAGAR,
devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
On Mon, Jun 3, 2013 at 3:42 PM, Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> wrote:
> In this patch we're populating a clk_data array, one clock per element to
> act as a clk look-up using indexes supplied from Device Tree.
>
> Cc: Mike Turquette <mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> Signed-off-by: Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
This needs to be patch 1/21 because otherwise the rest of the
stuff is non-bisectable right? It's being broken the first time
you remove auxdata and not fixed until this patch.
The whole thing is very different from other DT clock things
I've seen, usually you add a compatible node for each
clock type, and a node for each physical gate. But there
may be several ways to skin this cat...
Make sure to include devicetree-discuss in the series for
an OS-neutral review opportunity.
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree
2013-06-04 10:57 ` [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree Linus Walleij
@ 2013-06-04 20:52 ` Arnd Bergmann
[not found] ` <201306042252.03340.arnd-r2nGTMty4D4@public.gmane.org>
2013-06-11 20:28 ` Mike Turquette
[not found] ` <CACRpkdaNMR=6JT+pi+9aqOJXW3gK9Yb4hztx3rOiY3c+f3UTRA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
1 sibling, 2 replies; 5+ messages in thread
From: Arnd Bergmann @ 2013-06-04 20:52 UTC (permalink / raw)
To: Linus Walleij
Cc: Lee Jones, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Linus WALLEIJ, Srinidhi KASAGAR,
Ulf Hansson, Mike Turquette, devicetree-discuss@lists.ozlabs.org
On Tuesday 04 June 2013, Linus Walleij wrote:
> The whole thing is very different from other DT clock things
> I've seen, usually you add a compatible node for each
> clock type, and a node for each physical gate. But there
> may be several ways to skin this cat...
>
Based on the IRC discussion we had, I would think that the "prcc" clocks
would best be represented using multiple clock-cells since you can describe
them easily a tuple of register index, bit number some way to distinguish
the two types.
The "prcmu" clocks are harder, and we probably need either a more verbose
representation using one node per clock there, or have a single node
for the entire prcmu and not bother to describe them in DT but hardcode
everything in the source. The current patch does the latter, which is
easier now but means we cannot simplify the code much in the future
when we remove ATAGS boot support.
I hope Mike can give some better insight to what his preferences are.
Arnd
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree
[not found] ` <201306042252.03340.arnd-r2nGTMty4D4@public.gmane.org>
@ 2013-06-05 8:05 ` Lee Jones
0 siblings, 0 replies; 5+ messages in thread
From: Lee Jones @ 2013-06-05 8:05 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Ulf Hansson, Mike Turquette, Linus WALLEIJ, Srinidhi KASAGAR,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
On Tue, 04 Jun 2013, Arnd Bergmann wrote:
> On Tuesday 04 June 2013, Linus Walleij wrote:
> > The whole thing is very different from other DT clock things
> > I've seen, usually you add a compatible node for each
> > clock type, and a node for each physical gate. But there
> > may be several ways to skin this cat...
> >
>
> Based on the IRC discussion we had, I would think that the "prcc" clocks
> would best be represented using multiple clock-cells since you can describe
> them easily a tuple of register index, bit number some way to distinguish
> the two types.
>
> The "prcmu" clocks are harder, and we probably need either a more verbose
> representation using one node per clock there, or have a single node
> for the entire prcmu and not bother to describe them in DT but hardcode
> everything in the source. The current patch does the latter, which is
> easier now but means we cannot simplify the code much in the future
> when we remove ATAGS boot support.
As already discussed, in the PRCMU case I'm going to make 'enum
prcmu_clock {' look like register PRCM_YYCLKEN0_MGT_SET as described
by the design specification, and use that as our indexer.
> I hope Mike can give some better insight to what his preferences are.
>
> Arnd
--
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
_______________________________________________
devicetree-discuss mailing list
devicetree-discuss@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/devicetree-discuss
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree
2013-06-04 20:52 ` Arnd Bergmann
[not found] ` <201306042252.03340.arnd-r2nGTMty4D4@public.gmane.org>
@ 2013-06-11 20:28 ` Mike Turquette
1 sibling, 0 replies; 5+ messages in thread
From: Mike Turquette @ 2013-06-11 20:28 UTC (permalink / raw)
To: Arnd Bergmann, Linus Walleij
Cc: Lee Jones, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Linus WALLEIJ, Srinidhi KASAGAR,
Ulf Hansson, devicetree-discuss@lists.ozlabs.org
Quoting Arnd Bergmann (2013-06-04 13:52:03)
> On Tuesday 04 June 2013, Linus Walleij wrote:
> > The whole thing is very different from other DT clock things
> > I've seen, usually you add a compatible node for each
> > clock type, and a node for each physical gate. But there
> > may be several ways to skin this cat...
> >
>
> Based on the IRC discussion we had, I would think that the "prcc" clocks
> would best be represented using multiple clock-cells since you can describe
> them easily a tuple of register index, bit number some way to distinguish
> the two types.
>
> The "prcmu" clocks are harder, and we probably need either a more verbose
> representation using one node per clock there, or have a single node
> for the entire prcmu and not bother to describe them in DT but hardcode
> everything in the source. The current patch does the latter, which is
> easier now but means we cannot simplify the code much in the future
> when we remove ATAGS boot support.
>
> I hope Mike can give some better insight to what his preferences are.
I'm still learning about DT so my inputs should be weighed, measured and
then promptly thrown out. With that said I recently published an RFC to
convert the OMAP4 PRCM clocks to DT and my approach was a single node
per clock.
The register mapping for those clocks is mostly orderly, but not so
orderly that a neat and tidy tuple would suffice. Also the recent MMP
clock series represents many of the clocks as single nodes.
I am not opposed to this design choice and it removes more data from C
files. Some concerns were brought up about impacts to boot time but no
one has quantified that yet.
Regards,
Mike
>
> Arnd
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree
[not found] ` <CACRpkdaNMR=6JT+pi+9aqOJXW3gK9Yb4hztx3rOiY3c+f3UTRA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2013-06-12 12:56 ` Grant Likely
0 siblings, 0 replies; 5+ messages in thread
From: Grant Likely @ 2013-06-12 12:56 UTC (permalink / raw)
To: Linus Walleij, Lee Jones
Cc: Ulf Hansson, Mike Turquette, Linus WALLEIJ, Srinidhi KASAGAR,
devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
On Tue, 4 Jun 2013 12:57:06 +0200, Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> wrote:
> On Mon, Jun 3, 2013 at 3:42 PM, Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> wrote:
>
> > In this patch we're populating a clk_data array, one clock per element to
> > act as a clk look-up using indexes supplied from Device Tree.
> >
> > Cc: Mike Turquette <mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> > Signed-off-by: Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>
> This needs to be patch 1/21 because otherwise the rest of the
> stuff is non-bisectable right? It's being broken the first time
> you remove auxdata and not fixed until this patch.
>
> The whole thing is very different from other DT clock things
> I've seen, usually you add a compatible node for each
> clock type, and a node for each physical gate. But there
> may be several ways to skin this cat...
The design choice made here is perfectly fine by me. There has never
been a requirement to expose every clock as a separate node, and for
SoCs with complex clock control blocks I can certainly appreciate not
wanting to expose how the internal clocks interact out to the device
tree, especially if only the leaf clocks ever get reverenced by device
drivers. As long as there is a driver there that understands the binding
and hands out the correct clock when asked, then this design is great.
g.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-06-12 12:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1370266965-7901-1-git-send-email-lee.jones@linaro.org>
[not found] ` <1370266965-7901-22-git-send-email-lee.jones@linaro.org>
[not found] ` <1370266965-7901-22-git-send-email-lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2013-06-04 10:57 ` [PATCH 21/21] clk: ux500: Supply provider look-up functionality to support Device Tree Linus Walleij
2013-06-04 20:52 ` Arnd Bergmann
[not found] ` <201306042252.03340.arnd-r2nGTMty4D4@public.gmane.org>
2013-06-05 8:05 ` Lee Jones
2013-06-11 20:28 ` Mike Turquette
[not found] ` <CACRpkdaNMR=6JT+pi+9aqOJXW3gK9Yb4hztx3rOiY3c+f3UTRA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-12 12:56 ` Grant Likely
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).