brintos

brintos / linux-shallow public Read only

0
0
Text · 4.4 KiB · a1ee475 Raw
133 lines · plain
1# SPDX-License-Identifier: GPL-2.0-only2#3# ARM CPU Idle drivers4#5config ARM_CPUIDLE6	bool "Generic ARM CPU idle Driver"7	depends on ARM8	select DT_IDLE_STATES9	select CPU_IDLE_MULTIPLE_DRIVERS10	help11	  Select this to enable generic cpuidle driver for ARM.12	  It provides a generic idle driver whose idle states are configured13	  at run-time through DT nodes. The CPUidle suspend backend is14	  initialized by calling the CPU operations init idle hook15	  provided by architecture code.16 17config ARM_PSCI_CPUIDLE18	bool "PSCI CPU idle Driver"19	depends on ARM_PSCI_FW20	select DT_IDLE_STATES21	select CPU_IDLE_MULTIPLE_DRIVERS22	help23	  Select this to enable PSCI firmware based CPUidle driver for ARM.24	  It provides an idle driver that is capable of detecting and25	  managing idle states through the PSCI firmware interface.26 27	  The driver has limitations when used with PREEMPT_RT:28	  - If the idle states are described with the non-hierarchical layout,29	    all idle states are still available.30 31	  - If the idle states are described with the hierarchical layout,32	    only the idle states defined per CPU are available, but not the ones33	    being shared among a group of CPUs (aka cluster idle states).34 35config ARM_PSCI_CPUIDLE_DOMAIN36	bool "PSCI CPU idle Domain"37	depends on ARM_PSCI_CPUIDLE38	depends on PM_GENERIC_DOMAINS_OF39	select DT_IDLE_GENPD40	default y41	help42	  Select this to enable the PSCI based CPUidle driver to use PM domains,43	  which is needed to support the hierarchical DT based layout of the44	  idle states.45 46config ARM_BIG_LITTLE_CPUIDLE47	bool "Support for ARM big.LITTLE processors"48	depends on ARCH_VEXPRESS_TC2_PM || ARCH_EXYNOS || COMPILE_TEST49	depends on MCPM && !ARM6450	select ARM_CPU_SUSPEND51	select CPU_IDLE_MULTIPLE_DRIVERS52	select DT_IDLE_STATES53	help54	  Select this option to enable CPU idle driver for big.LITTLE based55	  ARM systems. Driver manages CPUs coordination through MCPM and56	  define different C-states for little and big cores through the57	  multiple CPU idle drivers infrastructure.58 59config ARM_CLPS711X_CPUIDLE60	bool "CPU Idle Driver for CLPS711X processors"61	depends on ARCH_CLPS711X && !ARM64 || COMPILE_TEST62	help63	  Select this to enable cpuidle on Cirrus Logic CLPS711X SOCs.64 65config ARM_HIGHBANK_CPUIDLE66	bool "CPU Idle Driver for Calxeda processors"67	depends on ARM_PSCI && !ARM6468	select ARM_CPU_SUSPEND69	help70	  Select this to enable cpuidle on Calxeda processors.71 72config ARM_KIRKWOOD_CPUIDLE73	bool "CPU Idle Driver for Marvell Kirkwood SoCs"74	depends on (MACH_KIRKWOOD || COMPILE_TEST) && !ARM6475	help76	  This adds the CPU Idle driver for Marvell Kirkwood SoCs.77 78config ARM_ZYNQ_CPUIDLE79	bool "CPU Idle Driver for Xilinx Zynq processors"80	depends on (ARCH_ZYNQ || COMPILE_TEST) && !ARM6481	help82	  Select this to enable cpuidle on Xilinx Zynq processors.83 84config ARM_U8500_CPUIDLE85	bool "Cpu Idle Driver for the ST-E u8500 processors"86	depends on ARCH_U8500 && !ARM6487	help88	  Select this to enable cpuidle for ST-E u8500 processors.89 90config ARM_AT91_CPUIDLE91	bool "Cpu Idle Driver for the AT91 processors"92	default y93	depends on (ARCH_AT91 || COMPILE_TEST) && !ARM6494	help95	  Select this to enable cpuidle for AT91 processors.96 97config ARM_EXYNOS_CPUIDLE98	bool "Cpu Idle Driver for the Exynos processors"99	depends on (ARCH_EXYNOS || COMPILE_TEST) && !ARM64100	select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP101	help102	  Select this to enable cpuidle for Exynos processors.103 104config ARM_MVEBU_V7_CPUIDLE105	bool "CPU Idle Driver for mvebu v7 family processors"106	depends on (ARCH_MVEBU || COMPILE_TEST) && !ARM64107	help108	  Select this to enable cpuidle on Armada 370, 38x and XP processors.109 110config ARM_TEGRA_CPUIDLE111	bool "CPU Idle Driver for NVIDIA Tegra SoCs"112	depends on (ARCH_TEGRA || COMPILE_TEST) && !ARM64 && MMU113	depends on ARCH_SUSPEND_POSSIBLE114	select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP115	select ARM_CPU_SUSPEND116	help117	  Select this to enable cpuidle for NVIDIA Tegra20/30/114/124 SoCs.118 119config ARM_QCOM_SPM_CPUIDLE120	bool "CPU Idle Driver for Qualcomm Subsystem Power Manager (SPM)"121	depends on (ARCH_QCOM || COMPILE_TEST) && !ARM64 && MMU122	depends on ARCH_SUSPEND_POSSIBLE123	select ARM_CPU_SUSPEND124	select CPU_IDLE_MULTIPLE_DRIVERS125	select DT_IDLE_STATES126	select QCOM_SCM127	select QCOM_SPM128	help129	  Select this to enable cpuidle for Qualcomm processors.130	  The Subsystem Power Manager (SPM) controls low power modes for the131	  CPU and L2 cores. It interface with various system drivers to put132	  the cores in low power modes.133