From: Anson Huang Date: Mon, 10 Sep 2012 18:41:54 +0000 (+0800) Subject: ENGR00223450 [MX6]Fix secondary cores BogoMIPs error X-Git-Tag: v3.0.35-fsl~482 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=f969dcc8f61a5fc861b11db885971d95f0165f52;p=karo-tx-linux.git ENGR00223450 [MX6]Fix secondary cores BogoMIPs error After doing some suspend/resuem test, secondary cores BogoMIPs will be wrong, the root cause is that when cpufreq is changed, we only update the online cpus' loops_per_jiffy, and when secondary cores back to online, we skip the loops_per_jiffy calibration. During suspend/resume, the cpufreq can be changed during disabling/enabling secondary cores, which will make secondary cores loops_per_jiffy wrong, so here we need to update all possible cpus' loops_per_jiffy when cpufreq is changed. Signed-off-by: Anson Huang --- diff --git a/arch/arm/plat-mxc/cpufreq.c b/arch/arm/plat-mxc/cpufreq.c index 7a06aaec02e7..e7278d9501a5 100755 --- a/arch/arm/plat-mxc/cpufreq.c +++ b/arch/arm/plat-mxc/cpufreq.c @@ -219,7 +219,7 @@ static int mxc_set_target(struct cpufreq_policy *policy, * So update it for all CPUs. */ - for_each_cpu(i, policy->cpus) + for_each_possible_cpu(i) per_cpu(cpu_data, i).loops_per_jiffy = cpufreq_scale(per_cpu(cpu_data, i).loops_per_jiffy, freqs.old, freqs.new);