diff options
| author | Rob Herring <robh@kernel.org> | 2020-08-20 21:53:56 -0600 | 
|---|---|---|
| committer | Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | 2020-09-08 16:37:02 +0100 | 
| commit | 1df793054859eaa69d878f7daffc9f1cf9253a5d (patch) | |
| tree | bb22608e96c38ffc42a2209447926ce990e201a1 /drivers/pci/controller/dwc | |
| parent | 6ab15b5e7057c5d0de7316f2264c92fb7a28b340 (diff) | |
PCI: dwc: Convert to use pci_host_probe()
Now that there are no more .scan_bus() callbacks, we can remove it and just
use pci_host_probe().
Link: https://lore.kernel.org/r/20200821035420.380495-17-robh@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/controller/dwc')
| -rw-r--r-- | drivers/pci/controller/dwc/pcie-designware-host.c | 21 | ||||
| -rw-r--r-- | drivers/pci/controller/dwc/pcie-designware.h | 1 | 
2 files changed, 3 insertions, 19 deletions
diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c index 14ffc2cd88be..940edb3e2d3f 100644 --- a/drivers/pci/controller/dwc/pcie-designware-host.c +++ b/drivers/pci/controller/dwc/pcie-designware-host.c @@ -300,7 +300,6 @@ int dw_pcie_host_init(struct pcie_port *pp)  	struct device_node *np = dev->of_node;  	struct platform_device *pdev = to_platform_device(dev);  	struct resource_entry *win; -	struct pci_bus *child;  	struct pci_host_bridge *bridge;  	struct resource *cfg_res;  	int ret; @@ -436,23 +435,9 @@ int dw_pcie_host_init(struct pcie_port *pp)  	bridge->sysdata = pp; -	ret = pci_scan_root_bus_bridge(bridge); -	if (ret) -		goto err_free_msi; - -	pp->root_bus = bridge->bus; - -	if (pp->ops->scan_bus) -		pp->ops->scan_bus(pp); - -	pci_bus_size_bridges(pp->root_bus); -	pci_bus_assign_resources(pp->root_bus); - -	list_for_each_entry(child, &pp->root_bus->children, node) -		pcie_bus_configure_settings(child); - -	pci_bus_add_devices(pp->root_bus); -	return 0; +	ret = pci_host_probe(bridge); +	if (!ret) +		return 0;  err_free_msi:  	if (pci_msi_enabled() && !pp->ops->msi_host_init) diff --git a/drivers/pci/controller/dwc/pcie-designware.h b/drivers/pci/controller/dwc/pcie-designware.h index ebcd2aefb6b1..c018f199ca44 100644 --- a/drivers/pci/controller/dwc/pcie-designware.h +++ b/drivers/pci/controller/dwc/pcie-designware.h @@ -161,7 +161,6 @@ enum dw_pcie_device_mode {  struct dw_pcie_host_ops {  	int (*host_init)(struct pcie_port *pp); -	void (*scan_bus)(struct pcie_port *pp);  	void (*set_num_vectors)(struct pcie_port *pp);  	int (*msi_host_init)(struct pcie_port *pp);  };  | 
