diff options
author | Thomas Renninger <trenn@suse.de> | 2007-10-02 16:28:12 -0400 |
---|---|---|
committer | Dave Jones <davej@redhat.com> | 2007-10-04 18:40:57 -0400 |
commit | 1c2562459faedc35927546cfa5273ec6c2884cce (patch) | |
tree | a6133aa5c0ac2b4a8cb12fa37c28e755a458aef0 /drivers/cpufreq/Kconfig | |
parent | 8122c6cea033e8034e99d3b10a4e3f377ce23994 (diff) |
[CPUFREQ] allow ondemand and conservative cpufreq governors to be used as default
Depending on the transition latency of the HW for cpufreq switches, the
ondemand or conservative governor cannot be used with certain cpufreq
drivers. Still the ondemand should be the default governor on a wide range
of systems. This patch allows this and lets the governor fallback to the
performance governor at cpufreq driver load time, if the driver does not
support fast enough frequency switching.
Main benefit is that on e.g. installation or other systems without
userspace support a working dynamic cpufreq support can be achieved on most
systems by simply loading the cpufreq driver. This is especially essential
for recent x86(_64) laptop hardware which may rely on working dynamic
cpufreq OS support.
Signed-off-by: Thomas Renninger <trenn@suse.de>
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Bryan Wu <bryan.wu@analog.com>
Cc: Andi Kleen <ak@suse.de>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dave Jones <davej@redhat.com>
Diffstat (limited to 'drivers/cpufreq/Kconfig')
-rw-r--r-- | drivers/cpufreq/Kconfig | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig index 993fa7b89253..721f86f4f008 100644 --- a/drivers/cpufreq/Kconfig +++ b/drivers/cpufreq/Kconfig | |||
@@ -56,10 +56,6 @@ config CPU_FREQ_STAT_DETAILS | |||
56 | 56 | ||
57 | If in doubt, say N. | 57 | If in doubt, say N. |
58 | 58 | ||
59 | # Note that it is not currently possible to set the other governors (such as ondemand) | ||
60 | # as the default, since if they fail to initialise, cpufreq will be | ||
61 | # left in an undefined state. | ||
62 | |||
63 | choice | 59 | choice |
64 | prompt "Default CPUFreq governor" | 60 | prompt "Default CPUFreq governor" |
65 | default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110 | 61 | default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110 |
@@ -85,6 +81,29 @@ config CPU_FREQ_DEFAULT_GOV_USERSPACE | |||
85 | program shall be able to set the CPU dynamically without having | 81 | program shall be able to set the CPU dynamically without having |
86 | to enable the userspace governor manually. | 82 | to enable the userspace governor manually. |
87 | 83 | ||
84 | config CPU_FREQ_DEFAULT_GOV_ONDEMAND | ||
85 | bool "ondemand" | ||
86 | select CPU_FREQ_GOV_ONDEMAND | ||
87 | select CPU_FREQ_GOV_PERFORMANCE | ||
88 | help | ||
89 | Use the CPUFreq governor 'ondemand' as default. This allows | ||
90 | you to get a full dynamic frequency capable system by simply | ||
91 | loading your cpufreq low-level hardware driver. | ||
92 | Be aware that not all cpufreq drivers support the ondemand | ||
93 | governor. If unsure have a look at the help section of the | ||
94 | driver. Fallback governor will be the performance governor. | ||
95 | |||
96 | config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE | ||
97 | bool "conservative" | ||
98 | select CPU_FREQ_GOV_CONSERVATIVE | ||
99 | select CPU_FREQ_GOV_PERFORMANCE | ||
100 | help | ||
101 | Use the CPUFreq governor 'conservative' as default. This allows | ||
102 | you to get a full dynamic frequency capable system by simply | ||
103 | loading your cpufreq low-level hardware driver. | ||
104 | Be aware that not all cpufreq drivers support the conservative | ||
105 | governor. If unsure have a look at the help section of the | ||
106 | driver. Fallback governor will be the performance governor. | ||
88 | endchoice | 107 | endchoice |
89 | 108 | ||
90 | config CPU_FREQ_GOV_PERFORMANCE | 109 | config CPU_FREQ_GOV_PERFORMANCE |