diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-03-10 12:49:16 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-05-13 17:12:17 +0100 |
commit | c23bfc3835173f5229b2503e3b616001a28affad (patch) | |
tree | 109f74ea29224587bead91289f55f2d30032b615 /arch/arm/mach-cns3xxx | |
parent | daeb4c0c3bf2df72d0cd6e4330bad9e2e520552b (diff) | |
download | lwn-c23bfc3835173f5229b2503e3b616001a28affad.tar.gz lwn-c23bfc3835173f5229b2503e3b616001a28affad.zip |
ARM: PCI: provide a default bus scan implementation
Most PCI implementations perform simple root bus scanning. Rather than
having each group of platforms provide a duplicated bus scan function,
provide the PCI configuration ops structure via the hw_pci structure,
and call the root bus scanning function from core ARM PCI code.
Acked-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-cns3xxx')
-rw-r--r-- | arch/arm/mach-cns3xxx/pcie.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/arch/arm/mach-cns3xxx/pcie.c b/arch/arm/mach-cns3xxx/pcie.c index 62f861bef243..311328314163 100644 --- a/arch/arm/mach-cns3xxx/pcie.c +++ b/arch/arm/mach-cns3xxx/pcie.c @@ -166,12 +166,6 @@ static struct pci_ops cns3xxx_pcie_ops = { .write = cns3xxx_pci_write_config, }; -static struct pci_bus *cns3xxx_pci_scan_bus(int nr, struct pci_sys_data *sys) -{ - return pci_scan_root_bus(NULL, sys->busnr, &cns3xxx_pcie_ops, sys, - &sys->resources); -} - static int cns3xxx_pcie_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { struct cns3xxx_pcie *cnspci = pdev_to_cnspci(dev); @@ -222,8 +216,8 @@ static struct cns3xxx_pcie cns3xxx_pcie[] = { .hw_pci = { .domain = 0, .nr_controllers = 1, + .ops = &cns3xxx_pcie_ops, .setup = cns3xxx_pci_setup, - .scan = cns3xxx_pci_scan_bus, .map_irq = cns3xxx_pcie_map_irq, }, }, @@ -264,8 +258,8 @@ static struct cns3xxx_pcie cns3xxx_pcie[] = { .hw_pci = { .domain = 1, .nr_controllers = 1, + .ops = &cns3xxx_pcie_ops, .setup = cns3xxx_pci_setup, - .scan = cns3xxx_pci_scan_bus, .map_irq = cns3xxx_pcie_map_irq, }, }, |