All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Shawn Guo <shawn.guo@linaro.org>, Kevin Hilman <khilman@ti.com>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>,
	cpufreq@vger.kernel.org, linux-pm@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	Richard Zhao <richard.zhao@freescale.com>
Subject: Re: [PATCH] cpufreq: OMAP: remove loops_per_jiffy recalculate for smp
Date: Fri, 7 Sep 2012 21:15:08 +0200	[thread overview]
Message-ID: <201209072115.08252.rjw@sisk.pl> (raw)
In-Reply-To: <1346981022-28011-1-git-send-email-shawn.guo@linaro.org>

On Friday, September 07, 2012, Shawn Guo wrote:
> From: Richard Zhao <richard.zhao@freescale.com>
> 
> With ARM smp common code recalculating loops_per_jiffy in a cpufreq
> transiton notifier call, the loops_per_jiffy recalculate in omap-cpufreq
> driver becomes redundant.  Remove it.
> 
> Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>

I suppose that Kevin is going to handle this, right?

Kevin, if you want me to pull new material for v3.7, it's about time to get
it ready.

Thanks,
Rafael


> ---
>  drivers/cpufreq/omap-cpufreq.c |   35 -----------------------------------
>  1 files changed, 0 insertions(+), 35 deletions(-)
> 
> diff --git a/drivers/cpufreq/omap-cpufreq.c b/drivers/cpufreq/omap-cpufreq.c
> index 17fa04d..83a78ad 100644
> --- a/drivers/cpufreq/omap-cpufreq.c
> +++ b/drivers/cpufreq/omap-cpufreq.c
> @@ -40,16 +40,6 @@
>  /* OPP tolerance in percentage */
>  #define	OPP_TOLERANCE	4
>  
> -#ifdef CONFIG_SMP
> -struct lpj_info {
> -	unsigned long	ref;
> -	unsigned int	freq;
> -};
> -
> -static DEFINE_PER_CPU(struct lpj_info, lpj_ref);
> -static struct lpj_info global_lpj_ref;
> -#endif
> -
>  static struct cpufreq_frequency_table *freq_table;
>  static atomic_t freq_table_users = ATOMIC_INIT(0);
>  static struct clk *mpu_clk;
> @@ -161,31 +151,6 @@ static int omap_target(struct cpufreq_policy *policy,
>  	}
>  
>  	freqs.new = omap_getspeed(policy->cpu);
> -#ifdef CONFIG_SMP
> -	/*
> -	 * Note that loops_per_jiffy is not updated on SMP systems in
> -	 * cpufreq driver. So, update the per-CPU loops_per_jiffy value
> -	 * on frequency transition. We need to update all dependent CPUs.
> -	 */
> -	for_each_cpu(i, policy->cpus) {
> -		struct lpj_info *lpj = &per_cpu(lpj_ref, i);
> -		if (!lpj->freq) {
> -			lpj->ref = per_cpu(cpu_data, i).loops_per_jiffy;
> -			lpj->freq = freqs.old;
> -		}
> -
> -		per_cpu(cpu_data, i).loops_per_jiffy =
> -			cpufreq_scale(lpj->ref, lpj->freq, freqs.new);
> -	}
> -
> -	/* And don't forget to adjust the global one */
> -	if (!global_lpj_ref.freq) {
> -		global_lpj_ref.ref = loops_per_jiffy;
> -		global_lpj_ref.freq = freqs.old;
> -	}
> -	loops_per_jiffy = cpufreq_scale(global_lpj_ref.ref, global_lpj_ref.freq,
> -					freqs.new);
> -#endif
>  
>  done:
>  	/* notifiers */
> 


WARNING: multiple messages have this Message-ID (diff)
From: rjw@sisk.pl (Rafael J. Wysocki)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] cpufreq: OMAP: remove loops_per_jiffy recalculate for smp
Date: Fri, 7 Sep 2012 21:15:08 +0200	[thread overview]
Message-ID: <201209072115.08252.rjw@sisk.pl> (raw)
In-Reply-To: <1346981022-28011-1-git-send-email-shawn.guo@linaro.org>

On Friday, September 07, 2012, Shawn Guo wrote:
> From: Richard Zhao <richard.zhao@freescale.com>
> 
> With ARM smp common code recalculating loops_per_jiffy in a cpufreq
> transiton notifier call, the loops_per_jiffy recalculate in omap-cpufreq
> driver becomes redundant.  Remove it.
> 
> Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>

I suppose that Kevin is going to handle this, right?

Kevin, if you want me to pull new material for v3.7, it's about time to get
it ready.

Thanks,
Rafael


> ---
>  drivers/cpufreq/omap-cpufreq.c |   35 -----------------------------------
>  1 files changed, 0 insertions(+), 35 deletions(-)
> 
> diff --git a/drivers/cpufreq/omap-cpufreq.c b/drivers/cpufreq/omap-cpufreq.c
> index 17fa04d..83a78ad 100644
> --- a/drivers/cpufreq/omap-cpufreq.c
> +++ b/drivers/cpufreq/omap-cpufreq.c
> @@ -40,16 +40,6 @@
>  /* OPP tolerance in percentage */
>  #define	OPP_TOLERANCE	4
>  
> -#ifdef CONFIG_SMP
> -struct lpj_info {
> -	unsigned long	ref;
> -	unsigned int	freq;
> -};
> -
> -static DEFINE_PER_CPU(struct lpj_info, lpj_ref);
> -static struct lpj_info global_lpj_ref;
> -#endif
> -
>  static struct cpufreq_frequency_table *freq_table;
>  static atomic_t freq_table_users = ATOMIC_INIT(0);
>  static struct clk *mpu_clk;
> @@ -161,31 +151,6 @@ static int omap_target(struct cpufreq_policy *policy,
>  	}
>  
>  	freqs.new = omap_getspeed(policy->cpu);
> -#ifdef CONFIG_SMP
> -	/*
> -	 * Note that loops_per_jiffy is not updated on SMP systems in
> -	 * cpufreq driver. So, update the per-CPU loops_per_jiffy value
> -	 * on frequency transition. We need to update all dependent CPUs.
> -	 */
> -	for_each_cpu(i, policy->cpus) {
> -		struct lpj_info *lpj = &per_cpu(lpj_ref, i);
> -		if (!lpj->freq) {
> -			lpj->ref = per_cpu(cpu_data, i).loops_per_jiffy;
> -			lpj->freq = freqs.old;
> -		}
> -
> -		per_cpu(cpu_data, i).loops_per_jiffy =
> -			cpufreq_scale(lpj->ref, lpj->freq, freqs.new);
> -	}
> -
> -	/* And don't forget to adjust the global one */
> -	if (!global_lpj_ref.freq) {
> -		global_lpj_ref.ref = loops_per_jiffy;
> -		global_lpj_ref.freq = freqs.old;
> -	}
> -	loops_per_jiffy = cpufreq_scale(global_lpj_ref.ref, global_lpj_ref.freq,
> -					freqs.new);
> -#endif
>  
>  done:
>  	/* notifiers */
> 

  reply	other threads:[~2012-09-07 19:15 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-07  1:23 [PATCH] cpufreq: OMAP: remove loops_per_jiffy recalculate for smp Shawn Guo
2012-09-07  1:23 ` Shawn Guo
2012-09-07 19:15 ` Rafael J. Wysocki [this message]
2012-09-07 19:15   ` Rafael J. Wysocki
2012-09-14 14:21   ` Kevin Hilman
2012-09-14 14:21     ` Kevin Hilman
2012-09-14 19:01     ` Rafael J. Wysocki
2012-09-14 19:01       ` Rafael J. Wysocki

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=201209072115.08252.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=cpufreq@vger.kernel.org \
    --cc=khilman@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=richard.zhao@freescale.com \
    --cc=santosh.shilimkar@ti.com \
    --cc=shawn.guo@linaro.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.