]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blame - drivers/cpuidle/Kconfig.arm
Merge tag 'amd-drm-fixes-5.11-2021-01-06' of https://gitlab.freedesktop.org/agd5f...
[mirror_ubuntu-jammy-kernel.git] / drivers / cpuidle / Kconfig.arm
CommitLineData
ec8f24b7 1# SPDX-License-Identifier: GPL-2.0-only
b98e01ad
S
2#
3# ARM CPU Idle drivers
4#
0e087044 5config ARM_CPUIDLE
656b4e63
KK
6 bool "Generic ARM/ARM64 CPU idle Driver"
7 select DT_IDLE_STATES
d50a7d8a 8 select CPU_IDLE_MULTIPLE_DRIVERS
656b4e63
KK
9 help
10 Select this to enable generic cpuidle driver for ARM.
11 It provides a generic idle driver whose idle states are configured
12 at run-time through DT nodes. The CPUidle suspend backend is
13 initialized by calling the CPU operations init idle hook
14 provided by architecture code.
0e087044 15
81d549e0 16config ARM_PSCI_CPUIDLE
78896146 17 bool "PSCI CPU idle Driver"
81d549e0
LP
18 depends on ARM_PSCI_FW
19 select DT_IDLE_STATES
20 select CPU_IDLE_MULTIPLE_DRIVERS
21 help
22 Select this to enable PSCI firmware based CPUidle driver for ARM.
23 It provides an idle driver that is capable of detecting and
24 managing idle states through the PSCI firmware interface.
25
03175619
UH
26config ARM_PSCI_CPUIDLE_DOMAIN
27 bool "PSCI CPU idle Domain"
28 depends on ARM_PSCI_CPUIDLE
29 depends on PM_GENERIC_DOMAINS_OF
30 default y
31 help
32 Select this to enable the PSCI based CPUidle driver to use PM domains,
33 which is needed to support the hierarchical DT based layout of the
34 idle states.
35
3880d214
LP
36config ARM_BIG_LITTLE_CPUIDLE
37 bool "Support for ARM big.LITTLE processors"
53eb82b0 38 depends on ARCH_VEXPRESS_TC2_PM || ARCH_EXYNOS || COMPILE_TEST
0e087044 39 depends on MCPM && !ARM64
3880d214
LP
40 select ARM_CPU_SUSPEND
41 select CPU_IDLE_MULTIPLE_DRIVERS
d2e5c871 42 select DT_IDLE_STATES
3880d214
LP
43 help
44 Select this option to enable CPU idle driver for big.LITTLE based
45 ARM systems. Driver manages CPUs coordination through MCPM and
46 define different C-states for little and big cores through the
47 multiple CPU idle drivers infrastructure.
48
7c7f8f7f
AS
49config ARM_CLPS711X_CPUIDLE
50 bool "CPU Idle Driver for CLPS711X processors"
0e087044 51 depends on ARCH_CLPS711X && !ARM64 || COMPILE_TEST
7c7f8f7f
AS
52 help
53 Select this to enable cpuidle on Cirrus Logic CLPS711X SOCs.
54
b98e01ad
S
55config ARM_HIGHBANK_CPUIDLE
56 bool "CPU Idle Driver for Calxeda processors"
0e087044 57 depends on ARM_PSCI && !ARM64
b98e01ad
S
58 select ARM_CPU_SUSPEND
59 help
60 Select this to enable cpuidle on Calxeda processors.
61
62config ARM_KIRKWOOD_CPUIDLE
63 bool "CPU Idle Driver for Marvell Kirkwood SoCs"
53eb82b0 64 depends on (MACH_KIRKWOOD || COMPILE_TEST) && !ARM64
b98e01ad
S
65 help
66 This adds the CPU Idle driver for Marvell Kirkwood SoCs.
67
68config ARM_ZYNQ_CPUIDLE
69 bool "CPU Idle Driver for Xilinx Zynq processors"
53eb82b0 70 depends on (ARCH_ZYNQ || COMPILE_TEST) && !ARM64
b98e01ad 71 help
d3f2950f
DL
72 Select this to enable cpuidle on Xilinx Zynq processors.
73
74config ARM_U8500_CPUIDLE
75 bool "Cpu Idle Driver for the ST-E u8500 processors"
0e087044 76 depends on ARCH_U8500 && !ARM64
d3f2950f 77 help
4d30d4a0 78 Select this to enable cpuidle for ST-E u8500 processors.
d3f2950f 79
1ce3c48e
DL
80config ARM_AT91_CPUIDLE
81 bool "Cpu Idle Driver for the AT91 processors"
82 default y
53eb82b0 83 depends on (ARCH_AT91 || COMPILE_TEST) && !ARM64
a35c6322 84 help
4d30d4a0 85 Select this to enable cpuidle for AT91 processors.
ff6a9c03
DL
86
87config ARM_EXYNOS_CPUIDLE
88 bool "Cpu Idle Driver for the Exynos processors"
53eb82b0 89 depends on (ARCH_EXYNOS || COMPILE_TEST) && !ARM64
712eddf7 90 select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
ff6a9c03 91 help
4d30d4a0 92 Select this to enable cpuidle for Exynos processors.
f50ee824
GC
93
94config ARM_MVEBU_V7_CPUIDLE
95 bool "CPU Idle Driver for mvebu v7 family processors"
53eb82b0 96 depends on (ARCH_MVEBU || COMPILE_TEST) && !ARM64
f50ee824
GC
97 help
98 Select this to enable cpuidle on Armada 370, 38x and XP processors.
860fbde4
DO
99
100config ARM_TEGRA_CPUIDLE
101 bool "CPU Idle Driver for NVIDIA Tegra SoCs"
102 depends on ARCH_TEGRA && !ARM64
103 select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
104 select ARM_CPU_SUSPEND
105 help
106 Select this to enable cpuidle for NVIDIA Tegra20/30/114/124 SoCs.
a871be6b
SG
107
108config ARM_QCOM_SPM_CPUIDLE
109 bool "CPU Idle Driver for Qualcomm Subsystem Power Manager (SPM)"
110 depends on (ARCH_QCOM || COMPILE_TEST) && !ARM64
111 select ARM_CPU_SUSPEND
112 select CPU_IDLE_MULTIPLE_DRIVERS
113 select DT_IDLE_STATES
114 select QCOM_SCM
115 help
116 Select this to enable cpuidle for Qualcomm processors.
117 The Subsystem Power Manager (SPM) controls low power modes for the
118 CPU and L2 cores. It interface with various system drivers to put
119 the cores in low power modes.