aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mvebu/patches-4.19/523-Revert-PCI-aardvark-Convert-to-use-pci_host_probe.patch
blob: 3fd561db3a69d99d8aba8830254e1c5fdb788fca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
From 5e79c0c381eb085a2aa2da175eedea1950f07520 Mon Sep 17 00:00:00 2001
From: Tomasz Maciej Nowak <tomek_n@o2.pl>
Date: Tue, 30 Apr 2019 15:37:34 +0200
Subject: [PATCH] Revert "PCI: aardvark: Convert to use pci_host_probe()"

This reverts commit c8e144f8ab00e6c4a070a932ef9c57db09aa41cf.
---
 drivers/pci/controller/pci-aardvark.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

--- a/drivers/pci/controller/pci-aardvark.c
+++ b/drivers/pci/controller/pci-aardvark.c
@@ -843,6 +843,7 @@ static int advk_pcie_probe(struct platfo
 	struct device *dev = &pdev->dev;
 	struct advk_pcie *pcie;
 	struct resource *res;
+	struct pci_bus *bus, *child;
 	struct pci_host_bridge *bridge;
 	int ret, irq;
 
@@ -896,13 +897,22 @@ static int advk_pcie_probe(struct platfo
 	bridge->map_irq = of_irq_parse_and_map_pci;
 	bridge->swizzle_irq = pci_common_swizzle;
 
-	ret = pci_host_probe(bridge);
+	ret = pci_scan_root_bus_bridge(bridge);
 	if (ret < 0) {
 		advk_pcie_remove_msi_irq_domain(pcie);
 		advk_pcie_remove_irq_domain(pcie);
 		return ret;
 	}
 
+	bus = bridge->bus;
+
+	pci_bus_size_bridges(bus);
+	pci_bus_assign_resources(bus);
+
+	list_for_each_entry(child, &bus->children, node)
+		pcie_bus_configure_settings(child);
+
+	pci_bus_add_devices(bus);
 	return 0;
 }