瀏覽代碼

dmaengine: dw: don't handle interrupt when dmaengine is not used

When dma controller is not used by any user and set off,
we should disble interrupt handler, at least the interrupt
reset part, for some subsystem, e.g. ADSP, may use the
dma in its own logic, here reset the interrupt may make
this subsystem work abnormally.

Signed-off-by: Jie Yang <yang.jie@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Jie Yang 10 年之前
父節點
當前提交
94b3eed7b8
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      drivers/dma/dw/core.c

+ 1 - 1
drivers/dma/dw/core.c

@@ -626,7 +626,7 @@ static irqreturn_t dw_dma_interrupt(int irq, void *dev_id)
 	dev_vdbg(dw->dma.dev, "%s: status=0x%x\n", __func__, status);
 	dev_vdbg(dw->dma.dev, "%s: status=0x%x\n", __func__, status);
 
 
 	/* Check if we have any interrupt from the DMAC */
 	/* Check if we have any interrupt from the DMAC */
-	if (!status)
+	if (!status || !dw->in_use)
 		return IRQ_NONE;
 		return IRQ_NONE;
 
 
 	/*
 	/*