Home
last modified time | relevance | path

Searched refs:dma_dev (Results 1 – 25 of 130) sorted by relevance

123456

/linux/block/
H A Dblk-mq-dma.c80 struct device *dma_dev) in blk_can_dma_map_iova() argument
82 return !(req_phys_gap_mask(req) & dma_get_merge_boundary(dma_dev)); in blk_can_dma_map_iova()
92 static bool blk_dma_map_direct(struct request *req, struct device *dma_dev, in blk_dma_map_direct() argument
100 iter->addr = dma_map_phys(dma_dev, vec->paddr, vec->len, in blk_dma_map_direct()
102 if (dma_mapping_error(dma_dev, iter->addr)) { in blk_dma_map_direct()
110 static bool blk_rq_dma_map_iova(struct request *req, struct device *dma_dev, in blk_rq_dma_map_iova() argument
126 error = dma_iova_link(dma_dev, state, vec->paddr, mapped, in blk_rq_dma_map_iova()
133 error = dma_iova_sync(dma_dev, state, 0, mapped); in blk_rq_dma_map_iova()
166 static bool blk_dma_map_iter_start(struct request *req, struct device *dma_dev, in blk_dma_map_iter_start() argument
183 switch (pci_p2pdma_state(&iter->p2pdma, dma_dev, in blk_dma_map_iter_start()
[all …]
/linux/drivers/iommu/
H A Diommu-pages.h104 int iommu_pages_start_incoherent(void *virt, struct device *dma_dev);
106 struct device *dma_dev);
112 static inline void iommu_pages_flush_incoherent(struct device *dma_dev, in iommu_pages_flush_incoherent() argument
120 struct device *dma_dev) in iommu_pages_stop_incoherent_list() argument
128 struct device *dma_dev) in iommu_pages_free_incoherent() argument
136 static inline void iommu_pages_flush_incoherent(struct device *dma_dev, in iommu_pages_flush_incoherent() argument
140 dma_sync_single_for_device(dma_dev, (uintptr_t)virt + offset, len, in iommu_pages_flush_incoherent()
144 struct device *dma_dev);
145 void iommu_pages_free_incoherent(void *virt, struct device *dma_dev);
H A Diommu-pages.c146 int iommu_pages_start_incoherent(void *virt, struct device *dma_dev) in iommu_pages_start_incoherent() argument
155 iommu_pages_flush_incoherent(dma_dev, virt, 0, in iommu_pages_start_incoherent()
158 dma = dma_map_single(dma_dev, virt, ioptdesc_mem_size(iopt), in iommu_pages_start_incoherent()
160 if (dma_mapping_error(dma_dev, dma)) in iommu_pages_start_incoherent()
169 dma_unmap_single(dma_dev, dma, ioptdesc_mem_size(iopt), in iommu_pages_start_incoherent()
190 struct device *dma_dev) in iommu_pages_start_incoherent_list() argument
200 folio_address(ioptdesc_folio(cur)), dma_dev); in iommu_pages_start_incoherent_list()
218 struct device *dma_dev) in iommu_pages_stop_incoherent_list() argument
227 dma_unmap_single(dma_dev, virt_to_phys(folio_address(folio)), in iommu_pages_stop_incoherent_list()
241 void iommu_pages_free_incoherent(void *virt, struct device *dma_dev) in iommu_pages_free_incoherent() argument
[all …]
/linux/drivers/spi/
H A Dspi-pxa2xx-pci.c84 if (dws->dma_dev != chan->device->dev) in lpss_dma_filter()
91 static void lpss_dma_put_device(void *dma_dev) in lpss_dma_put_device() argument
93 pci_dev_put(dma_dev); in lpss_dma_put_device()
100 struct pci_dev *dma_dev; in lpss_spi_setup() local
152 dma_dev = pci_get_slot(dev->bus, PCI_DEVFN(PCI_SLOT(dev->devfn), 0)); in lpss_spi_setup()
153 ret = devm_add_action_or_reset(&dev->dev, lpss_dma_put_device, dma_dev); in lpss_spi_setup()
158 tx->dma_dev = &dma_dev->dev; in lpss_spi_setup()
163 rx->dma_dev = &dma_dev->dev; in lpss_spi_setup()
196 struct pci_dev *dma_dev; in mrfld_spi_setup() local
228 dma_dev = pci_get_slot(dev->bus, PCI_DEVFN(21, 0)); in mrfld_spi_setup()
[all …]
/linux/drivers/dma/amd/ptdma/
H A Dptdma-dmaengine.c564 struct dma_device *dma_dev = &pt->dma_dev; in pt_dmaengine_register() local
596 dma_dev->dev = pt->dev; in pt_dmaengine_register()
597 dma_dev->src_addr_widths = DMA_SLAVE_BUSWIDTH_64_BYTES; in pt_dmaengine_register()
598 dma_dev->dst_addr_widths = DMA_SLAVE_BUSWIDTH_64_BYTES; in pt_dmaengine_register()
599 dma_dev->directions = DMA_MEM_TO_MEM; in pt_dmaengine_register()
600 dma_dev->residue_granularity = DMA_RESIDUE_GRANULARITY_DESCRIPTOR; in pt_dmaengine_register()
601 dma_cap_set(DMA_MEMCPY, dma_dev->cap_mask); in pt_dmaengine_register()
602 dma_cap_set(DMA_INTERRUPT, dma_dev->cap_mask); in pt_dmaengine_register()
608 dma_cap_set(DMA_PRIVATE, dma_dev->cap_mask); in pt_dmaengine_register()
610 INIT_LIST_HEAD(&dma_dev->channels); in pt_dmaengine_register()
[all …]
/linux/drivers/dma/
H A Dfsl-edma-main.c265 list_for_each_entry_safe(chan, _chan, &fsl_edma->dma_dev.channels, device_node) { in fsl_edma_xlate()
309 list_for_each_entry_safe(chan, _chan, &fsl_edma->dma_dev.channels, in fsl_edma3_xlate()
793 INIT_LIST_HEAD(&fsl_edma->dma_dev.channels); in fsl_edma_probe()
828 vchan_init(&fsl_chan->vchan, &fsl_edma->dma_dev); in fsl_edma_probe()
840 dma_cap_set(DMA_PRIVATE, fsl_edma->dma_dev.cap_mask); in fsl_edma_probe()
841 dma_cap_set(DMA_SLAVE, fsl_edma->dma_dev.cap_mask); in fsl_edma_probe()
842 dma_cap_set(DMA_CYCLIC, fsl_edma->dma_dev.cap_mask); in fsl_edma_probe()
843 dma_cap_set(DMA_MEMCPY, fsl_edma->dma_dev.cap_mask); in fsl_edma_probe()
845 fsl_edma->dma_dev.dev = &pdev->dev; in fsl_edma_probe()
846 fsl_edma->dma_dev.device_alloc_chan_resources in fsl_edma_probe()
[all …]
H A Dnbpfaxi.c229 struct dma_device dma_dev; member
325 dev_dbg(nbpf->dma_dev.dev, "%s(0x%p + 0x%x) = 0x%x\n", in nbpf_read()
334 dev_dbg(nbpf->dma_dev.dev, "%s(0x%p + 0x%x) = 0x%x\n", in nbpf_write()
400 dev_dbg(chan->nbpf->dma_dev.dev, "%s(): next 0x%x, cur 0x%x\n", __func__, in nbpf_start()
869 dev_dbg(chan->nbpf->dma_dev.dev, "%s(): force-free desc %p cookie %d\n", in nbpf_chan_idle()
1110 dchan = dma_get_any_slave_channel(&nbpf->dma_dev); in nbpf_of_xlate()
1241 dev_warn(nbpf->dma_dev.dev, "DMA error IRQ %u\n", irq); in nbpf_err_irq()
1259 struct dma_device *dma_dev = &nbpf->dma_dev; in nbpf_chan_probe() local
1267 chan->dma_chan.device = dma_dev; in nbpf_chan_probe()
1271 dev_dbg(dma_dev->dev, "%s(): channel %d: -> %p\n", __func__, n, chan->base); in nbpf_chan_probe()
[all …]
H A Dep93xx_dma.c234 struct dma_device dma_dev; member
1373 struct dma_device *dma_dev; in ep93xx_dma_of_probe() local
1388 dma_dev = &edma->dma_dev; in ep93xx_dma_of_probe()
1390 INIT_LIST_HEAD(&dma_dev->channels); in ep93xx_dma_of_probe()
1395 edmac->chan.device = dma_dev; in ep93xx_dma_of_probe()
1427 &dma_dev->channels); in ep93xx_dma_of_probe()
1449 dma_cap_mask_t mask = edma->dma_dev.cap_mask; in ep93xx_m2p_dma_of_xlate()
1480 dma_cap_mask_t mask = edma->dma_dev.cap_mask; in ep93xx_m2m_dma_of_xlate()
1505 struct dma_device *dma_dev; in ep93xx_dma_probe() local
1512 dma_dev = &edma->dma_dev; in ep93xx_dma_probe()
[all …]
H A Dsprd-dma.c209 struct dma_device dma_dev; member
358 dev_warn(sdev->dma_dev.dev, in sprd_dma_pause_resume()
422 dev_warn(sdev->dma_dev.dev, "incorrect dma interrupt type\n"); in sprd_dma_get_int_type()
481 dev_err(sdev->dma_dev.dev, "invalid channel mode setting %d\n", in sprd_dma_set_2stage_config()
762 dev_err(sdev->dma_dev.dev, "invalid source step\n"); in sprd_dma_fill_desc()
778 dev_err(sdev->dma_dev.dev, "invalid destination step\n"); in sprd_dma_fill_desc()
786 dev_err(sdev->dma_dev.dev, "invalid source datawidth\n"); in sprd_dma_fill_desc()
792 dev_err(sdev->dma_dev.dev, "invalid destination datawidth\n"); in sprd_dma_fill_desc()
1177 dma_cap_set(DMA_MEMCPY, sdev->dma_dev.cap_mask); in sprd_dma_probe()
1179 INIT_LIST_HEAD(&sdev->dma_dev.channels); in sprd_dma_probe()
[all …]
H A Dhisi_dma.c161 struct dma_device dma_dev; member
712 vchan_init(&hdma_dev->chan[i].vc, &hdma_dev->dma_dev); in hisi_dma_enable_qps()
824 struct dma_device *dma_dev; in hisi_dma_init_dma_dev() local
826 dma_dev = &hdma_dev->dma_dev; in hisi_dma_init_dma_dev()
827 dma_cap_set(DMA_MEMCPY, dma_dev->cap_mask); in hisi_dma_init_dma_dev()
828 dma_dev->device_free_chan_resources = hisi_dma_free_chan_resources; in hisi_dma_init_dma_dev()
829 dma_dev->device_prep_dma_memcpy = hisi_dma_prep_dma_memcpy; in hisi_dma_init_dma_dev()
830 dma_dev->device_tx_status = hisi_dma_tx_status; in hisi_dma_init_dma_dev()
831 dma_dev->device_issue_pending = hisi_dma_issue_pending; in hisi_dma_init_dma_dev()
832 dma_dev->device_terminate_all = hisi_dma_terminate_all; in hisi_dma_init_dma_dev()
[all …]
H A Dmv_xor.c1040 struct dma_device *dma_dev; in mv_xor_channel_add() local
1053 dma_dev = &mv_chan->dmadev; in mv_xor_channel_add()
1054 dma_dev->dev = &pdev->dev; in mv_xor_channel_add()
1062 mv_chan->dummy_src_addr = dma_map_single(dma_dev->dev, in mv_xor_channel_add()
1064 if (dma_mapping_error(dma_dev->dev, mv_chan->dummy_src_addr)) in mv_xor_channel_add()
1067 mv_chan->dummy_dst_addr = dma_map_single(dma_dev->dev, in mv_xor_channel_add()
1069 if (dma_mapping_error(dma_dev->dev, mv_chan->dummy_dst_addr)) { in mv_xor_channel_add()
1088 dma_dev->cap_mask = cap_mask; in mv_xor_channel_add()
1090 INIT_LIST_HEAD(&dma_dev->channels); in mv_xor_channel_add()
1093 dma_dev->device_alloc_chan_resources = mv_xor_alloc_chan_resources; in mv_xor_channel_add()
[all …]
H A Dtegra186-gpc-dma.c256 struct dma_device dma_dev; member
1298 chan = dma_get_any_slave_channel(&tdma->dma_dev); in tegra_dma_of_xlate()
1392 tdma->dma_dev.dev = &pdev->dev; in tegra_dma_probe()
1408 INIT_LIST_HEAD(&tdma->dma_dev.channels); in tegra_dma_probe()
1427 vchan_init(&tdc->vc, &tdma->dma_dev); in tegra_dma_probe()
1435 dma_cap_set(DMA_SLAVE, tdma->dma_dev.cap_mask); in tegra_dma_probe()
1436 dma_cap_set(DMA_PRIVATE, tdma->dma_dev.cap_mask); in tegra_dma_probe()
1437 dma_cap_set(DMA_MEMCPY, tdma->dma_dev.cap_mask); in tegra_dma_probe()
1438 dma_cap_set(DMA_MEMSET, tdma->dma_dev.cap_mask); in tegra_dma_probe()
1439 dma_cap_set(DMA_CYCLIC, tdma->dma_dev.cap_mask); in tegra_dma_probe()
[all …]
H A Dtegra210-adma.c187 struct dma_device dma_dev; member
822 chan = dma_get_any_slave_channel(&tdma->dma_dev); in tegra_dma_of_xlate()
1104 INIT_LIST_HEAD(&tdma->dma_dev.channels); in tegra_adma_probe()
1129 vchan_init(&tdc->vc, &tdma->dma_dev); in tegra_adma_probe()
1144 dma_cap_set(DMA_SLAVE, tdma->dma_dev.cap_mask); in tegra_adma_probe()
1145 dma_cap_set(DMA_PRIVATE, tdma->dma_dev.cap_mask); in tegra_adma_probe()
1146 dma_cap_set(DMA_CYCLIC, tdma->dma_dev.cap_mask); in tegra_adma_probe()
1148 tdma->dma_dev.dev = &pdev->dev; in tegra_adma_probe()
1149 tdma->dma_dev.device_alloc_chan_resources = in tegra_adma_probe()
1151 tdma->dma_dev.device_free_chan_resources = in tegra_adma_probe()
[all …]
H A Ddmaengine.c71 static void dmaengine_debug_register(struct dma_device *dma_dev) in dmaengine_debug_register() argument
73 dma_dev->dbg_dev_root = debugfs_create_dir(dev_name(dma_dev->dev), in dmaengine_debug_register()
75 if (IS_ERR(dma_dev->dbg_dev_root)) in dmaengine_debug_register()
76 dma_dev->dbg_dev_root = NULL; in dmaengine_debug_register()
79 static void dmaengine_debug_unregister(struct dma_device *dma_dev) in dmaengine_debug_unregister() argument
81 debugfs_remove_recursive(dma_dev->dbg_dev_root); in dmaengine_debug_unregister()
82 dma_dev->dbg_dev_root = NULL; in dmaengine_debug_unregister()
86 struct dma_device *dma_dev) in dmaengine_dbg_summary_show() argument
90 list_for_each_entry(chan, &dma_dev->channels, device_node) { in dmaengine_dbg_summary_show()
106 struct dma_device *dma_dev = NULL; in dmaengine_summary_show() local
[all …]
/linux/drivers/crypto/ccp/
H A Dccp-dmaengine.c668 struct dma_device *dma_dev = &ccp->dma_dev; in ccp_dmaengine_register() local
714 dma_dev->dev = ccp->dev; in ccp_dmaengine_register()
715 dma_dev->src_addr_widths = CCP_DMA_WIDTH(dma_get_mask(ccp->dev)); in ccp_dmaengine_register()
716 dma_dev->dst_addr_widths = CCP_DMA_WIDTH(dma_get_mask(ccp->dev)); in ccp_dmaengine_register()
717 dma_dev->directions = DMA_MEM_TO_MEM; in ccp_dmaengine_register()
718 dma_dev->residue_granularity = DMA_RESIDUE_GRANULARITY_DESCRIPTOR; in ccp_dmaengine_register()
719 dma_cap_set(DMA_MEMCPY, dma_dev->cap_mask); in ccp_dmaengine_register()
720 dma_cap_set(DMA_INTERRUPT, dma_dev->cap_mask); in ccp_dmaengine_register()
729 dma_cap_set(DMA_PRIVATE, dma_dev->cap_mask); in ccp_dmaengine_register()
731 INIT_LIST_HEAD(&dma_dev->channels); in ccp_dmaengine_register()
[all …]
/linux/drivers/tty/serial/8250/
H A D8250_mid.c44 struct pci_dev *dma_dev; member
70 mid->dma_dev = pci_get_slot(pdev->bus, in pnw_setup()
77 pci_dev_put(mid->dma_dev); in pnw_exit()
89 chip = pci_get_drvdata(mid->dma_dev); in tng_handle_irq()
125 mid->dma_dev = pci_get_slot(pdev->bus, PCI_DEVFN(5, 0)); in tng_setup()
133 pci_dev_put(mid->dma_dev); in tng_exit()
192 mid->dma_dev = pdev; in dnv_setup()
200 if (!mid->dma_dev) in dnv_exit()
246 if (s->dma_dev != chan->device->dev || s->chan_id != chan->chan_id) in mid8250_dma_filter()
260 if (!mid->dma_dev) in mid8250_dma_setup()
[all …]
H A D8250_lpss.c120 struct pci_dev *dma_dev; in byt_serial_setup() local
139 dma_dev = pci_get_slot(pdev->bus, PCI_DEVFN(PCI_SLOT(pdev->devfn), 0)); in byt_serial_setup()
141 param->dma_dev = &dma_dev->dev; in byt_serial_setup()
161 put_device(param->dma_dev); in byt_serial_exit()
229 param->dma_dev = &pdev->dev; in qrk_serial_setup_dma()
242 if (!param->dma_dev) in qrk_serial_exit_dma()
269 if (dws->dma_dev != chan->device->dev) in lpss8250_dma_filter()
282 if (!lpss->dma_param.dma_dev) { in lpss8250_dma_setup()
/linux/drivers/gpu/drm/exynos/
H A Dexynos_drm_dma.c48 if (get_dma_ops(priv->dma_dev) != get_dma_ops(subdrv_dev)) { in drm_iommu_attach_device()
100 if (!priv->dma_dev) { in exynos_drm_register_dma()
101 priv->dma_dev = dev; in exynos_drm_register_dma()
116 mapping = iommu_get_domain_for_dev(priv->dma_dev); in exynos_drm_register_dma()
142 priv->dma_dev = NULL; in exynos_drm_cleanup_dma()
/linux/drivers/dma/stm32/
H A Dstm32-dma3.c305 struct dma_device dma_dev; member
317 return container_of(chan->vchan.chan.device, struct stm32_dma3_ddata, dma_dev); in to_stm32_dma3_ddata()
567 struct dma_device dma_device = ddata->dma_dev; in stm32_dma3_chan_prep_hw()
1073 ret = pm_runtime_resume_and_get(ddata->dma_dev.dev); in stm32_dma3_alloc_chan_resources()
1114 pm_runtime_put_sync(ddata->dma_dev.dev); in stm32_dma3_alloc_chan_resources()
1140 pm_runtime_put_sync(ddata->dma_dev.dev); in stm32_dma3_free_chan_resources()
1568 ret = pm_runtime_resume_and_get(ddata->dma_dev.dev); in stm32_dma3_filter_fn()
1572 pm_runtime_put_sync(ddata->dma_dev.dev); in stm32_dma3_filter_fn()
1588 dma_cap_mask_t mask = ddata->dma_dev.cap_mask; in stm32_dma3_of_xlate()
1594 dev_err(ddata->dma_dev.dev, "Invalid args count\n"); in stm32_dma3_of_xlate()
[all …]
/linux/drivers/dma/sh/
H A Dshdmac.c164 dev_warn(shdev->shdma_dev.dma_dev.dev, "Can't initialize DMAOR.\n"); in sh_dmae_rst()
168 dev_warn(shdev->shdma_dev.dma_dev.dev, in sh_dmae_rst()
530 struct platform_device *pdev = to_platform_device(sdev->dma_dev.dev); in sh_dmae_chan_probe()
535 sh_chan = devm_kzalloc(sdev->dma_dev.dev, sizeof(struct sh_dmae_chan), in sh_dmae_chan_probe()
557 dev_err(sdev->dma_dev.dev, in sh_dmae_chan_probe()
688 struct dma_device *dma_dev; in sh_dmae_probe() local
727 dma_dev = &shdev->shdma_dev.dma_dev; in sh_dmae_probe()
738 dma_dev->src_addr_widths = widths; in sh_dmae_probe()
739 dma_dev->dst_addr_widths = widths; in sh_dmae_probe()
740 dma_dev->directions = BIT(DMA_MEM_TO_DEV) | BIT(DMA_DEV_TO_MEM); in sh_dmae_probe()
[all …]
H A Dshdma-base.c37 #define to_shdma_dev(d) container_of(d, struct shdma_dev, dma_dev)
319 dev_warn(sdev->dma_dev.dev, "invalid slave ID passed to dma_request_slave\n"); in shdma_chan_filter()
966 schan->dma_chan.device = &sdev->dma_dev; in shdma_chan_probe()
969 schan->dev = sdev->dma_dev.dev; in shdma_chan_probe()
983 &sdev->dma_dev.channels); in shdma_chan_probe()
997 struct dma_device *dma_dev = &sdev->dma_dev; in shdma_init() local
1020 INIT_LIST_HEAD(&dma_dev->channels); in shdma_init()
1023 dma_dev->device_alloc_chan_resources in shdma_init()
1025 dma_dev->device_free_chan_resources = shdma_free_chan_resources; in shdma_init()
1026 dma_dev->device_prep_dma_memcpy = shdma_prep_memcpy; in shdma_init()
[all …]
/linux/include/drm/
H A Ddrm_device.h102 struct device *dma_dev; member
365 void drm_dev_set_dma_dev(struct drm_device *dev, struct device *dma_dev);
379 if (dev->dma_dev) in drm_dev_dma_dev()
380 return dev->dma_dev; in drm_dev_dma_dev()
/linux/sound/soc/samsung/
H A Ddmaengine.c19 struct device *dma_dev) in samsung_asoc_dma_platform_register() argument
29 pcm_conf->dma_dev = dma_dev; in samsung_asoc_dma_platform_register()
/linux/drivers/dma/amd/qdma/
H A Dqdma.c471 vchan_init(&q->vchan, &qdev->dma_dev); in qdma_alloc_queues()
551 dma_free_coherent(pdata->dma_dev, queue->ring_size * QDMA_MM_DESC_SIZE, in qdma_free_queue_resources()
574 queue->desc_base = dma_alloc_coherent(pdata->dma_dev, size, in qdma_alloc_queue_resources()
589 dma_free_coherent(pdata->dma_dev, size, queue->desc_base, in qdma_alloc_queue_resources()
971 ring->base = dmam_alloc_coherent(pdata->dma_dev, in qdmam_alloc_qintr_rings()
1034 dma_async_device_unregister(&qdev->dma_dev); in amd_qdma_remove()
1088 INIT_LIST_HEAD(&qdev->dma_dev.channels); in amd_qdma_probe()
1100 dma_cap_set(DMA_SLAVE, qdev->dma_dev.cap_mask); in amd_qdma_probe()
1101 dma_cap_set(DMA_PRIVATE, qdev->dma_dev.cap_mask); in amd_qdma_probe()
1103 qdev->dma_dev.dev = &pdev->dev; in amd_qdma_probe()
[all …]
/linux/drivers/net/ethernet/sgi/
H A Dioc3-eth.c82 struct device *dma_dev; member
139 d = dma_map_single(ip->dma_dev, new_skb->data, in ioc3_alloc_skb()
142 if (dma_mapping_error(ip->dma_dev, d)) { in ioc3_alloc_skb()
405 dma_unmap_single(ip->dma_dev, rxr[rx_entry], in ioc3_rx()
620 dma_unmap_single(ip->dma_dev, be64_to_cpu(desc->p1), in ioc3_tx_unmap()
625 dma_unmap_single(ip->dma_dev, be64_to_cpu(desc->p2), in ioc3_tx_unmap()
659 dma_unmap_single(ip->dma_dev, in ioc3_free_rx_bufs()
853 ip->dma_dev = pdev->dev.parent; in ioc3eth_probe()
885 ip->rxr = dma_alloc_coherent(ip->dma_dev, RX_RING_SIZE, &ip->rxr_dma, in ioc3eth_probe()
894 ip->tx_ring = dma_alloc_coherent(ip->dma_dev, TX_RING_SIZE + SZ_16K - 1, in ioc3eth_probe()
[all …]

123456