Commit cf48fb6a authored by Bjorn Helgaas's avatar Bjorn Helgaas Committed by Jesse Barnes
Browse files

PCI: fix bridge I/O window bus-to-resource conversion



In 5bfa14ed, I forgot to initialize res2.flags before calling
pcibios_bus_to_resource(), which depends on the resource type to locate the
correct aperture.  This bug won't hurt x86, which currently never has an
offset between bus and CPU addresses, but will affect other architectures.

Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
parent 63ab387c
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -367,6 +367,7 @@ static void __devinit pci_read_bridge_io(struct pci_bus *child)


	if (base && base <= limit) {
	if (base && base <= limit) {
		res->flags = (io_base_lo & PCI_IO_RANGE_TYPE_MASK) | IORESOURCE_IO;
		res->flags = (io_base_lo & PCI_IO_RANGE_TYPE_MASK) | IORESOURCE_IO;
		res2.flags = res->flags;
		region.start = base;
		region.start = base;
		region.end = limit + 0xfff;
		region.end = limit + 0xfff;
		pcibios_bus_to_resource(dev, &res2, &region);
		pcibios_bus_to_resource(dev, &res2, &region);