Searched refs:iovad (Results 1 – 7 of 7) sorted by relevance
| /linux-6.15/drivers/iommu/ |
| H A D | iova.c | 50 iovad->cached_node = &iovad->anchor.node; in init_iova_domain() 51 iovad->cached32_node = &iovad->anchor.node; in init_iova_domain() 54 iovad->dma_32bit_pfn = 1UL << (32 - iova_shift(iovad)); in init_iova_domain() 55 iovad->max32_alloc_size = iovad->dma_32bit_pfn; in init_iova_domain() 56 iovad->anchor.pfn_lo = iovad->anchor.pfn_hi = IOVA_ANCHOR; in init_iova_domain() 57 rb_link_node(&iovad->anchor.node, NULL, &iovad->rbroot.rb_node); in init_iova_domain() 58 rb_insert_color(&iovad->anchor.node, &iovad->rbroot); in init_iova_domain() 92 iovad->max32_alloc_size = iovad->dma_32bit_pfn; in __cached_rbnode_delete_update() 450 if (iovad->rcaches) in put_iova_domain() 730 rcache->iovad = iovad; in iova_domain_init_rcaches() [all …]
|
| H A D | dma-iommu.c | 470 struct iova_domain *iovad = &cookie->iovad; in cookie_init_hw_msi_region() local 551 struct iova_domain *iovad = &cookie->iovad; in iova_reserve_iommu_regions() local 666 iovad = &cookie->iovad; in iommu_dma_init_domain() 743 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_alloc_iova() local 788 struct iova_domain *iovad = &domain->iova_cookie->iovad; in iommu_dma_free_iova() local 798 free_iova_fast(iovad, iova_pfn(iovad, iova), in iommu_dma_free_iova() 807 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_unmap() local 830 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_map() local 924 struct iova_domain *iovad = &cookie->iovad; in __iommu_dma_alloc_noncontiguous() local 1149 struct iova_domain *iovad = &cookie->iovad; in iommu_dma_map_page() local [all …]
|
| /linux-6.15/include/linux/ |
| H A D | iova.h | 50 return __ffs(iovad->granule); in iova_shift() 55 return iovad->granule - 1; in iova_mask() 60 return iova & iova_mask(iovad); in iova_offset() 65 return ALIGN(size, iovad->granule); in iova_align() 70 return ALIGN_DOWN(size, iovad->granule); in iova_align_down() 75 return (dma_addr_t)iova->pfn_lo << iova_shift(iovad); in iova_dma_addr() 80 return iova >> iova_shift(iovad); in iova_pfn() 89 void free_iova(struct iova_domain *iovad, unsigned long pfn); 102 int iova_domain_init_rcaches(struct iova_domain *iovad); 104 void put_iova_domain(struct iova_domain *iovad); [all …]
|
| /linux-6.15/drivers/vdpa/vdpa_user/ |
| H A D | iova_domain.c | 358 vduse_domain_alloc_iova(struct iova_domain *iovad, in vduse_domain_alloc_iova() argument 361 unsigned long shift = iova_shift(iovad); in vduse_domain_alloc_iova() 373 unsigned long shift = iova_shift(iovad); in vduse_domain_free_iova() 376 free_iova_fast(iovad, iova >> shift, iova_len); in vduse_domain_free_iova() 404 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_map_page() local 429 vduse_domain_free_iova(iovad, iova, size); in vduse_domain_map_page() 437 struct iova_domain *iovad = &domain->stream_iovad; in vduse_domain_unmap_page() local 445 vduse_domain_free_iova(iovad, dma_addr, size); in vduse_domain_unmap_page() 452 struct iova_domain *iovad = &domain->consistent_iovad; in vduse_domain_alloc_coherent() local 477 vduse_domain_free_iova(iovad, iova, size); in vduse_domain_alloc_coherent() [all …]
|
| /linux-6.15/drivers/media/pci/intel/ipu6/ |
| H A D | ipu6-dma.c | 174 iova = alloc_iova(&mmu->dmap->iovad, count, in ipu6_dma_alloc() 236 __free_iova(&mmu->dmap->iovad, iova); in ipu6_dma_alloc() 249 struct iova *iova = find_iova(&mmu->dmap->iovad, PHYS_PFN(dma_handle)); in ipu6_dma_free() 291 __free_iova(&mmu->dmap->iovad, iova); in ipu6_dma_free() 336 struct iova *iova = find_iova(&mmu->dmap->iovad, in ipu6_dma_unmap_sg() 370 __free_iova(&mmu->dmap->iovad, iova); in ipu6_dma_unmap_sg() 400 iova = alloc_iova(&mmu->dmap->iovad, npages, in ipu6_dma_map_sg()
|
| H A D | ipu6-mmu.c | 424 iova = alloc_iova(&mmu->dmap->iovad, n_pages, in allocate_trash_buffer() 469 __free_iova(&mmu->dmap->iovad, iova); in allocate_trash_buffer() 626 init_iova_domain(&dmap->iovad, SZ_4K, 1); in alloc_dma_mapping() 713 iova = find_iova(&dmap->iovad, PHYS_PFN(mmu->iova_trash_page)); in ipu6_mmu_destroy() 718 __free_iova(&dmap->iovad, iova); in ipu6_mmu_destroy() 804 put_iova_domain(&dmap->iovad); in ipu6_mmu_cleanup()
|
| H A D | ipu6-dma.h | 20 struct iova_domain iovad; member
|