[U-Boot] [PATCH] mmc: omap: handle controller errors properly

Tom Rini trini at ti.com
Tue Mar 20 00:21:32 CET 2012


On Tue, Mar 20, 2012 at 12:12:06AM +0200, Grazvydas Ignotas wrote:
> According to OMAP3 TRM, when the controller reports certain errors,
> driver must perform a software reset. This is done by setting a bit
> in SYSCTL and waiting it to clear:
> - SRC on command timeout (CTO)
> - SRD on data errors (DTO, DCRC and DEB)
> 
> This fixes a problem seen on OMAP3 pandora board with some cards
> that won't work with a message printed multiple times:
>   timedout waiting on cmd inhibit to clear
> 
> Code loosely based on Linux omap_hsmmc driver.
> 
> Signed-off-by: Grazvydas Ignotas <notasas at gmail.com>

On a BeagleBoard xM (rev A), tested various class 2 and 4 uSD cards I
have (none of which have ever failed, however).  On a BeagleBoard rev C5
and am335x EVM and an omap4_panda (ES), tested with various class 2, 4
and 6 SD cards (or uSD in adapter).

Tested-by: Tom Rini <trini at ti.com>

And I've sent a private message to folks that have had failing cards
that previous changes have fixed to make sure this doesn't break them.

-- 
Tom


More information about the U-Boot mailing list