mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-01-01 14:52:32 +00:00
d6f346f2d2
Each governor is suitable for different kernel configurations: the menu governor suits better for a tickless system, while the ladder governor fits better for a periodic timer tick system. The Kconfig does not allow to [un]select a governor, thus both are compiled in the kernel but the init order makes the menu governor to be the last one to be registered, so becoming the default. The only way to switch back to the ladder governor is to enable the sysfs governor switch in the kernel command line. Because it seems nobody complained about this, the menu governor is used by default most of the time on the system, having both governors is not really necessary on a tickless system but there isn't a config option to disable one or another governor. Create a submenu for cpuidle and add a label for each governor, so we can see the option in the menu config and enable/disable it. The governors will be enabled depending on the CONFIG_NO_HZ option: - If CONFIG_NO_HZ is set, then the menu governor is selected and the ladder governor is optional, defaulting to 'yes' - If CONFIG_NO_HZ is not set, then the ladder governor is selected and the menu governor is optional, defaulting to 'yes' Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
41 lines
1.1 KiB
Plaintext
41 lines
1.1 KiB
Plaintext
|
|
menuconfig CPU_IDLE
|
|
bool "CPU idle PM support"
|
|
default y if ACPI || PPC_PSERIES
|
|
select CPU_IDLE_GOV_LADDER if (!NO_HZ && !NO_HZ_IDLE)
|
|
select CPU_IDLE_GOV_MENU if (NO_HZ || NO_HZ_IDLE)
|
|
help
|
|
CPU idle is a generic framework for supporting software-controlled
|
|
idle processor power management. It includes modular cross-platform
|
|
governors that can be swapped during runtime.
|
|
|
|
If you're using an ACPI-enabled platform, you should say Y here.
|
|
|
|
if CPU_IDLE
|
|
|
|
config CPU_IDLE_MULTIPLE_DRIVERS
|
|
bool "Support multiple cpuidle drivers"
|
|
default n
|
|
help
|
|
Allows the cpuidle framework to use different drivers for each CPU.
|
|
This is useful if you have a system with different CPU latencies and
|
|
states. If unsure say N.
|
|
|
|
config CPU_IDLE_GOV_LADDER
|
|
bool "Ladder governor (for periodic timer tick)"
|
|
default y
|
|
|
|
config CPU_IDLE_GOV_MENU
|
|
bool "Menu governor (for tickless system)"
|
|
default y
|
|
|
|
config ARCH_NEEDS_CPU_IDLE_COUPLED
|
|
def_bool n
|
|
|
|
config CPU_IDLE_CALXEDA
|
|
bool "CPU Idle Driver for Calxeda processors"
|
|
depends on ARCH_HIGHBANK
|
|
help
|
|
Select this to enable cpuidle on Calxeda processors.
|
|
endif
|