From 38c35b8934eb7afeda5fdecefbb39b60251e829a Mon Sep 17 00:00:00 2001 From: Bai Ping Date: Thu, 6 Aug 2015 00:27:47 +0800 Subject: [PATCH] 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 --- arch/arm/mach-imx/mach-imx6q.c | 1 + arch/arm/mach-imx/mach-imx6sl.c | 9 ++++++++- arch/arm/mach-imx/mach-imx6sx.c | 9 ++++++++- arch/arm/mach-imx/pm-imx6.c | 3 +-- 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)); /* -- 2.17.1