Home
last modified time | relevance | path

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

/linux-5.19.10/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()
82 void free_iova(struct iova_domain *iovad, unsigned long pfn);
83 void __free_iova(struct iova_domain *iovad, struct iova *iova);
84 struct iova *alloc_iova(struct iova_domain *iovad, unsigned long size,
[all …]
Dintel-iommu.h544 struct iova_domain iovad; /* iova's that belong to this domain */
/linux-5.19.10/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-5.19.10/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);
31 struct iova_domain *iovad; in iova_cpuhp_dead()
33 iovad = hlist_entry_safe(node, struct iova_domain, cpuhp_dead); in iova_cpuhp_dead()
39 static void free_global_cached_iovas(struct iova_domain *iovad);
47 init_iova_domain(struct iova_domain *iovad, unsigned long granule, in init_iova_domain()
72 __get_cached_rbnode(struct iova_domain *iovad, unsigned long limit_pfn) in __get_cached_rbnode()
81 __cached_rbnode_insert_update(struct iova_domain *iovad, struct iova *new) in __cached_rbnode_insert_update()
[all …]
Ddma-iommu.c48 struct iova_domain iovad;
396 struct iova_domain *iovad = &cookie->iovad; in cookie_init_hw_msi_region()
428 struct iova_domain *iovad) in iova_reserve_pci_windows()
477 struct iova_domain *iovad = &cookie->iovad; in iova_reserve_iommu_regions()
538 struct iova_domain *iovad; in iommu_dma_init_domain()
618 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_alloc_iova()
649 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_free_iova()
668 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_unmap()
691 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_map()
784 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_alloc_noncontiguous()
[all …]
/linux-5.19.10/drivers/vdpa/vdpa_user/
Diova_domain.h28 struct iova_domain stream_iovad;
29 struct iova_domain consistent_iovad;
Diova_domain.c288 vduse_domain_alloc_iova(struct iova_domain *iovad, in vduse_domain_alloc_iova()
300 static void vduse_domain_free_iova(struct iova_domain *iovad, in vduse_domain_free_iova()
314 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_map_page()
341 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_unmap_page()
354 struct iova_domain *iovad = &domain->consistent_iovad; in vduse_domain_alloc_coherent()
388 struct iova_domain *iovad = &domain->consistent_iovad; in vduse_domain_free_coherent()
DMakefile3 vduse-y := vduse_dev.o iova_domain.o
/linux-5.19.10/drivers/vdpa/vdpa_sim/
Dvdpa_sim.h63 struct iova_domain iova;
/linux-5.19.10/drivers/gpu/drm/tegra/
Ddrm.h48 struct iova_domain domain;
/linux-5.19.10/drivers/media/platform/nvidia/tegra-vde/
Dvde.h116 struct iova_domain iova;
/linux-5.19.10/drivers/gpu/host1x/
Ddev.h126 struct iova_domain iova;