From: Mike Turquette <mturquette@linaro.org>
To: linux-sh@vger.kernel.org
Subject: Re: [PATCH 1/3] clk: add clock-indices support
Date: Sun, 23 Feb 2014 21:00:24 +0000 [thread overview]
Message-ID: <20140223210024.22529.40658@quantum> (raw)
In-Reply-To: <1392314571-30107-1-git-send-email-ben.dooks@codethink.co.uk>
Quoting Ben Dooks (2014-02-13 10:02:49)
> Add a property called clock-indices to allow clock-output-names
> to be used where the index used to lookup a clock is not a 1:1
> mapping to the array position in the clock-output-names
>
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Ben & Laurent,
The clock-indices stuff looks sane to me. I've taken Ben's patch #1 into
clk-next. It seems patch #3 might be dropped and patch #2 didn't apply
cleanly for me.
Can Laurent's patches and Ben's #2 be rebased and sent together as a PR?
I'll leave it up to you guys to figure out the backwards compatibility
issue with Ben's patch #3.
Regards,
Mike
> ---
> .../devicetree/bindings/clock/clock-bindings.txt | 17 +++++++++++++++++
> drivers/clk/clk.c | 20 +++++++++++++++++++-
> 2 files changed, 36 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/clock/clock-bindings.txt b/Documentation/devicetree/bindings/clock/clock-bindings.txt
> index 7c52c29..700e7aa 100644
> --- a/Documentation/devicetree/bindings/clock/clock-bindings.txt
> +++ b/Documentation/devicetree/bindings/clock/clock-bindings.txt
> @@ -44,6 +44,23 @@ For example:
> clocks by index. The names should reflect the clock output signal
> names for the device.
>
> +clock-indices: If the identifyng number for the clocks in the node
> + is not linear from zero, then the this mapping allows
> + the mapping of identifiers into the clock-output-names
> + array.
> +
> +For example, if we have two clocks <&oscillator 1> and <&oscillator 3>:
> +
> + oscillator {
> + compatible = "myclocktype";
> + #clock-cells = <1>;
> + clock-indices = <1>, <3>;
> + clock-output-names = "clka", "clkb";
> + }
> +
> + This ensures we do not have any empty nodes in clock-output-names
> +
> +
> =Clock consumers=
>
> Required properties:
> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
> index 5517944..18633c9 100644
> --- a/drivers/clk/clk.c
> +++ b/drivers/clk/clk.c
> @@ -2505,8 +2505,12 @@ EXPORT_SYMBOL_GPL(of_clk_get_parent_count);
> const char *of_clk_get_parent_name(struct device_node *np, int index)
> {
> struct of_phandle_args clkspec;
> + struct property *prop;
> const char *clk_name;
> + const __be32 *vp;
> + u32 pv;
> int rc;
> + int count;
>
> if (index < 0)
> return NULL;
> @@ -2516,8 +2520,22 @@ const char *of_clk_get_parent_name(struct device_node *np, int index)
> if (rc)
> return NULL;
>
> + index = clkspec.args_count ? clkspec.args[0] : 0;
> + count = 0;
> +
> + /* if there is an indices property, use it to transfer the index
> + * specified into an array offset for the clock-output-names property.
> + */
> + of_property_for_each_u32(clkspec.np, "clock-indices", prop, vp, pv) {
> + if (index = pv) {
> + index = count;
> + break;
> + }
> + count++;
> + }
> +
> if (of_property_read_string_index(clkspec.np, "clock-output-names",
> - clkspec.args_count ? clkspec.args[0] : 0,
> + index,
> &clk_name) < 0)
> clk_name = clkspec.np->name;
>
> --
> 1.8.5.3
>
next prev parent reply other threads:[~2014-02-23 21:00 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-13 18:02 [PATCH 1/3] clk: add clock-indices support Ben Dooks
2014-02-13 18:08 ` Sergei Shtylyov
2014-02-13 18:08 ` Ben Dooks
2014-02-23 21:00 ` Mike Turquette [this message]
2014-02-23 22:40 ` Laurent Pinchart
2014-02-24 0:29 ` Laurent Pinchart
2014-03-02 22:28 ` Ben Dooks
2014-03-02 22:37 ` Laurent Pinchart
2014-03-02 22:52 ` Ben Dooks
2014-03-06 19:05 ` Ben Dooks
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=20140223210024.22529.40658@quantum \
--to=mturquette@linaro.org \
--cc=linux-sh@vger.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.