Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
Dave Jones | bb0a56e | 2011-05-19 18:51:07 -0400 | [diff] [blame] | 2 | # x86 CPU Frequency scaling drivers |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 | # |
| 4 | |
Dirk Brandewie | 93f0822 | 2013-02-06 09:02:13 -0800 | [diff] [blame] | 5 | config X86_INTEL_PSTATE |
Dirk Brandewie | da0d9fd | 2013-02-14 22:55:34 +0100 | [diff] [blame] | 6 | bool "Intel P state control" |
Dirk Brandewie | 93f0822 | 2013-02-06 09:02:13 -0800 | [diff] [blame] | 7 | depends on X86 |
| 8 | help |
| 9 | This driver provides a P state for Intel core processors. |
| 10 | The driver implements an internal governor and will become |
| 11 | the scaling driver and governor for Sandy bridge processors. |
| 12 | |
| 13 | When this driver is enabled it will become the perferred |
| 14 | scaling driver for Sandy bridge processors. |
| 15 | |
Dirk Brandewie | 93f0822 | 2013-02-06 09:02:13 -0800 | [diff] [blame] | 16 | If in doubt, say N. |
| 17 | |
Naga Chumbalkar | 0f1d683 | 2009-12-17 20:18:27 +0000 | [diff] [blame] | 18 | config X86_PCC_CPUFREQ |
| 19 | tristate "Processor Clocking Control interface driver" |
| 20 | depends on ACPI && ACPI_PROCESSOR |
| 21 | help |
| 22 | This driver adds support for the PCC interface. |
| 23 | |
| 24 | For details, take a look at: |
| 25 | <file:Documentation/cpu-freq/pcc-cpufreq.txt>. |
| 26 | |
| 27 | To compile this driver as a module, choose M here: the |
| 28 | module will be called pcc-cpufreq. |
| 29 | |
| 30 | If in doubt, say N. |
| 31 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 32 | config X86_ACPI_CPUFREQ |
| 33 | tristate "ACPI Processor P-States driver" |
| 34 | select CPU_FREQ_TABLE |
| 35 | depends on ACPI_PROCESSOR |
| 36 | help |
| 37 | This driver adds a CPUFreq driver which utilizes the ACPI |
| 38 | Processor Performance States. |
Matthew Garrett | 3dc9a63 | 2012-09-04 08:28:02 +0000 | [diff] [blame] | 39 | This driver also supports Intel Enhanced Speedstep and newer |
| 40 | AMD CPUs. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 41 | |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 42 | To compile this driver as a module, choose M here: the |
| 43 | module will be called acpi-cpufreq. |
| 44 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 45 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 46 | |
| 47 | If in doubt, say N. |
| 48 | |
Andre Przywara | 11269ff | 2012-09-04 08:28:08 +0000 | [diff] [blame] | 49 | config X86_ACPI_CPUFREQ_CPB |
| 50 | default y |
| 51 | bool "Legacy cpb sysfs knob support for AMD CPUs" |
| 52 | depends on X86_ACPI_CPUFREQ && CPU_SUP_AMD |
| 53 | help |
| 54 | The powernow-k8 driver used to provide a sysfs knob called "cpb" |
| 55 | to disable the Core Performance Boosting feature of AMD CPUs. This |
| 56 | file has now been superseeded by the more generic "boost" entry. |
| 57 | |
| 58 | By enabling this option the acpi_cpufreq driver provides the old |
| 59 | entry in addition to the new boost ones, for compatibility reasons. |
| 60 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 61 | config ELAN_CPUFREQ |
Dave Jones | bf6fc9f | 2005-05-31 19:03:45 -0700 | [diff] [blame] | 62 | tristate "AMD Elan SC400 and SC410" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 63 | select CPU_FREQ_TABLE |
Ian Campbell | ce9c99a | 2011-04-08 07:42:29 +0100 | [diff] [blame] | 64 | depends on MELAN |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 65 | ---help--- |
| 66 | This adds the CPUFreq driver for AMD Elan SC400 and SC410 |
| 67 | processors. |
| 68 | |
| 69 | You need to specify the processor maximum speed as boot |
| 70 | parameter: elanfreq=maxspeed (in kHz) or as module |
| 71 | parameter "max_freq". |
| 72 | |
| 73 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 74 | |
| 75 | If in doubt, say N. |
| 76 | |
Dave Jones | bf6fc9f | 2005-05-31 19:03:45 -0700 | [diff] [blame] | 77 | config SC520_CPUFREQ |
| 78 | tristate "AMD Elan SC520" |
| 79 | select CPU_FREQ_TABLE |
Ian Campbell | ce9c99a | 2011-04-08 07:42:29 +0100 | [diff] [blame] | 80 | depends on MELAN |
Dave Jones | bf6fc9f | 2005-05-31 19:03:45 -0700 | [diff] [blame] | 81 | ---help--- |
| 82 | This adds the CPUFreq driver for AMD Elan SC520 processor. |
| 83 | |
| 84 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 85 | |
| 86 | If in doubt, say N. |
| 87 | |
| 88 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 89 | config X86_POWERNOW_K6 |
| 90 | tristate "AMD Mobile K6-2/K6-3 PowerNow!" |
| 91 | select CPU_FREQ_TABLE |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 92 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 93 | help |
| 94 | This adds the CPUFreq driver for mobile AMD K6-2+ and mobile |
| 95 | AMD K6-3+ processors. |
| 96 | |
| 97 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 98 | |
| 99 | If in doubt, say N. |
| 100 | |
| 101 | config X86_POWERNOW_K7 |
| 102 | tristate "AMD Mobile Athlon/Duron PowerNow!" |
| 103 | select CPU_FREQ_TABLE |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 104 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 105 | help |
| 106 | This adds the CPUFreq driver for mobile AMD K7 mobile 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_ACPI |
| 113 | bool |
| 114 | depends on X86_POWERNOW_K7 && ACPI_PROCESSOR |
| 115 | depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m) |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 116 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 117 | default y |
| 118 | |
| 119 | config X86_POWERNOW_K8 |
| 120 | tristate "AMD Opteron/Athlon64 PowerNow!" |
| 121 | select CPU_FREQ_TABLE |
Borislav Petkov | 631e8ac | 2013-01-18 00:19:37 +0100 | [diff] [blame] | 122 | depends on ACPI && ACPI_PROCESSOR && X86_ACPI_CPUFREQ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 123 | help |
Andre Przywara | 034be8f | 2012-09-04 08:28:04 +0000 | [diff] [blame] | 124 | This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors. |
| 125 | Support for K10 and newer processors is now in acpi-cpufreq. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 126 | |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 127 | To compile this driver as a module, choose M here: the |
| 128 | module will be called powernow-k8. |
| 129 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 130 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 131 | |
Jacob Shin | 9c5320c | 2013-04-04 16:19:04 +0000 | [diff] [blame] | 132 | config X86_AMD_FREQ_SENSITIVITY |
| 133 | tristate "AMD frequency sensitivity feedback powersave bias" |
| 134 | depends on CPU_FREQ_GOV_ONDEMAND && X86_ACPI_CPUFREQ && CPU_SUP_AMD |
Viresh Kumar | dbcc9f8 | 2013-06-12 12:10:41 +0530 | [diff] [blame] | 135 | select CPU_FREQ_TABLE |
Jacob Shin | 9c5320c | 2013-04-04 16:19:04 +0000 | [diff] [blame] | 136 | help |
| 137 | This adds AMD-specific powersave bias function to the ondemand |
| 138 | governor, which allows it to make more power-conscious frequency |
| 139 | change decisions based on feedback from hardware (availble on AMD |
| 140 | Family 16h and above). |
| 141 | |
| 142 | Hardware feedback tells software how "sensitive" to frequency changes |
| 143 | the CPUs' workloads are. CPU-bound workloads will be more sensitive |
| 144 | -- they will perform better as frequency increases. Memory/IO-bound |
| 145 | workloads will be less sensitive -- they will not necessarily perform |
| 146 | better as frequency increases. |
| 147 | |
| 148 | If in doubt, say N. |
| 149 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 150 | config X86_GX_SUSPMOD |
| 151 | tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation" |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 152 | depends on X86_32 && PCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 153 | help |
| 154 | This add the CPUFreq driver for NatSemi Geode processors which |
| 155 | support suspend modulation. |
| 156 | |
| 157 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 158 | |
| 159 | If in doubt, say N. |
| 160 | |
| 161 | config X86_SPEEDSTEP_CENTRINO |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 162 | tristate "Intel Enhanced SpeedStep (deprecated)" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 163 | select CPU_FREQ_TABLE |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 164 | select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32 |
| 165 | depends on X86_32 || (X86_64 && ACPI_PROCESSOR) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 166 | help |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 167 | This is deprecated and this functionality is now merged into |
| 168 | acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of |
| 169 | speedstep_centrino. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 170 | This adds the CPUFreq driver for Enhanced SpeedStep enabled |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 171 | mobile CPUs. This means Intel Pentium M (Centrino) CPUs |
| 172 | or 64bit enabled Intel Xeons. |
| 173 | |
| 174 | To compile this driver as a module, choose M here: the |
| 175 | module will be called speedstep-centrino. |
Dave Jones | 388d6c5 | 2006-03-11 16:04:53 -0500 | [diff] [blame] | 176 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 177 | For details, take a look at <file:Documentation/cpu-freq/>. |
Dave Jones | 388d6c5 | 2006-03-11 16:04:53 -0500 | [diff] [blame] | 178 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 179 | If in doubt, say N. |
| 180 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 181 | config X86_SPEEDSTEP_CENTRINO_TABLE |
| 182 | bool "Built-in tables for Banias CPUs" |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 183 | depends on X86_32 && X86_SPEEDSTEP_CENTRINO |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 184 | default y |
| 185 | help |
| 186 | Use built-in tables for Banias CPUs if ACPI encoding |
| 187 | is not available. |
| 188 | |
| 189 | If in doubt, say N. |
| 190 | |
| 191 | config X86_SPEEDSTEP_ICH |
| 192 | tristate "Intel Speedstep on ICH-M chipsets (ioport interface)" |
| 193 | select CPU_FREQ_TABLE |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 194 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 195 | help |
| 196 | This adds the CPUFreq driver for certain mobile Intel Pentium III |
| 197 | (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all |
Dave Jones | 388d6c5 | 2006-03-11 16:04:53 -0500 | [diff] [blame] | 198 | mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2, |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 199 | ICH3 or ICH4 southbridge. |
| 200 | |
| 201 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 202 | |
| 203 | If in doubt, say N. |
| 204 | |
| 205 | config X86_SPEEDSTEP_SMI |
| 206 | tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)" |
| 207 | select CPU_FREQ_TABLE |
Kees Cook | 0f194b5 | 2012-10-02 11:16:53 -0700 | [diff] [blame] | 208 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 209 | help |
| 210 | This adds the CPUFreq driver for certain mobile Intel Pentium III |
Dave Jones | 388d6c5 | 2006-03-11 16:04:53 -0500 | [diff] [blame] | 211 | (Coppermine), all mobile Intel Pentium III-M (Tualatin) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 212 | on systems which have an Intel 440BX/ZX/MX southbridge. |
| 213 | |
| 214 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 215 | |
| 216 | If in doubt, say N. |
| 217 | |
| 218 | config X86_P4_CLOCKMOD |
| 219 | tristate "Intel Pentium 4 clock modulation" |
| 220 | select CPU_FREQ_TABLE |
| 221 | help |
| 222 | This adds the CPUFreq driver for Intel Pentium 4 / XEON |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 223 | processors. When enabled it will lower CPU temperature by skipping |
| 224 | clocks. |
| 225 | |
| 226 | This driver should be only used in exceptional |
| 227 | circumstances when very low power is needed because it causes severe |
| 228 | slowdowns and noticeable latencies. Normally Speedstep should be used |
| 229 | instead. |
| 230 | |
| 231 | To compile this driver as a module, choose M here: the |
| 232 | module will be called p4-clockmod. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 233 | |
| 234 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 235 | |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 236 | Unless you are absolutely sure say N. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 237 | |
| 238 | config X86_CPUFREQ_NFORCE2 |
| 239 | tristate "nVidia nForce2 FSB changing" |
Kees Cook | 0f194b5 | 2012-10-02 11:16:53 -0700 | [diff] [blame] | 240 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 241 | help |
| 242 | This adds the CPUFreq driver for FSB changing on nVidia nForce2 |
| 243 | platforms. |
| 244 | |
| 245 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 246 | |
| 247 | If in doubt, say N. |
| 248 | |
| 249 | config X86_LONGRUN |
| 250 | tristate "Transmeta LongRun" |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 251 | depends on X86_32 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 252 | help |
| 253 | This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors |
| 254 | which support LongRun. |
| 255 | |
| 256 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 257 | |
| 258 | If in doubt, say N. |
| 259 | |
| 260 | config X86_LONGHAUL |
| 261 | tristate "VIA Cyrix III Longhaul" |
| 262 | select CPU_FREQ_TABLE |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 263 | depends on X86_32 && ACPI_PROCESSOR |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 264 | help |
Dave Jones | 388d6c5 | 2006-03-11 16:04:53 -0500 | [diff] [blame] | 265 | This adds the CPUFreq driver for VIA Samuel/CyrixIII, |
| 266 | VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 267 | processors. |
| 268 | |
| 269 | For details, take a look at <file:Documentation/cpu-freq/>. |
| 270 | |
| 271 | If in doubt, say N. |
| 272 | |
Rafa³ Bilski | 86acd49 | 2007-02-05 19:57:25 +0100 | [diff] [blame] | 273 | config X86_E_POWERSAVER |
Harald Welte | 0fea615 | 2009-06-08 18:29:36 +0800 | [diff] [blame] | 274 | tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)" |
Rafa³ Bilski | 86acd49 | 2007-02-05 19:57:25 +0100 | [diff] [blame] | 275 | select CPU_FREQ_TABLE |
Rafał Bilski | b5f1472 | 2013-05-19 19:27:55 +0000 | [diff] [blame] | 276 | depends on X86_32 && ACPI_PROCESSOR |
Rafa³ Bilski | 86acd49 | 2007-02-05 19:57:25 +0100 | [diff] [blame] | 277 | help |
Harald Welte | 0fea615 | 2009-06-08 18:29:36 +0800 | [diff] [blame] | 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. |
Rafa³ Bilski | 86acd49 | 2007-02-05 19:57:25 +0100 | [diff] [blame] | 282 | |
| 283 | If in doubt, say N. |
| 284 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 285 | comment "shared options" |
| 286 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 287 | config X86_SPEEDSTEP_LIB |
| 288 | tristate |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 289 | default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 290 | |
| 291 | config X86_SPEEDSTEP_RELAXED_CAP_CHECK |
| 292 | bool "Relaxed speedstep capability checks" |
Sam Ravnborg | e8ef952 | 2007-11-06 19:35:19 +0100 | [diff] [blame] | 293 | depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 294 | help |
Dave Jones | 388d6c5 | 2006-03-11 16:04:53 -0500 | [diff] [blame] | 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 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 298 | option lets the probing code bypass some of those checks if the |
| 299 | parameter "relaxed_check=1" is passed to the module. |
| 300 | |