aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-orion/kurobox_pro-setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-orion/kurobox_pro-setup.c')
-rw-r--r--arch/arm/mach-orion/kurobox_pro-setup.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/arch/arm/mach-orion/kurobox_pro-setup.c b/arch/arm/mach-orion/kurobox_pro-setup.c
index 2d812ed6b5c7..6817aca4aa26 100644
--- a/arch/arm/mach-orion/kurobox_pro-setup.c
+++ b/arch/arm/mach-orion/kurobox_pro-setup.c
@@ -17,6 +17,7 @@
17#include <linux/mtd/nand.h> 17#include <linux/mtd/nand.h>
18#include <linux/mv643xx_eth.h> 18#include <linux/mv643xx_eth.h>
19#include <linux/i2c.h> 19#include <linux/i2c.h>
20#include <linux/ata_platform.h>
20#include <asm/mach-types.h> 21#include <asm/mach-types.h>
21#include <asm/gpio.h> 22#include <asm/gpio.h>
22#include <asm/mach/arch.h> 23#include <asm/mach/arch.h>
@@ -167,6 +168,13 @@ static struct i2c_board_info __initdata kurobox_pro_i2c_rtc = {
167}; 168};
168 169
169/***************************************************************************** 170/*****************************************************************************
171 * SATA
172 ****************************************************************************/
173static struct mv_sata_platform_data kurobox_pro_sata_data = {
174 .n_ports = 2,
175};
176
177/*****************************************************************************
170 * General Setup 178 * General Setup
171 ****************************************************************************/ 179 ****************************************************************************/
172 180
@@ -192,8 +200,8 @@ static void __init kurobox_pro_init(void)
192 /* 200 /*
193 * Open a special address decode windows for the PCIE WA. 201 * Open a special address decode windows for the PCIE WA.
194 */ 202 */
195 orion_write(ORION_REGS_BASE | 0x20074, ORION_PCIE_WA_BASE); 203 orion_write(ORION_REGS_VIRT_BASE | 0x20074, ORION_PCIE_WA_PHYS_BASE);
196 orion_write(ORION_REGS_BASE | 0x20070, (0x7941 | 204 orion_write(ORION_REGS_VIRT_BASE | 0x20070, (0x7941 |
197 (((ORION_PCIE_WA_SIZE >> 16) - 1)) << 16)); 205 (((ORION_PCIE_WA_SIZE >> 16) - 1)) << 16));
198 206
199 /* 207 /*
@@ -220,12 +228,13 @@ static void __init kurobox_pro_init(void)
220 platform_add_devices(kurobox_pro_devices, ARRAY_SIZE(kurobox_pro_devices)); 228 platform_add_devices(kurobox_pro_devices, ARRAY_SIZE(kurobox_pro_devices));
221 i2c_register_board_info(0, &kurobox_pro_i2c_rtc, 1); 229 i2c_register_board_info(0, &kurobox_pro_i2c_rtc, 1);
222 orion_eth_init(&kurobox_pro_eth_data); 230 orion_eth_init(&kurobox_pro_eth_data);
231 orion_sata_init(&kurobox_pro_sata_data);
223} 232}
224 233
225MACHINE_START(KUROBOX_PRO, "Buffalo/Revogear Kurobox Pro") 234MACHINE_START(KUROBOX_PRO, "Buffalo/Revogear Kurobox Pro")
226 /* Maintainer: Ronen Shitrit <rshitrit@marvell.com> */ 235 /* Maintainer: Ronen Shitrit <rshitrit@marvell.com> */
227 .phys_io = ORION_REGS_BASE, 236 .phys_io = ORION_REGS_PHYS_BASE,
228 .io_pg_offst = ((ORION_REGS_BASE) >> 18) & 0xFFFC, 237 .io_pg_offst = ((ORION_REGS_VIRT_BASE) >> 18) & 0xFFFC,
229 .boot_params = 0x00000100, 238 .boot_params = 0x00000100,
230 .init_machine = kurobox_pro_init, 239 .init_machine = kurobox_pro_init,
231 .map_io = orion_map_io, 240 .map_io = orion_map_io,