]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: eSDHC: Recover from ADMA errors
authorHaijun Zhang <Haijun.Zhang@freescale.com>
Tue, 4 Dec 2012 02:41:28 +0000 (10:41 +0800)
committerChris Ball <cjb@laptop.org>
Thu, 6 Dec 2012 18:55:13 +0000 (13:55 -0500)
commite4175a4d8f726694b403d70cf8dfc27e2718df13
treeb4aed64d9190298577ead540d5b121603b15eadd
parentef99fe18aba72ff34fbddd9f1aee89bce261b957
mmc: eSDHC: Recover from ADMA errors

A-003500: False ADMA Error might be reported when ADMA is used for
multiple block read command with Stop at Block Gap. If PROCTL[SABGREQ]
is set when the particular block's data is received by the System side
logic before entire block (with CRC) data is received by the SD side
logic, and also if ADMA descriptor line is fetched at the same time,
then DMA engine might report false ADMA error. eSDHC might not be able
to Continue (PROCTL[CREQ]=1) after Stop at Block Gap.
This issue will impact the eSDHC IP VVN2.3.

Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com>
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Acked-by: Anton Vorontsov <cbouatmailru@gmail.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/sdhci-of-esdhc.c
drivers/mmc/host/sdhci.c
drivers/mmc/host/sdhci.h