- Update Xen patches to 3.3-rc5 and c/s 1157.
[linux-flexiantxendom0-3.2.10.git] / drivers / cpufreq / Kconfig
1 menu "CPU Frequency scaling"
2
3 config CPU_FREQ
4         bool "CPU Frequency scaling"
5         depends on !PROCESSOR_EXTERNAL_CONTROL
6         help
7           CPU Frequency scaling allows you to change the clock speed of 
8           CPUs on the fly. This is a nice method to save power, because 
9           the lower the CPU clock speed, the less power the CPU consumes.
10
11           Note that this driver doesn't automatically change the CPU
12           clock speed, you need to either enable a dynamic cpufreq governor
13           (see below) after boot, or use a userspace tool.
14
15           For details, take a look at <file:Documentation/cpu-freq>.
16
17           If in doubt, say N.
18
19 if CPU_FREQ
20
21 config CPU_FREQ_TABLE
22         tristate
23
24 config CPU_FREQ_STAT
25         tristate "CPU frequency translation statistics"
26         select CPU_FREQ_TABLE
27         default y
28         help
29           This driver exports CPU frequency statistics information through sysfs
30           file system.
31
32           To compile this driver as a module, choose M here: the
33           module will be called cpufreq_stats.
34
35           If in doubt, say N.
36
37 config CPU_FREQ_STAT_DETAILS
38         bool "CPU frequency translation statistics details"
39         depends on CPU_FREQ_STAT
40         help
41           This will show detail CPU frequency translation table in sysfs file
42           system.
43
44           If in doubt, say N.
45
46 choice
47         prompt "Default CPUFreq governor"
48         default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110
49         default CPU_FREQ_DEFAULT_GOV_PERFORMANCE
50         help
51           This option sets which CPUFreq governor shall be loaded at
52           startup. If in doubt, select 'performance'.
53
54 config CPU_FREQ_DEFAULT_GOV_PERFORMANCE
55         bool "performance"
56         select CPU_FREQ_GOV_PERFORMANCE
57         help
58           Use the CPUFreq governor 'performance' as default. This sets
59           the frequency statically to the highest frequency supported by
60           the CPU.
61
62 config CPU_FREQ_DEFAULT_GOV_POWERSAVE
63         bool "powersave"
64         depends on EXPERT
65         select CPU_FREQ_GOV_POWERSAVE
66         help
67           Use the CPUFreq governor 'powersave' as default. This sets
68           the frequency statically to the lowest frequency supported by
69           the CPU.
70
71 config CPU_FREQ_DEFAULT_GOV_USERSPACE
72         bool "userspace"
73         select CPU_FREQ_GOV_USERSPACE
74         help
75           Use the CPUFreq governor 'userspace' as default. This allows
76           you to set the CPU frequency manually or when a userspace 
77           program shall be able to set the CPU dynamically without having
78           to enable the userspace governor manually.
79
80 config CPU_FREQ_DEFAULT_GOV_ONDEMAND
81         bool "ondemand"
82         select CPU_FREQ_GOV_ONDEMAND
83         select CPU_FREQ_GOV_PERFORMANCE
84         help
85           Use the CPUFreq governor 'ondemand' as default. This allows
86           you to get a full dynamic frequency capable system by simply
87           loading your cpufreq low-level hardware driver.
88           Be aware that not all cpufreq drivers support the ondemand
89           governor. If unsure have a look at the help section of the
90           driver. Fallback governor will be the performance governor.
91
92 config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE
93         bool "conservative"
94         select CPU_FREQ_GOV_CONSERVATIVE
95         select CPU_FREQ_GOV_PERFORMANCE
96         help
97           Use the CPUFreq governor 'conservative' as default. This allows
98           you to get a full dynamic frequency capable system by simply
99           loading your cpufreq low-level hardware driver.
100           Be aware that not all cpufreq drivers support the conservative
101           governor. If unsure have a look at the help section of the
102           driver. Fallback governor will be the performance governor.
103 endchoice
104
105 config CPU_FREQ_GOV_PERFORMANCE
106         tristate "'performance' governor"
107         help
108           This cpufreq governor sets the frequency statically to the
109           highest available CPU frequency.
110
111           To compile this driver as a module, choose M here: the
112           module will be called cpufreq_performance.
113
114           If in doubt, say Y.
115
116 config CPU_FREQ_GOV_POWERSAVE
117         tristate "'powersave' governor"
118         help
119           This cpufreq governor sets the frequency statically to the
120           lowest available CPU frequency.
121
122           To compile this driver as a module, choose M here: the
123           module will be called cpufreq_powersave.
124
125           If in doubt, say Y.
126
127 config CPU_FREQ_GOV_USERSPACE
128         tristate "'userspace' governor for userspace frequency scaling"
129         help
130           Enable this cpufreq governor when you either want to set the
131           CPU frequency manually or when a userspace program shall
132           be able to set the CPU dynamically, like on LART 
133           <http://www.lartmaker.nl/>.
134
135           To compile this driver as a module, choose M here: the
136           module will be called cpufreq_userspace.
137
138           For details, take a look at <file:Documentation/cpu-freq/>.
139
140           If in doubt, say Y.
141
142 config CPU_FREQ_GOV_ONDEMAND
143         tristate "'ondemand' cpufreq policy governor"
144         select CPU_FREQ_TABLE
145         help
146           'ondemand' - This driver adds a dynamic cpufreq policy governor.
147           The governor does a periodic polling and 
148           changes frequency based on the CPU utilization.
149           The support for this governor depends on CPU capability to
150           do fast frequency switching (i.e, very low latency frequency
151           transitions). 
152
153           To compile this driver as a module, choose M here: the
154           module will be called cpufreq_ondemand.
155
156           For details, take a look at linux/Documentation/cpu-freq.
157
158           If in doubt, say N.
159
160 config CPU_FREQ_GOV_CONSERVATIVE
161         tristate "'conservative' cpufreq governor"
162         depends on CPU_FREQ
163         help
164           'conservative' - this driver is rather similar to the 'ondemand'
165           governor both in its source code and its purpose, the difference is
166           its optimisation for better suitability in a battery powered
167           environment.  The frequency is gracefully increased and decreased
168           rather than jumping to 100% when speed is required.
169
170           If you have a desktop machine then you should really be considering
171           the 'ondemand' governor instead, however if you are using a laptop,
172           PDA or even an AMD64 based computer (due to the unacceptable
173           step-by-step latency issues between the minimum and maximum frequency
174           transitions in the CPU) you will probably want to use this governor.
175
176           To compile this driver as a module, choose M here: the
177           module will be called cpufreq_conservative.
178
179           For details, take a look at linux/Documentation/cpu-freq.
180
181           If in doubt, say N.
182
183 menu "x86 CPU frequency scaling drivers"
184 depends on X86
185 source "drivers/cpufreq/Kconfig.x86"
186 endmenu
187
188 menu "ARM CPU frequency scaling drivers"
189 depends on ARM
190 source "drivers/cpufreq/Kconfig.arm"
191 endmenu
192
193 menu "PowerPC CPU frequency scaling drivers"
194 depends on PPC32 || PPC64
195 source "drivers/cpufreq/Kconfig.powerpc"
196 endmenu
197
198 endif
199 endmenu