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