1
0
Fork 0
alistair23-linux/drivers/pci
Rafael J. Wysocki 834145156b PCI / ACPI / PM: Clear pme_poll for devices in D3cold on wakeup
Commit 448bd85 (PCI/PM: add PCIe runtime D3cold support) added a
piece of code to pci_acpi_wake_dev() causing that function to behave
in a special way for devices in D3cold (so that their configuration
registers are not accessed before those devices are resumed).
However, it didn't take the clearing of the pme_poll flag into
account.  That has to be done for all devices, even if they are in
D3cold, or pci_pme_list_scan() will not know that wakeup has been
signaled for the device and will poll its PME Status bit
unnecessarily.

Fix the problem by moving the clearing of the pme_poll flag in
pci_acpi_wake_dev() before the code introduced by commit 448bd85.

Reported-and-tested-by: David E. Box <david.e.box@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Cc: 3.6+ <stable@vger.kernel.org> # 3.6+
2013-09-20 00:24:43 +02:00
..
host ARM: SoC platform changes for 3.12 2013-09-06 13:30:06 -07:00
hotplug Merge branch 'acpi-pci-hotplug' 2013-09-10 23:15:02 +02:00
pcie PCI changes for the v3.12 merge window: 2013-09-03 16:24:35 -07:00
Kconfig PCI: remove ARCH_SUPPORTS_MSI kconfig option 2013-08-12 15:26:48 +00:00
Makefile
access.c PCI: Remove pcie_cap_has_devctl() 2013-08-28 20:51:39 -06:00
ats.c
bus.c
host-bridge.c
hotplug-pci.c
htirq.c
ioapic.c
iov.c
irq.c
msi.c Remove GENERIC_HARDIRQ config option 2013-09-13 15:09:52 +02:00
of.c
pci-acpi.c PCI / ACPI / PM: Clear pme_poll for devices in D3cold on wakeup 2013-09-20 00:24:43 +02:00
pci-driver.c PCI: Add pcibios_pm_ops for optional arch-specific hibernate functionality 2013-08-22 14:11:32 -06:00
pci-label.c
pci-stub.c
pci-sysfs.c
pci.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-09-05 14:54:29 -07:00
pci.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-09-05 14:54:29 -07:00
probe.c ARM: SoC platform changes for 3.12 2013-09-06 13:30:06 -07:00
proc.c
quirks.c Merge branch 'pci/vipul-chelsio-reset-v2' into next 2013-08-12 15:07:03 -06:00
remove.c
rom.c
search.c
setup-bus.c PCI changes for the v3.12 merge window: 2013-09-03 16:24:35 -07:00
setup-irq.c
setup-res.c
slot.c
syscall.c
vpd.c
xen-pcifront.c