From 2cf98d12958cbb52c23e9e613687171dd6e60120 Mon Sep 17 00:00:00 2001 From: Fabio Estevam Date: Wed, 16 Sep 2020 21:41:18 -0300 Subject: [PATCH] ARM: imx3: Retrieve the CCM base address from devicetree Now that imx31 and imx35 has been converted to a devicetree-only platform, retrieve the CCM base address from devicetree. Signed-off-by: Fabio Estevam Acked-by: Arnd Bergmann Signed-off-by: Shawn Guo --- arch/arm/mach-imx/mm-imx3.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-imx/mm-imx3.c b/arch/arm/mach-imx/mm-imx3.c index 4df7edc7ae7c..b7c5e15bb972 100644 --- a/arch/arm/mach-imx/mm-imx3.c +++ b/arch/arm/mach-imx/mm-imx3.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include @@ -99,10 +100,14 @@ static void imx31_idle(void) void __init imx31_init_early(void) { + struct device_node *np; + mxc_set_cpu_type(MXC_CPU_MX31); arch_ioremap_caller = imx3_ioremap_caller; arm_pm_idle = imx31_idle; - mx3_ccm_base = MX31_IO_ADDRESS(MX31_CCM_BASE_ADDR); + np = of_find_compatible_node(NULL, NULL, "fsl,imx31-ccm"); + mx3_ccm_base = of_iomap(np, 0); + BUG_ON(!mx3_ccm_base); } void __init mx31_init_irq(void) @@ -137,10 +142,14 @@ static void imx35_idle(void) void __init imx35_init_early(void) { + struct device_node *np; + mxc_set_cpu_type(MXC_CPU_MX35); arm_pm_idle = imx35_idle; arch_ioremap_caller = imx3_ioremap_caller; - mx3_ccm_base = MX35_IO_ADDRESS(MX35_CCM_BASE_ADDR); + np = of_find_compatible_node(NULL, NULL, "fsl,imx35-ccm"); + mx3_ccm_base = of_iomap(np, 0); + BUG_ON(!mx3_ccm_base); } void __init mx35_init_irq(void) -- 2.11.0