Lines Matching defs:dir
156 enum dma_data_direction dir, unsigned long attrs)
163 BUG_ON(!valid_dma_direction(dir));
174 addr = dma_direct_map_phys(dev, phys, size, dir, attrs, true);
178 addr = iommu_dma_map_phys(dev, phys, size, dir, attrs);
180 addr = ops->map_phys(dev, phys, size, dir, attrs);
183 kmsan_handle_dma(phys, size, dir);
184 trace_dma_map_phys(dev, phys, addr, size, dir, attrs);
185 debug_dma_map_phys(dev, phys, size, dir, addr, attrs);
192 size_t offset, size_t size, enum dma_data_direction dir,
204 return dma_map_phys(dev, phys, size, dir, attrs);
209 enum dma_data_direction dir, unsigned long attrs)
215 BUG_ON(!valid_dma_direction(dir));
220 dma_direct_unmap_phys(dev, addr, size, dir, attrs, true);
224 iommu_dma_unmap_phys(dev, addr, size, dir, attrs);
226 ops->unmap_phys(dev, addr, size, dir, attrs);
227 trace_dma_unmap_phys(dev, addr, size, dir, attrs);
228 debug_dma_unmap_phys(dev, addr, size, dir);
233 enum dma_data_direction dir, unsigned long attrs)
238 dma_unmap_phys(dev, addr, size, dir, attrs);
243 int nents, enum dma_data_direction dir, unsigned long attrs)
248 BUG_ON(!valid_dma_direction(dir));
258 ents = dma_direct_map_sg(dev, sg, nents, dir, attrs);
260 ents = iommu_dma_map_sg(dev, sg, nents, dir, attrs);
262 ents = ops->map_sg(dev, sg, nents, dir, attrs);
265 kmsan_handle_dma_sg(sg, nents, dir);
266 trace_dma_map_sg(dev, sg, nents, ents, dir, attrs);
267 debug_dma_map_sg(dev, sg, nents, ents, dir, attrs);
270 trace_dma_map_sg_err(dev, sg, nents, ents, dir, attrs);
282 * @dir: DMA direction
286 * nents segments for the @dir DMA operation by the @dev device.
295 int nents, enum dma_data_direction dir, unsigned long attrs)
299 ret = __dma_map_sg_attrs(dev, sg, nents, dir, attrs);
310 * @dir: DMA direction
314 * object for the @dir DMA operation by the @dev device. After success, the
334 enum dma_data_direction dir, unsigned long attrs)
338 nents = __dma_map_sg_attrs(dev, sgt->sgl, sgt->orig_nents, dir, attrs);
347 int nents, enum dma_data_direction dir,
352 BUG_ON(!valid_dma_direction(dir));
353 trace_dma_unmap_sg(dev, sg, nents, dir, attrs);
354 debug_dma_unmap_sg(dev, sg, nents, dir);
357 dma_direct_unmap_sg(dev, sg, nents, dir, attrs);
359 iommu_dma_unmap_sg(dev, sg, nents, dir, attrs);
361 ops->unmap_sg(dev, sg, nents, dir, attrs);
366 size_t size, enum dma_data_direction dir, unsigned long attrs)
372 return dma_map_phys(dev, phys_addr, size, dir, attrs | DMA_ATTR_MMIO);
377 enum dma_data_direction dir, unsigned long attrs)
379 dma_unmap_phys(dev, addr, size, dir, attrs | DMA_ATTR_MMIO);
385 enum dma_data_direction dir)
389 BUG_ON(!valid_dma_direction(dir));
391 dma_direct_sync_single_for_cpu(dev, addr, size, dir, true);
393 iommu_dma_sync_single_for_cpu(dev, addr, size, dir);
395 ops->sync_single_for_cpu(dev, addr, size, dir);
396 trace_dma_sync_single_for_cpu(dev, addr, size, dir);
397 debug_dma_sync_single_for_cpu(dev, addr, size, dir);
402 size_t size, enum dma_data_direction dir)
406 BUG_ON(!valid_dma_direction(dir));
408 dma_direct_sync_single_for_device(dev, addr, size, dir);
410 iommu_dma_sync_single_for_device(dev, addr, size, dir);
412 ops->sync_single_for_device(dev, addr, size, dir);
413 trace_dma_sync_single_for_device(dev, addr, size, dir);
414 debug_dma_sync_single_for_device(dev, addr, size, dir);
419 int nelems, enum dma_data_direction dir)
423 BUG_ON(!valid_dma_direction(dir));
425 dma_direct_sync_sg_for_cpu(dev, sg, nelems, dir);
427 iommu_dma_sync_sg_for_cpu(dev, sg, nelems, dir);
429 ops->sync_sg_for_cpu(dev, sg, nelems, dir);
430 trace_dma_sync_sg_for_cpu(dev, sg, nelems, dir);
431 debug_dma_sync_sg_for_cpu(dev, sg, nelems, dir);
436 int nelems, enum dma_data_direction dir)
440 BUG_ON(!valid_dma_direction(dir));
442 dma_direct_sync_sg_for_device(dev, sg, nelems, dir);
444 iommu_dma_sync_sg_for_device(dev, sg, nelems, dir);
446 ops->sync_sg_for_device(dev, sg, nelems, dir);
447 trace_dma_sync_sg_for_device(dev, sg, nelems, dir);
448 debug_dma_sync_sg_for_device(dev, sg, nelems, dir);
707 dma_addr_t *dma_handle, enum dma_data_direction dir, gfp_t gfp)
720 return dma_direct_alloc_pages(dev, size, dma_handle, dir, gfp);
722 return dma_common_alloc_pages(dev, size, dma_handle, dir, gfp);
725 return ops->alloc_pages_op(dev, size, dma_handle, dir, gfp);
729 dma_addr_t *dma_handle, enum dma_data_direction dir, gfp_t gfp)
731 struct page *page = __dma_alloc_pages(dev, size, dma_handle, dir, gfp);
735 size, dir, gfp, 0);
736 debug_dma_alloc_pages(dev, page, size, dir, *dma_handle, 0);
738 trace_dma_alloc_pages(dev, NULL, 0, size, dir, gfp, 0);
745 dma_addr_t dma_handle, enum dma_data_direction dir)
751 dma_direct_free_pages(dev, size, page, dma_handle, dir);
753 dma_common_free_pages(dev, size, page, dma_handle, dir);
755 ops->free_pages(dev, size, page, dma_handle, dir);
759 dma_addr_t dma_handle, enum dma_data_direction dir)
761 trace_dma_free_pages(dev, page_to_virt(page), dma_handle, size, dir, 0);
762 debug_dma_free_pages(dev, page, size, dir, dma_handle);
763 __dma_free_pages(dev, size, page, dma_handle, dir);
781 enum dma_data_direction dir, gfp_t gfp)
791 page = __dma_alloc_pages(dev, size, &sgt->sgl->dma_address, dir, gfp);
805 enum dma_data_direction dir, gfp_t gfp, unsigned long attrs)
815 sgt = iommu_dma_alloc_noncontiguous(dev, size, dir, gfp, attrs);
817 sgt = alloc_single_sgt(dev, size, dir, gfp);
821 trace_dma_alloc_sgt(dev, sgt, size, dir, gfp, attrs);
822 debug_dma_map_sg(dev, sgt->sgl, sgt->orig_nents, 1, dir, attrs);
824 trace_dma_alloc_sgt_err(dev, NULL, 0, size, dir, gfp, attrs);
831 struct sg_table *sgt, enum dma_data_direction dir)
834 dir);
840 struct sg_table *sgt, enum dma_data_direction dir)
842 trace_dma_free_sgt(dev, sgt, size, dir);
843 debug_dma_unmap_sg(dev, sgt->sgl, sgt->orig_nents, dir);
846 iommu_dma_free_noncontiguous(dev, size, sgt, dir);
848 free_single_sgt(dev, size, sgt, dir);