提交 62df67a5 编写于 作者: M Mark Lord 提交者: Pierre Ossman

sdhci: make isr tolerant of read errors

The interrupt is shared with another device, which resumes earlier than the
sdhci controller, and generates an interrupt.

The sdhci interrupt handler runs, sees 0xffffffff in its own device's
interrupt status, and tries to handle it..  The reason for the 0xffffffff
is that the device is still suspended, and *all* regs are reading back
0xffffffff.
Signed-off-by: NMark Lord <mlord@pobox.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
上级 cd9277c0
...@@ -993,7 +993,7 @@ static irqreturn_t sdhci_irq(int irq, void *dev_id) ...@@ -993,7 +993,7 @@ static irqreturn_t sdhci_irq(int irq, void *dev_id)
intmask = readl(host->ioaddr + SDHCI_INT_STATUS); intmask = readl(host->ioaddr + SDHCI_INT_STATUS);
if (!intmask) { if (!intmask || intmask == 0xffffffff) {
result = IRQ_NONE; result = IRQ_NONE;
goto out; goto out;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册