
This patch allows cmd_ide.c to use the Marvell SATAHC controller integrated in the Orion5x SoC, thus enabling access to SATA disks for Orion5x-based boards such as the ED Mini V2.
Signed-off-by: Albert Aribaud albert.aribaud@free.fr --- arch/arm/include/asm/arch-orion5x/orion5x.h | 11 +++++++++++ common/cmd_ide.c | 4 ++++ 2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/arch/arm/include/asm/arch-orion5x/orion5x.h b/arch/arm/include/asm/arch-orion5x/orion5x.h index 4008c84..585083a 100644 --- a/arch/arm/include/asm/arch-orion5x/orion5x.h +++ b/arch/arm/include/asm/arch-orion5x/orion5x.h @@ -55,6 +55,17 @@ #define ORION5X_USB20_PORT0_BASE (ORION5X_REGISTER(0x50000)) #define ORION5X_USB20_PORT1_BASE (ORION5X_REGISTER(0xA0000)) #define ORION5X_EGIGA_BASE (ORION5X_REGISTER(0x72000)) +#define ORION5X_SATA_BASE (ORION5X_REGISTER(0x80000)) +#define ORION5X_SATA_PORT0_OFFSET 0x2000 +#define ORION5X_SATA_PORT1_OFFSET 0x4000 + +/* SATA Interface Register port 0 and 1 */ +#define orion5x_port0_sata_registers \ + ((struct mv_sata_interface_registers *) \ + (ORION5X_SATA_BASE+ORION5X_SATA_PORT0_OFFSET+0x300)) +#define orion5x_port1_sata_registers \ + ((struct mv_sata_interface_registers *) \ + (ORION5X_SATA_BASE+ORION5X_SATA_PORT1_OFFSET+0x300))
#define CONFIG_MAX_RAM_BANK_SIZE (64*1024*1024)
diff --git a/common/cmd_ide.c b/common/cmd_ide.c index 9292a5b..7f98ebb 100644 --- a/common/cmd_ide.c +++ b/common/cmd_ide.c @@ -45,6 +45,10 @@ #include <mpc5xxx.h> #endif
+#ifdef CONFIG_ORION5X +#include <asm/arch/orion5x.h> +#endif + #include <ide.h> #include <ata.h>