aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-highbank
diff options
context:
space:
mode:
authorSebastian Hesselbarth <sebastian.hesselbarth@gmail.com>2013-08-27 08:42:06 -0400
committerSebastian Hesselbarth <sebastian.hesselbarth@gmail.com>2013-09-29 15:09:29 -0400
commit26cae166cff9148cd2cab40f64ed548ba1189a8e (patch)
tree0123ea6e21a91d1c10ef6924c8197e3a246b0b72 /arch/arm/mach-highbank
parente8ecbc7c51a4c27030427db055597fb53e29d0db (diff)
ARM: highbank: remove custom .init_time hook
With arch/arm calling of_clk_init(NULL) from time_init(), we can now remove custom .init_time hooks. Highbank clock provider need a reference to system registers, as a workaround current clk driver maps those independent of arch code now. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Acked-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Mike Turquette <mturquette@linaro.org>
Diffstat (limited to 'arch/arm/mach-highbank')
-rw-r--r--arch/arm/mach-highbank/highbank.c23
1 files changed, 7 insertions, 16 deletions
diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
index 8e63ccdb0de3..e6d6eacea9d0 100644
--- a/arch/arm/mach-highbank/highbank.c
+++ b/arch/arm/mach-highbank/highbank.c
@@ -24,7 +24,6 @@
24#include <linux/of_platform.h> 24#include <linux/of_platform.h>
25#include <linux/of_address.h> 25#include <linux/of_address.h>
26#include <linux/amba/bus.h> 26#include <linux/amba/bus.h>
27#include <linux/clk-provider.h>
28 27
29#include <asm/cacheflush.h> 28#include <asm/cacheflush.h>
30#include <asm/cputype.h> 29#include <asm/cputype.h>
@@ -83,20 +82,6 @@ static void __init highbank_init_irq(void)
83 } 82 }
84} 83}
85 84
86static void __init highbank_timer_init(void)
87{
88 struct device_node *np;
89
90 /* Map system registers */
91 np = of_find_compatible_node(NULL, NULL, "calxeda,hb-sregs");
92 sregs_base = of_iomap(np, 0);
93 WARN_ON(!sregs_base);
94
95 of_clk_init(NULL);
96
97 clocksource_of_init();
98}
99
100static void highbank_power_off(void) 85static void highbank_power_off(void)
101{ 86{
102 highbank_set_pwr_shutdown(); 87 highbank_set_pwr_shutdown();
@@ -155,6 +140,13 @@ static struct notifier_block highbank_platform_nb = {
155 140
156static void __init highbank_init(void) 141static void __init highbank_init(void)
157{ 142{
143 struct device_node *np;
144
145 /* Map system registers */
146 np = of_find_compatible_node(NULL, NULL, "calxeda,hb-sregs");
147 sregs_base = of_iomap(np, 0);
148 WARN_ON(!sregs_base);
149
158 pm_power_off = highbank_power_off; 150 pm_power_off = highbank_power_off;
159 highbank_pm_init(); 151 highbank_pm_init();
160 152
@@ -176,7 +168,6 @@ DT_MACHINE_START(HIGHBANK, "Highbank")
176#endif 168#endif
177 .smp = smp_ops(highbank_smp_ops), 169 .smp = smp_ops(highbank_smp_ops),
178 .init_irq = highbank_init_irq, 170 .init_irq = highbank_init_irq,
179 .init_time = highbank_timer_init,
180 .init_machine = highbank_init, 171 .init_machine = highbank_init,
181 .dt_compat = highbank_match, 172 .dt_compat = highbank_match,
182 .restart = highbank_restart, 173 .restart = highbank_restart,