summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBai Ping <b51503@freescale.com>2015-08-06 00:27:47 +0800
committerLeonard Crestez <leonard.crestez@nxp.com>2018-08-23 16:42:35 +0300
commitc8b51ed287b5744e98682b77b2fdd5f94f7b870d (patch)
tree14d1b0316c29554e3b8311ebf57f6fc3829b11bc
parent21cd4d537ed8eb594d7a55ad101273ee81878bf4 (diff)
MLK-11322-02 ARM: imx: add io map for pm code
add necessary io memory mapping used by power management. Signed-off-by: Bai Ping <b51503@freescale.com>
-rw-r--r--arch/arm/mach-imx/mach-imx6q.c1
-rw-r--r--arch/arm/mach-imx/mach-imx6sl.c9
-rw-r--r--arch/arm/mach-imx/mach-imx6sx.c9
-rw-r--r--arch/arm/mach-imx/pm-imx6.c3
4 files changed, 18 insertions, 4 deletions
diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index 2a549698faa2..bf38da19157f 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -484,6 +484,7 @@ static void __init imx6q_map_io(void)
{
debug_ll_io_init();
imx_scu_map_io();
+ imx6_pm_map_io();
}
static void __init imx6q_init_irq(void)
diff --git a/arch/arm/mach-imx/mach-imx6sl.c b/arch/arm/mach-imx/mach-imx6sl.c
index 4ed2fb8bf686..215d73cf5cda 100644
--- a/arch/arm/mach-imx/mach-imx6sl.c
+++ b/arch/arm/mach-imx/mach-imx6sl.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2013 Freescale Semiconductor, Inc.
+ * Copyright 2013-2015 Freescale Semiconductor, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
@@ -74,6 +74,12 @@ static void __init imx6sl_init_irq(void)
imx6_pm_ccm_init("fsl,imx6sl-ccm");
}
+static void __init imx6sl_map_io(void)
+{
+ debug_ll_io_init();
+ imx6_pm_map_io();
+}
+
static const char * const imx6sl_dt_compat[] __initconst = {
"fsl,imx6sl",
NULL,
@@ -82,6 +88,7 @@ static const char * const imx6sl_dt_compat[] __initconst = {
DT_MACHINE_START(IMX6SL, "Freescale i.MX6 SoloLite (Device Tree)")
.l2c_aux_val = 0,
.l2c_aux_mask = ~0,
+ .map_io = imx6sl_map_io,
.init_irq = imx6sl_init_irq,
.init_machine = imx6sl_init_machine,
.init_late = imx6sl_init_late,
diff --git a/arch/arm/mach-imx/mach-imx6sx.c b/arch/arm/mach-imx/mach-imx6sx.c
index fafd72b0654c..3f8b0dfce5dd 100644
--- a/arch/arm/mach-imx/mach-imx6sx.c
+++ b/arch/arm/mach-imx/mach-imx6sx.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2014 Freescale Semiconductor, Inc.
+ * Copyright 2014-2015 Freescale Semiconductor, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
@@ -106,6 +106,12 @@ static void __init imx6sx_init_late(void)
platform_device_register_simple("imx6q-cpufreq", -1, NULL, 0);
}
+static void __init imx6sx_map_io(void)
+{
+ debug_ll_io_init();
+ imx6_pm_map_io();
+}
+
static const char * const imx6sx_dt_compat[] __initconst = {
"fsl,imx6sx",
NULL,
@@ -114,6 +120,7 @@ static const char * const imx6sx_dt_compat[] __initconst = {
DT_MACHINE_START(IMX6SX, "Freescale i.MX6 SoloX (Device Tree)")
.l2c_aux_val = 0,
.l2c_aux_mask = ~0,
+ .map_io = imx6sx_map_io,
.init_irq = imx6sx_init_irq,
.init_machine = imx6sx_init_machine,
.dt_compat = imx6sx_dt_compat,
diff --git a/arch/arm/mach-imx/pm-imx6.c b/arch/arm/mach-imx/pm-imx6.c
index 7833d942df71..e287a9470bd4 100644
--- a/arch/arm/mach-imx/pm-imx6.c
+++ b/arch/arm/mach-imx/pm-imx6.c
@@ -223,6 +223,7 @@ static struct map_desc imx6_pm_io_desc[] __initdata = {
imx_map_entry(MX6Q, CCM, MT_DEVICE),
imx_map_entry(MX6Q, ANATOP, MT_DEVICE),
imx_map_entry(MX6Q, GPC, MT_DEVICE),
+ imx_map_entry(MX6Q, L2, MT_DEVICE),
};
static const char * const low_power_ocram_match[] __initconst = {
@@ -483,8 +484,6 @@ void __init imx6_pm_map_io(void)
{
unsigned long i;
- pr_info("pm_map_io init\n\n");
-
iotable_init(imx6_pm_io_desc, ARRAY_SIZE(imx6_pm_io_desc));
/*