[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <8b41827a-605a-3a65-5384-130fb0555b33@linaro.org>
Date: Wed, 8 Feb 2023 11:27:21 +0100
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Li Chen <me@...ux.beauty>
Cc: li chen <lchen@...arella.com>,
michael turquette <mturquette@...libre.com>,
stephen boyd <sboyd@...nel.org>,
rob herring <robh+dt@...nel.org>,
krzysztof kozlowski <krzysztof.kozlowski+dt@...aro.org>,
"moderated list:arm/ambarella soc support"
<linux-arm-kernel@...ts.infradead.org>,
"open list:common clk framework" <linux-clk@...r.kernel.org>,
"open list:open firmware and flattened device tree bindings"
<devicetree@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>,
arnd bergmann <arnd@...db.de>
Subject: Re: [PATCH 07/15] dt-bindings: clock: Add Ambarella clock bindings
On 06/02/2023 15:57, Li Chen wrote:
> Hi Krzysztof,
> ---- On Mon, 06 Feb 2023 21:41:44 +0800 Krzysztof Kozlowski wrote ---
> > On 06/02/2023 12:28, Li Chen wrote:
> > > Hi Krzysztof ,
> > >
> > > ---- On Fri, 27 Jan 2023 23:08:09 +0800 Krzysztof Kozlowski wrote ---
> > > > On 27/01/2023 15:48, Li Chen wrote:
> > > > > >
> > > > > > but what you are saying is that there is no separate clock controller
> > > > > > device with its own IO address but these clocks are part of rct_syscon.
> > > > > > Then model it that way in DTS. The rct_syscon is then your clock
> > > > > > controller and all these fake gclk-core and gclk-ddr nodes should be gone.
> > > > >
> > > > > Ok, I will remove these fake nodes, and model the hardware as:
> > > > >
> > > > > rct_syscon node
> > > > > | clock node(pll, div, mux, composite clocks live in the same driver)
> > > > > | other periphal nodes
> > > >
> > > > You need clock node if it takes any resources. If it doesn't, you do not
> > > > need it.
> > >
> > > If the only hardware resource the clock node can take is its parent clock(clocks = &osc;),
> > > then can I have this clock node?
> >
> > I am not sure if I understand. osc does not look like parent device, so
> > this part of comment confuses me.
>
> Sorry for the confusion. I mean osc is the root of clock tree:
>
> osc
> | pll A
> | pll B
> | ...
>
> So if I have a clock node under rct_syscon node, I think it should take osc as the parent(node) clock:
> rct_syscon {
> ......
> clock_controller {
> clocks = <&osc>;
> ......
>
> You have said "You need clock node if it takes any resources. ", do you think osc here can be counted as a used resource?
Yes, in that matter osc should be the input to this clock controller.
Best regards,
Krzysztof
Powered by blists - more mailing lists