diff options
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/hotplug/acpiphp_glue.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/pci/hotplug/acpiphp_glue.c b/drivers/pci/hotplug/acpiphp_glue.c index 8e21f6ab89a1..509a5b3ae998 100644 --- a/drivers/pci/hotplug/acpiphp_glue.c +++ b/drivers/pci/hotplug/acpiphp_glue.c | |||
@@ -794,12 +794,14 @@ static int enable_device(struct acpiphp_slot *slot) | |||
794 | if (PCI_SLOT(dev->devfn) != slot->device) | 794 | if (PCI_SLOT(dev->devfn) != slot->device) |
795 | continue; | 795 | continue; |
796 | if (dev->hdr_type == PCI_HEADER_TYPE_BRIDGE || | 796 | if (dev->hdr_type == PCI_HEADER_TYPE_BRIDGE || |
797 | dev->hdr_type == PCI_HEADER_TYPE_CARDBUS) | 797 | dev->hdr_type == PCI_HEADER_TYPE_CARDBUS) { |
798 | max = pci_scan_bridge(bus, dev, max, pass); | 798 | max = pci_scan_bridge(bus, dev, max, pass); |
799 | if (pass && dev->subordinate) | ||
800 | pci_bus_size_bridges(dev->subordinate); | ||
801 | } | ||
799 | } | 802 | } |
800 | } | 803 | } |
801 | 804 | ||
802 | pci_bus_size_bridges(bus); | ||
803 | pci_bus_assign_resources(bus); | 805 | pci_bus_assign_resources(bus); |
804 | acpiphp_sanitize_bus(bus); | 806 | acpiphp_sanitize_bus(bus); |
805 | pci_enable_bridges(bus); | 807 | pci_enable_bridges(bus); |