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