aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/cpufreq/freq_table.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/cpufreq/freq_table.c')
-rw-r--r--drivers/cpufreq/freq_table.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/cpufreq/freq_table.c b/drivers/cpufreq/freq_table.c
index 49cda256efb2..d7a79662e24c 100644
--- a/drivers/cpufreq/freq_table.c
+++ b/drivers/cpufreq/freq_table.c
@@ -63,9 +63,6 @@ int cpufreq_frequency_table_verify(struct cpufreq_policy *policy,
63 pr_debug("request for verification of policy (%u - %u kHz) for cpu %u\n", 63 pr_debug("request for verification of policy (%u - %u kHz) for cpu %u\n",
64 policy->min, policy->max, policy->cpu); 64 policy->min, policy->max, policy->cpu);
65 65
66 if (!cpu_online(policy->cpu))
67 return -EINVAL;
68
69 cpufreq_verify_within_limits(policy, policy->cpuinfo.min_freq, 66 cpufreq_verify_within_limits(policy, policy->cpuinfo.min_freq,
70 policy->cpuinfo.max_freq); 67 policy->cpuinfo.max_freq);
71 68
@@ -121,9 +118,6 @@ int cpufreq_frequency_table_target(struct cpufreq_policy *policy,
121 break; 118 break;
122 } 119 }
123 120
124 if (!cpu_online(policy->cpu))
125 return -EINVAL;
126
127 for (i = 0; (table[i].frequency != CPUFREQ_TABLE_END); i++) { 121 for (i = 0; (table[i].frequency != CPUFREQ_TABLE_END); i++) {
128 unsigned int freq = table[i].frequency; 122 unsigned int freq = table[i].frequency;
129 if (freq == CPUFREQ_ENTRY_INVALID) 123 if (freq == CPUFREQ_ENTRY_INVALID)
@@ -227,6 +221,15 @@ void cpufreq_frequency_table_put_attr(unsigned int cpu)
227} 221}
228EXPORT_SYMBOL_GPL(cpufreq_frequency_table_put_attr); 222EXPORT_SYMBOL_GPL(cpufreq_frequency_table_put_attr);
229 223
224void cpufreq_frequency_table_update_policy_cpu(struct cpufreq_policy *policy)
225{
226 pr_debug("Updating show_table for new_cpu %u from last_cpu %u\n",
227 policy->cpu, policy->last_cpu);
228 per_cpu(cpufreq_show_table, policy->cpu) = per_cpu(cpufreq_show_table,
229 policy->last_cpu);
230 per_cpu(cpufreq_show_table, policy->last_cpu) = NULL;
231}
232
230struct cpufreq_frequency_table *cpufreq_frequency_get_table(unsigned int cpu) 233struct cpufreq_frequency_table *cpufreq_frequency_get_table(unsigned int cpu)
231{ 234{
232 return per_cpu(cpufreq_show_table, cpu); 235 return per_cpu(cpufreq_show_table, cpu);