From ff843d621bfc9a9b36c370bb523d3551f2e195dd Mon Sep 17 00:00:00 2001 From: Anson Huang Date: Fri, 20 Jun 2014 13:20:54 +0800 Subject: ARM: imx: add suspend support for i.mx6sx Add suspend support for i.MX6SX. To enter suspend, echo mem > /sys/power/state. To exit suspend, using RTC alarm or enable debug UART wakeup. Signed-off-by: Anson Huang Signed-off-by: Shawn Guo --- arch/arm/mach-imx/mach-imx6sx.c | 1 + 1 file changed, 1 insertion(+) (limited to 'arch/arm/mach-imx/mach-imx6sx.c') diff --git a/arch/arm/mach-imx/mach-imx6sx.c b/arch/arm/mach-imx/mach-imx6sx.c index 02fccf6..b7a0bde 100644 --- a/arch/arm/mach-imx/mach-imx6sx.c +++ b/arch/arm/mach-imx/mach-imx6sx.c @@ -26,6 +26,7 @@ static void __init imx6sx_init_machine(void) of_platform_populate(NULL, of_default_bus_match_table, NULL, parent); imx_anatop_init(); + imx6sx_pm_init(); } static void __init imx6sx_init_irq(void) -- cgit v1.1 From a25d67a437422a58852746d5b6312fd8d71d1ecf Mon Sep 17 00:00:00 2001 From: Anson Huang Date: Fri, 20 Jun 2014 13:44:05 +0800 Subject: ARM: imx: add cpuidle support for i.mx6sx Add cpuidle support for i.MX6SX, derive from i.MX6Q's cpuidle, two levels supported: 1. WFI; 2. WAIT mode. Signed-off-by: Anson Huang Signed-off-by: Shawn Guo --- arch/arm/mach-imx/mach-imx6sx.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'arch/arm/mach-imx/mach-imx6sx.c') diff --git a/arch/arm/mach-imx/mach-imx6sx.c b/arch/arm/mach-imx/mach-imx6sx.c index b7a0bde..74ff7d6 100644 --- a/arch/arm/mach-imx/mach-imx6sx.c +++ b/arch/arm/mach-imx/mach-imx6sx.c @@ -12,6 +12,7 @@ #include #include "common.h" +#include "cpuidle.h" static void __init imx6sx_init_machine(void) { @@ -38,6 +39,11 @@ static void __init imx6sx_init_irq(void) irqchip_init(); } +static void __init imx6sx_init_late(void) +{ + imx6q_cpuidle_init(); +} + static const char *imx6sx_dt_compat[] __initconst = { "fsl,imx6sx", NULL, @@ -48,5 +54,6 @@ DT_MACHINE_START(IMX6SX, "Freescale i.MX6 SoloX (Device Tree)") .init_irq = imx6sx_init_irq, .init_machine = imx6sx_init_machine, .dt_compat = imx6sx_dt_compat, + .init_late = imx6sx_init_late, .restart = mxc_restart, MACHINE_END -- cgit v1.1 From 8756dd924df6f4199368bee426dc8b2da0cfc6d6 Mon Sep 17 00:00:00 2001 From: Shawn Guo Date: Tue, 1 Jul 2014 16:03:00 +0800 Subject: ARM: imx: mark .dt_compat as const Otherwise GCC will mark the .init.rodata section R/W, which causes a compile error once we add other real R/O data. Signed-off-by: Lucas Stach Signed-off-by: Shawn Guo --- arch/arm/mach-imx/mach-imx6sx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'arch/arm/mach-imx/mach-imx6sx.c') diff --git a/arch/arm/mach-imx/mach-imx6sx.c b/arch/arm/mach-imx/mach-imx6sx.c index 74ff7d6..673a734 100644 --- a/arch/arm/mach-imx/mach-imx6sx.c +++ b/arch/arm/mach-imx/mach-imx6sx.c @@ -44,7 +44,7 @@ static void __init imx6sx_init_late(void) imx6q_cpuidle_init(); } -static const char *imx6sx_dt_compat[] __initconst = { +static const char * const imx6sx_dt_compat[] __initconst = { "fsl,imx6sx", NULL, }; -- cgit v1.1