|
@@ -357,13 +357,13 @@ static unsigned int g5_cpufreq_get_speed(unsigned int cpu)
|
|
|
|
|
|
static int g5_cpufreq_cpu_init(struct cpufreq_policy *policy)
|
|
|
{
|
|
|
- if (policy->cpu != 0)
|
|
|
- return -ENODEV;
|
|
|
-
|
|
|
policy->governor = CPUFREQ_DEFAULT_GOVERNOR;
|
|
|
policy->cpuinfo.transition_latency = CPUFREQ_ETERNAL;
|
|
|
policy->cur = g5_cpu_freqs[g5_query_freq()].frequency;
|
|
|
- policy->cpus = cpu_possible_map;
|
|
|
+ /* secondary CPUs are tied to the primary one by the
|
|
|
+ * cpufreq core if in the secondary policy we tell it that
|
|
|
+ * it actually must be one policy together with all others. */
|
|
|
+ policy->cpus = cpu_online_map;
|
|
|
cpufreq_frequency_table_get_attr(g5_cpu_freqs, policy->cpu);
|
|
|
|
|
|
return cpufreq_frequency_table_cpuinfo(policy,
|