Lines Matching refs:iova
15 unsigned long iova, size_t size) in etnaviv_domain_unmap() argument
20 if (!IS_ALIGNED(iova | size, pgsize)) { in etnaviv_domain_unmap()
22 iova, size, pgsize); in etnaviv_domain_unmap()
27 unmapped_page = domain->ops->unmap(domain, iova, pgsize); in etnaviv_domain_unmap()
31 iova += unmapped_page; in etnaviv_domain_unmap()
37 unsigned long iova, phys_addr_t paddr, in etnaviv_domain_map() argument
40 unsigned long orig_iova = iova; in etnaviv_domain_map()
45 if (!IS_ALIGNED(iova | paddr | size, pgsize)) { in etnaviv_domain_map()
47 iova, &paddr, size, pgsize); in etnaviv_domain_map()
52 ret = domain->ops->map(domain, iova, paddr, pgsize, prot); in etnaviv_domain_map()
56 iova += pgsize; in etnaviv_domain_map()
68 static int etnaviv_iommu_map(struct etnaviv_iommu *iommu, u32 iova, in etnaviv_iommu_map() argument
73 unsigned int da = iova; in etnaviv_iommu_map()
84 VERB("map[%d]: %08x %08x(%zx)", i, iova, pa, bytes); in etnaviv_iommu_map()
96 da = iova; in etnaviv_iommu_map()
107 static void etnaviv_iommu_unmap(struct etnaviv_iommu *iommu, u32 iova, in etnaviv_iommu_unmap() argument
112 unsigned int da = iova; in etnaviv_iommu_unmap()
120 VERB("unmap[%d]: %08x(%zx)", i, iova, bytes); in etnaviv_iommu_unmap()
237 u32 iova; in etnaviv_iommu_map_gem() local
239 iova = sg_dma_address(sgt->sgl) - memory_base; in etnaviv_iommu_map_gem()
240 if (iova < 0x80000000 - sg_dma_len(sgt->sgl)) { in etnaviv_iommu_map_gem()
241 mapping->iova = iova; in etnaviv_iommu_map_gem()
254 mapping->iova = node->start; in etnaviv_iommu_map_gem()
337 u32 *iova) in etnaviv_iommu_get_suballoc_va() argument
342 *iova = paddr - gpu->memory_base; in etnaviv_iommu_get_suballoc_va()
363 *iova = (u32)vram_node->start; in etnaviv_iommu_get_suballoc_va()
370 u32 iova) in etnaviv_iommu_put_suballoc_va() argument
376 etnaviv_domain_unmap(mmu->domain, iova, size); in etnaviv_iommu_put_suballoc_va()