-
Dirk Behme authored
To synchronize between dma_tx_callback() and imx_dma_tx() use the same variable, dma_is_txing. This prevents any race between these two functions and ensures that a new DMA can start only after the first has been finished. Before the new DMA can be set up, update the circular buffer logic, first. Therefore, change dma_is_txing after that update, instead of before. While doing this, in dma_tx_callback() extend the locking to dma_unmap_sg() and the update of dma_is_txing. Signed-off-by:
Dirk Behme <dirk.behme@de.bosch.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
42f752b3