[U-Boot] [PATCH v2] mmc: fsl_esdhc: Avoid infinite loop in esdhc_send_cmd_common()

Baruch Siach baruch at tkos.co.il
Mon Nov 19 14:57:22 UTC 2018


Hi Fabio,

On Mon, Nov 19, 2018 at 12:41:49PM -0200, Fabio Estevam wrote:
> On Mon, Nov 19, 2018 at 12:25 PM Ricardo Salveti <rsalveti at rsalveti.net> 
> wrote:
> 
> > Looking a bit further, this ends up adding a significant boot delay
> > because the mmc driver still tries to send another two additional
> > commands, so it ends executing this timeout logic 3 times in total.
> > Guess this can be improved at
> > http://git.denx.de/?p=u-boot.git;a=blob;f=drivers/mmc/mmc.c;h=d6b9cdc99229d8bfe0c8be3adfd6e5209a11601c;hb=HEAD#l2633
> > by either checking for mmc first or by simply just checking and
> > handling the return code from mmc_send_if_cond, but this could be
> > another patch.
> 
> Yes, I think you are right.
> 
> Does only adding the error check below avoid the hang in your case?
> 
>         /* Test for SD version 2 */
>          err = mmc_send_if_cond(mmc);
>          if (err)
>             return err;

There used to be a similar check in the past. Commit f33cb34b3971dabe3 ("mmc: 
Remove return from mmc_init for non SD 2.0 compatible cards.") removed this 
check.

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -


More information about the U-Boot mailing list