xref: /openbmc/linux/drivers/cpuidle/Kconfig (revision 14d2c34c)
1
2menuconfig CPU_IDLE
3	bool "CPU idle PM support"
4	default y if ACPI || PPC_PSERIES
5	select CPU_IDLE_GOV_LADDER if (!NO_HZ && !NO_HZ_IDLE)
6	select CPU_IDLE_GOV_MENU if (NO_HZ || NO_HZ_IDLE)
7	help
8	  CPU idle is a generic framework for supporting software-controlled
9	  idle processor power management.  It includes modular cross-platform
10	  governors that can be swapped during runtime.
11
12	  If you're using an ACPI-enabled platform, you should say Y here.
13
14if CPU_IDLE
15
16config CPU_IDLE_MULTIPLE_DRIVERS
17        bool "Support multiple cpuidle drivers"
18        default n
19        help
20         Allows the cpuidle framework to use different drivers for each CPU.
21         This is useful if you have a system with different CPU latencies and
22         states. If unsure say N.
23
24config CPU_IDLE_GOV_LADDER
25	bool "Ladder governor (for periodic timer tick)"
26	default y
27
28config CPU_IDLE_GOV_MENU
29	bool "Menu governor (for tickless system)"
30	default y
31
32config CPU_IDLE_CALXEDA
33	bool "CPU Idle Driver for Calxeda processors"
34	depends on ARCH_HIGHBANK
35	select ARM_CPU_SUSPEND
36	help
37	  Select this to enable cpuidle on Calxeda processors.
38
39config CPU_IDLE_ZYNQ
40	bool "CPU Idle Driver for Xilinx Zynq processors"
41	depends on ARCH_ZYNQ
42	help
43	  Select this to enable cpuidle on Xilinx Zynq processors.
44
45config CPU_IDLE_BIG_LITTLE
46	bool "Support for ARM big.LITTLE processors"
47	depends on ARCH_VEXPRESS_TC2_PM
48	select ARM_CPU_SUSPEND
49	select CPU_IDLE_MULTIPLE_DRIVERS
50	help
51	  Select this option to enable CPU idle driver for big.LITTLE based
52	  ARM systems. Driver manages CPUs coordination through MCPM and
53	  define different C-states for little and big cores through the
54	  multiple CPU idle drivers infrastructure.
55endif
56
57config ARCH_NEEDS_CPU_IDLE_COUPLED
58	def_bool n
59