On 11/06/2019 7.47, Vinod Koul wrote: > On 10-06-19, 14:12, Peter Ujfalusi wrote: >>> How do you know/detect transfer is completed? >> >> This is a bit tricky and depends on the DMA hardware. >> For sDMA (omap-dma) we already do this by checking the channel status. >> The channel will be switched to idle if the transfer is completed. > > Well we are talking about DMA and doing this kind of things doesn't make > sense to me. Why not do memcpy/pio instead. DMA is designed to finish > txn fast and move to next one, if we cannot do that, I would say lets > not use dmaengine in those cases! Keeping dmaengine idle is not really > good design. The dra7 case is a special one: we have one errata (i878) for which the workaround is to use something else than MCU to access DMM registers, otherwise bus/system lockup can happen. The only feasible non MCU access is to use DMA memcpy to read/write registers. I've also encountered user who want to swap CPU memcpy with DMA based one as it tends to lower the CPU load and it is faster. - Péter Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki