[U-Boot] [U-Boot, 2/2] mmc: dw_mmc: fix data starvation by host timeout under FIFO mode

Jaehoon Chung jh80.chung at samsung.com
Fri Aug 5 04:27:15 CEST 2016


On 07/28/2016 11:25 AM, Xu Ziyuan wrote:
> This patch fixes data starvation by host timeout(HTO) error interrupt
> which occurred under FIFO mode transfer on rk3036 board.
> 
> The former implement, the actual bytes were transmitted may be less than
> should be. The size will still subtract value of len in case of there is
> no receive/transmit FIFO data request interrupt.
> 
> Signed-off-by: Ziyuan Xu <xzy.xu at rock-chips.com>
> Acked-by: Jaehoon Chung <jh80.chung at samsung.com>
> Reviewed-by: Simon Glass <sjg at chromium.org>


Applied on u-boot-mmc. Thanks!

Best Regards,
Jaehoon Chung


> ---
> 
>  drivers/mmc/dw_mmc.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
> index 38d4a64..41b7035 100644
> --- a/drivers/mmc/dw_mmc.c
> +++ b/drivers/mmc/dw_mmc.c
> @@ -120,6 +120,7 @@ static int dwmci_data_transfer(struct dwmci_host *host, struct mmc_data *data)
>  		}
>  
>  		if (host->fifo_mode && size) {
> +			len = 0;
>  			if (data->flags == MMC_DATA_READ) {
>  				if ((dwmci_readl(host, DWMCI_RINTSTS) &
>  				     DWMCI_INTMSK_RXDR)) {
> 



More information about the U-Boot mailing list