Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
menu "CPU Idle"

config CONFIG_CPU_IDLE
	bool "CPU idle PM support"
	default y if CONFIG_ACPI || CONFIG_PPC_PSERIES
	select CONFIG_CPU_IDLE_GOV_LADDER if (!CONFIG_NO_HZ && !CONFIG_NO_HZ_IDLE)
	select CONFIG_CPU_IDLE_GOV_MENU if (CONFIG_NO_HZ || CONFIG_NO_HZ_IDLE) && !CONFIG_CPU_IDLE_GOV_TEO
	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 CONFIG_ACPI-enabled platform, you should say Y here.

if CONFIG_CPU_IDLE

config CONFIG_CPU_IDLE_MULTIPLE_DRIVERS
        bool

config CONFIG_CPU_IDLE_GOV_LADDER
	bool "Ladder governor (for periodic timer tick)"

config CONFIG_CPU_IDLE_GOV_MENU
	bool "Menu governor (for tickless system)"

config CONFIG_CPU_IDLE_GOV_TEO
	bool "Timer events oriented (TEO) governor (for tickless systems)"
	help
	  This governor implements a simplified idle state selection method
	  focused on timer events and does not do any interactivity boosting.

	  Some workloads benefit from using it and it generally should be safe
	  to use.  Say Y here if you are not happy with the alternatives.

config CONFIG_CPU_IDLE_GOV_HALTPOLL
	bool "Haltpoll governor (for virtualized systems)"
	depends on CONFIG_KVM_GUEST
	help
	  This governor implements haltpoll idle state selection, to be
	  used in conjunction with the haltpoll cpuidle driver, allowing
	  for polling for a certain amount of time before entering idle
	  state.

	  Some virtualized workloads benefit from using it.

config CONFIG_DT_IDLE_STATES
	bool

menu "ARM CPU Idle Drivers"
depends on CONFIG_ARM || CONFIG_ARM64
source "drivers/cpuidle/Kconfig.arm"
endmenu

menu "MIPS CPU Idle Drivers"
depends on CONFIG_MIPS
source "drivers/cpuidle/Kconfig.mips"
endmenu

menu "POWERPC CPU Idle Drivers"
depends on CONFIG_PPC
source "drivers/cpuidle/Kconfig.powerpc"
endmenu

config CONFIG_HALTPOLL_CPUIDLE
       tristate "Halt poll cpuidle driver"
       depends on CONFIG_X86 && CONFIG_KVM_GUEST
       default y
       help
         This option enables halt poll cpuidle driver, which allows to poll
         before halting in the guest (more efficient than polling in the
         host via halt_poll_ns for some scenarios).

endif

config CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED
	def_bool n
endmenu