From: maxime.ripard@free-electrons.com (Maxime Ripard)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/2] ARM: topology: Use a clock if possible to get the CPU frequency
Date: Mon, 30 Jun 2014 14:49:19 +0200 [thread overview]
Message-ID: <20140630124919.GC28647@lukather> (raw)
In-Reply-To: <CAKfTPtC+XcH122AytyZ=x1JVx9THmxCasJLA3Z1e17X_OmH1xA@mail.gmail.com>
On Mon, Jun 30, 2014 at 12:39:26PM +0200, Vincent Guittot wrote:
> On 30 June 2014 12:29, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote:
> > On Mon, Jun 30, 2014 at 12:12:22PM +0200, Maxime Ripard wrote:
> >> The Cortex-A7 and Cortex-A15 based SoCs need a clock-frequency property in the
> >> topology code.
> >>
> >> Allow to use a clock to provide the same information.
> >>
> >> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> >
> > This looks fine to me, but I don't know this code. Maybe Vincent Guittot
> > should be on the To: list (added)?
>
> Thanks
Ah, sorry for that.
>
> >
> >> ---
> >> arch/arm/kernel/topology.c | 25 ++++++++++++++++++-------
> >> 1 file changed, 18 insertions(+), 7 deletions(-)
> >>
> >> diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c
> >> index 9d853189028b..268443d88094 100644
> >> --- a/arch/arm/kernel/topology.c
> >> +++ b/arch/arm/kernel/topology.c
> >> @@ -11,6 +11,7 @@
> >> * for more details.
> >> */
> >>
> >> +#include <linux/clk.h>
> >> #include <linux/cpu.h>
> >> #include <linux/cpumask.h>
> >> #include <linux/export.h>
> >> @@ -100,8 +101,8 @@ static void __init parse_dt_topology(void)
> >> GFP_NOWAIT);
> >>
> >> for_each_possible_cpu(cpu) {
> >> - const u32 *rate;
> >> - int len;
> >> + struct clk *clk;
> >> + u32 rate = 0;
> >>
> >> /* too early to use cpu->of_node */
> >> cn = of_get_cpu_node(cpu, NULL);
> >> @@ -117,14 +118,24 @@ static void __init parse_dt_topology(void)
> >> if (cpu_eff->compatible == NULL)
> >> continue;
> >>
> >> - rate = of_get_property(cn, "clock-frequency", &len);
> >> - if (!rate || len != 4) {
> >> - pr_err("%s missing clock-frequency property\n",
> >> - cn->full_name);
> >> + clk = of_clk_get(cn, 0);
> >> + if (!IS_ERR(clk))
> >> + rate = clk_get_rate(clk);
>
> We need the max frequency as it will be used to weight the different
> CPUs capacity. How do you ensure that the current clock rate is the
> max one ?
Hmm, the clock-frequency attribute in the ePAPR is defined at the
current CPU frequency, not the max one.
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140630/72cfdc8d/attachment-0001.sig>
WARNING: multiple messages have this Message-ID (diff)
From: Maxime Ripard <maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
To: Vincent Guittot
<vincent.guittot-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Russell King - ARM Linux
<linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
LAK
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Nicolas Pitre <nico-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Subject: Re: [PATCH v2 1/2] ARM: topology: Use a clock if possible to get the CPU frequency
Date: Mon, 30 Jun 2014 14:49:19 +0200 [thread overview]
Message-ID: <20140630124919.GC28647@lukather> (raw)
In-Reply-To: <CAKfTPtC+XcH122AytyZ=x1JVx9THmxCasJLA3Z1e17X_OmH1xA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 2585 bytes --]
On Mon, Jun 30, 2014 at 12:39:26PM +0200, Vincent Guittot wrote:
> On 30 June 2014 12:29, Russell King - ARM Linux <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org> wrote:
> > On Mon, Jun 30, 2014 at 12:12:22PM +0200, Maxime Ripard wrote:
> >> The Cortex-A7 and Cortex-A15 based SoCs need a clock-frequency property in the
> >> topology code.
> >>
> >> Allow to use a clock to provide the same information.
> >>
> >> Signed-off-by: Maxime Ripard <maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
> >
> > This looks fine to me, but I don't know this code. Maybe Vincent Guittot
> > should be on the To: list (added)?
>
> Thanks
Ah, sorry for that.
>
> >
> >> ---
> >> arch/arm/kernel/topology.c | 25 ++++++++++++++++++-------
> >> 1 file changed, 18 insertions(+), 7 deletions(-)
> >>
> >> diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c
> >> index 9d853189028b..268443d88094 100644
> >> --- a/arch/arm/kernel/topology.c
> >> +++ b/arch/arm/kernel/topology.c
> >> @@ -11,6 +11,7 @@
> >> * for more details.
> >> */
> >>
> >> +#include <linux/clk.h>
> >> #include <linux/cpu.h>
> >> #include <linux/cpumask.h>
> >> #include <linux/export.h>
> >> @@ -100,8 +101,8 @@ static void __init parse_dt_topology(void)
> >> GFP_NOWAIT);
> >>
> >> for_each_possible_cpu(cpu) {
> >> - const u32 *rate;
> >> - int len;
> >> + struct clk *clk;
> >> + u32 rate = 0;
> >>
> >> /* too early to use cpu->of_node */
> >> cn = of_get_cpu_node(cpu, NULL);
> >> @@ -117,14 +118,24 @@ static void __init parse_dt_topology(void)
> >> if (cpu_eff->compatible == NULL)
> >> continue;
> >>
> >> - rate = of_get_property(cn, "clock-frequency", &len);
> >> - if (!rate || len != 4) {
> >> - pr_err("%s missing clock-frequency property\n",
> >> - cn->full_name);
> >> + clk = of_clk_get(cn, 0);
> >> + if (!IS_ERR(clk))
> >> + rate = clk_get_rate(clk);
>
> We need the max frequency as it will be used to weight the different
> CPUs capacity. How do you ensure that the current clock rate is the
> max one ?
Hmm, the clock-frequency attribute in the ePAPR is defined at the
current CPU frequency, not the max one.
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2014-06-30 12:49 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-30 10:12 [PATCH v2 0/2] ARM: topology: Allow to set the frequency through a clock Maxime Ripard
2014-06-30 10:12 ` Maxime Ripard
2014-06-30 10:12 ` [PATCH v2 1/2] ARM: topology: Use a clock if possible to get the CPU frequency Maxime Ripard
2014-06-30 10:12 ` Maxime Ripard
2014-06-30 10:29 ` Russell King - ARM Linux
2014-06-30 10:29 ` Russell King - ARM Linux
2014-06-30 10:39 ` Vincent Guittot
2014-06-30 10:39 ` Vincent Guittot
2014-06-30 12:49 ` Maxime Ripard [this message]
2014-06-30 12:49 ` Maxime Ripard
2014-06-30 13:27 ` Vincent Guittot
2014-06-30 13:27 ` Vincent Guittot
2014-06-30 14:01 ` Maxime Ripard
2014-06-30 14:01 ` Maxime Ripard
2014-06-30 14:48 ` Vincent Guittot
2014-06-30 14:48 ` Vincent Guittot
2014-06-30 14:58 ` Maxime Ripard
2014-06-30 14:58 ` Maxime Ripard
2014-06-30 15:06 ` Vincent Guittot
2014-06-30 15:06 ` Vincent Guittot
2014-07-03 7:10 ` Maxime Ripard
2014-07-03 7:10 ` Maxime Ripard
2014-07-03 7:51 ` Vincent Guittot
2014-07-03 7:51 ` Vincent Guittot
2014-07-04 8:02 ` Maxime Ripard
2014-07-04 8:02 ` Maxime Ripard
2014-07-04 9:22 ` Vincent Guittot
2014-07-04 9:22 ` Vincent Guittot
2014-07-08 7:39 ` Maxime Ripard
2014-07-08 7:39 ` Maxime Ripard
2014-06-30 10:12 ` [PATCH v2 2/2] ARM: sunxi: Add clocks node to the CPU nodes Maxime Ripard
2014-06-30 10:12 ` Maxime Ripard
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=20140630124919.GC28647@lukather \
--to=maxime.ripard@free-electrons.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 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.