PCI: Don't clear d3cold_allowed for PCIe ports
authorMika Westerberg <mika.westerberg@linux.intel.com>
Thu, 2 Jun 2016 08:17:11 +0000 (11:17 +0300)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 13 Jun 2016 19:51:34 +0000 (14:51 -0500)
The PCI core skips bridges and ports when the system is suspended.  The PCI
core checks return value of pci_has_subordinate() in pci_pm_suspend_noirq()
to skip all devices where it is non-zero (which means PCI bridges and PCIe
ports).

Since PCIe ports are never suspended in the first place, there is no need
to set d3cold_allowed for them.

Tested-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/pci/pcie/portdrv_pci.c

index be35da2e105e0b39449244416f8ba8934446f58a..6c6bb03392ea332b4b3145888a26735e63dafb89 100644 (file)
@@ -134,11 +134,6 @@ static int pcie_portdrv_probe(struct pci_dev *dev,
                return status;
 
        pci_save_state(dev);
-       /*
-        * D3cold may not work properly on some PCIe port, so disable
-        * it by default.
-        */
-       dev->d3cold_allowed = false;
        return 0;
 }