diff options
author | Will Deacon <will.deacon@arm.com> | 2010-04-15 05:16:26 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-05-02 04:35:40 -0400 |
commit | f417cbad7394fdccec850d13d7d5621516d693ce (patch) | |
tree | 78a14c7f605ee810efa2f3ccd29841c98ecdd8f3 /arch/arm/mach-realview/realview_pba8.c | |
parent | 59ac59f6f1432aa9417d2592bdfd17c99804dd66 (diff) |
ARM: 6057/1: Realview: register PMU IRQs during board initialisation
This patch updates the initialisation routines for the Realview boards
and the Versatile Express board [ca9x4 tile] so that they register their
PMU IRQs with the PMU framework in the Kernel.
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-realview/realview_pba8.c')
-rw-r--r-- | arch/arm/mach-realview/realview_pba8.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-realview/realview_pba8.c b/arch/arm/mach-realview/realview_pba8.c index 2fab3a6d566b..d3c113b3dfce 100644 --- a/arch/arm/mach-realview/realview_pba8.c +++ b/arch/arm/mach-realview/realview_pba8.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <asm/irq.h> | 30 | #include <asm/irq.h> |
31 | #include <asm/leds.h> | 31 | #include <asm/leds.h> |
32 | #include <asm/mach-types.h> | 32 | #include <asm/mach-types.h> |
33 | #include <asm/pmu.h> | ||
33 | #include <asm/hardware/gic.h> | 34 | #include <asm/hardware/gic.h> |
34 | 35 | ||
35 | #include <asm/mach/arch.h> | 36 | #include <asm/mach/arch.h> |
@@ -248,6 +249,19 @@ static struct resource realview_pba8_isp1761_resources[] = { | |||
248 | }, | 249 | }, |
249 | }; | 250 | }; |
250 | 251 | ||
252 | static struct resource pmu_resource = { | ||
253 | .start = IRQ_PBA8_PMU, | ||
254 | .end = IRQ_PBA8_PMU, | ||
255 | .flags = IORESOURCE_IRQ, | ||
256 | }; | ||
257 | |||
258 | static struct platform_device pmu_device = { | ||
259 | .name = "arm-pmu", | ||
260 | .id = ARM_PMU_DEVICE_CPU, | ||
261 | .num_resources = 1, | ||
262 | .resource = &pmu_resource, | ||
263 | }; | ||
264 | |||
251 | static void __init gic_init_irq(void) | 265 | static void __init gic_init_irq(void) |
252 | { | 266 | { |
253 | /* ARM PB-A8 on-board GIC */ | 267 | /* ARM PB-A8 on-board GIC */ |
@@ -294,6 +308,7 @@ static void __init realview_pba8_init(void) | |||
294 | platform_device_register(&realview_i2c_device); | 308 | platform_device_register(&realview_i2c_device); |
295 | platform_device_register(&realview_cf_device); | 309 | platform_device_register(&realview_cf_device); |
296 | realview_usb_register(realview_pba8_isp1761_resources); | 310 | realview_usb_register(realview_pba8_isp1761_resources); |
311 | platform_device_register(&pmu_device); | ||
297 | 312 | ||
298 | for (i = 0; i < ARRAY_SIZE(amba_devs); i++) { | 313 | for (i = 0; i < ARRAY_SIZE(amba_devs); i++) { |
299 | struct amba_device *d = amba_devs[i]; | 314 | struct amba_device *d = amba_devs[i]; |