Explorar el Código

USB: musb: add missing unlock in cppi_interrupt()

We should unlock before returning here.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Dan Carpenter hace 14 años
padre
commit
ec63bf6c06
Se han modificado 1 ficheros con 4 adiciones y 1 borrados
  1. 4 1
      drivers/usb/musb/cppi_dma.c

+ 4 - 1
drivers/usb/musb/cppi_dma.c

@@ -1167,8 +1167,11 @@ irqreturn_t cppi_interrupt(int irq, void *dev_id)
 	tx = musb_readl(tibase, DAVINCI_TXCPPI_MASKED_REG);
 	tx = musb_readl(tibase, DAVINCI_TXCPPI_MASKED_REG);
 	rx = musb_readl(tibase, DAVINCI_RXCPPI_MASKED_REG);
 	rx = musb_readl(tibase, DAVINCI_RXCPPI_MASKED_REG);
 
 
-	if (!tx && !rx)
+	if (!tx && !rx) {
+		if (cppi->irq)
+			spin_unlock_irqrestore(&musb->lock, flags);
 		return IRQ_NONE;
 		return IRQ_NONE;
+	}
 
 
 	DBG(4, "CPPI IRQ Tx%x Rx%x\n", tx, rx);
 	DBG(4, "CPPI IRQ Tx%x Rx%x\n", tx, rx);