Rafael J. Wysocki
a6cb9ee7ca
PCI: Retry BARs restoration for Type 0 headers only
...
Some shortcomings introduced into pci_restore_state() by commit
26f41062f2 ("PCI: check for pci bar restore completion and retry")
have been fixed by recent commit ebfc5b802f ("PCI: Fix regression in
pci_restore_state(), v3"), but that commit treats all PCI devices as
those with Type 0 configuration headers.
That is not entirely correct, because Type 1 and Type 2 headers have
different layouts. In particular, the area occupied by BARs in Type 0
config headers contains the secondary status register in Type 1 ones and
it doesn't make sense to retry the restoration of that register even if
the value read back from it after a write is not the same as the written
one (it very well may be different).
For this reason, make pci_restore_state() only retry the restoration
of BARs for Type 0 config headers. This effectively makes it behave
as before commit 26f41062f2 for all header types except for Type 0.
Tested-by: Mikko Vinni <mmvinni@yahoo.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-04-16 18:33:35 -07:00
..
hotplug
PCI: make acpihp use __pci_remove_bus_device instead
2012-02-27 12:17:16 -08:00
pcie
ASPM: Fix pcie devices with non-pcie children
2012-03-31 12:49:56 -07:00
.gitignore
access.c
PCI: Introduce INTx check & mask API
2012-01-06 12:10:34 -08:00
ats.c
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci
2012-01-11 18:50:26 -08:00
bus.c
PCI: add struct pci_host_bridge_window with CPU/bus address offset
2012-02-23 20:19:00 -07:00
hotplug-pci.c
pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE
2011-10-31 19:31:22 -04:00
hotplug.c
htirq.c
pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE
2011-10-31 19:31:22 -04:00
ioapic.c
pci, x86/io-apic: Allow PCI_IOAPIC to be user configurable on x86
2011-12-06 09:21:05 +01:00
iov.c
PCI: Rename pci_remove_bus_device to pci_stop_and_remove_bus_device
2012-02-27 12:12:18 -08:00
irq.c
pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE
2011-10-31 19:31:22 -04:00
Kconfig
PCI: add a PCI resource reallocation config option
2012-02-24 09:38:59 -08:00
Makefile
PCI: Move ATS implementation into own file
2011-10-14 09:05:33 -07:00
msi.c
x86/PCI: Expand the x86_msi_ops to have a restore MSIs.
2012-01-06 14:02:26 -08:00
msi.h
PCI: MSI: Move MSI-X entry definition to pci_regs.h
2010-12-23 12:53:07 -08:00
of.c
PCI: OF: Don't crash when bridge parent is NULL.
2011-08-19 08:51:37 -07:00
pci-acpi.c
ACPI, PCI: Move acpi_dev_run_wake() to ACPI core
2012-03-30 02:21:18 -04:00
pci-driver.c
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci
2012-03-23 14:02:12 -07:00
pci-label.c
switch ->is_visible() to returning umode_t
2012-01-03 22:54:55 -05:00
pci-stub.c
PCI: pci-stub: ignore zero-length id parameters
2010-12-23 12:53:52 -08:00
pci-sysfs.c
PCI: Rename pci_remove_bus_device to pci_stop_and_remove_bus_device
2012-02-27 12:12:18 -08:00
pci.c
PCI: Retry BARs restoration for Type 0 headers only
2012-04-16 18:33:35 -07:00
pci.h
PCI: Move "pci reassigndev resource alignment" out of quirks.c
2012-02-24 14:37:26 -08:00
probe.c
PCI: fix bridge I/O window bus-to-resource conversion
2012-03-20 10:41:27 -07:00
proc.c
quirks.c
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci
2012-03-23 14:02:12 -07:00
remove.c
PCI: export __pci_remove_bus_device
2012-02-27 12:16:55 -08:00
rom.c
pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE
2011-10-31 19:31:22 -04:00
search.c
setup-bus.c
Merge branch 'pci-next+probe_only+bus2res-fb127cb' of git://github.com/bjorn-helgaas/linux into linux-next
2012-02-24 14:25:33 -08:00
setup-irq.c
PCI: Make the struct pci_dev * argument of pci_fixup_irqs const.
2011-07-22 08:26:06 -07:00
setup-res.c
PCI: Move "pci reassigndev resource alignment" out of quirks.c
2012-02-24 14:37:26 -08:00
slot.c
pci: add module.h to files implicitly relying on its presence.
2011-10-31 19:31:23 -04:00
syscall.c
vpd.c
pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE
2011-10-31 19:31:22 -04:00
xen-pcifront.c
Two fixes for regressions:
2012-04-06 17:54:53 -07:00