ARM: 6064/1: pmu: register IRQs at runtime
authorWill Deacon <will.deacon@arm.com>
Thu, 29 Apr 2010 16:13:24 +0000 (17:13 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 17 May 2010 10:53:57 +0000 (11:53 +0100)
commit49c006b93769a86bec2b32b9234abf016ac0d50e
tree6784e69f48186c6edc6e9130fc1680a31cec0ce4
parentc39e52a793f5599582dbacf4d8f62634a492f79e
ARM: 6064/1: pmu: register IRQs at runtime

The current PMU infrastructure for ARM requires that the IRQs for the PMU
device are fixed at compile time and are selected based on the ARCH_ or MACH_ flags. This has the disadvantage of tying the Kernel down to a
particular board as far as profiling is concerned.

This patch replaces the compile-time IRQ registration with a runtime mechanism which allows the IRQs to be registered with the framework as
a platform_device.

A further advantage of this change is that there is scope for registering
different types of performance counters in the future by changing the id
of the platform_device and attaching different resources to it.

Acked-by: Jamie Iles <jamie.iles@picochip.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/pmu.h
arch/arm/kernel/perf_event.c
arch/arm/kernel/pmu.c