| /OK3568_Linux_fs/kernel/include/linux/ |
| H A D | iova.h | 38 struct iova_domain; 41 typedef void (* iova_flush_cb)(struct iova_domain *domain); 68 struct iova_domain { struct 106 static inline unsigned long iova_shift(struct iova_domain *iovad) in iova_shift() argument 111 static inline unsigned long iova_mask(struct iova_domain *iovad) in iova_mask() 116 static inline size_t iova_offset(struct iova_domain *iovad, dma_addr_t iova) in iova_offset() 121 static inline size_t iova_align(struct iova_domain *iovad, size_t size) in iova_align() 126 static inline dma_addr_t iova_dma_addr(struct iova_domain *iovad, struct iova *iova) in iova_dma_addr() 131 static inline unsigned long iova_pfn(struct iova_domain *iovad, dma_addr_t iova) in iova_pfn() 142 void free_iova(struct iova_domain *iovad, unsigned long pfn); [all …]
|
| H A D | intel-iommu.h | 544 struct iova_domain iovad; /* iova's that belong to this domain */
|
| /OK3568_Linux_fs/kernel/drivers/staging/media/ipu3/ |
| H A D | ipu3-dmamap.c | 96 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 …]
|
| H A D | ipu3.h | 139 struct iova_domain iova_domain; member
|
| /OK3568_Linux_fs/kernel/drivers/iommu/ |
| H A D | iova.c | 18 static bool iova_rcache_insert(struct iova_domain *iovad, 21 static unsigned long iova_rcache_get(struct iova_domain *iovad, 24 static void init_iova_rcaches(struct iova_domain *iovad); 25 static void free_iova_rcaches(struct iova_domain *iovad); 26 static void fq_destroy_all_entries(struct iova_domain *iovad); 30 init_iova_domain(struct iova_domain *iovad, unsigned long granule, in init_iova_domain() 58 bool has_iova_flush_queue(struct iova_domain *iovad) in has_iova_flush_queue() 63 static void free_iova_flush_queue(struct iova_domain *iovad) in free_iova_flush_queue() 79 int init_iova_flush_queue(struct iova_domain *iovad, in init_iova_flush_queue() 117 __get_cached_rbnode(struct iova_domain *iovad, unsigned long limit_pfn) in __get_cached_rbnode() [all …]
|
| H A D | dma-iommu.c | 43 struct iova_domain iovad; 179 struct iova_domain *iovad = &cookie->iovad; in cookie_init_hw_msi_region() 202 struct iova_domain *iovad) in iova_reserve_pci_windows() 250 struct iova_domain *iovad = &cookie->iovad; in iova_reserve_iommu_regions() 284 static void iommu_dma_flush_iotlb_all(struct iova_domain *iovad) in iommu_dma_flush_iotlb_all() 316 struct iova_domain *iovad; in iommu_dma_init_domain() 402 struct iova_domain *iovad; in iommu_dma_reserve_iova() 428 struct iova_domain *iovad; in iommu_dma_enable_best_fit_algo() 477 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_alloc_iova() 519 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_free_iova() [all …]
|
| /OK3568_Linux_fs/kernel/include/trace/hooks/ |
| H A D | iommu.h | 16 struct iova_domain; 35 TP_PROTO(struct device *dev, struct iova_domain *iovad, dma_addr_t iova, size_t size), 43 TP_PROTO(struct iova_domain *iovad, dma_addr_t iova, size_t size),
|
| /OK3568_Linux_fs/kernel/drivers/rknpu/ |
| H A D | rknpu_iommu.c | 13 struct iova_domain *iovad = &cookie->iovad; in rknpu_iommu_dma_alloc_iova() 58 struct iova_domain *iovad = &cookie->iovad; in rknpu_iommu_dma_free_iova()
|
| H A D | rknpu_gem.c | 421 struct iova_domain *iovad = NULL; in rknpu_gem_alloc_buf_with_cache()
|
| /OK3568_Linux_fs/kernel/drivers/video/rockchip/rga3/ |
| H A D | rga_dma_buf.c | 207 struct iova_domain *iovad = &cookie->iovad; in rga_iommu_dma_alloc_iova() 250 struct iova_domain *iovad = &cookie->iovad; in rga_iommu_dma_free_iova() 277 struct iova_domain *iovad; in rga_iommu_map_sgt() 323 struct iova_domain *iovad; in rga_iommu_map()
|
| /OK3568_Linux_fs/kernel/drivers/rknpu/include/ |
| H A D | rknpu_iommu.h | 31 struct iova_domain iovad;
|
| /OK3568_Linux_fs/kernel/drivers/staging/media/tegra-vde/ |
| H A D | vde.h | 48 struct iova_domain iova;
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/tegra/ |
| H A D | drm.h | 45 struct iova_domain domain;
|
| /OK3568_Linux_fs/kernel/drivers/video/rockchip/rga3/include/ |
| H A D | rga_drv.h | 155 struct iova_domain iovad;
|
| /OK3568_Linux_fs/kernel/drivers/gpu/host1x/ |
| H A D | dev.h | 119 struct iova_domain iova;
|
| /OK3568_Linux_fs/kernel/drivers/iommu/intel/ |
| H A D | iommu.c | 1721 static void iommu_flush_iova(struct iova_domain *iovad) in iommu_flush_iova() 2015 static struct iova_domain reserved_iova_list;
|