diff options
author | Yinghai Lu <Yinghai.Lu@Sun.COM> | 2008-02-19 03:21:20 -0800 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-26 23:41:04 +0200 |
commit | 30a18d6c3f1e774de656ebd8ff219d53e2ba4029 (patch) | |
tree | 22aad98a32fc182736f78193938a24175a168b81 /drivers/pci | |
parent | 35ddd068fb94b187e94a3fc497ccecf27bdda9ae (diff) | |
download | blackbird-op-linux-30a18d6c3f1e774de656ebd8ff219d53e2ba4029.tar.gz blackbird-op-linux-30a18d6c3f1e774de656ebd8ff219d53e2ba4029.zip |
x86: multi pci root bus with different io resource range, on 64-bit
scan AMD opteron io/mmio routing to make sure every pci root bus get correct
resource range. Thus later pci scan could assign correct resource to device
with unassigned resource.
this can fix a system without _CRS for multi pci root bus.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/probe.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index a40043bd3257..4a55bf380957 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -1088,6 +1088,10 @@ unsigned int __devinit pci_scan_child_bus(struct pci_bus *bus) return max; } +void __attribute__((weak)) set_pci_bus_resources_arch_default(struct pci_bus *b) +{ +} + struct pci_bus * pci_create_bus(struct device *parent, int bus, struct pci_ops *ops, void *sysdata) { @@ -1147,6 +1151,8 @@ struct pci_bus * pci_create_bus(struct device *parent, b->resource[0] = &ioport_resource; b->resource[1] = &iomem_resource; + set_pci_bus_resources_arch_default(b); + return b; dev_create_file_err: |