diff options
Diffstat (limited to 'arch/arm/mach-dove/board-dt.c')
-rw-r--r-- | arch/arm/mach-dove/board-dt.c | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-dove/board-dt.c index b5ccc1c05563..49f72a848423 100644 --- a/arch/arm/mach-dove/board-dt.c +++ b/arch/arm/mach-dove/board-dt.c | |||
@@ -10,11 +10,14 @@ | |||
10 | 10 | ||
11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
12 | #include <linux/clk-provider.h> | 12 | #include <linux/clk-provider.h> |
13 | #include <linux/clocksource.h> | ||
14 | #include <linux/irqchip.h> | ||
13 | #include <linux/of.h> | 15 | #include <linux/of.h> |
14 | #include <linux/of_platform.h> | 16 | #include <linux/of_platform.h> |
15 | #include <linux/platform_data/usb-ehci-orion.h> | 17 | #include <linux/platform_data/usb-ehci-orion.h> |
16 | #include <asm/hardware/cache-tauros2.h> | 18 | #include <asm/hardware/cache-tauros2.h> |
17 | #include <asm/mach/arch.h> | 19 | #include <asm/mach/arch.h> |
20 | #include <mach/dove.h> | ||
18 | #include <mach/pm.h> | 21 | #include <mach/pm.h> |
19 | #include <plat/common.h> | 22 | #include <plat/common.h> |
20 | #include <plat/irq.h> | 23 | #include <plat/irq.h> |
@@ -42,10 +45,17 @@ static void __init dove_legacy_clk_init(void) | |||
42 | of_clk_get_from_provider(&clkspec)); | 45 | of_clk_get_from_provider(&clkspec)); |
43 | } | 46 | } |
44 | 47 | ||
45 | static void __init dove_of_clk_init(void) | 48 | static void __init dove_dt_time_init(void) |
46 | { | 49 | { |
47 | of_clk_init(NULL); | 50 | of_clk_init(NULL); |
48 | dove_legacy_clk_init(); | 51 | clocksource_of_init(); |
52 | } | ||
53 | |||
54 | static void __init dove_dt_init_early(void) | ||
55 | { | ||
56 | mvebu_mbus_init("marvell,dove-mbus", | ||
57 | BRIDGE_WINS_BASE, BRIDGE_WINS_SZ, | ||
58 | DOVE_MC_WINS_BASE, DOVE_MC_WINS_SZ); | ||
49 | } | 59 | } |
50 | 60 | ||
51 | static void __init dove_dt_init(void) | 61 | static void __init dove_dt_init(void) |
@@ -57,8 +67,8 @@ static void __init dove_dt_init(void) | |||
57 | #endif | 67 | #endif |
58 | dove_setup_cpu_wins(); | 68 | dove_setup_cpu_wins(); |
59 | 69 | ||
60 | /* Setup root of clk tree */ | 70 | /* Setup clocks for legacy devices */ |
61 | dove_of_clk_init(); | 71 | dove_legacy_clk_init(); |
62 | 72 | ||
63 | /* Internal devices not ported to DT yet */ | 73 | /* Internal devices not ported to DT yet */ |
64 | dove_pcie_init(1, 1); | 74 | dove_pcie_init(1, 1); |
@@ -73,9 +83,8 @@ static const char * const dove_dt_board_compat[] = { | |||
73 | 83 | ||
74 | DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)") | 84 | DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)") |
75 | .map_io = dove_map_io, | 85 | .map_io = dove_map_io, |
76 | .init_early = dove_init_early, | 86 | .init_early = dove_dt_init_early, |
77 | .init_irq = orion_dt_init_irq, | 87 | .init_time = dove_dt_time_init, |
78 | .init_time = dove_timer_init, | ||
79 | .init_machine = dove_dt_init, | 88 | .init_machine = dove_dt_init, |
80 | .restart = dove_restart, | 89 | .restart = dove_restart, |
81 | .dt_compat = dove_dt_board_compat, | 90 | .dt_compat = dove_dt_board_compat, |