From: Alexander Graf Date: Fri, 4 Mar 2016 00:09:52 +0000 (+0100) Subject: dwmmc: Increase retry timeout X-Git-Tag: v2016.05-rc1~378 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=9b5b8b6ee19de9b6c1a701e8e6faa16ffe951a58;p=oweals%2Fu-boot.git dwmmc: Increase retry timeout When enable dcache on HiKey, we're running into MMC command timeouts because our retry loop is now faster than the eMMC (or an external SD card) can answer. Increase the retry count to the same as the timeout value for status reports. The real fix is obviously to not base this whole thing on a cycle counter but on real wall time, but that would be slightly more intrusive. Signed-off-by: Alexander Graf --- diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c index 909e3caf18..7329f40d34 100644 --- a/drivers/mmc/dw_mmc.c +++ b/drivers/mmc/dw_mmc.c @@ -189,7 +189,7 @@ static int dwmci_send_cmd(struct mmc *mmc, struct mmc_cmd *cmd, data ? DIV_ROUND_UP(data->blocks, 8) : 0); int ret = 0, flags = 0, i; unsigned int timeout = 100000; - u32 retry = 10000; + u32 retry = 100000; u32 mask, ctrl; ulong start = get_timer(0); struct bounce_buffer bbstate;