aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-orion/kurobox_pro-setup.c
diff options
context:
space:
mode:
authorLennert Buytenhek <buytenh@wantstofly.org>2008-03-27 14:51:40 -0400
committerNicolas Pitre <nico@marvell.com>2008-03-27 14:51:40 -0400
commit98f79d1ea0459b907f95846bad5e967a06b7a0d5 (patch)
tree2a9148e04a36f7cfdf1be90874b7b5eb84e7cf6e /arch/arm/mach-orion/kurobox_pro-setup.c
parent5d4294c524fc53746b5ec138d2e90f9d34d754b0 (diff)
Orion: revamp cpu mbus window handling
Instead of forcing all device bus window setup through one function with some enum as the first argument, create separate window setup functions for each of the four possible targets, and do the demux internally. This allows getting rid of the window identifier enum and the big switch statement in orion_setup_cpu_win(). Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Reviewed-by: Tzachi Perelstein <tzachi@marvell.com> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Nicolas Pitre <nico@marvell.com>
Diffstat (limited to 'arch/arm/mach-orion/kurobox_pro-setup.c')
-rw-r--r--arch/arm/mach-orion/kurobox_pro-setup.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/arm/mach-orion/kurobox_pro-setup.c b/arch/arm/mach-orion/kurobox_pro-setup.c
index feae4839830b..bf7034df8a62 100644
--- a/arch/arm/mach-orion/kurobox_pro-setup.c
+++ b/arch/arm/mach-orion/kurobox_pro-setup.c
@@ -193,16 +193,14 @@ static void __init kurobox_pro_init(void)
193 /* 193 /*
194 * Setup the CPU address decode windows for our devices 194 * Setup the CPU address decode windows for our devices
195 */ 195 */
196 orion_setup_cpu_win(ORION_DEV_BOOT, KUROBOX_PRO_NOR_BOOT_BASE, 196 orion_setup_dev_boot_win(KUROBOX_PRO_NOR_BOOT_BASE,
197 KUROBOX_PRO_NOR_BOOT_SIZE, -1); 197 KUROBOX_PRO_NOR_BOOT_SIZE);
198 orion_setup_cpu_win(ORION_DEV0, KUROBOX_PRO_NAND_BASE, 198 orion_setup_dev0_win(KUROBOX_PRO_NAND_BASE, KUROBOX_PRO_NAND_SIZE);
199 KUROBOX_PRO_NAND_SIZE, -1); 199
200 /* 200 /*
201 * Open a special address decode windows for the PCIE WA. 201 * Open a special address decode windows for the PCIE WA.
202 */ 202 */
203 orion_write(ORION_REGS_VIRT_BASE | 0x20074, ORION_PCIE_WA_PHYS_BASE); 203 orion_setup_pcie_wa_win(ORION_PCIE_WA_PHYS_BASE, ORION_PCIE_WA_SIZE);
204 orion_write(ORION_REGS_VIRT_BASE | 0x20070, (0x7941 |
205 (((ORION_PCIE_WA_SIZE >> 16) - 1)) << 16));
206 204
207 /* 205 /*
208 * Setup Multiplexing Pins -- 206 * Setup Multiplexing Pins --