Loading...
1#
2# x86 CPU Frequency scaling drivers
3#
4
5config X86_PCC_CPUFREQ
6 tristate "Processor Clocking Control interface driver"
7 depends on ACPI && ACPI_PROCESSOR
8 help
9 This driver adds support for the PCC interface.
10
11 For details, take a look at:
12 <file:Documentation/cpu-freq/pcc-cpufreq.txt>.
13
14 To compile this driver as a module, choose M here: the
15 module will be called pcc-cpufreq.
16
17 If in doubt, say N.
18
19config X86_ACPI_CPUFREQ
20 tristate "ACPI Processor P-States driver"
21 select CPU_FREQ_TABLE
22 depends on ACPI_PROCESSOR
23 help
24 This driver adds a CPUFreq driver which utilizes the ACPI
25 Processor Performance States.
26 This driver also supports Intel Enhanced Speedstep.
27
28 To compile this driver as a module, choose M here: the
29 module will be called acpi-cpufreq.
30
31 For details, take a look at <file:Documentation/cpu-freq/>.
32
33 If in doubt, say N.
34
35config ELAN_CPUFREQ
36 tristate "AMD Elan SC400 and SC410"
37 select CPU_FREQ_TABLE
38 depends on MELAN
39 ---help---
40 This adds the CPUFreq driver for AMD Elan SC400 and SC410
41 processors.
42
43 You need to specify the processor maximum speed as boot
44 parameter: elanfreq=maxspeed (in kHz) or as module
45 parameter "max_freq".
46
47 For details, take a look at <file:Documentation/cpu-freq/>.
48
49 If in doubt, say N.
50
51config SC520_CPUFREQ
52 tristate "AMD Elan SC520"
53 select CPU_FREQ_TABLE
54 depends on MELAN
55 ---help---
56 This adds the CPUFreq driver for AMD Elan SC520 processor.
57
58 For details, take a look at <file:Documentation/cpu-freq/>.
59
60 If in doubt, say N.
61
62
63config X86_POWERNOW_K6
64 tristate "AMD Mobile K6-2/K6-3 PowerNow!"
65 select CPU_FREQ_TABLE
66 depends on X86_32
67 help
68 This adds the CPUFreq driver for mobile AMD K6-2+ and mobile
69 AMD K6-3+ processors.
70
71 For details, take a look at <file:Documentation/cpu-freq/>.
72
73 If in doubt, say N.
74
75config X86_POWERNOW_K7
76 tristate "AMD Mobile Athlon/Duron PowerNow!"
77 select CPU_FREQ_TABLE
78 depends on X86_32
79 help
80 This adds the CPUFreq driver for mobile AMD K7 mobile processors.
81
82 For details, take a look at <file:Documentation/cpu-freq/>.
83
84 If in doubt, say N.
85
86config X86_POWERNOW_K7_ACPI
87 bool
88 depends on X86_POWERNOW_K7 && ACPI_PROCESSOR
89 depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m)
90 depends on X86_32
91 default y
92
93config X86_POWERNOW_K8
94 tristate "AMD Opteron/Athlon64 PowerNow!"
95 select CPU_FREQ_TABLE
96 depends on ACPI && ACPI_PROCESSOR
97 help
98 This adds the CPUFreq driver for K8/K10 Opteron/Athlon64 processors.
99
100 To compile this driver as a module, choose M here: the
101 module will be called powernow-k8.
102
103 For details, take a look at <file:Documentation/cpu-freq/>.
104
105config X86_GX_SUSPMOD
106 tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation"
107 depends on X86_32 && PCI
108 help
109 This add the CPUFreq driver for NatSemi Geode processors which
110 support suspend modulation.
111
112 For details, take a look at <file:Documentation/cpu-freq/>.
113
114 If in doubt, say N.
115
116config X86_SPEEDSTEP_CENTRINO
117 tristate "Intel Enhanced SpeedStep (deprecated)"
118 select CPU_FREQ_TABLE
119 select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32
120 depends on X86_32 || (X86_64 && ACPI_PROCESSOR)
121 help
122 This is deprecated and this functionality is now merged into
123 acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of
124 speedstep_centrino.
125 This adds the CPUFreq driver for Enhanced SpeedStep enabled
126 mobile CPUs. This means Intel Pentium M (Centrino) CPUs
127 or 64bit enabled Intel Xeons.
128
129 To compile this driver as a module, choose M here: the
130 module will be called speedstep-centrino.
131
132 For details, take a look at <file:Documentation/cpu-freq/>.
133
134 If in doubt, say N.
135
136config X86_SPEEDSTEP_CENTRINO_TABLE
137 bool "Built-in tables for Banias CPUs"
138 depends on X86_32 && X86_SPEEDSTEP_CENTRINO
139 default y
140 help
141 Use built-in tables for Banias CPUs if ACPI encoding
142 is not available.
143
144 If in doubt, say N.
145
146config X86_SPEEDSTEP_ICH
147 tristate "Intel Speedstep on ICH-M chipsets (ioport interface)"
148 select CPU_FREQ_TABLE
149 depends on X86_32
150 help
151 This adds the CPUFreq driver for certain mobile Intel Pentium III
152 (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all
153 mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2,
154 ICH3 or ICH4 southbridge.
155
156 For details, take a look at <file:Documentation/cpu-freq/>.
157
158 If in doubt, say N.
159
160config X86_SPEEDSTEP_SMI
161 tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)"
162 select CPU_FREQ_TABLE
163 depends on X86_32 && EXPERIMENTAL
164 help
165 This adds the CPUFreq driver for certain mobile Intel Pentium III
166 (Coppermine), all mobile Intel Pentium III-M (Tualatin)
167 on systems which have an Intel 440BX/ZX/MX southbridge.
168
169 For details, take a look at <file:Documentation/cpu-freq/>.
170
171 If in doubt, say N.
172
173config X86_P4_CLOCKMOD
174 tristate "Intel Pentium 4 clock modulation"
175 select CPU_FREQ_TABLE
176 help
177 This adds the CPUFreq driver for Intel Pentium 4 / XEON
178 processors. When enabled it will lower CPU temperature by skipping
179 clocks.
180
181 This driver should be only used in exceptional
182 circumstances when very low power is needed because it causes severe
183 slowdowns and noticeable latencies. Normally Speedstep should be used
184 instead.
185
186 To compile this driver as a module, choose M here: the
187 module will be called p4-clockmod.
188
189 For details, take a look at <file:Documentation/cpu-freq/>.
190
191 Unless you are absolutely sure say N.
192
193config X86_CPUFREQ_NFORCE2
194 tristate "nVidia nForce2 FSB changing"
195 depends on X86_32 && EXPERIMENTAL
196 help
197 This adds the CPUFreq driver for FSB changing on nVidia nForce2
198 platforms.
199
200 For details, take a look at <file:Documentation/cpu-freq/>.
201
202 If in doubt, say N.
203
204config X86_LONGRUN
205 tristate "Transmeta LongRun"
206 depends on X86_32
207 help
208 This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors
209 which support LongRun.
210
211 For details, take a look at <file:Documentation/cpu-freq/>.
212
213 If in doubt, say N.
214
215config X86_LONGHAUL
216 tristate "VIA Cyrix III Longhaul"
217 select CPU_FREQ_TABLE
218 depends on X86_32 && ACPI_PROCESSOR
219 help
220 This adds the CPUFreq driver for VIA Samuel/CyrixIII,
221 VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T
222 processors.
223
224 For details, take a look at <file:Documentation/cpu-freq/>.
225
226 If in doubt, say N.
227
228config X86_E_POWERSAVER
229 tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)"
230 select CPU_FREQ_TABLE
231 depends on X86_32 && EXPERIMENTAL
232 help
233 This adds the CPUFreq driver for VIA C7 processors. However, this driver
234 does not have any safeguards to prevent operating the CPU out of spec
235 and is thus considered dangerous. Please use the regular ACPI cpufreq
236 driver, enabled by CONFIG_X86_ACPI_CPUFREQ.
237
238 If in doubt, say N.
239
240comment "shared options"
241
242config X86_SPEEDSTEP_LIB
243 tristate
244 default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD)
245
246config X86_SPEEDSTEP_RELAXED_CAP_CHECK
247 bool "Relaxed speedstep capability checks"
248 depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH)
249 help
250 Don't perform all checks for a speedstep capable system which would
251 normally be done. Some ancient or strange systems, though speedstep
252 capable, don't always indicate that they are speedstep capable. This
253 option lets the probing code bypass some of those checks if the
254 parameter "relaxed_check=1" is passed to the module.
255
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# x86 CPU Frequency scaling drivers
4#
5
6config X86_INTEL_PSTATE
7 bool "Intel P state control"
8 depends on X86
9 select ACPI_PROCESSOR if ACPI
10 select ACPI_CPPC_LIB if X86_64 && ACPI && SCHED_MC_PRIO
11 select CPU_FREQ_GOV_PERFORMANCE
12 select CPU_FREQ_GOV_SCHEDUTIL if SMP
13 help
14 This driver provides a P state for Intel core processors.
15 The driver implements an internal governor and will become
16 the scaling driver and governor for Sandy bridge processors.
17
18 When this driver is enabled it will become the preferred
19 scaling driver for Sandy bridge processors.
20
21 If in doubt, say N.
22
23config X86_PCC_CPUFREQ
24 tristate "Processor Clocking Control interface driver"
25 depends on ACPI && ACPI_PROCESSOR
26 help
27 This driver adds support for the PCC interface.
28
29 For details, take a look at:
30 <file:Documentation/admin-guide/pm/cpufreq_drivers.rst>.
31
32 To compile this driver as a module, choose M here: the
33 module will be called pcc-cpufreq.
34
35 If in doubt, say N.
36
37config X86_AMD_PSTATE
38 bool "AMD Processor P-State driver"
39 depends on X86 && ACPI
40 select ACPI_PROCESSOR
41 select ACPI_CPPC_LIB if X86_64
42 select CPU_FREQ_GOV_SCHEDUTIL if SMP
43 help
44 This driver adds a CPUFreq driver which utilizes a fine grain
45 processor performance frequency control range instead of legacy
46 performance levels. _CPC needs to be present in the ACPI tables
47 of the system.
48
49 For details, take a look at:
50 <file:Documentation/admin-guide/pm/amd-pstate.rst>.
51
52 If in doubt, say N.
53
54config X86_AMD_PSTATE_DEFAULT_MODE
55 int "AMD Processor P-State default mode"
56 depends on X86_AMD_PSTATE
57 default 3 if X86_AMD_PSTATE
58 range 1 4
59 help
60 Select the default mode the amd-pstate driver will use on
61 supported hardware.
62 The value set has the following meanings:
63 1 -> Disabled
64 2 -> Passive
65 3 -> Active (EPP)
66 4 -> Guided
67
68 For details, take a look at:
69 <file:Documentation/admin-guide/pm/amd-pstate.rst>.
70
71config X86_AMD_PSTATE_UT
72 tristate "selftest for AMD Processor P-State driver"
73 depends on X86 && ACPI_PROCESSOR
74 default n
75 help
76 This kernel module is used for testing. It's safe to say M here.
77
78 It can also be built-in without X86_AMD_PSTATE enabled.
79 Currently, only tests for amd-pstate are supported. If X86_AMD_PSTATE
80 is set disabled, it can tell the users test can only run on amd-pstate
81 driver, please set X86_AMD_PSTATE enabled.
82 In the future, comparison tests will be added. It can set amd-pstate
83 disabled and set acpi-cpufreq enabled to run test cases, then compare
84 the test results.
85
86config X86_ACPI_CPUFREQ
87 tristate "ACPI Processor P-States driver"
88 depends on ACPI_PROCESSOR
89 help
90 This driver adds a CPUFreq driver which utilizes the ACPI
91 Processor Performance States.
92 This driver also supports Intel Enhanced Speedstep and newer
93 AMD CPUs.
94
95 To compile this driver as a module, choose M here: the
96 module will be called acpi-cpufreq.
97
98 For details, take a look at <file:Documentation/cpu-freq/>.
99
100 If in doubt, say N.
101
102config X86_ACPI_CPUFREQ_CPB
103 default y
104 bool "Legacy cpb sysfs knob support for AMD CPUs"
105 depends on X86_ACPI_CPUFREQ && CPU_SUP_AMD
106 help
107 The powernow-k8 driver used to provide a sysfs knob called "cpb"
108 to disable the Core Performance Boosting feature of AMD CPUs. This
109 file has now been superseded by the more generic "boost" entry.
110
111 By enabling this option the acpi_cpufreq driver provides the old
112 entry in addition to the new boost ones, for compatibility reasons.
113
114config ELAN_CPUFREQ
115 tristate "AMD Elan SC400 and SC410"
116 depends on MELAN
117 help
118 This adds the CPUFreq driver for AMD Elan SC400 and SC410
119 processors.
120
121 You need to specify the processor maximum speed as boot
122 parameter: elanfreq=maxspeed (in kHz) or as module
123 parameter "max_freq".
124
125 For details, take a look at <file:Documentation/cpu-freq/>.
126
127 If in doubt, say N.
128
129config SC520_CPUFREQ
130 tristate "AMD Elan SC520"
131 depends on MELAN
132 help
133 This adds the CPUFreq driver for AMD Elan SC520 processor.
134
135 For details, take a look at <file:Documentation/cpu-freq/>.
136
137 If in doubt, say N.
138
139
140config X86_POWERNOW_K6
141 tristate "AMD Mobile K6-2/K6-3 PowerNow!"
142 depends on X86_32
143 help
144 This adds the CPUFreq driver for mobile AMD K6-2+ and mobile
145 AMD K6-3+ processors.
146
147 For details, take a look at <file:Documentation/cpu-freq/>.
148
149 If in doubt, say N.
150
151config X86_POWERNOW_K7
152 tristate "AMD Mobile Athlon/Duron PowerNow!"
153 depends on X86_32
154 help
155 This adds the CPUFreq driver for mobile AMD K7 mobile processors.
156
157 For details, take a look at <file:Documentation/cpu-freq/>.
158
159 If in doubt, say N.
160
161config X86_POWERNOW_K7_ACPI
162 bool
163 depends on X86_POWERNOW_K7 && ACPI_PROCESSOR
164 depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m)
165 depends on X86_32
166 default y
167
168config X86_POWERNOW_K8
169 tristate "AMD Opteron/Athlon64 PowerNow!"
170 depends on ACPI && ACPI_PROCESSOR && X86_ACPI_CPUFREQ
171 help
172 This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors.
173 Support for K10 and newer processors is now in acpi-cpufreq.
174
175 To compile this driver as a module, choose M here: the
176 module will be called powernow-k8.
177
178 For details, take a look at <file:Documentation/cpu-freq/>.
179
180config X86_AMD_FREQ_SENSITIVITY
181 tristate "AMD frequency sensitivity feedback powersave bias"
182 depends on CPU_FREQ_GOV_ONDEMAND && X86_ACPI_CPUFREQ && CPU_SUP_AMD
183 help
184 This adds AMD-specific powersave bias function to the ondemand
185 governor, which allows it to make more power-conscious frequency
186 change decisions based on feedback from hardware (available on AMD
187 Family 16h and above).
188
189 Hardware feedback tells software how "sensitive" to frequency changes
190 the CPUs' workloads are. CPU-bound workloads will be more sensitive
191 -- they will perform better as frequency increases. Memory/IO-bound
192 workloads will be less sensitive -- they will not necessarily perform
193 better as frequency increases.
194
195 If in doubt, say N.
196
197config X86_GX_SUSPMOD
198 tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation"
199 depends on X86_32 && PCI
200 help
201 This add the CPUFreq driver for NatSemi Geode processors which
202 support suspend modulation.
203
204 For details, take a look at <file:Documentation/cpu-freq/>.
205
206 If in doubt, say N.
207
208config X86_SPEEDSTEP_CENTRINO
209 tristate "Intel Enhanced SpeedStep (deprecated)"
210 select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32
211 depends on X86_32 || (X86_64 && ACPI_PROCESSOR)
212 help
213 This is deprecated and this functionality is now merged into
214 acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of
215 speedstep_centrino.
216 This adds the CPUFreq driver for Enhanced SpeedStep enabled
217 mobile CPUs. This means Intel Pentium M (Centrino) CPUs
218 or 64bit enabled Intel Xeons.
219
220 To compile this driver as a module, choose M here: the
221 module will be called speedstep-centrino.
222
223 For details, take a look at <file:Documentation/cpu-freq/>.
224
225 If in doubt, say N.
226
227config X86_SPEEDSTEP_CENTRINO_TABLE
228 bool "Built-in tables for Banias CPUs"
229 depends on X86_32 && X86_SPEEDSTEP_CENTRINO
230 default y
231 help
232 Use built-in tables for Banias CPUs if ACPI encoding
233 is not available.
234
235 If in doubt, say N.
236
237config X86_SPEEDSTEP_ICH
238 tristate "Intel Speedstep on ICH-M chipsets (ioport interface)"
239 depends on X86_32
240 help
241 This adds the CPUFreq driver for certain mobile Intel Pentium III
242 (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all
243 mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2,
244 ICH3 or ICH4 southbridge.
245
246 For details, take a look at <file:Documentation/cpu-freq/>.
247
248 If in doubt, say N.
249
250config X86_SPEEDSTEP_SMI
251 tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)"
252 depends on X86_32
253 help
254 This adds the CPUFreq driver for certain mobile Intel Pentium III
255 (Coppermine), all mobile Intel Pentium III-M (Tualatin)
256 on systems which have an Intel 440BX/ZX/MX southbridge.
257
258 For details, take a look at <file:Documentation/cpu-freq/>.
259
260 If in doubt, say N.
261
262config X86_P4_CLOCKMOD
263 tristate "Intel Pentium 4 clock modulation"
264 help
265 This adds the CPUFreq driver for Intel Pentium 4 / XEON
266 processors. When enabled it will lower CPU temperature by skipping
267 clocks.
268
269 This driver should be only used in exceptional
270 circumstances when very low power is needed because it causes severe
271 slowdowns and noticeable latencies. Normally Speedstep should be used
272 instead.
273
274 To compile this driver as a module, choose M here: the
275 module will be called p4-clockmod.
276
277 For details, take a look at <file:Documentation/cpu-freq/>.
278
279 Unless you are absolutely sure say N.
280
281config X86_CPUFREQ_NFORCE2
282 tristate "nVidia nForce2 FSB changing"
283 depends on X86_32
284 help
285 This adds the CPUFreq driver for FSB changing on nVidia nForce2
286 platforms.
287
288 For details, take a look at <file:Documentation/cpu-freq/>.
289
290 If in doubt, say N.
291
292config X86_LONGRUN
293 tristate "Transmeta LongRun"
294 depends on X86_32
295 help
296 This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors
297 which support LongRun.
298
299 For details, take a look at <file:Documentation/cpu-freq/>.
300
301 If in doubt, say N.
302
303config X86_LONGHAUL
304 tristate "VIA Cyrix III Longhaul"
305 depends on X86_32 && ACPI_PROCESSOR
306 help
307 This adds the CPUFreq driver for VIA Samuel/CyrixIII,
308 VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T
309 processors.
310
311 For details, take a look at <file:Documentation/cpu-freq/>.
312
313 If in doubt, say N.
314
315config X86_E_POWERSAVER
316 tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)"
317 depends on X86_32 && ACPI_PROCESSOR
318 help
319 This adds the CPUFreq driver for VIA C7 processors. However, this driver
320 does not have any safeguards to prevent operating the CPU out of spec
321 and is thus considered dangerous. Please use the regular ACPI cpufreq
322 driver, enabled by CONFIG_X86_ACPI_CPUFREQ.
323
324 If in doubt, say N.
325
326comment "shared options"
327
328config X86_SPEEDSTEP_LIB
329 tristate
330 default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD)
331
332config X86_SPEEDSTEP_RELAXED_CAP_CHECK
333 bool "Relaxed speedstep capability checks"
334 depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH)
335 help
336 Don't perform all checks for a speedstep capable system which would
337 normally be done. Some ancient or strange systems, though speedstep
338 capable, don't always indicate that they are speedstep capable. This
339 option lets the probing code bypass some of those checks if the
340 parameter "relaxed_check=1" is passed to the module.
341