Home
last modified time | relevance | path

Searched refs:vchan (Results 1 – 25 of 33) sorted by relevance

12

/openbmc/linux/drivers/dma/
H A Dowl-dma.c480 pchan->vchan = vchan; in owl_dma_get_pchan()
547 vchan->txd = txd; in owl_dma_start_next_txd()
645 vchan = pchan->vchan; in owl_dma_interrupt()
646 if (!vchan) { in owl_dma_interrupt()
654 txd = vchan->txd; in owl_dma_interrupt()
706 if (vchan->pchan) in owl_dma_terminate_all()
709 if (vchan->txd) { in owl_dma_terminate_all()
711 vchan->txd = NULL; in owl_dma_terminate_all()
757 if (!vchan->pchan && !vchan->txd) in owl_dma_resume()
780 txd = vchan->txd; in owl_dma_getbytes_chan()
[all …]
H A Dsun4i-dma.c239 if (vchan->is_dedicated) { in find_and_use_pchan()
250 pchan->vchan = vchan; in find_and_use_pchan()
267 pchan->vchan = NULL; in release_pchan()
350 if (vchan->processing) { in __execute_vchan_pending()
385 vchan->pchan = pchan; in __execute_vchan_pending()
644 if (vchan->is_dedicated) in sun4i_dma_prep_dma_memcpy()
770 if (vchan->is_dedicated) in sun4i_dma_prep_dma_cyclic()
861 if (vchan->is_dedicated) in sun4i_dma_prep_slave_sg()
915 vchan->pchan = NULL; in sun4i_dma_terminate_all()
1049 vchan = pchan->vchan; in sun4i_dma_interrupt()
[all …]
H A Dsun6i-dma.c460 vchan->irq_type = vchan->cyclic ? DMA_IRQ_PKG : DMA_IRQ_QUEUE; in sun6i_dma_start_desc()
488 pchan = vchan->phy; in sun6i_dma_tasklet()
521 pchan->vchan = vchan; in sun6i_dma_tasklet()
533 vchan = pchan->vchan; in sun6i_dma_tasklet()
534 if (vchan) { in sun6i_dma_tasklet()
562 vchan = pchan->vchan; in sun6i_dma_interrupt()
563 if (vchan && (status & vchan->irq_type)) { in sun6i_dma_interrupt()
939 vchan->phy = NULL; in sun6i_dma_terminate_all()
1001 if (!vchan->phy && list_empty(&vchan->node)) { in sun6i_dma_issue_pending()
1005 &vchan->vc); in sun6i_dma_issue_pending()
[all …]
H A Dst_fdma.c79 vdesc = vchan_next_desc(&fchan->vchan); in st_fdma_xfer_desc()
101 int ch_id = fchan->vchan.chan.chan_id; in st_fdma_ch_sta_update()
139 spin_lock(&fchan->vchan.lock); in st_fdma_irq_handler()
157 spin_unlock(&fchan->vchan.lock); in st_fdma_irq_handler()
294 __func__, fchan->vchan.chan.chan_id); in st_fdma_free_chan_res()
351 int ch_id = fchan->vchan.chan.chan_id; in config_reqctrl()
624 int ch_id = fchan->vchan.chan.chan_id; in st_fdma_pause()
642 int ch_id = fchan->vchan.chan.chan_id; in st_fdma_resume()
662 int ch_id = fchan->vchan.chan.chan_id; in st_fdma_terminate_all()
734 list_del(&fchan->vchan.chan.device_node); in st_fdma_free()
[all …]
H A Dfsl-edma-common.c47 spin_lock(&fsl_chan->vchan.lock); in fsl_edma_tx_chan_handler()
51 spin_unlock(&fsl_chan->vchan.lock); in fsl_edma_tx_chan_handler()
68 spin_unlock(&fsl_chan->vchan.lock); in fsl_edma_tx_chan_handler()
112 u32 ch = fsl_chan->vchan.chan.chan_id; in fsl_edma_enable_request()
146 u32 ch = fsl_chan->vchan.chan.chan_id; in fsl_edma_disable_request()
192 u32 ch = fsl_chan->vchan.chan.chan_id; in fsl_edma_chan_mux()
245 spin_lock_irqsave(&fsl_chan->vchan.lock, flags); in fsl_edma_terminate_all()
770 lockdep_assert_held(&fsl_chan->vchan.lock); in fsl_edma_xfer_desc()
772 vdesc = vchan_next_desc(&fsl_chan->vchan); in fsl_edma_xfer_desc()
840 list_del(&chan->vchan.chan.device_node); in fsl_edma_cleanup_vchan()
[all …]
H A Didma64.c118 vdesc = vchan_next_desc(&idma64c->vchan); in idma64_start_transfer()
143 stat = this_cpu_ptr(idma64c->vchan.chan.local); in idma64_chan_irq()
145 spin_lock(&idma64c->vchan.lock); in idma64_chan_irq()
163 spin_unlock(&idma64c->vchan.lock); in idma64_chan_irq()
342 spin_lock_irqsave(&idma64c->vchan.lock, flags); in idma64_issue_pending()
386 spin_lock_irqsave(&idma64c->vchan.lock, flags); in idma64_tx_status()
453 spin_lock_irqsave(&idma64c->vchan.lock, flags); in idma64_pause()
502 vchan_synchronize(&idma64c->vchan); in idma64_synchronize()
570 idma64c->vchan.desc_free = idma64_vdesc_free; in idma64_probe()
571 vchan_init(&idma64c->vchan, &idma64->dma); in idma64_probe()
[all …]
H A Ddma-jz4780.c130 struct virt_dma_chan vchan; member
494 vdesc = vchan_next_desc(&jzchan->vchan); in jz4780_dma_begin()
605 vchan_synchronize(&jzchan->vchan); in jz4780_dma_synchronize()
684 spin_lock(&jzchan->vchan.lock); in jz4780_dma_chan_irq()
690 dev_warn(&jzchan->vchan.chan.dev->device, in jz4780_dma_chan_irq()
695 dev_warn(&jzchan->vchan.chan.dev->device, in jz4780_dma_chan_irq()
724 dev_err(&jzchan->vchan.chan.dev->device, in jz4780_dma_chan_irq()
728 spin_unlock(&jzchan->vchan.lock); in jz4780_dma_chan_irq()
780 vchan_free_chan_resources(&jzchan->vchan); in jz4780_dma_free_chan_resources()
844 &jzdma->chan[data.channel].vchan.chan); in jz4780_of_dma_xlate()
[all …]
H A Dstm32-dma.c211 struct virt_dma_chan vchan; member
254 return &chan->vchan.chan.dev->device; in chan2dev()
506 spin_lock_irqsave(&chan->vchan.lock, flags); in stm32_dma_terminate_all()
527 vchan_synchronize(&chan->vchan); in stm32_dma_synchronize()
571 vdesc = vchan_next_desc(&chan->vchan); in stm32_dma_start_transfer()
767 spin_lock(&chan->vchan.lock); in stm32_dma_chan_irq()
812 spin_unlock(&chan->vchan.lock); in stm32_dma_chan_irq()
822 spin_lock_irqsave(&chan->vchan.lock, flags); in stm32_dma_issue_pending()
840 spin_lock_irqsave(&chan->vchan.lock, flags); in stm32_dma_pause()
867 spin_lock_irqsave(&chan->vchan.lock, flags); in stm32_dma_resume()
[all …]
H A Ddma-axi-dmac.c124 struct virt_dma_chan vchan; member
223 vdesc = vchan_next_desc(&chan->vchan); in axi_dmac_start_transfer()
423 spin_lock(&dmac->chan.vchan.lock); in axi_dmac_interrupt_handler()
434 spin_unlock(&dmac->chan.vchan.lock); in axi_dmac_interrupt_handler()
446 spin_lock_irqsave(&chan->vchan.lock, flags); in axi_dmac_terminate_all()
453 vchan_dma_desc_free_list(&chan->vchan, &head); in axi_dmac_terminate_all()
462 vchan_synchronize(&chan->vchan); in axi_dmac_synchronize()
473 spin_lock_irqsave(&chan->vchan.lock, flags); in axi_dmac_issue_pending()
474 if (vchan_issue_pending(&chan->vchan)) in axi_dmac_issue_pending()
973 vchan_init(&dmac->chan.vchan, dma_dev); in axi_dmac_probe()
[all …]
H A Dst_fdma.h125 struct virt_dma_chan vchan; member
186 + (fchan)->vchan.chan.chan_id * 0x4 \
191 + (fchan)->vchan.chan.chan_id * 0x4 \
208 + (fchan)->vchan.chan.chan_id * FDMA_NODE_SZ \
213 + (fchan)->vchan.chan.chan_id * FDMA_NODE_SZ \
H A Dfsl-qdma.c177 struct virt_dma_chan vchan; member
314 spin_lock_irqsave(&fsl_chan->vchan.lock, flags); in fsl_qdma_free_chan_resources()
731 spin_lock(&fsl_comp->qchan->vchan.lock); in fsl_qdma_queue_transfer_complete()
734 spin_unlock(&fsl_comp->qchan->vchan.lock); in fsl_qdma_queue_transfer_complete()
1001 vdesc = vchan_next_desc(&fsl_chan->vchan); in fsl_qdma_enqueue_desc()
1041 spin_lock(&fsl_chan->vchan.lock); in fsl_qdma_issue_pending()
1042 if (vchan_issue_pending(&fsl_chan->vchan)) in fsl_qdma_issue_pending()
1044 spin_unlock(&fsl_chan->vchan.lock); in fsl_qdma_issue_pending()
1052 vchan_synchronize(&fsl_chan->vchan); in fsl_qdma_synchronize()
1265 list_del(&chan->vchan.chan.device_node); in fsl_qdma_cleanup_vchan()
[all …]
H A Dstm32-mdma.c237 struct virt_dma_chan vchan; member
281 return &chan->vchan.chan.dev->device; in chan2dev()
1150 vdesc = vchan_next_desc(&chan->vchan); in stm32_mdma_start_transfer()
1199 spin_lock_irqsave(&chan->vchan.lock, flags); in stm32_mdma_issue_pending()
1201 if (!vchan_issue_pending(&chan->vchan)) in stm32_mdma_issue_pending()
1219 spin_lock_irqsave(&chan->vchan.lock, flags); in stm32_mdma_pause()
1295 vchan_synchronize(&chan->vchan); in stm32_mdma_synchronize()
1416 spin_lock(&chan->vchan.lock); in stm32_mdma_irq_handler()
1424 spin_unlock(&chan->vchan.lock); in stm32_mdma_irq_handler()
1477 spin_unlock(&chan->vchan.lock); in stm32_mdma_irq_handler()
[all …]
H A Dpxa_dma.c100 struct pxad_chan *vchan; member
390 if (!phy->vchan) { in lookup_phy()
391 phy->vchan = pchan; in lookup_phy()
425 chan->phy->vchan = NULL; in pxad_free_phy()
455 if (!phy->vchan) in phy_enable()
458 dev_dbg(&phy->vchan->vc.chan.dev->device, in phy_enable()
464 reg = pxad_drcmr(phy->vchan->drcmr); in phy_enable()
487 dev_dbg(&phy->vchan->vc.chan.dev->device, in phy_disable()
598 __func__, &phy->vchan); in clear_chan_irq()
606 struct pxad_chan *chan = phy->vchan; in pxad_chan_handler()
[all …]
H A Dmmp_pdma.c119 struct mmp_pdma_chan *vchan; member
155 if (!phy->vchan) in enable_chan()
158 reg = DRCMR(phy->vchan->drcmr); in enable_chan()
162 if (phy->vchan->byte_align) in enable_chan()
195 if ((dcsr & DCSR_BUSERR) && (phy->vchan)) in clear_chan_irq()
196 dev_warn(phy->vchan->dev, "DCSR_BUSERR\n"); in clear_chan_irq()
208 tasklet_schedule(&phy->vchan->tasklet); in mmp_pdma_chan_handler()
260 if (!phy->vchan) { in lookup_phy()
261 phy->vchan = pchan; in lookup_phy()
287 pchan->phy->vchan = NULL; in mmp_pdma_free_phy()
H A Didma64.h128 struct virt_dma_chan vchan; member
143 return container_of(chan, struct idma64_chan, vchan.chan); in to_idma64_chan()
H A Dfsl-edma-main.c32 vchan_synchronize(&fsl_chan->vchan); in fsl_edma_synchronize()
537 fsl_chan->vchan.desc_free = fsl_edma_free_desc; in fsl_edma_probe()
545 vchan_init(&fsl_chan->vchan, &fsl_edma->dma_dev); in fsl_edma_probe()
649 spin_lock_irqsave(&fsl_chan->vchan.lock, flags); in fsl_edma_suspend_late()
658 spin_unlock_irqrestore(&fsl_chan->vchan.lock, flags); in fsl_edma_suspend_late()
/openbmc/linux/drivers/dma/hsu/
H A Dhsu.c121 vdesc = vchan_next_desc(&hsuc->vchan); in hsu_dma_start_transfer()
168 spin_lock_irqsave(&hsuc->vchan.lock, flags); in hsu_dma_get_status()
222 stat = this_cpu_ptr(hsuc->vchan.chan.local); in hsu_dma_do_irq()
224 spin_lock_irqsave(&hsuc->vchan.lock, flags); in hsu_dma_do_irq()
303 spin_lock_irqsave(&hsuc->vchan.lock, flags); in hsu_dma_issue_pending()
339 spin_lock_irqsave(&hsuc->vchan.lock, flags); in hsu_dma_tx_status()
369 spin_lock_irqsave(&hsuc->vchan.lock, flags); in hsu_dma_pause()
424 vchan_synchronize(&hsuc->vchan); in hsu_dma_synchronize()
452 hsuc->vchan.desc_free = hsu_dma_desc_free; in hsu_dma_probe()
453 vchan_init(&hsuc->vchan, &hsu->dma); in hsu_dma_probe()
[all …]
H A Dhsu.h87 struct virt_dma_chan vchan; member
100 return container_of(chan, struct hsu_dma_chan, vchan.chan); in to_hsu_dma_chan()
/openbmc/linux/drivers/dma/sf-pdma/
H A Dsf-pdma.c102 spin_lock_irqsave(&chan->vchan.lock, iflags); in sf_pdma_prep_dma_memcpy()
143 spin_lock_irqsave(&chan->vchan.lock, flags); in sf_pdma_free_chan_resources()
163 spin_lock_irqsave(&chan->vchan.lock, flags); in sf_pdma_desc_residue()
178 vd = vchan_find_desc(&chan->vchan, cookie); in sf_pdma_desc_residue()
240 struct virt_dma_chan *vchan = &chan->vchan; in sf_pdma_get_first_pending_desc() local
243 if (list_empty(&vchan->desc_issued)) in sf_pdma_get_first_pending_desc()
347 spin_lock(&chan->vchan.lock); in sf_pdma_done_isr()
364 spin_unlock(&chan->vchan.lock); in sf_pdma_done_isr()
484 vchan_init(&chan->vchan, &pdma->dma_dev); in sf_pdma_setup_chans()
580 list_del(&ch->vchan.chan.device_node); in sf_pdma_remove()
[all …]
/openbmc/linux/drivers/dma/lgm/
H A Dlgm-dma.c195 struct virt_dma_chan vchan; member
1021 spin_lock_irqsave(&c->vchan.lock, flags); in ldma_issue_pending()
1022 if (vchan_issue_pending(&c->vchan)) { in ldma_issue_pending()
1026 vdesc = vchan_next_desc(&c->vchan); in ldma_issue_pending()
1051 vchan_synchronize(&c->vchan); in ldma_synchronize()
1062 spin_lock_irqsave(&c->vchan.lock, flags); in ldma_terminate_all()
1065 vchan_dma_desc_free_list(&c->vchan, &head); in ldma_terminate_all()
1315 struct virt_dma_chan *vc = &c->vchan; in dma_work()
1321 spin_lock_irqsave(&c->vchan.lock, flags); in dma_work()
1415 vchan_init(&c->vchan, &d->dma_dev); in ldma_dma_init_v22()
[all …]
/openbmc/linux/drivers/dma/xilinx/
H A Dxilinx_dpdma.c227 struct virt_dma_chan vchan; member
847 vdesc = vchan_next_desc(&chan->vchan); in xilinx_dpdma_chan_queue_transfer()
1101 spin_lock(&chan->vchan.lock); in xilinx_dpdma_chan_vsync_irq()
1108 spin_unlock(&chan->vchan.lock); in xilinx_dpdma_chan_vsync_irq()
1182 &chan->vchan.desc_issued); in xilinx_dpdma_chan_handle_err()
1271 spin_lock(&chan->vchan.lock); in xilinx_dpdma_issue_pending()
1272 if (vchan_issue_pending(&chan->vchan)) in xilinx_dpdma_issue_pending()
1274 spin_unlock(&chan->vchan.lock); in xilinx_dpdma_issue_pending()
1400 vchan_synchronize(&chan->vchan); in xilinx_dpdma_synchronize()
1503 spin_lock(&chan->vchan.lock); in xilinx_dpdma_chan_err_task()
[all …]
H A Dxdma.c66 struct virt_dma_chan vchan; member
179 return container_of(chan, struct xdma_chan, vchan.chan); in to_xdma_chan()
415 xchan->vchan.desc_free = xdma_free_desc; in xdma_alloc_channels()
416 vchan_init(&xchan->vchan, &xdev->dma_dev); in xdma_alloc_channels()
436 spin_lock_irqsave(&xdma_chan->vchan.lock, flags); in xdma_issue_pending()
437 if (vchan_issue_pending(&xdma_chan->vchan)) in xdma_issue_pending()
439 spin_unlock_irqrestore(&xdma_chan->vchan.lock, flags); in xdma_issue_pending()
547 vchan_free_chan_resources(&xdma_chan->vchan); in xdma_free_chan_resources()
594 spin_lock(&xchan->vchan.lock); in xdma_channel_isr()
597 vd = vchan_next_desc(&xchan->vchan); in xdma_channel_isr()
[all …]
/openbmc/linux/drivers/dma/fsl-dpaa2-qdma/
H A Ddpaa2-qdma.c73 spin_lock_irqsave(&dpaa2_chan->vchan.lock, flags); in dpaa2_qdma_free_chan_resources()
74 vchan_get_all_descriptors(&dpaa2_chan->vchan, &head); in dpaa2_qdma_free_chan_resources()
75 spin_unlock_irqrestore(&dpaa2_chan->vchan.lock, flags); in dpaa2_qdma_free_chan_resources()
77 vchan_dma_desc_free_list(&dpaa2_chan->vchan, &head); in dpaa2_qdma_free_chan_resources()
282 spin_lock(&dpaa2_chan->vchan.lock); in dpaa2_qdma_issue_pending()
283 if (vchan_issue_pending(&dpaa2_chan->vchan)) { in dpaa2_qdma_issue_pending()
284 vdesc = vchan_next_desc(&dpaa2_chan->vchan); in dpaa2_qdma_issue_pending()
301 spin_unlock(&dpaa2_chan->vchan.lock); in dpaa2_qdma_issue_pending()
441 spin_lock(&qchan->vchan.lock); in dpaa2_qdma_fqdan_cb()
444 spin_unlock(&qchan->vchan.lock); in dpaa2_qdma_fqdan_cb()
[all …]
/openbmc/linux/drivers/dma/ti/
H A Dedma.c216 struct virt_dma_chan vchan; member
845 vchan_synchronize(&echan->vchan); in edma_synchronize()
1458 spin_lock(&echan->vchan.lock); in edma_completion_handler()
1463 spin_unlock(&echan->vchan.lock); in edma_completion_handler()
1487 spin_unlock(&echan->vchan.lock); in edma_completion_handler()
1546 spin_lock(&echan->vchan.lock); in edma_error_handler()
1576 spin_unlock(&echan->vchan.lock); in edma_error_handler()
2008 vchan_init(&echan->vchan, m_ddev); in edma_dma_init()
2010 vchan_init(&echan->vchan, s_ddev); in edma_dma_init()
2243 chan = &echan->vchan.chan; in of_edma_xlate()
[all …]
/openbmc/linux/arch/sh/drivers/dma/
H A Ddma-sysfs.c90 dma_configure_channel(channel->vchan, config); in dma_store_config()
133 dev->id = chan->vchan; in dma_create_sysfs_files()

12