aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-realview/realview_pba8.c
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2010-04-15 05:16:26 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-05-02 04:35:40 -0400
commitf417cbad7394fdccec850d13d7d5621516d693ce (patch)
tree78a14c7f605ee810efa2f3ccd29841c98ecdd8f3 /arch/arm/mach-realview/realview_pba8.c
parent59ac59f6f1432aa9417d2592bdfd17c99804dd66 (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.c15
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
252static struct resource pmu_resource = {
253 .start = IRQ_PBA8_PMU,
254 .end = IRQ_PBA8_PMU,
255 .flags = IORESOURCE_IRQ,
256};
257
258static 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
251static void __init gic_init_irq(void) 265static 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];