[U-Boot] [PATCH] s5p-mmc: Fix ambiguous setting of data transfer width
    Jaehoon Chung 
    jh80.chung at samsung.com
       
    Wed Aug 31 10:33:01 CEST 2011
    
    
  
Hi Chander.
this patch is correct. 
Acked-by: Jaehoon Chung <jh80.chung at samsung.com>
Chander Kashyap wrote:
> mmc data transfer width is set as following:
> WIDE8[5]:
> 0 = Depend on WIDE4
> 1 = 8-bit mode
> WIDE4[1]:
> 1 = 4-bit mode
> 0 = 1-bit mode
> 
> In case of 4-bit mode reset 8-bit mode and
> in case of 1-bit mode reset 8-bit mode and 4-bit mode
> 
> Signed-off-by: Chander Kashyap <chander.kashyap at linaro.org>
> ---
>  drivers/mmc/s5p_mmc.c |   10 +++++++---
>  1 files changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/mmc/s5p_mmc.c b/drivers/mmc/s5p_mmc.c
> index 7786ecf..6e6ad08 100644
> --- a/drivers/mmc/s5p_mmc.c
> +++ b/drivers/mmc/s5p_mmc.c
> @@ -368,12 +368,16 @@ static void mmc_set_ios(struct mmc *mmc)
>  	 * 1 = 4-bit mode
>  	 * 0 = 1-bit mode
>  	 */
> -	if (mmc->bus_width == 8)
> +	if (mmc->bus_width == 8) {
>  		ctrl |= (1 << 5);
> -	else if (mmc->bus_width == 4)
> +		ctrl &= ~(1 << 1);
> +	} else if (mmc->bus_width == 4) {
>  		ctrl |= (1 << 1);
> -	else
> +		ctrl &= ~(1 << 5);
> +	} else {
>  		ctrl &= ~(1 << 1);
> +		ctrl &= ~(1 << 5);
> +	}
>  
>  	/*
>  	 * OUTEDGEINV[2]
    
    
More information about the U-Boot
mailing list