aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-02-03 15:01:54 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2017-02-03 15:01:54 -0500
commitcd44691f7177b2c1e1509d1a17d9b198ebaa34eb (patch)
treeaf696f53d3cdbe9011cdb9168b73e1b524411ecf
parent79c9089f97d37ffac88c3ddb6d359b2cf75058b7 (diff)
parent161e6d44a5e2d3f85365cb717d60e363171b39e6 (diff)
Merge tag 'mmc-v4.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc
Pull MMC fix from Ulf Hansson: "MMC host: sdhci: Avoid hang when receiving spurious CARD_INT interrupts" * tag 'mmc-v4.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: mmc: sdhci: Ignore unexpected CARD_INT interrupts
-rw-r--r--drivers/mmc/host/sdhci.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 23909804ffb8..0def99590d16 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -2733,7 +2733,8 @@ static irqreturn_t sdhci_irq(int irq, void *dev_id)
2733 if (intmask & SDHCI_INT_RETUNE) 2733 if (intmask & SDHCI_INT_RETUNE)
2734 mmc_retune_needed(host->mmc); 2734 mmc_retune_needed(host->mmc);
2735 2735
2736 if (intmask & SDHCI_INT_CARD_INT) { 2736 if ((intmask & SDHCI_INT_CARD_INT) &&
2737 (host->ier & SDHCI_INT_CARD_INT)) {
2737 sdhci_enable_sdio_irq_nolock(host, false); 2738 sdhci_enable_sdio_irq_nolock(host, false);
2738 host->thread_isr |= SDHCI_INT_CARD_INT; 2739 host->thread_isr |= SDHCI_INT_CARD_INT;
2739 result = IRQ_WAKE_THREAD; 2740 result = IRQ_WAKE_THREAD;