diff options
| author | Yijing Wang <wangyijing@huawei.com> | 2015-04-28 03:01:35 -0400 |
|---|---|---|
| committer | Bjorn Helgaas <bhelgaas@google.com> | 2015-05-26 20:05:59 -0400 |
| commit | 2dead00b925eccdc13b7cd915fa0d088b91bcb52 (patch) | |
| tree | 070bc6fd0365fe8883d3ff1932028f1cca76f47d | |
| parent | 5ebe6afaf0057ac3eaeb98defd5456894b446d22 (diff) | |
PCI: mvebu: Remove mvebu_pcie_scan_bus()
After b97ea289cf6a ("PCI: Assign resources before drivers claim devices
(pci_scan_root_bus())"), pci_scan_root_bus() no longer adds the devices, so
it is equivalent to mvebu_pcie_scan_bus().
Remove mvebu_pcie_scan_bus() (the hw.scan method), so we use the generic
pci_scan_root_bus() path. We also need to use pci_common_init_dev()
instead of pci_common_init() so we can supply the host bridge device
pointer.
[bhelgaas: changelog]
Tested-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Yijing Wang <wangyijing@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
CC: Jason Cooper <jason@lakedaemon.net>
| -rw-r--r-- | drivers/pci/host/pci-mvebu.c | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c index 1ab863551920..70aa09556ec5 100644 --- a/drivers/pci/host/pci-mvebu.c +++ b/drivers/pci/host/pci-mvebu.c | |||
| @@ -751,21 +751,6 @@ static int mvebu_pcie_setup(int nr, struct pci_sys_data *sys) | |||
| 751 | return 1; | 751 | return 1; |
| 752 | } | 752 | } |
| 753 | 753 | ||
| 754 | static struct pci_bus *mvebu_pcie_scan_bus(int nr, struct pci_sys_data *sys) | ||
| 755 | { | ||
| 756 | struct mvebu_pcie *pcie = sys_to_pcie(sys); | ||
| 757 | struct pci_bus *bus; | ||
| 758 | |||
| 759 | bus = pci_create_root_bus(&pcie->pdev->dev, sys->busnr, | ||
| 760 | &mvebu_pcie_ops, sys, &sys->resources); | ||
| 761 | if (!bus) | ||
| 762 | return NULL; | ||
| 763 | |||
| 764 | pci_scan_child_bus(bus); | ||
| 765 | |||
| 766 | return bus; | ||
| 767 | } | ||
| 768 | |||
| 769 | static resource_size_t mvebu_pcie_align_resource(struct pci_dev *dev, | 754 | static resource_size_t mvebu_pcie_align_resource(struct pci_dev *dev, |
| 770 | const struct resource *res, | 755 | const struct resource *res, |
| 771 | resource_size_t start, | 756 | resource_size_t start, |
| @@ -809,12 +794,11 @@ static void mvebu_pcie_enable(struct mvebu_pcie *pcie) | |||
| 809 | hw.nr_controllers = 1; | 794 | hw.nr_controllers = 1; |
| 810 | hw.private_data = (void **)&pcie; | 795 | hw.private_data = (void **)&pcie; |
| 811 | hw.setup = mvebu_pcie_setup; | 796 | hw.setup = mvebu_pcie_setup; |
| 812 | hw.scan = mvebu_pcie_scan_bus; | ||
| 813 | hw.map_irq = of_irq_parse_and_map_pci; | 797 | hw.map_irq = of_irq_parse_and_map_pci; |
| 814 | hw.ops = &mvebu_pcie_ops; | 798 | hw.ops = &mvebu_pcie_ops; |
| 815 | hw.align_resource = mvebu_pcie_align_resource; | 799 | hw.align_resource = mvebu_pcie_align_resource; |
| 816 | 800 | ||
| 817 | pci_common_init(&hw); | 801 | pci_common_init_dev(&pcie->pdev->dev, &hw); |
| 818 | } | 802 | } |
| 819 | 803 | ||
| 820 | /* | 804 | /* |
