From 0e25a5c98067286fc727cf142fc0dadf95790921 Mon Sep 17 00:00:00 2001 From: Rabin Vincent Date: Tue, 8 Feb 2011 09:24:36 +0530 Subject: ARM: perf_event: allow platform-specific interrupt handler Allow a platform-specific IRQ handler to be specified via platform data. This will be used to implement the single-irq workaround for the DB8500. Signed-off-by: Rabin Vincent Acked-by: Lee Jones Acked-by: Will Deacon Signed-off-by: Linus Walleij --- arch/arm/include/asm/pmu.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'arch/arm/include') diff --git a/arch/arm/include/asm/pmu.h b/arch/arm/include/asm/pmu.h index 8ccea01..7544ce6 100644 --- a/arch/arm/include/asm/pmu.h +++ b/arch/arm/include/asm/pmu.h @@ -12,11 +12,25 @@ #ifndef __ARM_PMU_H__ #define __ARM_PMU_H__ +#include + enum arm_pmu_type { ARM_PMU_DEVICE_CPU = 0, ARM_NUM_PMU_DEVICES, }; +/* + * struct arm_pmu_platdata - ARM PMU platform data + * + * @handle_irq: an optional handler which will be called from the interrupt and + * passed the address of the low level handler, and can be used to implement + * any platform specific handling before or after calling it. + */ +struct arm_pmu_platdata { + irqreturn_t (*handle_irq)(int irq, void *dev, + irq_handler_t pmu_handler); +}; + #ifdef CONFIG_CPU_HAS_PMU /** -- cgit v1.1