Lines Matching refs:fsl_desc

229 	struct fsl_edma_desc *fsl_desc;
232 fsl_desc = to_fsl_edma_desc(vdesc);
233 for (i = 0; i < fsl_desc->n_tcds; i++)
234 dma_pool_free(fsl_desc->echan->tcd_pool, fsl_desc->tcd[i].vtcd,
235 fsl_desc->tcd[i].ptcd);
236 kfree(fsl_desc);
548 struct fsl_edma_desc *fsl_desc;
551 fsl_desc = kzalloc(struct_size(fsl_desc, tcd, sg_len), GFP_NOWAIT);
552 if (!fsl_desc)
555 fsl_desc->echan = fsl_chan;
556 fsl_desc->n_tcds = sg_len;
558 fsl_desc->tcd[i].vtcd = dma_pool_alloc(fsl_chan->tcd_pool,
559 GFP_NOWAIT, &fsl_desc->tcd[i].ptcd);
560 if (!fsl_desc->tcd[i].vtcd)
563 return fsl_desc;
567 dma_pool_free(fsl_chan->tcd_pool, fsl_desc->tcd[i].vtcd,
568 fsl_desc->tcd[i].ptcd);
569 kfree(fsl_desc);
579 struct fsl_edma_desc *fsl_desc;
593 fsl_desc = fsl_edma_alloc_desc(fsl_chan, sg_len);
594 if (!fsl_desc)
596 fsl_desc->iscyclic = true;
597 fsl_desc->dirn = direction;
619 last_sg = fsl_desc->tcd[(i + 1) % sg_len].ptcd;
639 fsl_edma_fill_tcd(fsl_chan, fsl_desc->tcd[i].vtcd, src_addr, dst_addr,
645 return vchan_tx_prep(&fsl_chan->vchan, &fsl_desc->vdesc, flags);
654 struct fsl_edma_desc *fsl_desc;
666 fsl_desc = fsl_edma_alloc_desc(fsl_chan, sg_len);
667 if (!fsl_desc)
669 fsl_desc->iscyclic = false;
670 fsl_desc->dirn = direction;
727 last_sg = fsl_desc->tcd[(i + 1)].ptcd;
728 fsl_edma_fill_tcd(fsl_chan, fsl_desc->tcd[i].vtcd, src_addr,
734 fsl_edma_fill_tcd(fsl_chan, fsl_desc->tcd[i].vtcd, src_addr,
741 return vchan_tx_prep(&fsl_chan->vchan, &fsl_desc->vdesc, flags);
749 struct fsl_edma_desc *fsl_desc;
751 fsl_desc = fsl_edma_alloc_desc(fsl_chan, 1);
752 if (!fsl_desc)
754 fsl_desc->iscyclic = false;
759 fsl_edma_fill_tcd(fsl_chan, fsl_desc->tcd[0].vtcd, dma_src, dma_dst,
763 return vchan_tx_prep(&fsl_chan->vchan, &fsl_desc->vdesc, flags);