From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rafael J. Wysocki" Subject: Re: [PATCH] cpufreq: OMAP: remove loops_per_jiffy recalculate for smp Date: Fri, 7 Sep 2012 21:15:08 +0200 Message-ID: <201209072115.08252.rjw@sisk.pl> References: <1346981022-28011-1-git-send-email-shawn.guo@linaro.org> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1346981022-28011-1-git-send-email-shawn.guo@linaro.org> Sender: cpufreq-owner@vger.kernel.org List-ID: Content-Type: Text/Plain; charset="us-ascii" To: Shawn Guo , Kevin Hilman Cc: Santosh Shilimkar , cpufreq@vger.kernel.org, linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Richard Zhao On Friday, September 07, 2012, Shawn Guo wrote: > From: Richard Zhao > > 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 > Acked-by: Santosh Shilimkar > Signed-off-by: Shawn Guo 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 */ >