[CPUFREQ] _PPC frequency change issues
BIOS might change frequency behind our back when BIOS changes allowed frequencies via _PPC. In this case cpufreq core got out of sync. Ask driver for current freq and notify governors about a change Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Dave Jones <davej@redhat.com>
This commit is contained in:
committed by
Dave Jones
parent
c70ca00f77
commit
0961dd0d21
@@ -1429,6 +1429,14 @@ int cpufreq_update_policy(unsigned int cpu)
|
|||||||
policy.policy = data->user_policy.policy;
|
policy.policy = data->user_policy.policy;
|
||||||
policy.governor = data->user_policy.governor;
|
policy.governor = data->user_policy.governor;
|
||||||
|
|
||||||
|
/* BIOS might change freq behind our back
|
||||||
|
-> ask driver for current freq and notify governors about a change */
|
||||||
|
if (cpufreq_driver->get) {
|
||||||
|
policy.cur = cpufreq_driver->get(cpu);
|
||||||
|
if (data->cur != policy.cur)
|
||||||
|
cpufreq_out_of_sync(cpu, data->cur, policy.cur);
|
||||||
|
}
|
||||||
|
|
||||||
ret = __cpufreq_set_policy(data, &policy);
|
ret = __cpufreq_set_policy(data, &policy);
|
||||||
|
|
||||||
mutex_unlock(&data->lock);
|
mutex_unlock(&data->lock);
|
||||||
|
Reference in New Issue
Block a user