dmaengine: edma: Support to suppress the period interrupts in cyclic mode
[firefly-linux-kernel-4.4.55.git] / drivers / dma / edma.c
index 8e400c0f35294840e5427d3348973d32eaed0d02..54f7408e14efad8c17563ffab517d29fd230c9ab 100644 (file)
@@ -718,10 +718,10 @@ static struct dma_async_tx_descriptor *edma_prep_dma_cyclic(
                edesc->absync = ret;
 
                /*
-                * Enable interrupts for every period because callback
-                * has to be called for every period.
+                * Enable period interrupt only if it is requested
                 */
-               edesc->pset[i].param.opt |= TCINTEN;
+               if (tx_flags & DMA_PREP_INTERRUPT)
+                       edesc->pset[i].param.opt |= TCINTEN;
        }
 
        return vchan_tx_prep(&echan->vchan, &edesc->vdesc, tx_flags);