Home
last modified time | relevance | path

Searched refs:iovad (Results 1 – 3 of 3) sorted by relevance

/drivers/iommu/
Diova.c22 static bool iova_rcache_insert(struct iova_domain *iovad,
25 static unsigned long iova_rcache_get(struct iova_domain *iovad,
28 static void init_iova_rcaches(struct iova_domain *iovad);
29 static void free_cpu_cached_iovas(unsigned int cpu, struct iova_domain *iovad);
30 static void free_iova_rcaches(struct iova_domain *iovad);
31 static void fq_destroy_all_entries(struct iova_domain *iovad);
34 static unsigned long limit_align_shift(struct iova_domain *iovad, unsigned long shift) in limit_align_shift() argument
38 max_align_shift = iommu_max_align_shift + PAGE_SHIFT - iova_shift(iovad); in limit_align_shift()
59 struct iova_domain *iovad; in iova_cpuhp_dead() local
61 iovad = hlist_entry_safe(node, struct iova_domain, cpuhp_dead); in iova_cpuhp_dead()
[all …]
Ddma-iommu.c46 struct iova_domain iovad; member
84 return cookie->iovad.granule; in cookie_msi_granule()
167 if (cookie->type == IOMMU_DMA_IOVA_COOKIE && cookie->iovad.granule) in iommu_put_dma_cookie()
168 put_iova_domain(&cookie->iovad); in iommu_put_dma_cookie()
201 struct iova_domain *iovad = &cookie->iovad; in cookie_init_hw_msi_region() local
205 start -= iova_offset(iovad, start); in cookie_init_hw_msi_region()
206 num_pages = iova_align(iovad, end - start) >> iova_shift(iovad); in cookie_init_hw_msi_region()
217 start += iovad->granule; in cookie_init_hw_msi_region()
224 struct iova_domain *iovad) in iova_reserve_pci_windows() argument
235 lo = iova_pfn(iovad, window->res->start - window->offset); in iova_reserve_pci_windows()
[all …]
/drivers/vdpa/vdpa_user/
Diova_domain.c288 vduse_domain_alloc_iova(struct iova_domain *iovad, in vduse_domain_alloc_iova() argument
291 unsigned long shift = iova_shift(iovad); in vduse_domain_alloc_iova()
292 unsigned long iova_len = iova_align(iovad, size) >> shift; in vduse_domain_alloc_iova()
303 iova_pfn = alloc_iova_fast(iovad, iova_len, limit >> shift, true); in vduse_domain_alloc_iova()
308 static void vduse_domain_free_iova(struct iova_domain *iovad, in vduse_domain_free_iova() argument
311 unsigned long shift = iova_shift(iovad); in vduse_domain_free_iova()
312 unsigned long iova_len = iova_align(iovad, size) >> shift; in vduse_domain_free_iova()
314 free_iova_fast(iovad, iova >> shift, iova_len); in vduse_domain_free_iova()
322 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_map_page() local
325 dma_addr_t iova = vduse_domain_alloc_iova(iovad, size, limit); in vduse_domain_map_page()
[all …]