|  | menu "CPU Frequency scaling" | 
|  |  | 
|  | config CPU_FREQ | 
|  | bool "CPU Frequency scaling" | 
|  | help | 
|  | CPU Frequency scaling allows you to change the clock speed of | 
|  | CPUs on the fly. This is a nice method to save power, because | 
|  | the lower the CPU clock speed, the less power the CPU consumes. | 
|  |  | 
|  | Note that this driver doesn't automatically change the CPU | 
|  | clock speed, you need to either enable a dynamic cpufreq governor | 
|  | (see below) after boot, or use a userspace tool. | 
|  |  | 
|  | For details, take a look at <file:Documentation/cpu-freq>. | 
|  |  | 
|  | If in doubt, say N. | 
|  |  | 
|  | if CPU_FREQ | 
|  |  | 
|  | config CPU_FREQ_TABLE | 
|  | tristate | 
|  |  | 
|  | config CPU_FREQ_STAT | 
|  | tristate "CPU frequency translation statistics" | 
|  | select CPU_FREQ_TABLE | 
|  | default y | 
|  | help | 
|  | This driver exports CPU frequency statistics information through sysfs | 
|  | file system. | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called cpufreq_stats. | 
|  |  | 
|  | If in doubt, say N. | 
|  |  | 
|  | config CPU_FREQ_STAT_DETAILS | 
|  | bool "CPU frequency translation statistics details" | 
|  | depends on CPU_FREQ_STAT | 
|  | help | 
|  | This will show detail CPU frequency translation table in sysfs file | 
|  | system. | 
|  |  | 
|  | If in doubt, say N. | 
|  |  | 
|  | choice | 
|  | prompt "Default CPUFreq governor" | 
|  | default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110 | 
|  | default CPU_FREQ_DEFAULT_GOV_PERFORMANCE | 
|  | help | 
|  | This option sets which CPUFreq governor shall be loaded at | 
|  | startup. If in doubt, select 'performance'. | 
|  |  | 
|  | config CPU_FREQ_DEFAULT_GOV_PERFORMANCE | 
|  | bool "performance" | 
|  | select CPU_FREQ_GOV_PERFORMANCE | 
|  | help | 
|  | Use the CPUFreq governor 'performance' as default. This sets | 
|  | the frequency statically to the highest frequency supported by | 
|  | the CPU. | 
|  |  | 
|  | config CPU_FREQ_DEFAULT_GOV_POWERSAVE | 
|  | bool "powersave" | 
|  | depends on EXPERT | 
|  | select CPU_FREQ_GOV_POWERSAVE | 
|  | help | 
|  | Use the CPUFreq governor 'powersave' as default. This sets | 
|  | the frequency statically to the lowest frequency supported by | 
|  | the CPU. | 
|  |  | 
|  | config CPU_FREQ_DEFAULT_GOV_USERSPACE | 
|  | bool "userspace" | 
|  | select CPU_FREQ_GOV_USERSPACE | 
|  | help | 
|  | Use the CPUFreq governor 'userspace' as default. This allows | 
|  | you to set the CPU frequency manually or when a userspace | 
|  | program shall be able to set the CPU dynamically without having | 
|  | to enable the userspace governor manually. | 
|  |  | 
|  | config CPU_FREQ_DEFAULT_GOV_ONDEMAND | 
|  | bool "ondemand" | 
|  | select CPU_FREQ_GOV_ONDEMAND | 
|  | select CPU_FREQ_GOV_PERFORMANCE | 
|  | help | 
|  | Use the CPUFreq governor 'ondemand' as default. This allows | 
|  | you to get a full dynamic frequency capable system by simply | 
|  | loading your cpufreq low-level hardware driver. | 
|  | Be aware that not all cpufreq drivers support the ondemand | 
|  | governor. If unsure have a look at the help section of the | 
|  | driver. Fallback governor will be the performance governor. | 
|  |  | 
|  | config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE | 
|  | bool "conservative" | 
|  | select CPU_FREQ_GOV_CONSERVATIVE | 
|  | select CPU_FREQ_GOV_PERFORMANCE | 
|  | help | 
|  | Use the CPUFreq governor 'conservative' as default. This allows | 
|  | you to get a full dynamic frequency capable system by simply | 
|  | loading your cpufreq low-level hardware driver. | 
|  | Be aware that not all cpufreq drivers support the conservative | 
|  | governor. If unsure have a look at the help section of the | 
|  | driver. Fallback governor will be the performance governor. | 
|  | endchoice | 
|  |  | 
|  | config CPU_FREQ_GOV_PERFORMANCE | 
|  | tristate "'performance' governor" | 
|  | help | 
|  | This cpufreq governor sets the frequency statically to the | 
|  | highest available CPU frequency. | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called cpufreq_performance. | 
|  |  | 
|  | If in doubt, say Y. | 
|  |  | 
|  | config CPU_FREQ_GOV_POWERSAVE | 
|  | tristate "'powersave' governor" | 
|  | help | 
|  | This cpufreq governor sets the frequency statically to the | 
|  | lowest available CPU frequency. | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called cpufreq_powersave. | 
|  |  | 
|  | If in doubt, say Y. | 
|  |  | 
|  | config CPU_FREQ_GOV_USERSPACE | 
|  | tristate "'userspace' governor for userspace frequency scaling" | 
|  | help | 
|  | Enable this cpufreq governor when you either want to set the | 
|  | CPU frequency manually or when a userspace program shall | 
|  | be able to set the CPU dynamically, like on LART | 
|  | <http://www.lartmaker.nl/>. | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called cpufreq_userspace. | 
|  |  | 
|  | For details, take a look at <file:Documentation/cpu-freq/>. | 
|  |  | 
|  | If in doubt, say Y. | 
|  |  | 
|  | config CPU_FREQ_GOV_ONDEMAND | 
|  | tristate "'ondemand' cpufreq policy governor" | 
|  | select CPU_FREQ_TABLE | 
|  | help | 
|  | 'ondemand' - This driver adds a dynamic cpufreq policy governor. | 
|  | The governor does a periodic polling and | 
|  | changes frequency based on the CPU utilization. | 
|  | The support for this governor depends on CPU capability to | 
|  | do fast frequency switching (i.e, very low latency frequency | 
|  | transitions). | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called cpufreq_ondemand. | 
|  |  | 
|  | For details, take a look at linux/Documentation/cpu-freq. | 
|  |  | 
|  | If in doubt, say N. | 
|  |  | 
|  | config CPU_FREQ_GOV_CONSERVATIVE | 
|  | tristate "'conservative' cpufreq governor" | 
|  | depends on CPU_FREQ | 
|  | help | 
|  | 'conservative' - this driver is rather similar to the 'ondemand' | 
|  | governor both in its source code and its purpose, the difference is | 
|  | its optimisation for better suitability in a battery powered | 
|  | environment.  The frequency is gracefully increased and decreased | 
|  | rather than jumping to 100% when speed is required. | 
|  |  | 
|  | If you have a desktop machine then you should really be considering | 
|  | the 'ondemand' governor instead, however if you are using a laptop, | 
|  | PDA or even an AMD64 based computer (due to the unacceptable | 
|  | step-by-step latency issues between the minimum and maximum frequency | 
|  | transitions in the CPU) you will probably want to use this governor. | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called cpufreq_conservative. | 
|  |  | 
|  | For details, take a look at linux/Documentation/cpu-freq. | 
|  |  | 
|  | If in doubt, say N. | 
|  |  | 
|  | menu "x86 CPU frequency scaling drivers" | 
|  | depends on X86 | 
|  | source "drivers/cpufreq/Kconfig.x86" | 
|  | endmenu | 
|  |  | 
|  | menu "ARM CPU frequency scaling drivers" | 
|  | depends on ARM | 
|  | source "drivers/cpufreq/Kconfig.arm" | 
|  | endmenu | 
|  |  | 
|  | menu "PowerPC CPU frequency scaling drivers" | 
|  | depends on PPC32 || PPC64 | 
|  | source "drivers/cpufreq/Kconfig.powerpc" | 
|  | endmenu | 
|  |  | 
|  | endif | 
|  | endmenu |