summaryrefslogtreecommitdiff
path: root/drivers/cpuidle/Kconfig
blob: a4ac31e4a58c3b6004003403f783b254529bad7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# SPDX-License-Identifier: GPL-2.0-only
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) && !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 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_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 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