|
@@ -1121,34 +1121,6 @@ static int mtk_pcie_request_resources(struct mtk_pcie *pcie)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-static int mtk_pcie_register_host(struct pci_host_bridge *host)
|
|
|
-{
|
|
|
- struct mtk_pcie *pcie = pci_host_bridge_priv(host);
|
|
|
- struct pci_bus *child;
|
|
|
- int err;
|
|
|
-
|
|
|
- host->busnr = pcie->busn.start;
|
|
|
- host->dev.parent = pcie->dev;
|
|
|
- host->ops = pcie->soc->ops;
|
|
|
- host->map_irq = of_irq_parse_and_map_pci;
|
|
|
- host->swizzle_irq = pci_common_swizzle;
|
|
|
- host->sysdata = pcie;
|
|
|
-
|
|
|
- err = pci_scan_root_bus_bridge(host);
|
|
|
- if (err < 0)
|
|
|
- return err;
|
|
|
-
|
|
|
- pci_bus_size_bridges(host->bus);
|
|
|
- pci_bus_assign_resources(host->bus);
|
|
|
-
|
|
|
- list_for_each_entry(child, &host->bus->children, node)
|
|
|
- pcie_bus_configure_settings(child);
|
|
|
-
|
|
|
- pci_bus_add_devices(host->bus);
|
|
|
-
|
|
|
- return 0;
|
|
|
-}
|
|
|
-
|
|
|
static int mtk_pcie_probe(struct platform_device *pdev)
|
|
|
{
|
|
|
struct device *dev = &pdev->dev;
|
|
@@ -1175,7 +1147,14 @@ static int mtk_pcie_probe(struct platform_device *pdev)
|
|
|
if (err)
|
|
|
goto put_resources;
|
|
|
|
|
|
- err = mtk_pcie_register_host(host);
|
|
|
+ host->busnr = pcie->busn.start;
|
|
|
+ host->dev.parent = pcie->dev;
|
|
|
+ host->ops = pcie->soc->ops;
|
|
|
+ host->map_irq = of_irq_parse_and_map_pci;
|
|
|
+ host->swizzle_irq = pci_common_swizzle;
|
|
|
+ host->sysdata = pcie;
|
|
|
+
|
|
|
+ err = pci_host_probe(host);
|
|
|
if (err)
|
|
|
goto put_resources;
|
|
|
|