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
#
# CONFIG_ARM CPU Idle drivers
#
config CONFIG_ARM_CPUIDLE
        bool "Generic ARM/ARM64 CPU idle Driver"
        select CONFIG_DT_IDLE_STATES
	select CONFIG_CPU_IDLE_MULTIPLE_DRIVERS
        help
          Select this to enable generic cpuidle driver for CONFIG_ARM.
          It provides a generic idle driver whose idle states are configured
          at run-time through DT nodes. The CPUidle suspend backend is
          initialized by calling the CPU operations init idle hook
          provided by architecture code.

config CONFIG_ARM_PSCI_CPUIDLE
	bool "PSCI CPU idle Driver"
	depends on CONFIG_ARM_PSCI_FW
	select CONFIG_DT_IDLE_STATES
	select CONFIG_CPU_IDLE_MULTIPLE_DRIVERS
	help
	  Select this to enable PSCI firmware based CPUidle driver for CONFIG_ARM.
	  It provides an idle driver that is capable of detecting and
	  managing idle states through the PSCI firmware interface.

config CONFIG_ARM_BIG_LITTLE_CPUIDLE
	bool "Support for ARM big.LITTLE processors"
	depends on CONFIG_ARCH_VEXPRESS_TC2_PM || CONFIG_ARCH_EXYNOS
	depends on CONFIG_MCPM && !CONFIG_ARM64
	select CONFIG_ARM_CPU_SUSPEND
	select CONFIG_CPU_IDLE_MULTIPLE_DRIVERS
	select CONFIG_DT_IDLE_STATES
	help
	  Select this option to enable CPU idle driver for big.LITTLE based
	  CONFIG_ARM systems. Driver manages CPUs coordination through CONFIG_MCPM and
	  define different CONFIG_C-states for little and big cores through the
	  multiple CPU idle drivers infrastructure.

config CONFIG_ARM_CLPS711X_CPUIDLE
	bool "CPU Idle Driver for CLPS711X processors"
	depends on CONFIG_ARCH_CLPS711X && !CONFIG_ARM64 || CONFIG_COMPILE_TEST
	help
	  Select this to enable cpuidle on Cirrus Logic CLPS711X SOCs.

config CONFIG_ARM_HIGHBANK_CPUIDLE
	bool "CPU Idle Driver for Calxeda processors"
	depends on CONFIG_ARM_PSCI && !CONFIG_ARM64
	select CONFIG_ARM_CPU_SUSPEND
	help
	  Select this to enable cpuidle on Calxeda processors.

config CONFIG_ARM_KIRKWOOD_CPUIDLE
	bool "CPU Idle Driver for Marvell Kirkwood SoCs"
	depends on CONFIG_MACH_KIRKWOOD && !CONFIG_ARM64
	help
	  This adds the CPU Idle driver for Marvell Kirkwood SoCs.

config CONFIG_ARM_ZYNQ_CPUIDLE
	bool "CPU Idle Driver for Xilinx Zynq processors"
	depends on CONFIG_ARCH_ZYNQ && !CONFIG_ARM64
	help
	  Select this to enable cpuidle on Xilinx Zynq processors.

config CONFIG_ARM_U8500_CPUIDLE
	bool "Cpu Idle Driver for the ST-E u8500 processors"
	depends on CONFIG_ARCH_U8500 && !CONFIG_ARM64
	help
	  Select this to enable cpuidle for ST-CONFIG_E u8500 processors

config CONFIG_ARM_AT91_CPUIDLE
	bool "Cpu Idle Driver for the AT91 processors"
	default y
	depends on CONFIG_ARCH_AT91 && !CONFIG_ARM64
	help
	  Select this to enable cpuidle for AT91 processors

config CONFIG_ARM_EXYNOS_CPUIDLE
	bool "Cpu Idle Driver for the Exynos processors"
	depends on CONFIG_ARCH_EXYNOS && !CONFIG_ARM64
	select CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED if CONFIG_SMP
	help
	  Select this to enable cpuidle for Exynos processors

config CONFIG_ARM_MVEBU_V7_CPUIDLE
	bool "CPU Idle Driver for mvebu v7 family processors"
	depends on CONFIG_ARCH_MVEBU && !CONFIG_ARM64
	help
	  Select this to enable cpuidle on Armada 370, 38x and XP processors.