aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-bcmring
diff options
context:
space:
mode:
authorJiandong Zheng <jdzheng@broadcom.com>2011-05-18 19:36:57 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-05-23 13:04:54 -0400
commitede2e23456c1a4b9ce038bb4ed095ed442b1b07e (patch)
treeeb7f7df27c4918572a3457a8cff8cebe51092ef0 /arch/arm/mach-bcmring
parent23828a7a976eb8dbe3b5f4e83584c3fe814b295b (diff)
ARM: 6912/1: bcmring: Add clkdev table in init_early
Move adding clkdev table to init_early to make sure the common sp804 clockevents can be initialized properly. Signed-off-by: Jiandong Zheng <jdzheng@broadcom.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-bcmring')
-rw-r--r--arch/arm/mach-bcmring/arch.c1
-rw-r--r--arch/arm/mach-bcmring/core.c7
-rw-r--r--arch/arm/mach-bcmring/core.h1
3 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/mach-bcmring/arch.c b/arch/arm/mach-bcmring/arch.c
index 73eb066d2329..a604b9ebb501 100644
--- a/arch/arm/mach-bcmring/arch.c
+++ b/arch/arm/mach-bcmring/arch.c
@@ -169,6 +169,7 @@ MACHINE_START(BCMRING, "BCMRING")
169 /* Maintainer: Broadcom Corporation */ 169 /* Maintainer: Broadcom Corporation */
170 .fixup = bcmring_fixup, 170 .fixup = bcmring_fixup,
171 .map_io = bcmring_map_io, 171 .map_io = bcmring_map_io,
172 .init_early = bcmring_init_early,
172 .init_irq = bcmring_init_irq, 173 .init_irq = bcmring_init_irq,
173 .timer = &bcmring_timer, 174 .timer = &bcmring_timer,
174 .init_machine = bcmring_init_machine 175 .init_machine = bcmring_init_machine
diff --git a/arch/arm/mach-bcmring/core.c b/arch/arm/mach-bcmring/core.c
index 8fc2035759fb..eca20ed228b3 100644
--- a/arch/arm/mach-bcmring/core.c
+++ b/arch/arm/mach-bcmring/core.c
@@ -151,8 +151,6 @@ void __init bcmring_amba_init(void)
151 151
152 chipcHw_busInterfaceClockEnable(bus_clock); 152 chipcHw_busInterfaceClockEnable(bus_clock);
153 153
154 clkdev_add_table(lookups, ARRAY_SIZE(lookups));
155
156 for (i = 0; i < ARRAY_SIZE(amba_devs); i++) { 154 for (i = 0; i < ARRAY_SIZE(amba_devs); i++) {
157 struct amba_device *d = amba_devs[i]; 155 struct amba_device *d = amba_devs[i];
158 amba_device_register(d, &iomem_resource); 156 amba_device_register(d, &iomem_resource);
@@ -365,3 +363,8 @@ void __init bcmring_init_timer(void)
365struct sys_timer bcmring_timer = { 363struct sys_timer bcmring_timer = {
366 .init = bcmring_init_timer, 364 .init = bcmring_init_timer,
367}; 365};
366
367void __init bcmring_init_early(void)
368{
369 clkdev_add_table(lookups, ARRAY_SIZE(lookups));
370}
diff --git a/arch/arm/mach-bcmring/core.h b/arch/arm/mach-bcmring/core.h
index b197ba48e36e..e0e02c48f9b1 100644
--- a/arch/arm/mach-bcmring/core.h
+++ b/arch/arm/mach-bcmring/core.h
@@ -25,6 +25,7 @@
25void __init bcmring_amba_init(void); 25void __init bcmring_amba_init(void);
26void __init bcmring_map_io(void); 26void __init bcmring_map_io(void);
27void __init bcmring_init_irq(void); 27void __init bcmring_init_irq(void);
28void __init bcmring_init_early(void);
28 29
29extern struct sys_timer bcmring_timer; 30extern struct sys_timer bcmring_timer;
30#endif 31#endif