From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Fri, 28 Aug 2015 23:55:17 +0200 Subject: [U-Boot] [PATCH 1/2] mmc: dw_mmc: Increase timeout to 20 seconds In-Reply-To: <1440769821-24005-1-git-send-email-l.majewski@samsung.com> References: <1440769821-24005-1-git-send-email-l.majewski@samsung.com> Message-ID: <201508282355.17660.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Friday, August 28, 2015 at 03:50:20 PM, Lukasz Majewski wrote: > The commit: d9dbb97be0e4a550457aec5f11afefb446169c90 > "mmc: dw_mmc: Zap endless timeout" removed endless loop waiting for end > of dw mmc transfer. > > For some workloads - dfu test @ Odroid XU3 (sending 8MiB file) - > and SD cards (e.g. MicroSD Kingston 4GiB, Adata 4GiB) > the default timeout is to short. > > The new value - 20 seconds - takes into account the situation when SD card > triggers internal clean up. Such process may take more than 10 seconds on > some cards. What happens if you pull the SD card out of the slot during such a process? Also, where did you find out there is such "cleanup" mechanism please ? > Signed-off-by: Lukasz Majewski > Cc: Marek Vasut > Cc: Pantelis Antoniou > Cc: Tom Rini > --- > drivers/mmc/dw_mmc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c > index 77b87e0..21a92d2 100644 > --- a/drivers/mmc/dw_mmc.c > +++ b/drivers/mmc/dw_mmc.c > @@ -213,7 +213,7 @@ static int dwmci_send_cmd(struct mmc *mmc, struct > mmc_cmd *cmd, > > if (data) { > start = get_timer(0); > - timeout = 1000; > + timeout = 20000; > for (;;) { > mask = dwmci_readl(host, DWMCI_RINTSTS); > /* Error during data transfer. */ Best regards, Marek Vasut