diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/pci/hotplug/ibmphp_core.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/pci/hotplug/ibmphp_core.c b/drivers/pci/hotplug/ibmphp_core.c index a62f296e8b0d..7dccad5fc891 100644 --- a/drivers/pci/hotplug/ibmphp_core.c +++ b/drivers/pci/hotplug/ibmphp_core.c | |||
@@ -775,7 +775,6 @@ static u8 bus_structure_fixup(u8 busno) | |||
775 | 775 | ||
776 | static int ibm_configure_device(struct pci_func *func) | 776 | static int ibm_configure_device(struct pci_func *func) |
777 | { | 777 | { |
778 | unsigned char bus; | ||
779 | struct pci_bus *child; | 778 | struct pci_bus *child; |
780 | int num; | 779 | int num; |
781 | int flag = 0; /* this is to make sure we don't double scan the bus, | 780 | int flag = 0; /* this is to make sure we don't double scan the bus, |
@@ -805,11 +804,10 @@ static int ibm_configure_device(struct pci_func *func) | |||
805 | } | 804 | } |
806 | } | 805 | } |
807 | if (!(flag) && (func->dev->hdr_type == PCI_HEADER_TYPE_BRIDGE)) { | 806 | if (!(flag) && (func->dev->hdr_type == PCI_HEADER_TYPE_BRIDGE)) { |
808 | int max; | 807 | pci_hp_add_bridge(func->dev); |
809 | pci_read_config_byte(func->dev, PCI_SECONDARY_BUS, &bus); | 808 | child = func->dev->subordinate; |
810 | child = pci_add_new_bus(func->dev->bus, func->dev, bus); | 809 | if (child) |
811 | max = pci_do_scan_bus(child); | 810 | pci_bus_add_devices(child); |
812 | pci_bus_update_busn_res_end(child, max); | ||
813 | } | 811 | } |
814 | 812 | ||
815 | return 0; | 813 | return 0; |