mmc: sdhci-esdhc-imx: usdhc does not have missing card interrupt issue
authorDong Aisheng <aisheng.dong@freescale.com>
Wed, 27 May 2015 10:13:27 +0000 (18:13 +0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 1 Jun 2015 07:07:16 +0000 (09:07 +0200)
The usdhc does not have missing card interrupt issue, so don't execute
workaround for usdhc.

Signed-off-by: Dong Aisheng <aisheng.dong@freescale.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-esdhc-imx.c

index 0c89293ed8535cf35ebf8e8580315cd599ccf1e5..fda07eb2ed154e35cac08937ca46042a124c9b83 100644 (file)
@@ -298,7 +298,7 @@ static void esdhc_writel_le(struct sdhci_host *host, u32 val, int reg)
        u32 data;
 
        if (unlikely(reg == SDHCI_INT_ENABLE || reg == SDHCI_SIGNAL_ENABLE)) {
-               if (val & SDHCI_INT_CARD_INT) {
+               if ((val & SDHCI_INT_CARD_INT) && !esdhc_is_usdhc(imx_data)) {
                        /*
                         * Clear and then set D3CD bit to avoid missing the
                         * card interrupt.  This is a eSDHC controller problem