diff options
author | Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> | 2015-12-01 16:52:14 -0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2015-12-02 23:50:33 +0100 |
commit | 69030dd1c3671625c6f766af0b64a4bb4409ac3b (patch) | |
tree | 9d7d4ecc711c024b79b9fe2d39500acf4393a5a1 /include | |
parent | 584ee3dcb1d6232857c1e38bb28d9f6bf0ec89f5 (diff) | |
download | lwn-69030dd1c3671625c6f766af0b64a4bb4409ac3b.tar.gz lwn-69030dd1c3671625c6f766af0b64a4bb4409ac3b.zip |
cpufreq: use last policy after online for drivers with ->setpolicy
For cpufreq drivers which use setpolicy interface, after offline->online
the policy is set to default. This can be reproduced by setting the
default policy of intel_pstate or longrun to ondemand and then change to
"performance". After offline and online, the setpolicy will be called with
the policy=ondemand.
For drivers using governors this condition is handled by storing
last_governor, during offline and restoring during online. The same should
be done for drivers using setpolicy interface. Storing last_policy during
offline and restoring during online.
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/cpufreq.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h index ef4c5b1a860f..177c7680c1a8 100644 --- a/include/linux/cpufreq.h +++ b/include/linux/cpufreq.h @@ -77,6 +77,7 @@ struct cpufreq_policy { unsigned int suspend_freq; /* freq to set during suspend */ unsigned int policy; /* see above */ + unsigned int last_policy; /* policy before unplug */ struct cpufreq_governor *governor; /* see below */ void *governor_data; bool governor_enabled; /* governor start/stop flag */ |