Lines Matching refs:vchan
44 return container_of(dchan, struct sf_pdma_chan, vchan.chan);
101 desc->async_tx = vchan_tx_prep(&chan->vchan, &desc->vdesc, flags);
103 spin_lock_irqsave(&chan->vchan.lock, iflags);
105 spin_unlock_irqrestore(&chan->vchan.lock, iflags);
144 spin_lock_irqsave(&chan->vchan.lock, flags);
148 vchan_get_all_descriptors(&chan->vchan, &head);
150 spin_unlock_irqrestore(&chan->vchan.lock, flags);
151 vchan_dma_desc_free_list(&chan->vchan, &head);
164 spin_lock_irqsave(&chan->vchan.lock, flags);
166 list_for_each_entry(vd, &chan->vchan.desc_submitted, node)
179 vd = vchan_find_desc(&chan->vchan, cookie);
188 spin_unlock_irqrestore(&chan->vchan.lock, flags);
214 spin_lock_irqsave(&chan->vchan.lock, flags);
219 vchan_get_all_descriptors(&chan->vchan, &head);
220 spin_unlock_irqrestore(&chan->vchan.lock, flags);
221 vchan_dma_desc_free_list(&chan->vchan, &head);
241 struct virt_dma_chan *vchan = &chan->vchan;
244 if (list_empty(&vchan->desc_issued))
247 vdesc = list_first_entry(&vchan->desc_issued, struct virt_dma_desc, node);
277 spin_lock_irqsave(&chan->vchan.lock, flags);
279 if (!chan->desc && vchan_issue_pending(&chan->vchan)) {
285 spin_unlock_irqrestore(&chan->vchan.lock, flags);
309 spin_lock_irqsave(&chan->vchan.lock, flags);
317 spin_unlock_irqrestore(&chan->vchan.lock, flags);
349 spin_lock_irqsave(&chan->vchan.lock, flags);
366 spin_unlock_irqrestore(&chan->vchan.lock, flags);
490 chan->vchan.desc_free = sf_pdma_free_desc;
491 vchan_init(&chan->vchan, &pdma->dma_dev);
582 list_del(&ch->vchan.chan.device_node);
583 tasklet_kill(&ch->vchan.task);