diff options
Diffstat (limited to 'drivers/cpufreq/spear-cpufreq.c')
-rw-r--r-- | drivers/cpufreq/spear-cpufreq.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/cpufreq/spear-cpufreq.c b/drivers/cpufreq/spear-cpufreq.c index 4575cfe41755..7e4d77327957 100644 --- a/drivers/cpufreq/spear-cpufreq.c +++ b/drivers/cpufreq/spear-cpufreq.c | |||
@@ -30,7 +30,7 @@ static struct { | |||
30 | u32 cnt; | 30 | u32 cnt; |
31 | } spear_cpufreq; | 31 | } spear_cpufreq; |
32 | 32 | ||
33 | int spear_cpufreq_verify(struct cpufreq_policy *policy) | 33 | static int spear_cpufreq_verify(struct cpufreq_policy *policy) |
34 | { | 34 | { |
35 | return cpufreq_frequency_table_verify(policy, spear_cpufreq.freq_tbl); | 35 | return cpufreq_frequency_table_verify(policy, spear_cpufreq.freq_tbl); |
36 | } | 36 | } |
@@ -157,7 +157,9 @@ static int spear_cpufreq_target(struct cpufreq_policy *policy, | |||
157 | 157 | ||
158 | freqs.new = newfreq / 1000; | 158 | freqs.new = newfreq / 1000; |
159 | freqs.new /= mult; | 159 | freqs.new /= mult; |
160 | cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE); | 160 | |
161 | for_each_cpu(freqs.cpu, policy->cpus) | ||
162 | cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE); | ||
161 | 163 | ||
162 | if (mult == 2) | 164 | if (mult == 2) |
163 | ret = spear1340_set_cpu_rate(srcclk, newfreq); | 165 | ret = spear1340_set_cpu_rate(srcclk, newfreq); |
@@ -170,7 +172,8 @@ static int spear_cpufreq_target(struct cpufreq_policy *policy, | |||
170 | freqs.new = clk_get_rate(spear_cpufreq.clk) / 1000; | 172 | freqs.new = clk_get_rate(spear_cpufreq.clk) / 1000; |
171 | } | 173 | } |
172 | 174 | ||
173 | cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); | 175 | for_each_cpu(freqs.cpu, policy->cpus) |
176 | cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); | ||
174 | return ret; | 177 | return ret; |
175 | } | 178 | } |
176 | 179 | ||
@@ -188,8 +191,7 @@ static int spear_cpufreq_init(struct cpufreq_policy *policy) | |||
188 | policy->cpuinfo.transition_latency = spear_cpufreq.transition_latency; | 191 | policy->cpuinfo.transition_latency = spear_cpufreq.transition_latency; |
189 | policy->cur = spear_cpufreq_get(0); | 192 | policy->cur = spear_cpufreq_get(0); |
190 | 193 | ||
191 | cpumask_copy(policy->cpus, topology_core_cpumask(policy->cpu)); | 194 | cpumask_setall(policy->cpus); |
192 | cpumask_copy(policy->related_cpus, policy->cpus); | ||
193 | 195 | ||
194 | return 0; | 196 | return 0; |
195 | } | 197 | } |