ARM: PMU: Add runtime PM Support
authorJon Hunter <jon-hunter@ti.com>
Thu, 31 May 2012 18:05:20 +0000 (13:05 -0500)
committerWill Deacon <will.deacon@arm.com>
Thu, 23 Aug 2012 10:35:51 +0000 (11:35 +0100)
commit7be2958e97b37256b8016db39ac6cf51f711e390
treec6e0194dcdfbb600a709715ffb4888cd35052cc8
parentfea7a08acb13524b47711625eebea40a0ede69a0
ARM: PMU: Add runtime PM Support

Add runtime PM support to the ARM PMU driver so that devices such as OMAP
supporting dynamic PM can use the platform->runtime_* hooks to initialise
hardware at runtime. Without having these runtime PM hooks in place any
configuration of the PMU hardware would be lost when low power states are
entered and hence would prevent PMU from working.

This change also replaces the PMU platform functions enable_irq and disable_irq
added by Ming Lei with runtime_resume and runtime_suspend funtions. Ming had
added the enable_irq and disable_irq functions as a method to configure the
cross trigger interface on OMAP4 for routing the PMU interrupts. By adding
runtime PM support, we can move the code called by enable_irq and disable_irq
into the runtime PM callbacks runtime_resume and runtime_suspend.

Cc: Ming Lei <ming.lei@canonical.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Kevin Hilman <khilman@ti.com>
Signed-off-by: Jon Hunter <jon-hunter@ti.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/include/asm/pmu.h
arch/arm/kernel/perf_event.c