diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-03-10 07:49:16 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-05-13 12:12:17 -0400 |
commit | c23bfc3835173f5229b2503e3b616001a28affad (patch) | |
tree | 109f74ea29224587bead91289f55f2d30032b615 /arch/arm/common | |
parent | daeb4c0c3bf2df72d0cd6e4330bad9e2e520552b (diff) |
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/common')
-rw-r--r-- | arch/arm/common/it8152.c | 7 | ||||
-rw-r--r-- | arch/arm/common/via82c505.c | 11 |
2 files changed, 2 insertions, 16 deletions
diff --git a/arch/arm/common/it8152.c b/arch/arm/common/it8152.c index dcb13494ca0d..c4110d1b1f2d 100644 --- a/arch/arm/common/it8152.c +++ b/arch/arm/common/it8152.c | |||
@@ -222,7 +222,7 @@ static int it8152_pci_write_config(struct pci_bus *bus, | |||
222 | return PCIBIOS_SUCCESSFUL; | 222 | return PCIBIOS_SUCCESSFUL; |
223 | } | 223 | } |
224 | 224 | ||
225 | static struct pci_ops it8152_ops = { | 225 | struct pci_ops it8152_ops = { |
226 | .read = it8152_pci_read_config, | 226 | .read = it8152_pci_read_config, |
227 | .write = it8152_pci_write_config, | 227 | .write = it8152_pci_write_config, |
228 | }; | 228 | }; |
@@ -346,9 +346,4 @@ void pcibios_set_master(struct pci_dev *dev) | |||
346 | } | 346 | } |
347 | 347 | ||
348 | 348 | ||
349 | struct pci_bus * __init it8152_pci_scan_bus(int nr, struct pci_sys_data *sys) | ||
350 | { | ||
351 | return pci_scan_root_bus(NULL, nr, &it8152_ops, sys, &sys->resources); | ||
352 | } | ||
353 | |||
354 | EXPORT_SYMBOL(dma_set_coherent_mask); | 349 | EXPORT_SYMBOL(dma_set_coherent_mask); |
diff --git a/arch/arm/common/via82c505.c b/arch/arm/common/via82c505.c index 1171a5010aea..6cb362e56d29 100644 --- a/arch/arm/common/via82c505.c +++ b/arch/arm/common/via82c505.c | |||
@@ -51,7 +51,7 @@ via82c505_write_config(struct pci_bus *bus, unsigned int devfn, int where, | |||
51 | return PCIBIOS_SUCCESSFUL; | 51 | return PCIBIOS_SUCCESSFUL; |
52 | } | 52 | } |
53 | 53 | ||
54 | static struct pci_ops via82c505_ops = { | 54 | struct pci_ops via82c505_ops = { |
55 | .read = via82c505_read_config, | 55 | .read = via82c505_read_config, |
56 | .write = via82c505_write_config, | 56 | .write = via82c505_write_config, |
57 | }; | 57 | }; |
@@ -81,12 +81,3 @@ int __init via82c505_setup(int nr, struct pci_sys_data *sys) | |||
81 | { | 81 | { |
82 | return (nr == 0); | 82 | return (nr == 0); |
83 | } | 83 | } |
84 | |||
85 | struct pci_bus * __init via82c505_scan_bus(int nr, struct pci_sys_data *sysdata) | ||
86 | { | ||
87 | if (nr == 0) | ||
88 | return pci_scan_root_bus(NULL, 0, &via82c505_ops, sysdata, | ||
89 | &sysdata->resources); | ||
90 | |||
91 | return NULL; | ||
92 | } | ||