[U-Boot] [PATCH V6 4/4] edminiv2: add mvsata_ide and cmd_ide support
Albert Aribaud
albert.aribaud at free.fr
Sat Jul 24 07:39:17 CEST 2010
Add mvsata_ide port 1 initialization in edminiv2 init code
Add mvsata_ide and cmd_ide configuration in edminiv2 config
Signed-off-by: Albert Aribaud <albert.aribaud at free.fr>
---
board/LaCie/edminiv2/edminiv2.c | 8 ++++++++
include/configs/edminiv2.h | 33 ++++++++++++++++++++++++++++++++-
2 files changed, 40 insertions(+), 1 deletions(-)
diff --git a/board/LaCie/edminiv2/edminiv2.c b/board/LaCie/edminiv2/edminiv2.c
index bb388ed..adbced1 100644
--- a/board/LaCie/edminiv2/edminiv2.c
+++ b/board/LaCie/edminiv2/edminiv2.c
@@ -28,6 +28,7 @@
#include <miiphy.h>
#include <asm/arch/orion5x.h>
#include "edminiv2.h"
+#include <mvsata_ide.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -89,6 +90,13 @@ int board_init(void)
/* boot parameter start at 256th byte of RAM base */
gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+#if defined(CONFIG_MVSATA_IDE)
+ /* Enable SATA port 1 if SATA IDE was configured */
+ mvsata_ide_initialize_port(
+ (struct mvsata_port_registers *)
+ (ORION5X_SATA_BASE+ORION5X_SATA_PORT1_OFFSET));
+#endif
+
return 0;
}
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index 055931c..5ce3edd 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -60,7 +60,7 @@
#define ORION5X_MPP0_7 0x00000003
#define ORION5X_MPP8_15 0x55550000
-#define ORION5X_MPP16_23 0x00000000
+#define ORION5X_MPP16_23 0x00005555
/*
* Board-specific values for Orion5x GPIO low level init:
@@ -131,6 +131,7 @@
* Commands configuration - using default command set for now
*/
#include <config_cmd_default.h>
+#define CONFIG_CMD_IDE
/*
* Network
@@ -150,6 +151,36 @@
#endif
/*
+ * IDE
+ */
+#ifdef CONFIG_CMD_IDE
+#define __io
+#define CONFIG_DOS_PARTITION
+#define CONFIG_CMD_EXT2
+/* ED Mini V has an IDE-compatible SATA connector for port 1 */
+#define CONFIG_MVSATA_IDE
+#define CONFIG_MVSATA_IDE_USE_PORT1
+/* Needs byte-swapping for ATA data register */
+#define CONFIG_IDE_SWAP_IO
+/* Data, registers and alternate blocks are at the same offset */
+#define CONFIG_SYS_ATA_DATA_OFFSET (0x0100)
+#define CONFIG_SYS_ATA_REG_OFFSET (0x0100)
+#define CONFIG_SYS_ATA_ALT_OFFSET (0x0100)
+/* Each 8-bit ATA register is aligned to a 4-bytes address */
+#define CONFIG_SYS_ATA_STRIDE 4
+/* Controller supports 48-bits LBA addressing */
+#define CONFIG_LBA48
+/* A single bus, a single device */
+#define CONFIG_SYS_IDE_MAXBUS 1
+#define CONFIG_SYS_IDE_MAXDEVICE 1
+/* ATA registers base is at SATA controller base */
+#define CONFIG_SYS_ATA_BASE_ADDR ORION5X_SATA_BASE
+/* ATA bus 0 is orion5x port 1 on ED Mini V2 */
+#define CONFIG_SYS_ATA_IDE0_OFFSET ORION5X_SATA_PORT1_OFFSET
+/* end of IDE defines */
+#endif /* CMD_IDE */
+
+/*
* Environment variables configurations
*/
#define CONFIG_ENV_IS_IN_FLASH 1
--
1.6.4.4
More information about the U-Boot
mailing list