diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c index 46d50cba4a35..9c643d7abd1b 100644 --- a/drivers/pci/controller/dwc/pcie-designware-host.c +++ b/drivers/pci/controller/dwc/pcie-designware-host.c @@ -423,10 +423,15 @@ int dw_pcie_host_init(struct dw_pcie_rp *pp) return -ENODEV; } - bridge = devm_pci_alloc_host_bridge(dev, 0); + bridge = pci_alloc_host_bridge(0); if (!bridge) return -ENOMEM; + ret = devm_of_pci_bridge_init(dev, bridge); + if (ret) + return -ENOMEM; + + bridge->dev.parent = dev; pp->bridge = bridge; /* Get the I/O range from DT */