Lines Matching refs:vd

86 	struct virt_dma_desc	vd;		/* Virtual descriptor */  member
143 container_of((_vd), struct pxad_desc_sw, vd)
593 static bool is_desc_completed(struct virt_dma_desc *vd) in is_desc_completed() argument
595 struct pxad_desc_sw *sw_desc = to_pxad_sw_desc(vd); in is_desc_completed()
614 struct virt_dma_desc *vd) in pxad_try_hotchain() argument
630 to_pxad_sw_desc(vd)->misaligned) in pxad_try_hotchain()
635 pxad_desc_chain(vd_last_issued, vd); in pxad_try_hotchain()
666 struct virt_dma_desc *vd, *tmp; in pxad_chan_handler() local
677 list_for_each_entry_safe(vd, tmp, &chan->vc.desc_issued, node) { in pxad_chan_handler()
680 __func__, vd, vd->tx.cookie, is_desc_completed(vd)); in pxad_chan_handler()
681 if (to_pxad_sw_desc(vd)->cyclic) { in pxad_chan_handler()
682 vchan_cyclic_callback(vd); in pxad_chan_handler()
685 if (is_desc_completed(vd)) { in pxad_chan_handler()
686 list_del(&vd->node); in pxad_chan_handler()
687 vchan_cookie_complete(vd); in pxad_chan_handler()
705 vd = list_first_entry(&chan->vc.desc_issued, in pxad_chan_handler()
707 pxad_launch_chan(chan, to_pxad_sw_desc(vd)); in pxad_chan_handler()
768 static void pxad_free_desc(struct virt_dma_desc *vd) in pxad_free_desc() argument
772 struct pxad_desc_sw *sw_desc = to_pxad_sw_desc(vd); in pxad_free_desc()
820 pxad_free_desc(&sw_desc->vd); in pxad_alloc_desc()
829 *vd = container_of(tx, struct virt_dma_desc, tx); in pxad_tx_submit() local
833 set_updater_desc(to_pxad_sw_desc(vd), tx->flags); in pxad_tx_submit()
838 if (list_empty(&vc->desc_submitted) && pxad_try_hotchain(vc, vd)) { in pxad_tx_submit()
839 list_move_tail(&vd->node, &vc->desc_issued); in pxad_tx_submit()
842 __func__, vd, cookie); in pxad_tx_submit()
858 if (chan->misaligned || !to_pxad_sw_desc(vd)->misaligned) in pxad_tx_submit()
859 pxad_desc_chain(vd_chained, vd); in pxad_tx_submit()
865 __func__, vd, cookie, vd_chained ? "cold" : "not"); in pxad_tx_submit()
866 list_move_tail(&vd->node, &vc->desc_submitted); in pxad_tx_submit()
867 chan->misaligned |= to_pxad_sw_desc(vd)->misaligned; in pxad_tx_submit()
897 pxad_tx_prep(struct virt_dma_chan *vc, struct virt_dma_desc *vd, in pxad_tx_prep() argument
903 INIT_LIST_HEAD(&vd->node); in pxad_tx_prep()
904 tx = vchan_tx_prep(vc, vd, tx_flags); in pxad_tx_prep()
908 vc, vd, vd->tx.cookie, in pxad_tx_prep()
1015 return pxad_tx_prep(&chan->vc, &sw_desc->vd, flags); in pxad_prep_memcpy()
1065 return pxad_tx_prep(&chan->vc, &sw_desc->vd, flags); in pxad_prep_slave_sg()
1118 return pxad_tx_prep(&chan->vc, &sw_desc->vd, flags); in pxad_prep_dma_cyclic()
1137 struct virt_dma_desc *vd = NULL; in pxad_terminate_all() local
1148 list_for_each_entry(vd, &head, node) { in pxad_terminate_all()
1151 vd, vd->tx.cookie, is_desc_completed(vd)); in pxad_terminate_all()
1172 struct virt_dma_desc *vd = NULL; in pxad_residue() local
1189 vd = vchan_find_desc(&chan->vc, cookie); in pxad_residue()
1190 if (!vd) in pxad_residue()
1193 sw_desc = to_pxad_sw_desc(vd); in pxad_residue()
1206 if (is_desc_completed(vd)) in pxad_residue()
1241 __func__, vd, cookie, sw_desc, residue); in pxad_residue()