Lines Matching defs:fsl_chan
306 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan);
307 struct fsl_qdma_queue *fsl_queue = fsl_chan->queue;
308 struct fsl_qdma_engine *fsl_qdma = fsl_chan->qdma;
313 spin_lock_irqsave(&fsl_chan->vchan.lock, flags);
314 vchan_get_all_descriptors(&fsl_chan->vchan, &head);
315 spin_unlock_irqrestore(&fsl_chan->vchan.lock, flags);
317 vchan_dma_desc_free_list(&fsl_chan->vchan, &head);
455 *fsl_qdma_request_enqueue_desc(struct fsl_qdma_chan *fsl_chan)
460 struct fsl_qdma_queue *queue = fsl_chan->queue;
471 comp_temp->qchan = fsl_chan;
976 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan);
978 fsl_comp = fsl_qdma_request_enqueue_desc(fsl_chan);
985 return vchan_tx_prep(&fsl_chan->vchan, &fsl_comp->vdesc, flags);
988 static void fsl_qdma_enqueue_desc(struct fsl_qdma_chan *fsl_chan)
993 struct fsl_qdma_queue *fsl_queue = fsl_chan->queue;
996 reg = qdma_readl(fsl_chan->qdma, block + FSL_QDMA_BCQSR(fsl_queue->id));
999 vdesc = vchan_next_desc(&fsl_chan->vchan);
1012 reg = qdma_readl(fsl_chan->qdma, block + FSL_QDMA_BCQMR(fsl_queue->id));
1014 qdma_writel(fsl_chan->qdma, reg, block + FSL_QDMA_BCQMR(fsl_queue->id));
1015 fsl_chan->status = DMA_IN_PROGRESS;
1035 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan);
1036 struct fsl_qdma_queue *fsl_queue = fsl_chan->queue;
1039 spin_lock(&fsl_chan->vchan.lock);
1040 if (vchan_issue_pending(&fsl_chan->vchan))
1041 fsl_qdma_enqueue_desc(fsl_chan);
1042 spin_unlock(&fsl_chan->vchan.lock);
1048 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan);
1050 vchan_synchronize(&fsl_chan->vchan);
1057 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan);
1059 spin_lock_irqsave(&fsl_chan->vchan.lock, flags);
1060 vchan_get_all_descriptors(&fsl_chan->vchan, &head);
1061 spin_unlock_irqrestore(&fsl_chan->vchan.lock, flags);
1062 vchan_dma_desc_free_list(&fsl_chan->vchan, &head);
1069 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan);
1070 struct fsl_qdma_engine *fsl_qdma = fsl_chan->qdma;
1071 struct fsl_qdma_queue *fsl_queue = fsl_chan->queue;
1123 struct fsl_qdma_chan *fsl_chan;
1152 len = sizeof(*fsl_chan) * chans;
1216 struct fsl_qdma_chan *fsl_chan = &fsl_qdma->chans[i];
1218 fsl_chan->qdma = fsl_qdma;
1219 fsl_chan->queue = fsl_qdma->queue + i % (fsl_qdma->n_queues *
1221 fsl_chan->vchan.desc_free = fsl_qdma_free_desc;
1222 vchan_init(&fsl_chan->vchan, &fsl_qdma->dma_dev);