[PATCH] PM / PCI: Do not resume any devices in pci_pm_prepare()

From: Rafael J. Wysocki
Date: Sun Sep 24 2017 - 19:42:29 EST


From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

It should not be necessary to resume devices with ignore_children set
in pci_pm_prepare(), because they should be resumed explcitly by
their children drivers during suspend if need be and they will be
resumed by pci_pm_suspend() after that anyway, so avoid doing that.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
---
drivers/pci/pci-driver.c | 7 -------
1 file changed, 7 deletions(-)

Index: linux-pm/drivers/pci/pci-driver.c
===================================================================
--- linux-pm.orig/drivers/pci/pci-driver.c
+++ linux-pm/drivers/pci/pci-driver.c
@@ -680,13 +680,6 @@ static int pci_pm_prepare(struct device
{
struct device_driver *drv = dev->driver;

- /*
- * Devices having power.ignore_children set may still be necessary for
- * suspending their children in the next phase of device suspend.
- */
- if (dev->power.ignore_children)
- pm_runtime_resume(dev);
-
if (drv && drv->pm && drv->pm->prepare) {
int error = drv->pm->prepare(dev);
if (error)