1menu "CPU Frequency scaling" 2 3config CPU_FREQ 4 bool "CPU Frequency scaling" 5 help 6 CPU Frequency scaling allows you to change the clock speed of 7 CPUs on the fly. This is a nice method to save power, because 8 the lower the CPU clock speed, the less power the CPU consumes. 9 10 Note that this driver doesn't automatically change the CPU 11 clock speed, you need to either enable a dynamic cpufreq governor 12 (see below) after boot, or use a userspace tool. 13 14 For details, take a look at <file:Documentation/cpu-freq>. 15 16 If in doubt, say N. 17 18if CPU_FREQ 19 20config CPU_FREQ_TABLE 21 tristate 22 23config CPU_FREQ_STAT 24 tristate "CPU frequency translation statistics" 25 select CPU_FREQ_TABLE 26 default y 27 help 28 This driver exports CPU frequency statistics information through sysfs 29 file system. 30 31 To compile this driver as a module, choose M here: the 32 module will be called cpufreq_stats. 33 34 If in doubt, say N. 35 36config CPU_FREQ_STAT_DETAILS 37 bool "CPU frequency translation statistics details" 38 depends on CPU_FREQ_STAT 39 help 40 This will show detail CPU frequency translation table in sysfs file 41 system. 42 43 If in doubt, say N. 44 45choice 46 prompt "Default CPUFreq governor" 47 default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110 48 default CPU_FREQ_DEFAULT_GOV_PERFORMANCE 49 help 50 This option sets which CPUFreq governor shall be loaded at 51 startup. If in doubt, select 'performance'. 52 53config CPU_FREQ_DEFAULT_GOV_PERFORMANCE 54 bool "performance" 55 select CPU_FREQ_GOV_PERFORMANCE 56 help 57 Use the CPUFreq governor 'performance' as default. This sets 58 the frequency statically to the highest frequency supported by 59 the CPU. 60 61config CPU_FREQ_DEFAULT_GOV_POWERSAVE 62 bool "powersave" 63 depends on EXPERT 64 select CPU_FREQ_GOV_POWERSAVE 65 help 66 Use the CPUFreq governor 'powersave' as default. This sets 67 the frequency statically to the lowest frequency supported by 68 the CPU. 69 70config CPU_FREQ_DEFAULT_GOV_USERSPACE 71 bool "userspace" 72 select CPU_FREQ_GOV_USERSPACE 73 help 74 Use the CPUFreq governor 'userspace' as default. This allows 75 you to set the CPU frequency manually or when a userspace 76 program shall be able to set the CPU dynamically without having 77 to enable the userspace governor manually. 78 79config CPU_FREQ_DEFAULT_GOV_ONDEMAND 80 bool "ondemand" 81 select CPU_FREQ_GOV_ONDEMAND 82 select CPU_FREQ_GOV_PERFORMANCE 83 help 84 Use the CPUFreq governor 'ondemand' as default. This allows 85 you to get a full dynamic frequency capable system by simply 86 loading your cpufreq low-level hardware driver. 87 Be aware that not all cpufreq drivers support the ondemand 88 governor. If unsure have a look at the help section of the 89 driver. Fallback governor will be the performance governor. 90 91config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE 92 bool "conservative" 93 select CPU_FREQ_GOV_CONSERVATIVE 94 select CPU_FREQ_GOV_PERFORMANCE 95 help 96 Use the CPUFreq governor 'conservative' as default. This allows 97 you to get a full dynamic frequency capable system by simply 98 loading your cpufreq low-level hardware driver. 99 Be aware that not all cpufreq drivers support the conservative 100 governor. If unsure have a look at the help section of the 101 driver. Fallback governor will be the performance governor. 102 103config CPU_FREQ_DEFAULT_GOV_INTERACTIVE 104 bool "interactive" 105 select CPU_FREQ_GOV_INTERACTIVE 106 help 107 Use the CPUFreq governor 'interactive' as default. This allows 108 you to get a full dynamic cpu frequency capable system by simply 109 loading your cpufreq low-level hardware driver, using the 110 'interactive' governor for latency-sensitive workloads. 111 112endchoice 113 114config CPU_FREQ_GOV_PERFORMANCE 115 tristate "'performance' governor" 116 help 117 This cpufreq governor sets the frequency statically to the 118 highest available CPU frequency. 119 120 To compile this driver as a module, choose M here: the 121 module will be called cpufreq_performance. 122 123 If in doubt, say Y. 124 125config CPU_FREQ_GOV_POWERSAVE 126 tristate "'powersave' governor" 127 help 128 This cpufreq governor sets the frequency statically to the 129 lowest available CPU frequency. 130 131 To compile this driver as a module, choose M here: the 132 module will be called cpufreq_powersave. 133 134 If in doubt, say Y. 135 136config CPU_FREQ_GOV_USERSPACE 137 tristate "'userspace' governor for userspace frequency scaling" 138 help 139 Enable this cpufreq governor when you either want to set the 140 CPU frequency manually or when a userspace program shall 141 be able to set the CPU dynamically, like on LART 142 <http://www.lartmaker.nl/>. 143 144 To compile this driver as a module, choose M here: the 145 module will be called cpufreq_userspace. 146 147 For details, take a look at <file:Documentation/cpu-freq/>. 148 149 If in doubt, say Y. 150 151config CPU_FREQ_GOV_ONDEMAND 152 tristate "'ondemand' cpufreq policy governor" 153 select CPU_FREQ_TABLE 154 help 155 'ondemand' - This driver adds a dynamic cpufreq policy governor. 156 The governor does a periodic polling and 157 changes frequency based on the CPU utilization. 158 The support for this governor depends on CPU capability to 159 do fast frequency switching (i.e, very low latency frequency 160 transitions). 161 162 To compile this driver as a module, choose M here: the 163 module will be called cpufreq_ondemand. 164 165 For details, take a look at linux/Documentation/cpu-freq. 166 167 If in doubt, say N. 168 169config CPU_FREQ_GOV_INTERACTIVE 170 tristate "'interactive' cpufreq policy governor" 171 help 172 'interactive' - This driver adds a dynamic cpufreq policy governor 173 designed for latency-sensitive workloads. 174 175 This governor attempts to reduce the latency of clock 176 increases so that the system is more responsive to 177 interactive workloads. 178 179 To compile this driver as a module, choose M here: the 180 module will be called cpufreq_interactive. 181 182 For details, take a look at linux/Documentation/cpu-freq. 183 184 If in doubt, say N. 185 186config CPU_FREQ_GOV_CONSERVATIVE 187 tristate "'conservative' cpufreq governor" 188 depends on CPU_FREQ 189 help 190 'conservative' - this driver is rather similar to the 'ondemand' 191 governor both in its source code and its purpose, the difference is 192 its optimisation for better suitability in a battery powered 193 environment. The frequency is gracefully increased and decreased 194 rather than jumping to 100% when speed is required. 195 196 If you have a desktop machine then you should really be considering 197 the 'ondemand' governor instead, however if you are using a laptop, 198 PDA or even an AMD64 based computer (due to the unacceptable 199 step-by-step latency issues between the minimum and maximum frequency 200 transitions in the CPU) you will probably want to use this governor. 201 202 To compile this driver as a module, choose M here: the 203 module will be called cpufreq_conservative. 204 205 For details, take a look at linux/Documentation/cpu-freq. 206 207 If in doubt, say N. 208 209menu "x86 CPU frequency scaling drivers" 210depends on X86 211source "drivers/cpufreq/Kconfig.x86" 212endmenu 213 214menu "ARM CPU frequency scaling drivers" 215depends on ARM 216source "drivers/cpufreq/Kconfig.arm" 217endmenu 218 219menu "PowerPC CPU frequency scaling drivers" 220depends on PPC32 || PPC64 221source "drivers/cpufreq/Kconfig.powerpc" 222endmenu 223 224endif 225endmenu 226