diff --git a/drivers/amlogic/cpufreq/meson-cpufreq.c b/drivers/amlogic/cpufreq/meson-cpufreq.c index 14d376f44ed8..3251266c5fc7 100644 --- a/drivers/amlogic/cpufreq/meson-cpufreq.c +++ b/drivers/amlogic/cpufreq/meson-cpufreq.c @@ -217,7 +217,7 @@ static int meson_cpufreq_set_target(struct cpufreq_policy *policy, struct meson_cpufreq_driver_data *cpufreq_data; struct device *cpu_dev; struct regulator *cpu_reg; - struct cpufreq_freqs freqs[MAX_CLUSTERS]; + struct cpufreq_freqs freqs; int ret = 0; if (!policy) { @@ -270,9 +270,9 @@ static int meson_cpufreq_set_target(struct cpufreq_policy *policy, } } - freqs[cur_cluster].old = freq_old / 1000; - freqs[cur_cluster].new = freq_new / 1000; - cpufreq_freq_transition_begin(policy, &freqs[cur_cluster]); + freqs.old = freq_old / 1000; + freqs.new = freq_new / 1000; + cpufreq_freq_transition_begin(policy, &freqs); /*scale clock frequency*/ ret = meson_cpufreq_set_rate(policy, cur_cluster, freq_new / 1000); @@ -287,7 +287,7 @@ static int meson_cpufreq_set_target(struct cpufreq_policy *policy, return ret; } - cpufreq_freq_transition_end(policy, &freqs[cur_cluster], ret); + cpufreq_freq_transition_end(policy, &freqs, ret); /*cpufreq down,change voltage after frequency*/ if (freq_new < freq_old) { ret = meson_regulator_set_volate(cpu_reg, volt_old, @@ -295,15 +295,15 @@ static int meson_cpufreq_set_target(struct cpufreq_policy *policy, if (ret) { pr_err("failed to scale volt %u %u down: %d\n", volt_new, volt_tol, ret); - freqs[cur_cluster].old = freq_new / 1000; - freqs[cur_cluster].new = freq_old / 1000; + freqs.old = freq_new / 1000; + freqs.new = freq_old / 1000; cpufreq_freq_transition_begin(policy, - &freqs[cur_cluster]); + &freqs); ret = meson_cpufreq_set_rate(policy, cur_cluster, freq_old / 1000); cpufreq_freq_transition_end(policy, - &freqs[cur_cluster], ret); + &freqs, ret); } }