From: "Nuno Sá" <noname.nuno@gmail.com>
To: Conor Dooley <conor@kernel.org>, Nuno Sa <nuno.sa@analog.com>
Cc: linux-clk@vger.kernel.org, devicetree@vger.kernel.org,
Michael Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Lars-Peter Clausen <lars@metafoo.de>
Subject: Re: [PATCH 1/2] dt-bindings: clock: axi-clkgen: include AXI clk
Date: Thu, 24 Oct 2024 14:35:37 +0200 [thread overview]
Message-ID: <1e0097f6a15f47c173cb207e369909c1cb5943f9.camel@gmail.com> (raw)
In-Reply-To: <20241023-tucking-pacific-7360480bcb61@spud>
On Wed, 2024-10-23 at 17:30 +0100, Conor Dooley wrote:
> On Wed, Oct 23, 2024 at 04:56:54PM +0200, Nuno Sa wrote:
> > In order to access the registers of the HW, we need to make sure that
> > the AXI bus clock is enabled. Hence let's increase the number of clocks
> > by one.
> >
> > In order to keep backward compatibility, the new axi clock must be the
> > last phandle in the array. To make the intent clear, a non mandatory
> > clock-names property is also being added.
>
> Hmm, I'm not sure. I think clock-names actually may need to be mandatory
> here, as otherwise you'll not what the second clock is. The driver would
> have to interpret no clock-names meaning clock 2 was clkin2.
>
>
So the way things are now is that we just get the parents count with
of_clk_get_parent_count() and then get the names with of_clk_get_parent_name() and
this is given into 'struct clk_init_data'. So they are effectively clk_parents of the
clock we're registering and as you can see clock-names does not really matter. What
I'm trying to do is to keep this and still allow to get the AXI bus clock which is
something we should get and enable and not rely on others to do it. The idea is then
to add the axi bus clock as the last one in the clocks property and I will get it by
index with of_clk_get(). The rest pretty much remains the same and we just need to
decrement by one the number of parent clocks as the axi clock is not really a parent
of our output clock.
All that said, and FWIW, clock-names are not even being used in the driver. I just
added it to the bindings to make the intent clear. I could have it in the driver but
I'm not sure the extra complexity would be worth it...
- Nuno Sá
next prev parent reply other threads:[~2024-10-24 12:35 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-23 14:56 [PATCH 0/2] clk: clk-axi-clkgen: make sure to enable the AXI bus clock Nuno Sa
2024-10-23 14:56 ` [PATCH 1/2] dt-bindings: clock: axi-clkgen: include AXI clk Nuno Sa
2024-10-23 16:30 ` Conor Dooley
2024-10-24 12:35 ` Nuno Sá [this message]
2024-10-24 16:13 ` Conor Dooley
2024-10-25 6:56 ` Nuno Sá
2024-10-25 16:47 ` Conor Dooley
2024-10-28 14:01 ` Nuno Sá
2024-10-31 13:02 ` Conor Dooley
2024-10-23 14:56 ` [PATCH 2/2] clk: clk-axi-clkgen: make sure to enable the AXI bus clock Nuno Sa
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=1e0097f6a15f47c173cb207e369909c1cb5943f9.camel@gmail.com \
--to=noname.nuno@gmail.com \
--cc=conor+dt@kernel.org \
--cc=conor@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-clk@vger.kernel.org \
--cc=mturquette@baylibre.com \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
--cc=sboyd@kernel.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