Lines Matching defs:fsl_chan
25 struct fsl_edma_chan *fsl_chan = to_fsl_edma_chan(chan);
27 vchan_synchronize(&fsl_chan->vchan);
35 struct fsl_edma_chan *fsl_chan;
45 fsl_chan = &fsl_edma->chans[ch];
47 spin_lock(&fsl_chan->vchan.lock);
49 if (!fsl_chan->edesc) {
51 spin_unlock(&fsl_chan->vchan.lock);
55 if (!fsl_chan->edesc->iscyclic) {
56 list_del(&fsl_chan->edesc->vdesc.node);
57 vchan_cookie_complete(&fsl_chan->edesc->vdesc);
58 fsl_chan->edesc = NULL;
59 fsl_chan->status = DMA_COMPLETE;
60 fsl_chan->idle = true;
62 vchan_cyclic_callback(&fsl_chan->edesc->vdesc);
65 if (!fsl_chan->edesc)
66 fsl_edma_xfer_desc(fsl_chan);
68 spin_unlock(&fsl_chan->vchan.lock);
108 struct fsl_edma_chan *fsl_chan;
123 fsl_chan = to_fsl_edma_chan(chan);
124 fsl_chan->slave_id = dma_spec->args[1];
125 fsl_edma_chan_mux(fsl_chan, fsl_chan->slave_id,
272 struct fsl_edma_chan *fsl_chan;
291 len = sizeof(*fsl_edma) + sizeof(*fsl_chan) * chans;
353 struct fsl_edma_chan *fsl_chan = &fsl_edma->chans[i];
355 fsl_chan->edma = fsl_edma;
356 fsl_chan->pm_state = RUNNING;
357 fsl_chan->slave_id = 0;
358 fsl_chan->idle = true;
359 fsl_chan->dma_dir = DMA_NONE;
360 fsl_chan->vchan.desc_free = fsl_edma_free_desc;
361 vchan_init(&fsl_chan->vchan, &fsl_edma->dma_dev);
364 fsl_edma_chan_mux(fsl_chan, 0, false);
437 struct fsl_edma_chan *fsl_chan;
442 fsl_chan = &fsl_edma->chans[i];
443 spin_lock_irqsave(&fsl_chan->vchan.lock, flags);
445 if (unlikely(!fsl_chan->idle)) {
447 fsl_edma_disable_request(fsl_chan);
448 fsl_edma_chan_mux(fsl_chan, 0, false);
451 fsl_chan->pm_state = SUSPENDED;
452 spin_unlock_irqrestore(&fsl_chan->vchan.lock, flags);
461 struct fsl_edma_chan *fsl_chan;
466 fsl_chan = &fsl_edma->chans[i];
467 fsl_chan->pm_state = RUNNING;
469 if (fsl_chan->slave_id != 0)
470 fsl_edma_chan_mux(fsl_chan, fsl_chan->slave_id, true);