mmc: sdhci: add quirk for ACMD23 broken
[linux-2.6-block.git] / drivers / mmc / host / sdhci.c
index 0ad412a4876fae403a1a2cdd1a75e7761c809fac..5cf35e5ae2679e0a67ca9c7ee0eb52ec66a69493 100644 (file)
@@ -3164,7 +3164,8 @@ int sdhci_add_host(struct sdhci_host *host)
        /* Auto-CMD23 stuff only works in ADMA or PIO. */
        if ((host->version >= SDHCI_SPEC_300) &&
            ((host->flags & SDHCI_USE_ADMA) ||
-            !(host->flags & SDHCI_USE_SDMA))) {
+            !(host->flags & SDHCI_USE_SDMA)) &&
+            !(host->quirks2 & SDHCI_QUIRK2_ACMD23_BROKEN)) {
                host->flags |= SDHCI_AUTO_CMD23;
                DBG("%s: Auto-CMD23 available\n", mmc_hostname(mmc));
        } else {