menu "CPU Idle" config 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) select CPU_IDLE_GOV_MTK_MENU if (NO_HZ || NO_HZ_IDLE) && !CPU_IDLE_NO_MTK 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 config CPU_IDLE_GOV_LADDER bool "Ladder governor (for periodic timer tick)" config CPU_IDLE_GOV_MENU bool "Menu governor (for tickless system)" config CPU_IDLE_GOV_MTK bool "MTK governor (for MediaTek SoCs)" help MTK governor is used for MTK SoCs to select the correct idle state, which applies system scenario-based policy. MTK governor is specified for MTK SoCs. MTK CPUidle drivers should be paired with MTK governer. config CPU_IDLE_GOV_MTK_MENU bool "MTK menu governor (for MediaTek SoCs)" help MTK menu governor is based on upstream menu governor, and modify predict_us policy to fit execution characteristics of MTK SoCs. MTK menu can be substituted for upstream menu governor config CPU_IDLE_NO_MTK bool "Disable MTK related cpuidle driver / governor" help MTK added many proprietary cpuidle drivers and governors. And some of them set to be default for all projects. But not all (MTK) projects use these driver. Set this option to avoid using MTK driver / gorvernor by default. config DT_IDLE_STATES bool menu "ARM CPU Idle Drivers" depends on ARM || ARM64 source "drivers/cpuidle/Kconfig.arm" endmenu menu "MIPS CPU Idle Drivers" depends on MIPS source "drivers/cpuidle/Kconfig.mips" endmenu menu "POWERPC CPU Idle Drivers" depends on PPC source "drivers/cpuidle/Kconfig.powerpc" endmenu endif config ARCH_NEEDS_CPU_IDLE_COUPLED def_bool n endmenu