|
@@ -83,7 +83,6 @@ static void __iomem *detect_HRT_floating_pointer(void __iomem *begin, void __iom
|
|
|
|
|
|
int cpqhp_configure_device (struct controller* ctrl, struct pci_func* func)
|
|
|
{
|
|
|
- unsigned char bus;
|
|
|
struct pci_bus *child;
|
|
|
int num;
|
|
|
|
|
@@ -106,11 +105,10 @@ int cpqhp_configure_device (struct controller* ctrl, struct pci_func* func)
|
|
|
}
|
|
|
|
|
|
if (func->pci_dev->hdr_type == PCI_HEADER_TYPE_BRIDGE) {
|
|
|
- int max;
|
|
|
- pci_read_config_byte(func->pci_dev, PCI_SECONDARY_BUS, &bus);
|
|
|
- child = (struct pci_bus*) pci_add_new_bus(func->pci_dev->bus, (func->pci_dev), bus);
|
|
|
- max = pci_do_scan_bus(child);
|
|
|
- pci_bus_update_busn_res_end(child, max);
|
|
|
+ pci_hp_add_bridge(func->pci_dev);
|
|
|
+ child = func->pci_dev->subordinate;
|
|
|
+ if (child)
|
|
|
+ pci_bus_add_devices(child);
|
|
|
}
|
|
|
|
|
|
pci_dev_put(func->pci_dev);
|