Allow use of the powersave governor as the default one
PATCH 1/1 Allow use of the powersave governor as the default one
Allow use of the powersave cpufreq governor as the default one for EMBEDDED configs.
Signed-off-by Alessandro Guido <[email protected]>
---
drivers/cpufreq/Kconfig | 9 +++++++++ drivers/cpufreq/cpufreq_powersave.c | 8 ++++++-- include/linux/cpufreq.h | 3 +++ 3 files changed, 18 insertions(+), 2 deletions(-)
drivers/cpufreq/Kconfig +9 -0
@@ -69,6 +69,15 @@ config CPU_FREQ_DEFAULT_GOV_PERFORMANCE the frequency statically to the highest frequency supported by the CPU. +config CPU_FREQ_DEFAULT_GOV_POWERSAVE + bool "powersave" + depends on EMBEDDED + select CPU_FREQ_GOV_POWERSAVE + help + Use the CPUFreq governor 'powersave' as default. This sets + the frequency statically to the lowest frequency supported by + the CPU. + config CPU_FREQ_DEFAULT_GOV_USERSPACE bool "userspace" select CPU_FREQ_GOV_USERSPACE
drivers/cpufreq/cpufreq_powersave.c +6 -2
@@ -35,12 +35,12 @@ static int cpufreq_governor_powersave(struct cpufreq_policy *policy,return 0 ; } -static struct cpufreq_governor cpufreq_gov_powersave = { +struct cpufreq_governor cpufreq_gov_powersave = { .name ="powersave" , .governor = cpufreq_governor_powersave, .owner =THIS_MODULE , }; - +EXPORT_SYMBOL (cpufreq_gov_powersave);static int __init cpufreq_gov_powersave_init (void ) {
@@ -58,5 +58,9 @@ MODULE_AUTHOR("Dominik Brodowski <[email protected]>");MODULE_DESCRIPTION ("CPUfreq policy governor 'powersave'" );MODULE_LICENSE ("GPL" ); +#ifdef CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE +fs_initcall (cpufreq_gov_powersave_init); +#else module_init (cpufreq_gov_powersave_init); +#endif module_exit (cpufreq_gov_powersave_exit);
include/linux/cpufreq.h +3 -0
@@ -307,6 +307,9 @@ extern struct cpufreq_governor cpufreq_gov_performance;#endif #ifdef CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE #define CPUFREQ_DEFAULT_GOVERNOR (&cpufreq_gov_performance) +#elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE ) +extern struct cpufreq_governor cpufreq_gov_powersave; +#define CPUFREQ_DEFAULT_GOVERNOR (&cpufreq_gov_powersave)#elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE )extern struct cpufreq_governor cpufreq_gov_userspace;#define CPUFREQ_DEFAULT_GOVERNOR (&cpufreq_gov_userspace)