diff options
author | Lennert Buytenhek <buytenh@wantstofly.org> | 2008-03-27 14:51:40 -0400 |
---|---|---|
committer | Nicolas Pitre <nico@marvell.com> | 2008-03-27 14:51:40 -0400 |
commit | 98f79d1ea0459b907f95846bad5e967a06b7a0d5 (patch) | |
tree | 2a9148e04a36f7cfdf1be90874b7b5eb84e7cf6e /arch/arm/mach-orion/kurobox_pro-setup.c | |
parent | 5d4294c524fc53746b5ec138d2e90f9d34d754b0 (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.c | 12 |
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 -- |