diff options
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/pci-driver.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c index 3623d65f8b86..5d19695c771a 100644 --- a/drivers/pci/pci-driver.c +++ b/drivers/pci/pci-driver.c | |||
@@ -430,6 +430,16 @@ static void pci_device_shutdown(struct device *dev) | |||
430 | drv->shutdown(pci_dev); | 430 | drv->shutdown(pci_dev); |
431 | pci_msi_shutdown(pci_dev); | 431 | pci_msi_shutdown(pci_dev); |
432 | pci_msix_shutdown(pci_dev); | 432 | pci_msix_shutdown(pci_dev); |
433 | |||
434 | /* | ||
435 | * Devices may be enabled to wake up by runtime PM, but they need not | ||
436 | * be supposed to wake up the system from its "power off" state (e.g. | ||
437 | * ACPI S5). Therefore disable wakeup for all devices that aren't | ||
438 | * supposed to wake up the system at this point. The state argument | ||
439 | * will be ignored by pci_enable_wake(). | ||
440 | */ | ||
441 | if (!device_may_wakeup(dev)) | ||
442 | pci_enable_wake(pci_dev, PCI_UNKNOWN, false); | ||
433 | } | 443 | } |
434 | 444 | ||
435 | #ifdef CONFIG_PM | 445 | #ifdef CONFIG_PM |