Lines Matching defs:desc
207 struct axi_dmac_desc *desc;
216 desc = chan->next_desc;
218 if (!desc) {
223 desc = to_axi_dmac_desc(vdesc);
225 sg = &desc->sg[desc->num_submitted];
233 desc->num_submitted++;
234 if (desc->num_submitted == desc->num_sgs ||
235 desc->have_partial_xfer) {
236 if (desc->cyclic)
237 desc->num_submitted = 0; /* Start again */
242 chan->next_desc = desc;
262 if (chan->hw_cyclic && desc->cyclic && !desc->vdesc.tx.callback &&
263 desc->num_sgs == 1)
293 struct axi_dmac_desc *desc;
303 list_for_each_entry(desc, &chan->active_descs, vdesc.node) {
304 for (i = 0; i < desc->num_sgs; i++) {
305 sg = &desc->sg[i];
309 desc->have_partial_xfer = true;
477 struct axi_dmac_desc *desc;
480 desc = kzalloc(struct_size(desc, sg, num_sgs), GFP_NOWAIT);
481 if (!desc)
485 desc->sg[i].id = AXI_DMAC_SG_UNUSED;
487 desc->num_sgs = num_sgs;
489 return desc;
541 struct axi_dmac_desc *desc;
554 desc = axi_dmac_alloc_desc(num_sgs);
555 if (!desc)
558 dsg = desc->sg;
563 kfree(desc);
571 desc->cyclic = false;
573 return vchan_tx_prep(&chan->vchan, &desc->vdesc, flags);
582 struct axi_dmac_desc *desc;
598 desc = axi_dmac_alloc_desc(num_periods * num_segments);
599 if (!desc)
603 period_len, desc->sg);
605 desc->cyclic = true;
607 return vchan_tx_prep(&chan->vchan, &desc->vdesc, flags);
615 struct axi_dmac_desc *desc;
653 desc = axi_dmac_alloc_desc(1);
654 if (!desc)
658 desc->sg[0].src_addr = xt->src_start;
659 desc->sg[0].src_stride = xt->sgl[0].size + src_icg;
663 desc->sg[0].dest_addr = xt->dst_start;
664 desc->sg[0].dest_stride = xt->sgl[0].size + dst_icg;
668 desc->sg[0].x_len = xt->sgl[0].size;
669 desc->sg[0].y_len = xt->numf;
671 desc->sg[0].x_len = xt->sgl[0].size * xt->numf;
672 desc->sg[0].y_len = 1;
676 desc->cyclic = true;
678 return vchan_tx_prep(&chan->vchan, &desc->vdesc, flags);
816 unsigned int val, desc;
818 desc = axi_dmac_read(dmac, AXI_DMAC_REG_INTERFACE_DESC);
819 if (desc == 0) {
824 val = AXI_DMAC_DMA_SRC_TYPE_GET(desc);
831 val = AXI_DMAC_DMA_DST_TYPE_GET(desc);
838 val = AXI_DMAC_DMA_SRC_WIDTH_GET(desc);
846 val = AXI_DMAC_DMA_DST_WIDTH_GET(desc);