Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=62df67a523acd7a22d936bf946b1889dbd60ca98
Commit:     62df67a523acd7a22d936bf946b1889dbd60ca98
Parent:     cd9277c011a99769fa371521b460ed57f6d280b1
Author:     Mark Lord <[EMAIL PROTECTED]>
AuthorDate: Tue Mar 6 13:30:13 2007 +0100
Committer:  Pierre Ossman <[EMAIL PROTECTED]>
CommitDate: Tue Mar 6 13:30:13 2007 +0100

    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: Mark Lord <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Pierre Ossman <[EMAIL PROTECTED]>
---
 drivers/mmc/sdhci.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index c52b167..f3260ec 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -993,7 +993,7 @@ static irqreturn_t sdhci_irq(int irq, void *dev_id)
 
        intmask = readl(host->ioaddr + SDHCI_INT_STATUS);
 
-       if (!intmask) {
+       if (!intmask || intmask == 0xffffffff) {
                result = IRQ_NONE;
                goto out;
        }
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to