On 11-11-19, 12:29, Peter Ujfalusi wrote: > On 11/11/2019 8.09, Vinod Koul wrote: > > On 01-11-19, 10:41, Peter Ujfalusi wrote: > >> +static enum dma_status udma_tx_status(struct dma_chan *chan, > >> + dma_cookie_t cookie, > >> + struct dma_tx_state *txstate) > >> +{ > >> + struct udma_chan *uc = to_udma_chan(chan); > >> + enum dma_status ret; > >> + unsigned long flags; > >> + > >> + spin_lock_irqsave(&uc->vc.lock, flags); > >> + > >> + ret = dma_cookie_status(chan, cookie, txstate); > >> + > >> + if (!udma_is_chan_running(uc)) > >> + ret = DMA_COMPLETE; > > > > so a paused channel will result in dma complete status? > > The channel is still enabled (running), the pause only sets a bit in the > channel's real time control register. Okay and which cases will channel not be running i.e., you return DMA_COMPLETE above? -- ~Vinod