summaryrefslogtreecommitdiff
path: root/drivers/pci
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2005-08-02 21:55:40 (GMT)
committerLinus Torvalds <torvalds@g5.osdl.org>2005-08-02 21:55:40 (GMT)
commit688d191821de7893043f5a37970472627aaffa4e (patch)
treebee038b981147f4f9f3ac0ca23348376044678dd /drivers/pci
parentd7ed538a02c219119adb20f1dccbf0f8015e53f3 (diff)
downloadlinux-688d191821de7893043f5a37970472627aaffa4e.tar.xz
pci: make bus resource start address override minimum IO address
The reason we have PCIBIOS_MIN_IO and PCIBIOS_MIN_CARDBUS_IO is because we want to protect badly documented motherboard PCI resources and thus don't want to allocate new resources in low IO/MEM space. However, if we have already discovered a PCI bridge with a specified resource base, that should override that decision. This change will allow us to move the "careful" region upwards without resulting in problems allocating resources in low mappings. This was brought on by us having allocated a bus resource at 0x1000, conflicting with a undocumented VAIO Sony PI resources.
Diffstat (limited to 'drivers/pci')
-rw-r--r--drivers/pci/bus.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/pci/bus.c b/drivers/pci/bus.c
index fedae89..fb9a112 100644
--- a/drivers/pci/bus.c
+++ b/drivers/pci/bus.c
@@ -60,7 +60,9 @@ pci_bus_alloc_resource(struct pci_bus *bus, struct resource *res,
continue;
/* Ok, try it out.. */
- ret = allocate_resource(r, res, size, min, -1, align,
+ ret = allocate_resource(r, res, size,
+ r->start ? : min,
+ -1, align,
alignf, alignf_data);
if (ret == 0)
break;