diff options
author | Anson Huang <anson.huang@nxp.com> | 2019-01-14 08:54:59 +0800 |
---|---|---|
committer | Shawn Guo <shawnguo@kernel.org> | 2019-01-15 23:03:40 +0800 |
commit | 6d45a4028c8a6bc0a1e92438283ef7d4ed6ffe71 (patch) | |
tree | 05f1710067648f1d2d4ed96ec0238a133cb88958 /arch/arm/mach-imx/mach-imx7ulp.c | |
parent | 23b2441b90026ff56b3a4dd9af33a39730cffa21 (diff) | |
download | linux-6d45a4028c8a6bc0a1e92438283ef7d4ed6ffe71.tar.gz linux-6d45a4028c8a6bc0a1e92438283ef7d4ed6ffe71.tar.bz2 linux-6d45a4028c8a6bc0a1e92438283ef7d4ed6ffe71.zip |
ARM: imx: add i.MX7ULP cpuidle support
This patch adds cpuidle support for i.MX7ULP, 3 cpuidle
states supported as below:
1. WFI, just ARM wfi;
2. WAIT mode, mapped to SoC's partial stop mode #3;
3. STOP mode, mapped to SoC's partial stop mode #1.
In WAIT mode, system clock and bus clock will be enabled;
In STOP mode, system clock and bus clock will be disabled.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Diffstat (limited to 'arch/arm/mach-imx/mach-imx7ulp.c')
-rw-r--r-- | arch/arm/mach-imx/mach-imx7ulp.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/mach-imx7ulp.c b/arch/arm/mach-imx/mach-imx7ulp.c index 33937ebf66b5..19c5b3050cb9 100644 --- a/arch/arm/mach-imx/mach-imx7ulp.c +++ b/arch/arm/mach-imx/mach-imx7ulp.c @@ -10,6 +10,7 @@ #include <asm/mach/arch.h> #include "common.h" +#include "cpuidle.h" #include "hardware.h" static void __init imx7ulp_init_machine(void) @@ -25,7 +26,13 @@ static const char *const imx7ulp_dt_compat[] __initconst = { NULL, }; +static void __init imx7ulp_init_late(void) +{ + imx7ulp_cpuidle_init(); +} + DT_MACHINE_START(IMX7ulp, "Freescale i.MX7ULP (Device Tree)") .init_machine = imx7ulp_init_machine, .dt_compat = imx7ulp_dt_compat, + .init_late = imx7ulp_init_late, MACHINE_END |