Merge branch 'pcmcia-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo...
[linux-2.6-microblaze.git] / drivers / cpufreq / Kconfig.x86
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # x86 CPU Frequency scaling drivers
4 #
5
6 config 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
23 config 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
37 config X86_ACPI_CPUFREQ
38         tristate "ACPI Processor P-States driver"
39         depends on ACPI_PROCESSOR
40         help
41           This driver adds a CPUFreq driver which utilizes the ACPI
42           Processor Performance States.
43           This driver also supports Intel Enhanced Speedstep and newer
44           AMD CPUs.
45
46           To compile this driver as a module, choose M here: the
47           module will be called acpi-cpufreq.
48
49           For details, take a look at <file:Documentation/cpu-freq/>.
50
51           If in doubt, say N.
52
53 config X86_ACPI_CPUFREQ_CPB
54         default y
55         bool "Legacy cpb sysfs knob support for AMD CPUs"
56         depends on X86_ACPI_CPUFREQ && CPU_SUP_AMD
57         help
58           The powernow-k8 driver used to provide a sysfs knob called "cpb"
59           to disable the Core Performance Boosting feature of AMD CPUs. This
60           file has now been superseded by the more generic "boost" entry.
61
62           By enabling this option the acpi_cpufreq driver provides the old
63           entry in addition to the new boost ones, for compatibility reasons.
64
65 config X86_SFI_CPUFREQ
66         tristate "SFI Performance-States driver"
67         depends on X86_INTEL_MID && SFI
68         help
69           This adds a CPUFreq driver for some Silvermont based Intel Atom
70           architectures like Z34xx and Z35xx which enumerate processor
71           performance states through SFI.
72
73           If in doubt, say N.
74
75 config ELAN_CPUFREQ
76         tristate "AMD Elan SC400 and SC410"
77         depends on MELAN
78         help
79           This adds the CPUFreq driver for AMD Elan SC400 and SC410
80           processors.
81
82           You need to specify the processor maximum speed as boot
83           parameter: elanfreq=maxspeed (in kHz) or as module
84           parameter "max_freq".
85
86           For details, take a look at <file:Documentation/cpu-freq/>.
87
88           If in doubt, say N.
89
90 config SC520_CPUFREQ
91         tristate "AMD Elan SC520"
92         depends on MELAN
93         help
94           This adds the CPUFreq driver for AMD Elan SC520 processor.
95
96           For details, take a look at <file:Documentation/cpu-freq/>.
97
98           If in doubt, say N.
99
100
101 config X86_POWERNOW_K6
102         tristate "AMD Mobile K6-2/K6-3 PowerNow!"
103         depends on X86_32
104         help
105           This adds the CPUFreq driver for mobile AMD K6-2+ and mobile
106           AMD K6-3+ processors.
107
108           For details, take a look at <file:Documentation/cpu-freq/>.
109
110           If in doubt, say N.
111
112 config X86_POWERNOW_K7
113         tristate "AMD Mobile Athlon/Duron PowerNow!"
114         depends on X86_32
115         help
116           This adds the CPUFreq driver for mobile AMD K7 mobile processors.
117
118           For details, take a look at <file:Documentation/cpu-freq/>.
119
120           If in doubt, say N.
121
122 config X86_POWERNOW_K7_ACPI
123         bool
124         depends on X86_POWERNOW_K7 && ACPI_PROCESSOR
125         depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m)
126         depends on X86_32
127         default y
128
129 config X86_POWERNOW_K8
130         tristate "AMD Opteron/Athlon64 PowerNow!"
131         depends on ACPI && ACPI_PROCESSOR && X86_ACPI_CPUFREQ
132         help
133           This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors.
134           Support for K10 and newer processors is now in acpi-cpufreq.
135
136           To compile this driver as a module, choose M here: the
137           module will be called powernow-k8.
138
139           For details, take a look at <file:Documentation/cpu-freq/>.
140
141 config X86_AMD_FREQ_SENSITIVITY
142         tristate "AMD frequency sensitivity feedback powersave bias"
143         depends on CPU_FREQ_GOV_ONDEMAND && X86_ACPI_CPUFREQ && CPU_SUP_AMD
144         help
145           This adds AMD-specific powersave bias function to the ondemand
146           governor, which allows it to make more power-conscious frequency
147           change decisions based on feedback from hardware (available on AMD
148           Family 16h and above).
149
150           Hardware feedback tells software how "sensitive" to frequency changes
151           the CPUs' workloads are. CPU-bound workloads will be more sensitive
152           -- they will perform better as frequency increases. Memory/IO-bound
153           workloads will be less sensitive -- they will not necessarily perform
154           better as frequency increases.
155
156           If in doubt, say N.
157
158 config X86_GX_SUSPMOD
159         tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation"
160         depends on X86_32 && PCI
161         help
162          This add the CPUFreq driver for NatSemi Geode processors which
163          support suspend modulation.
164
165          For details, take a look at <file:Documentation/cpu-freq/>.
166
167          If in doubt, say N.
168
169 config X86_SPEEDSTEP_CENTRINO
170         tristate "Intel Enhanced SpeedStep (deprecated)"
171         select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32
172         depends on X86_32 || (X86_64 && ACPI_PROCESSOR)
173         help
174           This is deprecated and this functionality is now merged into
175           acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of
176           speedstep_centrino.
177           This adds the CPUFreq driver for Enhanced SpeedStep enabled
178           mobile CPUs.  This means Intel Pentium M (Centrino) CPUs
179           or 64bit enabled Intel Xeons.
180
181           To compile this driver as a module, choose M here: the
182           module will be called speedstep-centrino.
183
184           For details, take a look at <file:Documentation/cpu-freq/>.
185
186           If in doubt, say N.
187
188 config X86_SPEEDSTEP_CENTRINO_TABLE
189         bool "Built-in tables for Banias CPUs"
190         depends on X86_32 && X86_SPEEDSTEP_CENTRINO
191         default y
192         help
193           Use built-in tables for Banias CPUs if ACPI encoding
194           is not available.
195
196           If in doubt, say N.
197
198 config X86_SPEEDSTEP_ICH
199         tristate "Intel Speedstep on ICH-M chipsets (ioport interface)"
200         depends on X86_32
201         help
202           This adds the CPUFreq driver for certain mobile Intel Pentium III
203           (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all
204           mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2,
205           ICH3 or ICH4 southbridge.
206
207           For details, take a look at <file:Documentation/cpu-freq/>.
208
209           If in doubt, say N.
210
211 config X86_SPEEDSTEP_SMI
212         tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)"
213         depends on X86_32
214         help
215           This adds the CPUFreq driver for certain mobile Intel Pentium III
216           (Coppermine), all mobile Intel Pentium III-M (Tualatin)
217           on systems which have an Intel 440BX/ZX/MX southbridge.
218
219           For details, take a look at <file:Documentation/cpu-freq/>.
220
221           If in doubt, say N.
222
223 config X86_P4_CLOCKMOD
224         tristate "Intel Pentium 4 clock modulation"
225         help
226           This adds the CPUFreq driver for Intel Pentium 4 / XEON
227           processors.  When enabled it will lower CPU temperature by skipping
228           clocks.
229
230           This driver should be only used in exceptional
231           circumstances when very low power is needed because it causes severe
232           slowdowns and noticeable latencies.  Normally Speedstep should be used
233           instead.
234
235           To compile this driver as a module, choose M here: the
236           module will be called p4-clockmod.
237
238           For details, take a look at <file:Documentation/cpu-freq/>.
239
240           Unless you are absolutely sure say N.
241
242 config X86_CPUFREQ_NFORCE2
243         tristate "nVidia nForce2 FSB changing"
244         depends on X86_32
245         help
246           This adds the CPUFreq driver for FSB changing on nVidia nForce2
247           platforms.
248
249           For details, take a look at <file:Documentation/cpu-freq/>.
250
251           If in doubt, say N.
252
253 config X86_LONGRUN
254         tristate "Transmeta LongRun"
255         depends on X86_32
256         help
257           This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors
258           which support LongRun.
259
260           For details, take a look at <file:Documentation/cpu-freq/>.
261
262           If in doubt, say N.
263
264 config X86_LONGHAUL
265         tristate "VIA Cyrix III Longhaul"
266         depends on X86_32 && ACPI_PROCESSOR
267         help
268           This adds the CPUFreq driver for VIA Samuel/CyrixIII,
269           VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T
270           processors.
271
272           For details, take a look at <file:Documentation/cpu-freq/>.
273
274           If in doubt, say N.
275
276 config X86_E_POWERSAVER
277         tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)"
278         depends on X86_32 && ACPI_PROCESSOR
279         help
280           This adds the CPUFreq driver for VIA C7 processors.  However, this driver
281           does not have any safeguards to prevent operating the CPU out of spec
282           and is thus considered dangerous.  Please use the regular ACPI cpufreq
283           driver, enabled by CONFIG_X86_ACPI_CPUFREQ.
284
285           If in doubt, say N.
286
287 comment "shared options"
288
289 config X86_SPEEDSTEP_LIB
290         tristate
291         default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD)
292
293 config X86_SPEEDSTEP_RELAXED_CAP_CHECK
294         bool "Relaxed speedstep capability checks"
295         depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH)
296         help
297           Don't perform all checks for a speedstep capable system which would
298           normally be done. Some ancient or strange systems, though speedstep
299           capable, don't always indicate that they are speedstep capable. This
300           option lets the probing code bypass some of those checks if the
301           parameter "relaxed_check=1" is passed to the module.
302