Kyle Swenson | 8d8f654 | 2021-03-15 11:02:55 -0600 | [diff] [blame] | 1 | # |
| 2 | # ARM CPU Idle drivers |
| 3 | # |
| 4 | config ARM_CPUIDLE |
| 5 | bool "Generic ARM/ARM64 CPU idle Driver" |
| 6 | select DT_IDLE_STATES |
| 7 | help |
| 8 | Select this to enable generic cpuidle driver for ARM. |
| 9 | It provides a generic idle driver whose idle states are configured |
| 10 | at run-time through DT nodes. The CPUidle suspend backend is |
| 11 | initialized by calling the CPU operations init idle hook |
| 12 | provided by architecture code. |
| 13 | |
| 14 | config ARM_BIG_LITTLE_CPUIDLE |
| 15 | bool "Support for ARM big.LITTLE processors" |
| 16 | depends on ARCH_VEXPRESS_TC2_PM || ARCH_EXYNOS |
| 17 | depends on MCPM && !ARM64 |
| 18 | select ARM_CPU_SUSPEND |
| 19 | select CPU_IDLE_MULTIPLE_DRIVERS |
| 20 | select DT_IDLE_STATES |
| 21 | help |
| 22 | Select this option to enable CPU idle driver for big.LITTLE based |
| 23 | ARM systems. Driver manages CPUs coordination through MCPM and |
| 24 | define different C-states for little and big cores through the |
| 25 | multiple CPU idle drivers infrastructure. |
| 26 | |
| 27 | config ARM_CLPS711X_CPUIDLE |
| 28 | bool "CPU Idle Driver for CLPS711X processors" |
| 29 | depends on ARCH_CLPS711X && !ARM64 || COMPILE_TEST |
| 30 | help |
| 31 | Select this to enable cpuidle on Cirrus Logic CLPS711X SOCs. |
| 32 | |
| 33 | config ARM_HIGHBANK_CPUIDLE |
| 34 | bool "CPU Idle Driver for Calxeda processors" |
| 35 | depends on ARM_PSCI && !ARM64 |
| 36 | select ARM_CPU_SUSPEND |
| 37 | help |
| 38 | Select this to enable cpuidle on Calxeda processors. |
| 39 | |
| 40 | config ARM_KIRKWOOD_CPUIDLE |
| 41 | bool "CPU Idle Driver for Marvell Kirkwood SoCs" |
| 42 | depends on MACH_KIRKWOOD && !ARM64 |
| 43 | help |
| 44 | This adds the CPU Idle driver for Marvell Kirkwood SoCs. |
| 45 | |
| 46 | config ARM_ZYNQ_CPUIDLE |
| 47 | bool "CPU Idle Driver for Xilinx Zynq processors" |
| 48 | depends on ARCH_ZYNQ && !ARM64 |
| 49 | help |
| 50 | Select this to enable cpuidle on Xilinx Zynq processors. |
| 51 | |
| 52 | config ARM_U8500_CPUIDLE |
| 53 | bool "Cpu Idle Driver for the ST-E u8500 processors" |
| 54 | depends on ARCH_U8500 && !ARM64 |
| 55 | help |
| 56 | Select this to enable cpuidle for ST-E u8500 processors |
| 57 | |
| 58 | config ARM_AT91_CPUIDLE |
| 59 | bool "Cpu Idle Driver for the AT91 processors" |
| 60 | default y |
| 61 | depends on ARCH_AT91 && !ARM64 |
| 62 | help |
| 63 | Select this to enable cpuidle for AT91 processors |
| 64 | |
| 65 | config ARM_EXYNOS_CPUIDLE |
| 66 | bool "Cpu Idle Driver for the Exynos processors" |
| 67 | depends on ARCH_EXYNOS && !ARM64 |
| 68 | select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP |
| 69 | help |
| 70 | Select this to enable cpuidle for Exynos processors |
| 71 | |
| 72 | config ARM_MVEBU_V7_CPUIDLE |
| 73 | bool "CPU Idle Driver for mvebu v7 family processors" |
| 74 | depends on ARCH_MVEBU && !ARM64 |
| 75 | help |
| 76 | Select this to enable cpuidle on Armada 370, 38x and XP processors. |