mmc: sdhci: prevent card detection activity for non-removable cards
authorAdrian Hunter <adrian.hunter@intel.com>
Tue, 27 Dec 2011 13:48:42 +0000 (15:48 +0200)
committerChris Ball <cjb@laptop.org>
Thu, 12 Jan 2012 04:58:47 +0000 (23:58 -0500)
Do not enable card detection interrupts for non-removable cards.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/sdhci.c

index 6a35d03..e6c6cd6 100644 (file)
@@ -146,10 +146,9 @@ static void sdhci_set_card_detection(struct sdhci_host *host, bool enable)
 {
        u32 present, irqs;
 
-       if (host->quirks & SDHCI_QUIRK_BROKEN_CARD_DETECTION)
-               return;
-
-       if (host->quirks2 & SDHCI_QUIRK2_OWN_CARD_DETECTION)
+       if ((host->quirks & SDHCI_QUIRK_BROKEN_CARD_DETECTION) ||
+           (host->quirks2 & SDHCI_QUIRK2_OWN_CARD_DETECTION) ||
+           !mmc_card_is_removable(host->mmc))
                return;
 
        present = sdhci_readl(host, SDHCI_PRESENT_STATE) &