[U-Boot] [PATCH V5 4/4] edminiv2: add mvsata_ide and cmd_ide support

Prafulla Wadaskar prafulla at marvell.com
Wed Jul 21 12:26:39 CEST 2010


 

> -----Original Message-----
> From: u-boot-bounces at lists.denx.de 
> [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Albert Aribaud
> Sent: Tuesday, July 13, 2010 5:33 PM
> To: u-boot at lists.denx.de
> Subject: [U-Boot] [PATCH V5 4/4] edminiv2: add mvsata_ide and 
> cmd_ide support
> 
> 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 |    7 ++++++
>  include/configs/edminiv2.h      |   46 
> ++++++++++++++++++++++++++++++++++++++-
>  2 files changed, 52 insertions(+), 1 deletions(-)
> 
> diff --git a/board/LaCie/edminiv2/edminiv2.c 
> b/board/LaCie/edminiv2/edminiv2.c
> index 54c0ffe..f0c2110 100644
> --- a/board/LaCie/edminiv2/edminiv2.c
> +++ b/board/LaCie/edminiv2/edminiv2.c
> @@ -88,5 +88,12 @@ 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 mv_sata_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 c3d95a0..0c1a8fc 100644
> --- a/include/configs/edminiv2.h
> +++ b/include/configs/edminiv2.h
> @@ -52,6 +52,12 @@
>  #define CONFIG_SYS_HZ		1000
>  
>  /*
> + * __io is necessary for cmd_ide to compile
> + */
> +
> +#define __io
> +

Pls move this below inside #ifdef CONFIG_CMD_IDE

> +/*
>   * Board-specific values for Orion5x MPP low level init:
>   * - MPPs 12 to 15 are SATA LEDs (mode 5)
>   * - Others are GPIO/unused (mode 3 for MPP0, mode 5 for
> @@ -60,7 +66,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 +137,7 @@
>   * Commands configuration - using default command set for now
>   */
>  #include <config_cmd_default.h>
> +
>  /*
>   * Disabling some default commands for staggered bring-up
>   */
> @@ -138,6 +145,43 @@
>  #undef CONFIG_CMD_NET	/* no net since no eth */
>  #undef CONFIG_CMD_NFS	/* no NFS since no net */
>  
> +#define CONFIG_CMD_IDE
> +#define CONFIG_DOS_PARTITION
> +#define CONFIG_CMD_EXT2

It's good if you use #ifdef here and pull all IDE specific configuration in it
I had already provided same comment for previous patch

> +
> +/*
> + * ED Mini V2 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
> +
> +/*
> + * CONFIG_CMD_IDE requires some #defines for ATA registers
> + */
> +
> +/* 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

Secondly I tried to generate similar patches for Kirkwood oneprd_base (attached) on the top of this patch series
But somehow "ide reset" is unable to detect device on port.
If you have openrd_base board, can you pls give a try?
May be you may need to look at mpp config.
 
Regards..
Prafulla . .
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-cmd_ide-add-support-for-Kirkwood.patch
Type: application/octet-stream
Size: 1464 bytes
Desc: 0001-cmd_ide-add-support-for-Kirkwood.patch
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100721/cb5de468/attachment.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Kirkwood-openrd_base-Added-SATA-support.patch
Type: application/octet-stream
Size: 3367 bytes
Desc: 0002-Kirkwood-openrd_base-Added-SATA-support.patch
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100721/cb5de468/attachment-0001.obj 


More information about the U-Boot mailing list