Lines Matching refs:cpu_addr
1136 static void __iommu_dma_free(struct device *dev, size_t size, void *cpu_addr) in __iommu_dma_free() argument
1144 dma_free_from_pool(dev, cpu_addr, alloc_size)) in __iommu_dma_free()
1147 if (IS_ENABLED(CONFIG_DMA_REMAP) && is_vmalloc_addr(cpu_addr)) { in __iommu_dma_free()
1152 pages = dma_common_find_pages(cpu_addr); in __iommu_dma_free()
1154 page = vmalloc_to_page(cpu_addr); in __iommu_dma_free()
1155 dma_common_free_remap(cpu_addr, alloc_size); in __iommu_dma_free()
1158 page = virt_to_page(cpu_addr); in __iommu_dma_free()
1167 static void iommu_dma_free(struct device *dev, size_t size, void *cpu_addr, in iommu_dma_free() argument
1171 __iommu_dma_free(dev, size, cpu_addr); in iommu_dma_free()
1181 void *cpu_addr; in iommu_dma_alloc_pages() local
1192 cpu_addr = dma_common_contiguous_remap(page, alloc_size, in iommu_dma_alloc_pages()
1194 if (!cpu_addr) in iommu_dma_alloc_pages()
1200 cpu_addr = page_address(page); in iommu_dma_alloc_pages()
1204 memset(cpu_addr, 0, alloc_size); in iommu_dma_alloc_pages()
1205 return cpu_addr; in iommu_dma_alloc_pages()
1217 void *cpu_addr; in iommu_dma_alloc() local
1229 page = dma_alloc_from_pool(dev, PAGE_ALIGN(size), &cpu_addr, in iommu_dma_alloc()
1232 cpu_addr = iommu_dma_alloc_pages(dev, size, &page, gfp, attrs); in iommu_dma_alloc()
1233 if (!cpu_addr) in iommu_dma_alloc()
1239 __iommu_dma_free(dev, size, cpu_addr); in iommu_dma_alloc()
1243 return cpu_addr; in iommu_dma_alloc()
1247 void *cpu_addr, dma_addr_t dma_addr, size_t size, in iommu_dma_mmap() argument
1256 if (dma_mmap_from_dev_coherent(dev, vma, cpu_addr, size, &ret)) in iommu_dma_mmap()
1262 if (IS_ENABLED(CONFIG_DMA_REMAP) && is_vmalloc_addr(cpu_addr)) { in iommu_dma_mmap()
1263 struct page **pages = dma_common_find_pages(cpu_addr); in iommu_dma_mmap()
1267 pfn = vmalloc_to_pfn(cpu_addr); in iommu_dma_mmap()
1269 pfn = page_to_pfn(virt_to_page(cpu_addr)); in iommu_dma_mmap()
1278 void *cpu_addr, dma_addr_t dma_addr, size_t size, in iommu_dma_get_sgtable() argument
1284 if (IS_ENABLED(CONFIG_DMA_REMAP) && is_vmalloc_addr(cpu_addr)) { in iommu_dma_get_sgtable()
1285 struct page **pages = dma_common_find_pages(cpu_addr); in iommu_dma_get_sgtable()
1293 page = vmalloc_to_page(cpu_addr); in iommu_dma_get_sgtable()
1295 page = virt_to_page(cpu_addr); in iommu_dma_get_sgtable()