diff options
author | Shawn Guo <shawn.guo@linaro.org> | 2012-05-04 09:33:42 -0400 |
---|---|---|
committer | Shawn Guo <shawn.guo@linaro.org> | 2012-05-12 01:32:17 -0400 |
commit | 2954ff395bcf69cb31dbe500bec20ce0944ea19e (patch) | |
tree | ca9c1e7e3b0f12151825c496a38a6c8268b2e499 /arch/arm/mach-mxs | |
parent | bc3a59c1b7b1c367fec615b872bdb89ac232f62e (diff) |
ARM: mxs: add initial device tree support for imx23-evk board
It adds initial device tree support for imx23-evk board, and only
serial console is enabled.
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Diffstat (limited to 'arch/arm/mach-mxs')
-rw-r--r-- | arch/arm/mach-mxs/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm/mach-mxs/mach-mxs.c | 24 |
2 files changed, 25 insertions, 0 deletions
diff --git a/arch/arm/mach-mxs/Kconfig b/arch/arm/mach-mxs/Kconfig index 15bb4e211a2..8138a13e23c 100644 --- a/arch/arm/mach-mxs/Kconfig +++ b/arch/arm/mach-mxs/Kconfig | |||
@@ -23,6 +23,7 @@ comment "MXS platforms:" | |||
23 | 23 | ||
24 | config MACH_MXS_DT | 24 | config MACH_MXS_DT |
25 | bool "Support MXS platforms from device tree" | 25 | bool "Support MXS platforms from device tree" |
26 | select SOC_IMX23 | ||
26 | select SOC_IMX28 | 27 | select SOC_IMX28 |
27 | select USE_OF | 28 | select USE_OF |
28 | help | 29 | help |
diff --git a/arch/arm/mach-mxs/mach-mxs.c b/arch/arm/mach-mxs/mach-mxs.c index 5d81a23943c..182ea7529d2 100644 --- a/arch/arm/mach-mxs/mach-mxs.c +++ b/arch/arm/mach-mxs/mach-mxs.c | |||
@@ -41,6 +41,15 @@ static void __init mxs_dt_init_irq(void) | |||
41 | of_irq_init(mxs_irq_match); | 41 | of_irq_init(mxs_irq_match); |
42 | } | 42 | } |
43 | 43 | ||
44 | static void __init imx23_timer_init(void) | ||
45 | { | ||
46 | mx23_clocks_init(); | ||
47 | } | ||
48 | |||
49 | static struct sys_timer imx23_timer = { | ||
50 | .init = imx23_timer_init, | ||
51 | }; | ||
52 | |||
44 | static void __init imx28_timer_init(void) | 53 | static void __init imx28_timer_init(void) |
45 | { | 54 | { |
46 | mx28_clocks_init(); | 55 | mx28_clocks_init(); |
@@ -69,12 +78,27 @@ static void __init mxs_machine_init(void) | |||
69 | NULL, NULL); | 78 | NULL, NULL); |
70 | } | 79 | } |
71 | 80 | ||
81 | static const char *imx23_dt_compat[] __initdata = { | ||
82 | "fsl,imx23-evk", | ||
83 | "fsl,imx23", | ||
84 | NULL, | ||
85 | }; | ||
86 | |||
72 | static const char *imx28_dt_compat[] __initdata = { | 87 | static const char *imx28_dt_compat[] __initdata = { |
73 | "fsl,imx28-evk", | 88 | "fsl,imx28-evk", |
74 | "fsl,imx28", | 89 | "fsl,imx28", |
75 | NULL, | 90 | NULL, |
76 | }; | 91 | }; |
77 | 92 | ||
93 | DT_MACHINE_START(IMX23, "Freescale i.MX23 (Device Tree)") | ||
94 | .map_io = mx23_map_io, | ||
95 | .init_irq = mxs_dt_init_irq, | ||
96 | .timer = &imx23_timer, | ||
97 | .init_machine = mxs_machine_init, | ||
98 | .dt_compat = imx23_dt_compat, | ||
99 | .restart = mxs_restart, | ||
100 | MACHINE_END | ||
101 | |||
78 | DT_MACHINE_START(IMX28, "Freescale i.MX28 (Device Tree)") | 102 | DT_MACHINE_START(IMX28, "Freescale i.MX28 (Device Tree)") |
79 | .map_io = mx28_map_io, | 103 | .map_io = mx28_map_io, |
80 | .init_irq = mxs_dt_init_irq, | 104 | .init_irq = mxs_dt_init_irq, |