Skip to content

Commit e860e6d

Browse files
Mathias Nymantmlind
authored andcommitted
omap: dma: Add read-back to DMA interrupt handler to avoid spuriousinterrupts
Flush the writes to IRQSTATUS_L0 register in the DMA interrupt handler by reading the register directly after write. This prevents the spurious DMA interrupts noted when using VDD_OPP 1 Signed-off-by: Mathias Nyman <[email protected]> Acked-by: Santosh Shilimkar <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
1 parent b728394 commit e860e6d

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

arch/arm/plat-omap/dma.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1983,6 +1983,8 @@ static int omap2_dma_handle_ch(int ch)
19831983

19841984
dma_write(OMAP2_DMA_CSR_CLEAR_MASK, CSR(ch));
19851985
dma_write(1 << ch, IRQSTATUS_L0);
1986+
/* read back the register to flush the write */
1987+
dma_read(IRQSTATUS_L0);
19861988

19871989
/* If the ch is not chained then chain_id will be -1 */
19881990
if (dma_chan[ch].chain_id != -1) {

0 commit comments

Comments
 (0)