]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - arch/cris/arch-v32/mach-fs/cpufreq.c
cpufreq: Notify all policy->cpus in cpufreq_notify_transition()
[mirror_ubuntu-bionic-kernel.git] / arch / cris / arch-v32 / mach-fs / cpufreq.c
index d92cf70d1cbe376208316f73810cf55fd9b0fc10..12952235d5dbc69bc6f83c0efb34bd7c8663f253 100644 (file)
@@ -27,20 +27,17 @@ static unsigned int cris_freq_get_cpu_frequency(unsigned int cpu)
        return clk_ctrl.pll ? 200000 : 6000;
 }
 
-static void cris_freq_set_cpu_state(unsigned int state)
+static void cris_freq_set_cpu_state(struct cpufreq_policy *policy,
+               unsigned int state)
 {
-       int i;
        struct cpufreq_freqs freqs;
        reg_config_rw_clk_ctrl clk_ctrl;
        clk_ctrl = REG_RD(config, regi_config, rw_clk_ctrl);
 
-       for_each_possible_cpu(i) {
-               freqs.old = cris_freq_get_cpu_frequency(i);
-               freqs.new = cris_freq_table[state].frequency;
-               freqs.cpu = i;
-       }
+       freqs.old = cris_freq_get_cpu_frequency(policy->cpu);
+       freqs.new = cris_freq_table[state].frequency;
 
-       cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE);
+       cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE);
 
        local_irq_disable();
 
@@ -54,7 +51,7 @@ static void cris_freq_set_cpu_state(unsigned int state)
 
        local_irq_enable();
 
-       cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE);
+       cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE);
 };
 
 static int cris_freq_verify(struct cpufreq_policy *policy)
@@ -71,7 +68,7 @@ static int cris_freq_target(struct cpufreq_policy *policy,
            (policy, cris_freq_table, target_freq, relation, &newstate))
                return -EINVAL;
 
-       cris_freq_set_cpu_state(newstate);
+       cris_freq_set_cpu_state(policy, newstate);
 
        return 0;
 }