diff options
author | Jiandong Zheng <jdzheng@broadcom.com> | 2011-05-18 19:36:57 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-05-23 13:04:54 -0400 |
commit | ede2e23456c1a4b9ce038bb4ed095ed442b1b07e (patch) | |
tree | eb7f7df27c4918572a3457a8cff8cebe51092ef0 /arch/arm/mach-bcmring | |
parent | 23828a7a976eb8dbe3b5f4e83584c3fe814b295b (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.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-bcmring/core.c | 7 | ||||
-rw-r--r-- | arch/arm/mach-bcmring/core.h | 1 |
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) | |||
365 | struct sys_timer bcmring_timer = { | 363 | struct sys_timer bcmring_timer = { |
366 | .init = bcmring_init_timer, | 364 | .init = bcmring_init_timer, |
367 | }; | 365 | }; |
366 | |||
367 | void __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 @@ | |||
25 | void __init bcmring_amba_init(void); | 25 | void __init bcmring_amba_init(void); |
26 | void __init bcmring_map_io(void); | 26 | void __init bcmring_map_io(void); |
27 | void __init bcmring_init_irq(void); | 27 | void __init bcmring_init_irq(void); |
28 | void __init bcmring_init_early(void); | ||
28 | 29 | ||
29 | extern struct sys_timer bcmring_timer; | 30 | extern struct sys_timer bcmring_timer; |
30 | #endif | 31 | #endif |