Home
last modified time | relevance | path

Searched refs:iova_domain (Results 1 – 11 of 11) sorted by relevance

/Linux-v6.6/include/linux/
Diova.h28 struct iova_domain { struct
48 static inline unsigned long iova_shift(struct iova_domain *iovad) in iova_shift() argument
53 static inline unsigned long iova_mask(struct iova_domain *iovad) in iova_mask()
58 static inline size_t iova_offset(struct iova_domain *iovad, dma_addr_t iova) in iova_offset()
63 static inline size_t iova_align(struct iova_domain *iovad, size_t size) in iova_align()
68 static inline dma_addr_t iova_dma_addr(struct iova_domain *iovad, struct iova *iova) in iova_dma_addr()
73 static inline unsigned long iova_pfn(struct iova_domain *iovad, dma_addr_t iova) in iova_pfn()
84 void free_iova(struct iova_domain *iovad, unsigned long pfn);
85 void __free_iova(struct iova_domain *iovad, struct iova *iova);
86 struct iova *alloc_iova(struct iova_domain *iovad, unsigned long size,
[all …]
/Linux-v6.6/drivers/staging/media/ipu3/
Dipu3-dmamap.c96 unsigned long shift = iova_shift(&imgu->iova_domain); in imgu_dmamap_alloc()
107 iova = alloc_iova(&imgu->iova_domain, size >> shift, in imgu_dmamap_alloc()
117 iovaddr = iova_dma_addr(&imgu->iova_domain, iova); in imgu_dmamap_alloc()
133 map->daddr = iova_dma_addr(&imgu->iova_domain, iova); in imgu_dmamap_alloc()
142 imgu_mmu_unmap(imgu->mmu, iova_dma_addr(&imgu->iova_domain, iova), in imgu_dmamap_alloc()
146 __free_iova(&imgu->iova_domain, iova); in imgu_dmamap_alloc()
155 iova = find_iova(&imgu->iova_domain, in imgu_dmamap_unmap()
156 iova_pfn(&imgu->iova_domain, map->daddr)); in imgu_dmamap_unmap()
160 imgu_mmu_unmap(imgu->mmu, iova_dma_addr(&imgu->iova_domain, iova), in imgu_dmamap_unmap()
161 iova_size(iova) << iova_shift(&imgu->iova_domain)); in imgu_dmamap_unmap()
[all …]
Dipu3.h134 struct iova_domain iova_domain; member
/Linux-v6.6/drivers/iommu/
Diova.c20 static bool iova_rcache_insert(struct iova_domain *iovad,
23 static unsigned long iova_rcache_get(struct iova_domain *iovad,
26 static void free_cpu_cached_iovas(unsigned int cpu, struct iova_domain *iovad);
27 static void free_iova_rcaches(struct iova_domain *iovad);
36 struct iova_domain *iovad; in iova_cpuhp_dead()
38 iovad = hlist_entry_safe(node, struct iova_domain, cpuhp_dead); in iova_cpuhp_dead()
44 static void free_global_cached_iovas(struct iova_domain *iovad);
52 init_iova_domain(struct iova_domain *iovad, unsigned long granule, in init_iova_domain()
77 __get_cached_rbnode(struct iova_domain *iovad, unsigned long limit_pfn) in __get_cached_rbnode()
86 __cached_rbnode_insert_update(struct iova_domain *iovad, struct iova *new) in __cached_rbnode_insert_update()
[all …]
Ddma-iommu.c51 struct iova_domain iovad;
403 struct iova_domain *iovad = &cookie->iovad; in cookie_init_hw_msi_region()
435 struct iova_domain *iovad) in iova_reserve_pci_windows()
484 struct iova_domain *iovad = &cookie->iovad; in iova_reserve_iommu_regions()
574 struct iova_domain *iovad; in iommu_dma_init_domain()
662 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_alloc_iova()
707 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_free_iova()
726 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_unmap()
749 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_map()
839 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_alloc_noncontiguous()
[all …]
/Linux-v6.6/drivers/vdpa/vdpa_user/
Diova_domain.h28 struct iova_domain stream_iovad;
29 struct iova_domain consistent_iovad;
Diova_domain.c355 vduse_domain_alloc_iova(struct iova_domain *iovad, in vduse_domain_alloc_iova()
367 static void vduse_domain_free_iova(struct iova_domain *iovad, in vduse_domain_free_iova()
381 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_map_page()
413 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_unmap_page()
428 struct iova_domain *iovad = &domain->consistent_iovad; in vduse_domain_alloc_coherent()
462 struct iova_domain *iovad = &domain->consistent_iovad; in vduse_domain_free_coherent()
DMakefile3 vduse-y := vduse_dev.o iova_domain.o
/Linux-v6.6/drivers/gpu/drm/tegra/
Ddrm.h40 struct iova_domain domain;
/Linux-v6.6/drivers/media/platform/nvidia/tegra-vde/
Dvde.h116 struct iova_domain iova;
/Linux-v6.6/drivers/gpu/host1x/
Ddev.h137 struct iova_domain iova;