• Home
  • Raw
  • Download

Lines Matching refs:vd

84 	struct virt_dma_desc	vd;		/* Virtual descriptor */  member
143 container_of((_vd), struct pxad_desc_sw, vd)
534 static bool is_desc_completed(struct virt_dma_desc *vd) in is_desc_completed() argument
536 struct pxad_desc_sw *sw_desc = to_pxad_sw_desc(vd); in is_desc_completed()
555 struct virt_dma_desc *vd) in pxad_try_hotchain() argument
571 to_pxad_sw_desc(vd)->misaligned) in pxad_try_hotchain()
576 pxad_desc_chain(vd_last_issued, vd); in pxad_try_hotchain()
577 if (is_chan_running(chan) || is_desc_completed(vd)) in pxad_try_hotchain()
607 struct virt_dma_desc *vd, *tmp; in pxad_chan_handler() local
619 list_for_each_entry_safe(vd, tmp, &chan->vc.desc_issued, node) { in pxad_chan_handler()
620 vd_completed = is_desc_completed(vd); in pxad_chan_handler()
623 __func__, vd, vd->tx.cookie, vd_completed, in pxad_chan_handler()
625 last_started = vd->tx.cookie; in pxad_chan_handler()
626 if (to_pxad_sw_desc(vd)->cyclic) { in pxad_chan_handler()
627 vchan_cyclic_callback(vd); in pxad_chan_handler()
631 list_del(&vd->node); in pxad_chan_handler()
632 vchan_cookie_complete(vd); in pxad_chan_handler()
655 vd = list_first_entry(&chan->vc.desc_issued, in pxad_chan_handler()
657 pxad_launch_chan(chan, to_pxad_sw_desc(vd)); in pxad_chan_handler()
719 static void pxad_free_desc(struct virt_dma_desc *vd) in pxad_free_desc() argument
723 struct pxad_desc_sw *sw_desc = to_pxad_sw_desc(vd); in pxad_free_desc()
770 pxad_free_desc(&sw_desc->vd); in pxad_alloc_desc()
779 *vd = container_of(tx, struct virt_dma_desc, tx); in pxad_tx_submit() local
783 set_updater_desc(to_pxad_sw_desc(vd), tx->flags); in pxad_tx_submit()
788 if (list_empty(&vc->desc_submitted) && pxad_try_hotchain(vc, vd)) { in pxad_tx_submit()
789 list_move_tail(&vd->node, &vc->desc_issued); in pxad_tx_submit()
792 __func__, vd, cookie); in pxad_tx_submit()
808 if (chan->misaligned || !to_pxad_sw_desc(vd)->misaligned) in pxad_tx_submit()
809 pxad_desc_chain(vd_chained, vd); in pxad_tx_submit()
815 __func__, vd, cookie, vd_chained ? "cold" : "not"); in pxad_tx_submit()
816 list_move_tail(&vd->node, &vc->desc_submitted); in pxad_tx_submit()
817 chan->misaligned |= to_pxad_sw_desc(vd)->misaligned; in pxad_tx_submit()
847 pxad_tx_prep(struct virt_dma_chan *vc, struct virt_dma_desc *vd, in pxad_tx_prep() argument
853 INIT_LIST_HEAD(&vd->node); in pxad_tx_prep()
854 tx = vchan_tx_prep(vc, vd, tx_flags); in pxad_tx_prep()
858 vc, vd, vd->tx.cookie, in pxad_tx_prep()
958 return pxad_tx_prep(&chan->vc, &sw_desc->vd, flags); in pxad_prep_memcpy()
1008 return pxad_tx_prep(&chan->vc, &sw_desc->vd, flags); in pxad_prep_slave_sg()
1061 return pxad_tx_prep(&chan->vc, &sw_desc->vd, flags); in pxad_prep_dma_cyclic()
1080 struct virt_dma_desc *vd = NULL; in pxad_terminate_all() local
1091 list_for_each_entry(vd, &head, node) { in pxad_terminate_all()
1094 vd, vd->tx.cookie, is_desc_completed(vd)); in pxad_terminate_all()
1115 struct virt_dma_desc *vd = NULL; in pxad_residue() local
1132 vd = vchan_find_desc(&chan->vc, cookie); in pxad_residue()
1133 if (!vd) in pxad_residue()
1136 sw_desc = to_pxad_sw_desc(vd); in pxad_residue()
1149 if (is_desc_completed(vd)) in pxad_residue()
1184 __func__, vd, cookie, sw_desc, residue); in pxad_residue()