
Hi Fabio,
On 12/02/2015 10:23 AM, Fabio Estevam wrote:
Hi Eric,
On Tue, Dec 1, 2015 at 5:05 PM, Eric Nelson eric@nelint.com wrote:
I've also recently seen this on two different custom boards. Both are running i.MX6Q TO1.2 and both are using eMMC from Micron.
One colleague of mine tested eMMC erasure on a mx6qsabresd revC5 board with a eMMC from Micron and it worked fine.
So far I see:
revB and revC5: works revC2 and revC4: don't work
We're seeing this pretty intermittently and only with certain devices from the same batch, so I'm not sure I'd conclude that the problem won't happen on revB or revC5.
The code which is generating the error message:
http://git.denx.de/?p=u-boot.git;a=blob;f=drivers/mmc/fsl_esdhc.c;h=c5054d66bdcda029f0485958c87bd5154ccee591;hb=HEAD#l390
Seems to refer to an errata for the i.MX35 (ENGcm03648): http://cache.freescale.com/files/dsp/doc/errata/IMX35CE.pdf
I don't see any reference to the errata in the i.MX6 docs.
This piece of code came from: 7a5b80297bc6cef ("mmc: fsl_esdhc: Poll until card is not busy anymore")
Yes, ENGcm03648 is not listed in mx6 errata document.
Ignoring the error (removing the return statement) seems to leave things in a workable state, so I suspect the problem isn't with an insufficient timeout.
May I see your change, please?
Sure. It's a hack, but shows where we're hitting the problem (with the stop command).
We haven't been using the "mmc erase" command, but see this when using ums to program eMMC.
Regards,
Eric