PCI: mvebu: Remove mvebu_pcie_scan_bus()
After b97ea289cf
("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>
This commit is contained in:
Родитель
5ebe6afaf0
Коммит
2dead00b92
|
@ -751,21 +751,6 @@ static int mvebu_pcie_setup(int nr, struct pci_sys_data *sys)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct pci_bus *mvebu_pcie_scan_bus(int nr, struct pci_sys_data *sys)
|
|
||||||
{
|
|
||||||
struct mvebu_pcie *pcie = sys_to_pcie(sys);
|
|
||||||
struct pci_bus *bus;
|
|
||||||
|
|
||||||
bus = pci_create_root_bus(&pcie->pdev->dev, sys->busnr,
|
|
||||||
&mvebu_pcie_ops, sys, &sys->resources);
|
|
||||||
if (!bus)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
pci_scan_child_bus(bus);
|
|
||||||
|
|
||||||
return bus;
|
|
||||||
}
|
|
||||||
|
|
||||||
static resource_size_t mvebu_pcie_align_resource(struct pci_dev *dev,
|
static resource_size_t mvebu_pcie_align_resource(struct pci_dev *dev,
|
||||||
const struct resource *res,
|
const struct resource *res,
|
||||||
resource_size_t start,
|
resource_size_t start,
|
||||||
|
@ -809,12 +794,11 @@ static void mvebu_pcie_enable(struct mvebu_pcie *pcie)
|
||||||
hw.nr_controllers = 1;
|
hw.nr_controllers = 1;
|
||||||
hw.private_data = (void **)&pcie;
|
hw.private_data = (void **)&pcie;
|
||||||
hw.setup = mvebu_pcie_setup;
|
hw.setup = mvebu_pcie_setup;
|
||||||
hw.scan = mvebu_pcie_scan_bus;
|
|
||||||
hw.map_irq = of_irq_parse_and_map_pci;
|
hw.map_irq = of_irq_parse_and_map_pci;
|
||||||
hw.ops = &mvebu_pcie_ops;
|
hw.ops = &mvebu_pcie_ops;
|
||||||
hw.align_resource = mvebu_pcie_align_resource;
|
hw.align_resource = mvebu_pcie_align_resource;
|
||||||
|
|
||||||
pci_common_init(&hw);
|
pci_common_init_dev(&pcie->pdev->dev, &hw);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Загрузка…
Ссылка в новой задаче