intel_sst: ignore IRQ when suspended
authorVinod Koul <vinod.koul@intel.com>
Tue, 3 May 2011 16:32:25 +0000 (17:32 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 10 May 2011 19:55:54 +0000 (12:55 -0700)
The irq for audio is shared, so when device is supended driver should
not the read register and ignore the interrupt.

This patch ignores interrupts when device is suspended.

Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Ramesh Babu K V <ramesh.babu@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/intel_sst/intel_sst.c

index c40e00a12d7c337bca0423276e0427ef62da8da8..e7c2617c0b2d740bc03493d6ad028744224b52fa 100644 (file)
@@ -107,6 +107,9 @@ static irqreturn_t intel_sst_interrupt(int irq, void *context)
        unsigned int size = 0, str_id;
        struct stream_info *stream ;
 
+       /* Do not handle interrupt in suspended state */
+       if (drv->sst_state == SST_SUSPENDED)
+               return IRQ_NONE;
        /* Interrupt arrived, check src */
        isr.full = sst_shim_read(drv->shim, SST_ISRX);