linux/arch/arm/mach-shmobile
Rafael J. Wysocki 0aa2a22169 PM / Domains: Preliminary support for devices with power.irq_safe set
The generic PM domains framework currently doesn't work with devices
whose power.irq_safe flag is set, because runtime PM callbacks for
such devices are run with interrupts disabled and the callbacks
provided by the generic PM domains framework use domain mutexes
and may sleep.  However, such devices very well may belong to
power domains on some systems, so the generic PM domains framework
should take them into account.

For this reason, modify the generic PM domains framework so that the
domain .power_off() and .power_on() callbacks are never executed for
a domain containing devices with power.irq_safe set, although the
.stop_device() and .start_device() callbacks are still run for them.

Additionally, introduce a flag allowing the creator of a
struct generic_pm_domain object to indicate that its .stop_device()
and .start_device() callbacks may be run in interrupt context
(might_sleep_if() triggers if that flag is not set and one of those
callbacks is run in interrupt context).

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2011-08-25 15:37:04 +02:00
..
include/mach ARM / shmobile: Make A3RV be a subdomain of A4LC on SH7372 2011-08-25 15:33:45 +02:00
Kconfig ARM: mach-shmobile: AG5EVM LCDC / MIPI-DSI platform data 2011-01-20 21:34:32 +09:00
Makefile ARM: mach-shmobile: CPUIdle support 2011-05-25 11:19:23 +09:00
Makefile.boot
board-ag5evm.c ARM: mach-shmobile: ag5evm: consistently name sdhi info structures 2011-06-21 17:49:43 +09:00
board-ap4evb.c PM: Move clock-related definitions and headers to separate file 2011-08-25 15:34:19 +02:00
board-g3evm.c ARM: mach-shmobile: remove sh7367 on-chip set_irq_type() 2011-01-18 13:51:57 +09:00
board-g4evm.c ARM: mach-shmobile: Correct the G4EVM SDHI0 I/O range. 2011-05-25 14:54:30 +09:00
board-mackerel.c PM: Move clock-related definitions and headers to separate file 2011-08-25 15:34:19 +02:00
clock-sh73a0.c sh: move CLKDEV_xxx_ID macro to sh_clk.h 2011-07-11 15:07:25 +09:00
clock-sh7367.c sh: move CLKDEV_xxx_ID macro to sh_clk.h 2011-07-11 15:07:25 +09:00
clock-sh7372.c ARM: mach-shmobile: sh7372 LCDC1 suspend fix 2011-08-24 22:38:43 +02:00
clock-sh7377.c sh: move CLKDEV_xxx_ID macro to sh_clk.h 2011-07-11 15:07:25 +09:00
clock.c
console.c
cpuidle.c ARM: mach-shmobile: CPUIdle support 2011-05-25 11:19:23 +09:00
entry-gic.S ARM: mach-shmobile: update for GIC changes. 2011-01-07 12:02:11 +09:00
entry-intc.S ARM: mach-shmobile: Run-time IRQ handler for INTCA 2011-01-07 10:42:50 +09:00
headsmp.S ARM: mach-shmobile: headsmp.S build fix 2011-05-24 12:29:14 +09:00
hotplug.c
intc-sh73a0.c ARM: mach-shmobile: sh73a0 gic_arch_extn.irq_set_wake() fix 2011-06-14 15:12:05 +09:00
intc-sh7367.c arm: Cleanup the irq namespace 2011-03-29 14:47:57 +02:00
intc-sh7372.c ARM: arch-shmobile: Use multiple irq vectors for SDHI 2011-05-24 12:42:46 +09:00
intc-sh7377.c arm: Cleanup the irq namespace 2011-03-29 14:47:57 +02:00
localtimer.c ARM: 6759/1: smp: Select local timers vs broadcast timer support runtime 2011-02-23 17:54:27 +00:00
pfc-sh73a0.c
pfc-sh7367.c
pfc-sh7372.c
pfc-sh7377.c
platsmp.c ARM: 6993/1: platsmp: Allow secondary cpu hotplug with maxcpus=1 2011-07-07 14:45:07 +01:00
pm-sh7372.c PM / Domains: Preliminary support for devices with power.irq_safe set 2011-08-25 15:37:04 +02:00
pm_runtime.c PM: Move clock-related definitions and headers to separate file 2011-08-25 15:34:19 +02:00
setup-sh73a0.c ARM: mach-shmobile: sh73a0 DMA Engine support for SY-DMAC 2011-05-25 11:36:51 +09:00
setup-sh7367.c ARM: mach-shmobile: Correct SCIF port types for SH7367. 2011-06-14 15:12:09 +09:00
setup-sh7372.c ARM / shmobile: Make A3RV be a subdomain of A4LC on SH7372 2011-08-25 15:33:45 +02:00
setup-sh7377.c ARM: mach-shmobile: sh7377 UIO platform data V3 2011-05-24 12:19:30 +09:00
sleep-sh7372.S ARM: mach-shmobile: sh7372 Core Standby Suspend-to-RAM 2011-05-25 11:19:20 +09:00
smp-sh73a0.c ARM: mach-shmobile: sh73a0 twd_base fix 2011-05-24 12:31:17 +09:00
suspend.c ARM: mach-shmobile: Suspend-to-RAM support 2011-05-25 11:19:17 +09:00
timer.c