]> git.baikalelectronics.ru Git - kernel.git/commit
PCI PM: Put devices into low power states during late suspend (rev. 2)
authorRafael J. Wysocki <rjw@sisk.pl>
Mon, 16 Mar 2009 21:40:26 +0000 (22:40 +0100)
committerRafael J. Wysocki <rjw@sisk.pl>
Mon, 30 Mar 2009 19:46:55 +0000 (21:46 +0200)
commit469476da0be2ac35d4e8630f4de2bb52d8f067c5
treee8af8e84d9f84bbf08e24ceae46a36eaad6764f6
parent13a6317e80324a93098898022b279b07d9abc6f2
PCI PM: Put devices into low power states during late suspend (rev. 2)

Once we have allowed timer interrupts to be enabled during the late
phase of suspending devices, we are now able to use the generic
pci_set_power_state() to put PCI devices into low power states at
that time.  We can also use some related platform callbacks, like the
ones preparing devices for wake-up, during the late suspend.

Doing this will allow us to avoid the race condition where a device
using shared interrupts is put into a low power state with interrupts
enabled and then an interrupt (for another device) comes in and
confuses its driver.  At the same time, devices that don't support
the native PCI PM or that require some additional, platform-specific
operations to be carried out to put them into low power states will
be handled as appropriate.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/pci-driver.c