Drivers/PCIe: Fix the failure of enumerating devices under root subordinate
Bugfix for the commit of a20c7f36bd3d ("PCI: Do not allocate more buses than available in
parent").With this patch enumeration stops digging deeper downstream as soon as bus num 0x01 has been assigned, which is always the case for a bridge device.This results in all devices behind a bridge bus to remain undetected, as these would be connected to bus 0x02 or higher.
Reference to https://patchwork.ozlabs.org/patch/857566/
Signed-off-by: Yao Chen <chenyao11@huawei.com>
This commit is contained in:
@@ -861,7 +861,7 @@ void dw_pcie_setup_rc(struct pcie_port *pp)
|
|||||||
/* setup bus numbers */
|
/* setup bus numbers */
|
||||||
val = dw_pcie_readl_rc(pp, PCI_PRIMARY_BUS);
|
val = dw_pcie_readl_rc(pp, PCI_PRIMARY_BUS);
|
||||||
val &= 0xff000000;
|
val &= 0xff000000;
|
||||||
val |= 0x00010100;
|
val |= 0x00ff0100;
|
||||||
dw_pcie_writel_rc(pp, PCI_PRIMARY_BUS, val);
|
dw_pcie_writel_rc(pp, PCI_PRIMARY_BUS, val);
|
||||||
|
|
||||||
/* setup command register */
|
/* setup command register */
|
||||||
|
|||||||
Reference in New Issue
Block a user