aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx3/mm.c
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2011-02-07 10:35:20 -0500
committerSascha Hauer <s.hauer@pengutronix.de>2011-02-10 08:23:49 -0500
commit97976e223be3091a91da103358c3c6cffff7db81 (patch)
tree3f658a7775f0049a3365d8d1c94fed0b6fedc903 /arch/arm/mach-mx3/mm.c
parent3dac219615b88010601ee52e7b5fd1c32ef789ea (diff)
ARM: mx3: use .init_early to initialize cpu type, reset address and iomuxer
This used to be done in .map_io which is supposed to only setup the memory mapping. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx3/mm.c')
-rw-r--r--arch/arm/mach-mx3/mm.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/arm/mach-mx3/mm.c b/arch/arm/mach-mx3/mm.c
index 47118f760244..3387319b0964 100644
--- a/arch/arm/mach-mx3/mm.c
+++ b/arch/arm/mach-mx3/mm.c
@@ -52,10 +52,13 @@ static struct map_desc mx31_io_desc[] __initdata = {
52 */ 52 */
53void __init mx31_map_io(void) 53void __init mx31_map_io(void)
54{ 54{
55 iotable_init(mx31_io_desc, ARRAY_SIZE(mx31_io_desc));
56}
57
58void __init imx31_init_early(void)
59{
55 mxc_set_cpu_type(MXC_CPU_MX31); 60 mxc_set_cpu_type(MXC_CPU_MX31);
56 mxc_arch_reset_init(MX31_IO_ADDRESS(MX31_WDOG_BASE_ADDR)); 61 mxc_arch_reset_init(MX31_IO_ADDRESS(MX31_WDOG_BASE_ADDR));
57
58 iotable_init(mx31_io_desc, ARRAY_SIZE(mx31_io_desc));
59} 62}
60 63
61int imx31_register_gpios(void); 64int imx31_register_gpios(void);
@@ -77,11 +80,14 @@ static struct map_desc mx35_io_desc[] __initdata = {
77 80
78void __init mx35_map_io(void) 81void __init mx35_map_io(void)
79{ 82{
83 iotable_init(mx35_io_desc, ARRAY_SIZE(mx35_io_desc));
84}
85
86void __init imx35_init_early(void)
87{
80 mxc_set_cpu_type(MXC_CPU_MX35); 88 mxc_set_cpu_type(MXC_CPU_MX35);
81 mxc_iomux_v3_init(MX35_IO_ADDRESS(MX35_IOMUXC_BASE_ADDR)); 89 mxc_iomux_v3_init(MX35_IO_ADDRESS(MX35_IOMUXC_BASE_ADDR));
82 mxc_arch_reset_init(MX35_IO_ADDRESS(MX35_WDOG_BASE_ADDR)); 90 mxc_arch_reset_init(MX35_IO_ADDRESS(MX35_WDOG_BASE_ADDR));
83
84 iotable_init(mx35_io_desc, ARRAY_SIZE(mx35_io_desc));
85} 91}
86 92
87int imx35_register_gpios(void); 93int imx35_register_gpios(void);