diff options
author | Honghui Zhang <honghui.zhang@mediatek.com> | 2018-10-15 04:08:55 -0400 |
---|---|---|
committer | Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | 2018-10-17 10:36:01 -0400 |
commit | 57cb3152b360eabf30d498515dcf9049f3c7b9df (patch) | |
tree | 786b8bb574f2119cb451630189f0c3c65895cd03 | |
parent | 88c0e230bb4a79680ee5f05ddba879d436f98f13 (diff) |
PCI: mediatek: Convert to use pci_host_probe()
Part of mtk_pcie_register_host() is an open-coded version of
pci_host_probe(). So instead of duplicating this code, use
pci_host_probe() directly and remove mtk_pcie_register_host().
Signed-off-by: Honghui Zhang <honghui.zhang@mediatek.com>
[lorenzo.pieralisi@arm.com: commit log changes]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Ryder Lee <ryder.lee@mediatek.com>
-rw-r--r-- | drivers/pci/controller/pcie-mediatek.c | 37 |
1 files changed, 8 insertions, 29 deletions
diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c index 547e4c76edbb..6f0849049041 100644 --- a/drivers/pci/controller/pcie-mediatek.c +++ b/drivers/pci/controller/pcie-mediatek.c | |||
@@ -1121,34 +1121,6 @@ static int mtk_pcie_request_resources(struct mtk_pcie *pcie) | |||
1121 | return 0; | 1121 | return 0; |
1122 | } | 1122 | } |
1123 | 1123 | ||
1124 | static int mtk_pcie_register_host(struct pci_host_bridge *host) | ||
1125 | { | ||
1126 | struct mtk_pcie *pcie = pci_host_bridge_priv(host); | ||
1127 | struct pci_bus *child; | ||
1128 | int err; | ||
1129 | |||
1130 | host->busnr = pcie->busn.start; | ||
1131 | host->dev.parent = pcie->dev; | ||
1132 | host->ops = pcie->soc->ops; | ||
1133 | host->map_irq = of_irq_parse_and_map_pci; | ||
1134 | host->swizzle_irq = pci_common_swizzle; | ||
1135 | host->sysdata = pcie; | ||
1136 | |||
1137 | err = pci_scan_root_bus_bridge(host); | ||
1138 | if (err < 0) | ||
1139 | return err; | ||
1140 | |||
1141 | pci_bus_size_bridges(host->bus); | ||
1142 | pci_bus_assign_resources(host->bus); | ||
1143 | |||
1144 | list_for_each_entry(child, &host->bus->children, node) | ||
1145 | pcie_bus_configure_settings(child); | ||
1146 | |||
1147 | pci_bus_add_devices(host->bus); | ||
1148 | |||
1149 | return 0; | ||
1150 | } | ||
1151 | |||
1152 | static int mtk_pcie_probe(struct platform_device *pdev) | 1124 | static int mtk_pcie_probe(struct platform_device *pdev) |
1153 | { | 1125 | { |
1154 | struct device *dev = &pdev->dev; | 1126 | struct device *dev = &pdev->dev; |
@@ -1175,7 +1147,14 @@ static int mtk_pcie_probe(struct platform_device *pdev) | |||
1175 | if (err) | 1147 | if (err) |
1176 | goto put_resources; | 1148 | goto put_resources; |
1177 | 1149 | ||
1178 | err = mtk_pcie_register_host(host); | 1150 | host->busnr = pcie->busn.start; |
1151 | host->dev.parent = pcie->dev; | ||
1152 | host->ops = pcie->soc->ops; | ||
1153 | host->map_irq = of_irq_parse_and_map_pci; | ||
1154 | host->swizzle_irq = pci_common_swizzle; | ||
1155 | host->sysdata = pcie; | ||
1156 | |||
1157 | err = pci_host_probe(host); | ||
1179 | if (err) | 1158 | if (err) |
1180 | goto put_resources; | 1159 | goto put_resources; |
1181 | 1160 | ||