Home
last modified time | relevance | path

Searched refs:fsl_chan (Results 1 – 5 of 5) sorted by relevance

/linux/drivers/dma/ !
H A Dfsl-edma-common.c47 void fsl_edma_tx_chan_handler(struct fsl_edma_chan *fsl_chan) in fsl_edma_tx_chan_handler() argument
49 spin_lock(&fsl_chan->vchan.lock); in fsl_edma_tx_chan_handler()
51 if (!fsl_chan->edesc) { in fsl_edma_tx_chan_handler()
53 spin_unlock(&fsl_chan->vchan.lock); in fsl_edma_tx_chan_handler()
57 if (!fsl_chan->edesc->iscyclic) { in fsl_edma_tx_chan_handler()
58 list_del(&fsl_chan->edesc->vdesc.node); in fsl_edma_tx_chan_handler()
59 vchan_cookie_complete(&fsl_chan->edesc->vdesc); in fsl_edma_tx_chan_handler()
60 fsl_chan->edesc = NULL; in fsl_edma_tx_chan_handler()
61 fsl_chan->status = DMA_COMPLETE; in fsl_edma_tx_chan_handler()
63 vchan_cyclic_callback(&fsl_chan->edesc->vdesc); in fsl_edma_tx_chan_handler()
[all …]
H A Dfsl-edma-main.c29 struct fsl_edma_chan *fsl_chan = to_fsl_edma_chan(chan); in fsl_edma_synchronize() local
31 vchan_synchronize(&fsl_chan->vchan); in fsl_edma_synchronize()
53 static void fsl_edma3_err_check(struct fsl_edma_chan *fsl_chan) in fsl_edma3_err_check() argument
58 scoped_guard(spinlock, &fsl_chan->vchan.lock) { in fsl_edma3_err_check()
59 ch_err = edma_readl_chreg(fsl_chan, ch_es); in fsl_edma3_err_check()
63 edma_writel_chreg(fsl_chan, EDMA_V3_CH_ERR, ch_es); in fsl_edma3_err_check()
64 val = edma_readl_chreg(fsl_chan, ch_csr); in fsl_edma3_err_check()
66 edma_writel_chreg(fsl_chan, val, ch_csr); in fsl_edma3_err_check()
70 if (!fsl_chan->edesc) in fsl_edma3_err_check()
74 dev_err(&fsl_chan->pdev->dev, "Destination Bus Error interrupt.\n"); in fsl_edma3_err_check()
[all …]
H A Dfsl-qdma.c314 struct fsl_qdma_chan *fsl_chan = to_fsl_qdma_chan(chan); in fsl_qdma_free_chan_resources() local
315 struct fsl_qdma_queue *fsl_queue = fsl_chan->queue; in fsl_qdma_free_chan_resources()
316 struct fsl_qdma_engine *fsl_qdma = fsl_chan->qdma; in fsl_qdma_free_chan_resources()
321 spin_lock_irqsave(&fsl_chan->vchan.lock, flags); in fsl_qdma_free_chan_resources()
322 vchan_get_all_descriptors(&fsl_chan->vchan, &head); in fsl_qdma_free_chan_resources()
323 spin_unlock_irqrestore(&fsl_chan->vchan.lock, flags); in fsl_qdma_free_chan_resources()
325 vchan_dma_desc_free_list(&fsl_chan->vchan, &head); in fsl_qdma_free_chan_resources()
459 *fsl_qdma_request_enqueue_desc(struct fsl_qdma_chan *fsl_chan) in fsl_qdma_request_enqueue_desc() argument
464 struct fsl_qdma_queue *queue = fsl_chan->queue; in fsl_qdma_request_enqueue_desc()
475 comp_temp->qchan = fsl_chan; in fsl_qdma_request_enqueue_desc()
[all …]
H A Dfsldma.h184 void (*toggle_ext_pause)(struct fsldma_chan *fsl_chan, int enable);
185 void (*toggle_ext_start)(struct fsldma_chan *fsl_chan, int enable);
186 void (*set_src_loop_size)(struct fsldma_chan *fsl_chan, int size);
187 void (*set_dst_loop_size)(struct fsldma_chan *fsl_chan, int size);
188 void (*set_request_count)(struct fsldma_chan *fsl_chan, int size);
257 #define DMA_TO_CPU(fsl_chan, d, width) \ argument
258 (((fsl_chan)->feature & FSL_DMA_BIG_ENDIAN) ? \
261 #define CPU_TO_DMA(fsl_chan, c, width) \ argument
262 (((fsl_chan)->feature & FSL_DMA_BIG_ENDIAN) ? \
H A Dfsl-edma-common.h272 static inline u32 fsl_edma_drvflags(struct fsl_edma_chan *fsl_chan) in fsl_edma_drvflags() argument
274 return fsl_chan->edma->drvdata->flags; in fsl_edma_drvflags()
478 static inline void fsl_edma_err_chan_handler(struct fsl_edma_chan *fsl_chan) in fsl_edma_err_chan_handler() argument
480 fsl_chan->status = DMA_ERROR; in fsl_edma_err_chan_handler()
483 void fsl_edma_tx_chan_handler(struct fsl_edma_chan *fsl_chan);
484 void fsl_edma_disable_request(struct fsl_edma_chan *fsl_chan);
485 void fsl_edma_chan_mux(struct fsl_edma_chan *fsl_chan,
506 void fsl_edma_xfer_desc(struct fsl_edma_chan *fsl_chan);