Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6-block.git] / drivers / cpufreq / Kconfig
CommitLineData
1da177e4
LT
1config 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
9101be53
MF
12 To compile this driver as a module, choose M here: the
13 module will be called cpufreq.
14
1da177e4
LT
15 For details, take a look at <file:Documentation/cpu-freq>.
16
17 If in doubt, say N.
18
19if CPU_FREQ
20
21config CPU_FREQ_TABLE
9101be53 22 tristate
1da177e4
LT
23
24config 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
37config CPU_FREQ_STAT
9101be53
MF
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.
1da177e4
LT
49
50config CPU_FREQ_STAT_DETAILS
9101be53
MF
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.
1da177e4 58
33100108
DJ
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
1da177e4
LT
63choice
64 prompt "Default CPUFreq governor"
65 default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110
66 default CPU_FREQ_DEFAULT_GOV_PERFORMANCE
67 help
68 This option sets which CPUFreq governor shall be loaded at
69 startup. If in doubt, select 'performance'.
70
71config CPU_FREQ_DEFAULT_GOV_PERFORMANCE
72 bool "performance"
73 select CPU_FREQ_GOV_PERFORMANCE
74 help
75 Use the CPUFreq governor 'performance' as default. This sets
76 the frequency statically to the highest frequency supported by
77 the CPU.
78
79config CPU_FREQ_DEFAULT_GOV_USERSPACE
80 bool "userspace"
81 select CPU_FREQ_GOV_USERSPACE
82 help
83 Use the CPUFreq governor 'userspace' as default. This allows
84 you to set the CPU frequency manually or when an userspace
85 program shall be able to set the CPU dynamically without having
86 to enable the userspace governor manually.
87
88endchoice
89
90config CPU_FREQ_GOV_PERFORMANCE
9101be53
MF
91 tristate "'performance' governor"
92 help
1da177e4
LT
93 This cpufreq governor sets the frequency statically to the
94 highest available CPU frequency.
95
9101be53
MF
96 To compile this driver as a module, choose M here: the
97 module will be called cpufreq_performance.
98
1da177e4
LT
99 If in doubt, say Y.
100
101config CPU_FREQ_GOV_POWERSAVE
9101be53
MF
102 tristate "'powersave' governor"
103 help
1da177e4
LT
104 This cpufreq governor sets the frequency statically to the
105 lowest available CPU frequency.
106
9101be53
MF
107 To compile this driver as a module, choose M here: the
108 module will be called cpufreq_powersave.
109
1da177e4
LT
110 If in doubt, say Y.
111
112config CPU_FREQ_GOV_USERSPACE
9101be53
MF
113 tristate "'userspace' governor for userspace frequency scaling"
114 help
1da177e4
LT
115 Enable this cpufreq governor when you either want to set the
116 CPU frequency manually or when an userspace program shall
117 be able to set the CPU dynamically, like on LART
4c41251e 118 <http://www.lartmaker.nl/>.
1da177e4 119
9101be53
MF
120 To compile this driver as a module, choose M here: the
121 module will be called cpufreq_userspace.
122
1da177e4
LT
123 For details, take a look at <file:Documentation/cpu-freq/>.
124
125 If in doubt, say Y.
126
127config CPU_FREQ_GOV_ONDEMAND
128 tristate "'ondemand' cpufreq policy governor"
6af6e1ef 129 select CPU_FREQ_TABLE
1da177e4
LT
130 help
131 'ondemand' - This driver adds a dynamic cpufreq policy governor.
132 The governor does a periodic polling and
133 changes frequency based on the CPU utilization.
134 The support for this governor depends on CPU capability to
135 do fast frequency switching (i.e, very low latency frequency
136 transitions).
137
9101be53
MF
138 To compile this driver as a module, choose M here: the
139 module will be called cpufreq_ondemand.
140
1da177e4
LT
141 For details, take a look at linux/Documentation/cpu-freq.
142
143 If in doubt, say N.
144
b9170836
DJ
145config CPU_FREQ_GOV_CONSERVATIVE
146 tristate "'conservative' cpufreq governor"
147 depends on CPU_FREQ
148 help
149 'conservative' - this driver is rather similar to the 'ondemand'
150 governor both in its source code and its purpose, the difference is
151 its optimisation for better suitability in a battery powered
152 environment. The frequency is gracefully increased and decreased
153 rather than jumping to 100% when speed is required.
154
155 If you have a desktop machine then you should really be considering
156 the 'ondemand' governor instead, however if you are using a laptop,
157 PDA or even an AMD64 based computer (due to the unacceptable
158 step-by-step latency issues between the minimum and maximum frequency
159 transitions in the CPU) you will probably want to use this governor.
160
9101be53
MF
161 To compile this driver as a module, choose M here: the
162 module will be called cpufreq_conservative.
163
b9170836
DJ
164 For details, take a look at linux/Documentation/cpu-freq.
165
166 If in doubt, say N.
167
1da177e4 168endif # CPU_FREQ