Two fixes here: 1) Zero is a legal P2P bridge window base and BAR value and is likely to occur when there is an offset between bus addresses and CPU addresses. Stop disallowing it. 2) The Intel-specific 1K I/O window granularity for P2P bridges was implemented in a way that precluded reassignment of the window after FINAL quirks. Fix that. And also replace the sparc pci_cfg_fake_ranges() with the functionally equivalent generic version. --- Bjorn Helgaas (3): PCI: allow P2P bridge windows starting at PCI bus address zero PCI: reimplement P2P bridge 1K I/O windows (Intel P64H2) sparc/PCI: replace pci_cfg_fake_ranges() with pci_read_bridge_bases() arch/sparc/kernel/pci.c | 89 +--------------------------------------------- drivers/pci/probe.c | 31 +++++++++------- drivers/pci/quirks.c | 39 +------------------- drivers/pci/setup-bus.c | 11 +++++- include/linux/pci.h | 1 + include/linux/pci_regs.h | 3 +- 6 files changed, 31 insertions(+), 143 deletions(-) -- Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html