aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ixp23xx/pci.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-ixp23xx/pci.c')
-rw-r--r--arch/arm/mach-ixp23xx/pci.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/arm/mach-ixp23xx/pci.c b/arch/arm/mach-ixp23xx/pci.c
index 5330ad78c1bb..ba6b4367a1d5 100644
--- a/arch/arm/mach-ixp23xx/pci.c
+++ b/arch/arm/mach-ixp23xx/pci.c
@@ -201,7 +201,7 @@ int clear_master_aborts(void)
201 return 0; 201 return 0;
202} 202}
203 203
204void __init ixp23xx_pci_preinit(void) 204static void __init ixp23xx_pci_common_init(void)
205{ 205{
206#ifdef __ARMEB__ 206#ifdef __ARMEB__
207 *IXP23XX_PCI_CONTROL |= 0x20000; /* set I/O swapping */ 207 *IXP23XX_PCI_CONTROL |= 0x20000; /* set I/O swapping */
@@ -220,6 +220,11 @@ void __init ixp23xx_pci_preinit(void)
220 } else { 220 } else {
221 *IXP23XX_PCI_CPP_ADDR_BITS |= (1 << 1); 221 *IXP23XX_PCI_CPP_ADDR_BITS |= (1 << 1);
222 } 222 }
223}
224
225void __init ixp23xx_pci_preinit(void)
226{
227 ixp23xx_pci_common_init();
223 228
224 hook_fault_code(16+6, ixp23xx_pci_abort_handler, SIGBUS, 229 hook_fault_code(16+6, ixp23xx_pci_abort_handler, SIGBUS,
225 "PCI config cycle to non-existent device"); 230 "PCI config cycle to non-existent device");
@@ -273,3 +278,8 @@ int ixp23xx_pci_setup(int nr, struct pci_sys_data *sys)
273 278
274 return 1; 279 return 1;
275} 280}
281
282void ixp23xx_pci_slave_init(void)
283{
284 ixp23xx_pci_common_init();
285}