Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
[pandora-kernel.git] / drivers / cpufreq / Kconfig
1 config CPU_FREQ
2         bool "CPU Frequency scaling"
3         help
4           CPU Frequency scaling allows you to change the clock speed of 
5           CPUs on the fly. This is a nice method to save power, because 
6           the lower the CPU clock speed, the less power the CPU consumes.
7
8           Note that this driver doesn't automatically change the CPU
9           clock speed, you need to either enable a dynamic cpufreq governor
10           (see below) after boot, or use a userspace tool.
11
12           To compile this driver as a module, choose M here: the
13           module will be called cpufreq.
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_DEBUG
25         bool "Enable CPUfreq debugging"
26         help
27           Say Y here to enable CPUfreq subsystem (including drivers)
28           debugging. You will need to activate it via the kernel
29           command line by passing
30              cpufreq.debug=<value>
31
32           To get <value>, add 
33                1 to activate CPUfreq core debugging,
34                2 to activate CPUfreq drivers debugging, and
35                4 to activate CPUfreq governor debugging
36
37 config CPU_FREQ_STAT
38         tristate "CPU frequency translation statistics"
39         select CPU_FREQ_TABLE
40         default y
41         help
42           This driver exports CPU frequency statistics information through sysfs
43           file system.
44
45           To compile this driver as a module, choose M here: the
46           module will be called cpufreq_stats.
47
48           If in doubt, say N.
49
50 config CPU_FREQ_STAT_DETAILS
51         bool "CPU frequency translation statistics details"
52         depends on CPU_FREQ_STAT
53         help
54           This will show detail CPU frequency translation table in sysfs file
55           system.
56
57           If in doubt, say N.
58
59 choice
60         prompt "Default CPUFreq governor"
61         default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110
62         default CPU_FREQ_DEFAULT_GOV_PERFORMANCE
63         help
64           This option sets which CPUFreq governor shall be loaded at
65           startup. If in doubt, select 'performance'.
66
67 config CPU_FREQ_DEFAULT_GOV_PERFORMANCE
68         bool "performance"
69         select CPU_FREQ_GOV_PERFORMANCE
70         help
71           Use the CPUFreq governor 'performance' as default. This sets
72           the frequency statically to the highest frequency supported by
73           the CPU.
74
75 config CPU_FREQ_DEFAULT_GOV_USERSPACE
76         bool "userspace"
77         select CPU_FREQ_GOV_USERSPACE
78         help
79           Use the CPUFreq governor 'userspace' as default. This allows
80           you to set the CPU frequency manually or when an userspace 
81           program shall be able to set the CPU dynamically without having
82           to enable the userspace governor manually.
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.
107 endchoice
108
109 config CPU_FREQ_GOV_PERFORMANCE
110         tristate "'performance' governor"
111         help
112           This cpufreq governor sets the frequency statically to the
113           highest available CPU frequency.
114
115           To compile this driver as a module, choose M here: the
116           module will be called cpufreq_performance.
117
118           If in doubt, say Y.
119
120 config CPU_FREQ_GOV_POWERSAVE
121         tristate "'powersave' governor"
122         help
123           This cpufreq governor sets the frequency statically to the
124           lowest available CPU frequency.
125
126           To compile this driver as a module, choose M here: the
127           module will be called cpufreq_powersave.
128
129           If in doubt, say Y.
130
131 config CPU_FREQ_GOV_USERSPACE
132         tristate "'userspace' governor for userspace frequency scaling"
133         help
134           Enable this cpufreq governor when you either want to set the
135           CPU frequency manually or when an userspace program shall
136           be able to set the CPU dynamically, like on LART 
137           <http://www.lartmaker.nl/>.
138
139           To compile this driver as a module, choose M here: the
140           module will be called cpufreq_userspace.
141
142           For details, take a look at <file:Documentation/cpu-freq/>.
143
144           If in doubt, say Y.
145
146 config CPU_FREQ_GOV_ONDEMAND
147         tristate "'ondemand' cpufreq policy governor"
148         select CPU_FREQ_TABLE
149         help
150           'ondemand' - This driver adds a dynamic cpufreq policy governor.
151           The governor does a periodic polling and 
152           changes frequency based on the CPU utilization.
153           The support for this governor depends on CPU capability to
154           do fast frequency switching (i.e, very low latency frequency
155           transitions). 
156
157           To compile this driver as a module, choose M here: the
158           module will be called cpufreq_ondemand.
159
160           For details, take a look at linux/Documentation/cpu-freq.
161
162           If in doubt, say N.
163
164 config CPU_FREQ_GOV_CONSERVATIVE
165         tristate "'conservative' cpufreq governor"
166         depends on CPU_FREQ
167         help
168           'conservative' - this driver is rather similar to the 'ondemand'
169           governor both in its source code and its purpose, the difference is
170           its optimisation for better suitability in a battery powered
171           environment.  The frequency is gracefully increased and decreased
172           rather than jumping to 100% when speed is required.
173
174           If you have a desktop machine then you should really be considering
175           the 'ondemand' governor instead, however if you are using a laptop,
176           PDA or even an AMD64 based computer (due to the unacceptable
177           step-by-step latency issues between the minimum and maximum frequency
178           transitions in the CPU) you will probably want to use this governor.
179
180           To compile this driver as a module, choose M here: the
181           module will be called cpufreq_conservative.
182
183           For details, take a look at linux/Documentation/cpu-freq.
184
185           If in doubt, say N.
186
187 endif   # CPU_FREQ