PCI: insert busn_res for child bus
Now we can insert busn_res now, after all root bus's get inserted. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
committed by
Bjorn Helgaas
parent
b7eac055c0
commit
bc76b7310a
@ -755,7 +755,7 @@ int __devinit pci_scan_bridge(struct pci_bus *bus, struct pci_dev *dev, int max,
|
|||||||
if (!child)
|
if (!child)
|
||||||
goto out;
|
goto out;
|
||||||
child->primary = primary;
|
child->primary = primary;
|
||||||
child->busn_res.end = subordinate;
|
pci_bus_insert_busn_res(child, secondary, subordinate);
|
||||||
child->bridge_ctl = bctl;
|
child->bridge_ctl = bctl;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -793,6 +793,7 @@ int __devinit pci_scan_bridge(struct pci_bus *bus, struct pci_dev *dev, int max,
|
|||||||
child = pci_add_new_bus(bus, dev, ++max);
|
child = pci_add_new_bus(bus, dev, ++max);
|
||||||
if (!child)
|
if (!child)
|
||||||
goto out;
|
goto out;
|
||||||
|
pci_bus_insert_busn_res(child, max, 0xff);
|
||||||
}
|
}
|
||||||
buses = (buses & 0xff000000)
|
buses = (buses & 0xff000000)
|
||||||
| ((unsigned int)(child->primary) << 0)
|
| ((unsigned int)(child->primary) << 0)
|
||||||
@ -864,7 +865,7 @@ int __devinit pci_scan_bridge(struct pci_bus *bus, struct pci_dev *dev, int max,
|
|||||||
/*
|
/*
|
||||||
* Set the subordinate bus number to its real value.
|
* Set the subordinate bus number to its real value.
|
||||||
*/
|
*/
|
||||||
child->busn_res.end = max;
|
pci_bus_update_busn_res_end(child, max);
|
||||||
pci_write_config_byte(dev, PCI_SUBORDINATE_BUS, max);
|
pci_write_config_byte(dev, PCI_SUBORDINATE_BUS, max);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user