| 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_GOV_COMMON | 
 | 	bool | 
 |  | 
 | config CPU_FREQ_BOOST_SW | 
 | 	bool | 
 | 	depends on THERMAL | 
 |  | 
 | config CPU_FREQ_STAT | 
 | 	tristate "CPU frequency translation statistics" | 
 | 	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 ARM_SA1100_CPUFREQ || ARM_SA1110_CPUFREQ | 
 | 	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_GOV_COMMON | 
 | 	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 | 
 | 	select CPU_FREQ_GOV_COMMON | 
 | 	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. | 
 |  | 
 | config GENERIC_CPUFREQ_CPU0 | 
 | 	tristate "Generic CPU0 cpufreq driver" | 
 | 	depends on HAVE_CLK && REGULATOR && OF && THERMAL && CPU_THERMAL | 
 | 	select PM_OPP | 
 | 	help | 
 | 	  This adds a generic cpufreq driver for CPU0 frequency management. | 
 | 	  It supports both uniprocessor (UP) and symmetric multiprocessor (SMP) | 
 | 	  systems which share clock and voltage across all CPUs. | 
 |  | 
 | 	  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 "AVR32 CPU frequency scaling drivers" | 
 | depends on AVR32 | 
 |  | 
 | config AVR32_AT32AP_CPUFREQ | 
 | 	bool "CPU frequency driver for AT32AP" | 
 | 	depends on PLATFORM_AT32AP | 
 | 	default n | 
 | 	help | 
 | 	  This enables the CPU frequency driver for AT32AP processors. | 
 | 	  If in doubt, say N. | 
 |  | 
 | endmenu | 
 |  | 
 | menu "CPUFreq processor drivers" | 
 | depends on IA64 | 
 |  | 
 | config IA64_ACPI_CPUFREQ | 
 | 	tristate "ACPI Processor P-States driver" | 
 | 	depends on ACPI_PROCESSOR | 
 | 	help | 
 | 	This driver adds a CPUFreq driver which utilizes the ACPI | 
 | 	Processor Performance States. | 
 |  | 
 | 	For details, take a look at <file:Documentation/cpu-freq/>. | 
 |  | 
 | 	If in doubt, say N. | 
 |  | 
 | endmenu | 
 |  | 
 | menu "MIPS CPUFreq processor drivers" | 
 | depends on MIPS | 
 |  | 
 | config LOONGSON2_CPUFREQ | 
 | 	tristate "Loongson2 CPUFreq Driver" | 
 | 	help | 
 | 	  This option adds a CPUFreq driver for loongson processors which | 
 | 	  support software configurable cpu frequency. | 
 |  | 
 | 	  Loongson2F and it's successors support this feature. | 
 |  | 
 | 	  For details, take a look at <file:Documentation/cpu-freq/>. | 
 |  | 
 | 	  If in doubt, say N. | 
 |  | 
 | endmenu | 
 |  | 
 | menu "PowerPC CPU frequency scaling drivers" | 
 | depends on PPC32 || PPC64 | 
 | source "drivers/cpufreq/Kconfig.powerpc" | 
 | endmenu | 
 |  | 
 | menu "SPARC CPU frequency scaling drivers" | 
 | depends on SPARC64 | 
 | config SPARC_US3_CPUFREQ | 
 | 	tristate "UltraSPARC-III CPU Frequency driver" | 
 | 	help | 
 | 	  This adds the CPUFreq driver for UltraSPARC-III processors. | 
 |  | 
 | 	  For details, take a look at <file:Documentation/cpu-freq>. | 
 |  | 
 | 	  If in doubt, say N. | 
 |  | 
 | config SPARC_US2E_CPUFREQ | 
 | 	tristate "UltraSPARC-IIe CPU Frequency driver" | 
 | 	help | 
 | 	  This adds the CPUFreq driver for UltraSPARC-IIe processors. | 
 |  | 
 | 	  For details, take a look at <file:Documentation/cpu-freq>. | 
 |  | 
 | 	  If in doubt, say N. | 
 | endmenu | 
 |  | 
 | menu "SH CPU Frequency scaling" | 
 | depends on SUPERH | 
 | config SH_CPU_FREQ | 
 | 	tristate "SuperH CPU Frequency driver" | 
 | 	help | 
 | 	  This adds the cpufreq driver for SuperH. Any CPU that supports | 
 | 	  clock rate rounding through the clock framework can use this | 
 | 	  driver. While it will make the kernel slightly larger, this is | 
 | 	  harmless for CPUs that don't support rate rounding. The driver | 
 | 	  will also generate a notice in the boot log before disabling | 
 | 	  itself if the CPU in question is not capable of rate rounding. | 
 |  | 
 | 	  For details, take a look at <file:Documentation/cpu-freq>. | 
 |  | 
 | 	  If unsure, say N. | 
 | endmenu | 
 |  | 
 | endif | 
 | endmenu |