Home
last modified time | relevance | path

Searched refs:iova (Results 51 – 75 of 304) sorted by relevance

12345678910>>...13

/openbmc/linux/drivers/gpu/drm/panfrost/
H A Dpanfrost_mmu.c97 u64 iova, u64 size, u32 op) in mmu_hw_do_operation_locked() argument
103 lock_region(pfdev, as_nr, iova, size); in mmu_hw_do_operation_locked()
114 u64 iova, u64 size, u32 op) in mmu_hw_do_operation() argument
274 u64 iova, u64 size) in panfrost_mmu_flush_range() argument
289 u64 iova, int prot, struct sg_table *sgt) in mmu_map_sg() argument
294 u64 start_iova = iova; in mmu_map_sg()
310 iova += mapped; in mmu_map_sg()
353 u64 iova = mapping->mmnode.start << PAGE_SHIFT; in panfrost_mmu_unmap() local
361 mapping->mmu->as, iova, len); in panfrost_mmu_unmap()
369 if (!bo->is_heap || ops->iova_to_phys(ops, iova)) { in panfrost_mmu_unmap()
[all …]
/openbmc/qemu/hw/arm/
H A Dtrace-events8 …tage, int level, uint64_t iova, size_t subpage_size, uint64_t baseaddr, uint32_t offset, uint64_t …
10 …tage, int level, uint64_t iova, uint64_t baseaddr, uint64_t pteaddr, uint64_t pte, uint64_t addre…
11 …int64_t pte, uint64_t iova, uint64_t gpa, int bsize_mb) "stage=%d level=%d base@=0x%"PRIx64" pte@=…
37 …_t sid, uint64_t addr, bool is_write) "%s sid=0x%x bypass (smmu disabled) iova:0x%"PRIx64" is_writ…
38 …r *n, uint16_t sid, uint64_t addr, bool is_write) "%s sid=0x%x STE bypass iova:0x%"PRIx64" is_writ…
39 …har *n, uint16_t sid, uint64_t addr, bool is_write) "%s sid=0x%x abort on iova:0x%"PRIx64" is_writ…
40 …te_success(const char *n, uint16_t sid, uint64_t iova, uint64_t translated, int perm) "%s sid=0x%x…
56 …, uint16_t asid, uint16_t vmid, uint64_t iova, uint8_t tg, uint64_t num_pages) "iommu mr=%s asid=%…
/openbmc/linux/include/linux/
H A Diova_bitmap.h14 unsigned long iova, size_t length,
17 struct iova_bitmap *iova_bitmap_alloc(unsigned long iova, size_t length,
24 unsigned long iova, size_t length);
/openbmc/qemu/include/hw/arm/
H A Dsmmu-common.h126 uint64_t iova; member
175 int smmu_ptw(SMMUTransCfg *cfg, dma_addr_t iova, IOMMUAccessFlags perm,
182 SMMUTransTableInfo *select_tt(SMMUTransCfg *cfg, dma_addr_t iova);
190 SMMUTransTableInfo *tt, hwaddr iova);
192 SMMUIOTLBKey smmu_get_iotlb_key(uint16_t asid, uint16_t vmid, uint64_t iova,
197 void smmu_iotlb_inv_iova(SMMUState *s, int asid, int vmid, dma_addr_t iova,
/openbmc/linux/drivers/fpga/
H A Ddfl-afu.h56 u64 iova; member
99 u64 user_addr, u64 length, u64 *iova);
100 int afu_dma_unmap_region(struct dfl_feature_platform_data *pdata, u64 iova);
103 u64 iova, u64 size);
/openbmc/linux/drivers/gpu/drm/msm/
H A Dmsm_mmu.h14 int (*map)(struct msm_mmu *mmu, uint64_t iova, struct sg_table *sgt,
16 int (*unmap)(struct msm_mmu *mmu, uint64_t iova, size_t len);
30 int (*handler)(void *arg, unsigned long iova, int flags, void *data);
48 int (*handler)(void *arg, unsigned long iova, int flags, void *data)) in msm_mmu_set_fault_handler() argument
H A Dmsm_gem.h62 uint64_t iova; member
127 struct msm_gem_address_space *aspace, uint64_t *iova);
129 struct msm_gem_address_space *aspace, uint64_t iova);
131 struct msm_gem_address_space *aspace, uint64_t *iova,
134 struct msm_gem_address_space *aspace, uint64_t *iova);
159 struct drm_gem_object **bo, uint64_t *iova);
283 uint64_t iova; member
299 uint64_t iova; member
H A Dmsm_gem_submit.c277 submit->bos[i].iova = 0; in submit_unlock_unpin_bo()
404 if (vma->iova == submit->bos[i].iova) { in submit_pin_objects()
407 submit->bos[i].iova = vma->iova; in submit_pin_objects()
458 if (iova) in submit_bo()
459 *iova = submit->bos[idx].iova; in submit_bo()
496 uint64_t iova; in submit_reloc() local
526 iova >>= -submit_reloc.shift; in submit_reloc()
528 iova <<= submit_reloc.shift; in submit_reloc()
874 uint64_t iova; in msm_ioctl_gem_submit() local
877 &obj, &iova, NULL); in msm_ioctl_gem_submit()
[all …]
H A Dmsm_gem.c468 GEM_WARN_ON(vma->iova < range_start); in get_vma_locked()
469 GEM_WARN_ON((vma->iova + obj->size) > range_end); in get_vma_locked()
549 *iova = vma->iova; in get_and_pin_iova_range_locked()
595 *iova = vma->iova; in msm_gem_get_iova()
630 if (!iova) { in msm_gem_set_iova()
634 vma = get_vma_locked(obj, aspace, iova, iova + obj->size); in msm_gem_set_iova()
637 } else if (GEM_WARN_ON(vma->iova != iova)) { in msm_gem_set_iova()
992 vma->aspace, vma->iova, in msm_gem_describe()
1222 vma->iova = physaddr(obj); in msm_gem_new()
1315 struct drm_gem_object **bo, uint64_t *iova) in msm_gem_kernel_new() argument
[all …]
H A Dmsm_gpummu.c28 static int msm_gpummu_map(struct msm_mmu *mmu, uint64_t iova, in msm_gpummu_map() argument
32 unsigned idx = (iova - GPUMMU_VA_START) / GPUMMU_PAGE_SIZE; in msm_gpummu_map()
56 static int msm_gpummu_unmap(struct msm_mmu *mmu, uint64_t iova, size_t len) in msm_gpummu_unmap() argument
59 unsigned idx = (iova - GPUMMU_VA_START) / GPUMMU_PAGE_SIZE; in msm_gpummu_unmap()
/openbmc/qemu/hw/vfio/
H A Dcontainer.c64 hwaddr iova, ram_addr_t size, in vfio_dma_unmap_bitmap() argument
80 unmap->iova = iova; in vfio_dma_unmap_bitmap()
118 int vfio_dma_unmap(VFIOContainer *container, hwaddr iova, in vfio_dma_unmap() argument
124 .iova = iova, in vfio_dma_unmap()
133 return vfio_dma_unmap_bitmap(container, iova, size, iotlb); in vfio_dma_unmap()
163 ret = vfio_get_dirty_bitmap(container, iova, size, in vfio_dma_unmap()
173 int vfio_dma_map(VFIOContainer *container, hwaddr iova, in vfio_dma_map() argument
180 .iova = iova, in vfio_dma_map()
231 hwaddr iova, hwaddr size) in vfio_query_dirty_bitmap() argument
242 range->iova = iova; in vfio_query_dirty_bitmap()
[all …]
/openbmc/linux/drivers/staging/media/ipu3/
H A Dipu3-mmu.h30 int imgu_mmu_map(struct imgu_mmu_info *info, unsigned long iova,
32 size_t imgu_mmu_unmap(struct imgu_mmu_info *info, unsigned long iova,
34 size_t imgu_mmu_map_sg(struct imgu_mmu_info *info, unsigned long iova,
/openbmc/linux/drivers/s390/cio/
H A Dvfio_ccw_cp.c178 u64 iova_pfn_start = iova >> PAGE_SHIFT; in page_array_iova_pinned()
179 u64 iova_pfn_end = (iova + length - 1) >> PAGE_SHIFT; in page_array_iova_pinned()
391 if (!ccw_is_chain(ccw) && !is_tic_within_range(ccw, iova, cnt)) in ccwchain_calc_length()
564 u64 iova; in ccw_count_idaws() local
575 ret = vfio_dma_rw(vdev, ccw->cda, &iova, size, false); in ccw_count_idaws()
584 iova = iova >> 32; in ccw_count_idaws()
586 iova = ccw->cda; in ccw_count_idaws()
591 return idal_2k_nr_words((void *)iova, bytes); in ccw_count_idaws()
595 return idal_2k_nr_words((void *)iova, bytes); in ccw_count_idaws()
598 return idal_nr_words((void *)iova, bytes); in ccw_count_idaws()
[all …]
/openbmc/linux/arch/arm/mm/
H A Ddma-mapping.c764 dma_addr_t iova; in __alloc_iova() local
809 iova += start << PAGE_SHIFT; in __alloc_iova()
811 return iova; in __alloc_iova()
970 dma_addr_t dma_addr, iova; in __iommu_create_mapping() local
977 iova = dma_addr; in __iommu_create_mapping()
995 iova += len; in __iommu_create_mapping()
1014 iova &= PAGE_MASK; in __iommu_remove_mapping()
1193 dma_addr_t iova, iova_base; in __map_sg_chunk() local
1220 iova += len; in __map_sg_chunk()
1417 if (!iova) in arm_iommu_unmap_page()
[all …]
/openbmc/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dqos_sq.c42 u64 iova, pa; in otx2_qos_sq_aura_pool_init() local
98 iova = sq->sqb_ptrs[ptr]; in otx2_qos_sq_aura_pool_init()
99 pa = otx2_iova_to_phys(pfvf->iommu_domain, iova); in otx2_qos_sq_aura_pool_init()
100 dma_unmap_page_attrs(pfvf->dev, iova, hw->sqb_size, in otx2_qos_sq_aura_pool_init()
121 u64 iova, pa; in otx2_qos_sq_free_sqbs() local
130 iova = sq->sqb_ptrs[sqb]; in otx2_qos_sq_free_sqbs()
131 pa = otx2_iova_to_phys(pfvf->iommu_domain, iova); in otx2_qos_sq_free_sqbs()
132 dma_unmap_page_attrs(pfvf->dev, iova, hw->sqb_size, in otx2_qos_sq_free_sqbs()
H A Dotx2_txrx.c618 u64 dma_addr, *iova = NULL; in otx2_sqe_add_sg() local
646 *iova++ = dma_addr; in otx2_sqe_add_sg()
737 mem->addr = iova; in otx2_sqe_add_mem()
854 u64 *iova = NULL; in otx2_sqe_tso_add_sg() local
875 *iova++ = list->dma_addr[seg]; in otx2_sqe_tso_add_sg()
1088 u64 iova; in otx2_set_txtstamp() local
1133 iova = sq->timestamps->iova + (sq->head * sizeof(u64)); in otx2_set_txtstamp()
1219 u64 iova; in otx2_cleanup_rx_cqes() local
1354 u64 *iova = NULL; in otx2_xdp_sqe_add_sg() local
1362 *iova = dma_addr; in otx2_xdp_sqe_add_sg()
[all …]
/openbmc/linux/drivers/infiniband/hw/mlx5/
H A Dmr.c56 u64 iova, int access_flags,
1135 mr->ibmr.iova = iova; in set_mr_fields()
1140 u64 iova) in mlx5_umem_dmabuf_default_pgsz() argument
1146 umem->iova = iova; in mlx5_umem_dmabuf_default_pgsz()
1166 0, iova); in alloc_cacheable_mr()
1446 if (iova != 0) in create_user_odp_mr()
1651 mr->ibmr.iova = iova; in umr_rereg_pas()
2477 u64 iova = pi_mr->data_iova; in mlx5_ib_map_mtt_mr_sg_pi() local
2500 pi_mr->ibmr.iova = iova; in mlx5_ib_map_mtt_mr_sg_pi()
2538 pi_mr->ibmr.iova = 0; in mlx5_ib_map_klm_mr_sg_pi()
[all …]
/openbmc/qemu/hw/i386/
H A Dtrace-events29 …_t addr, uint64_t slpte, uint16_t domain) "IOTLB page hit sid 0x%"PRIx16" iova 0x%"PRIx64" slpte 0…
30 …addr, uint64_t slpte, uint16_t domain) "IOTLB page update sid 0x%"PRIx16" iova 0x%"PRIx64" slpte 0…
37 …, uint64_t start, uint64_t end) "walk (base=0x%"PRIx64", level=%"PRIu32") iova range 0x%"PRIx64" -…
38 …d_page_walk_one(uint16_t domain, uint64_t iova, uint64_t gpa, uint64_t mask, int perm) "domain 0x%…
39 vtd_page_walk_one_skip_map(uint64_t iova, uint64_t mask, uint64_t translated) "iova 0x%"PRIx64" mas…
40 vtd_page_walk_one_skip_unmap(uint64_t iova, uint64_t mask) "iova 0x%"PRIx64" mask 0x%"PRIx64
41 vtd_page_walk_skip_read(uint64_t iova, uint64_t next) "Page walk skip iova 0x%"PRIx64" - 0x%"PRIx64…
42 vtd_page_walk_skip_reserve(uint64_t iova, uint64_t next) "Page walk skip iova 0x%"PRIx64" - 0x%"PRI…
44 vtd_as_unmap_whole(uint8_t bus, uint8_t slot, uint8_t fn, uint64_t iova, uint64_t size) "Device %02…
45 vtd_translate_pt(uint16_t sid, uint64_t addr) "source id 0x%"PRIx16", iova 0x%"PRIx64
[all …]
/openbmc/linux/drivers/iommu/
H A Diommu.c2358 return iova; in iommu_iova_to_phys()
2432 iova, &paddr, pgsize, count); in __iommu_map_pages()
2449 unsigned long orig_iova = iova; in __iommu_map()
2492 iova += mapped; in __iommu_map()
2533 pgsize = iommu_pgsize(domain, iova, iova, size, &count); in __iommu_unmap_pages()
2545 unsigned long orig_iova = iova; in __iommu_unmap()
2565 iova, size, min_pagesz); in __iommu_unmap()
2583 iova, unmapped_page); in __iommu_unmap()
2585 iova += unmapped_page; in __iommu_unmap()
2608 unsigned long iova, size_t size, in iommu_unmap_fast() argument
[all …]
/openbmc/linux/drivers/iommu/arm/arm-smmu/
H A Darm-smmu.c273 iova = (iova >> 12) << 12; in arm_smmu_tlb_inv_range_s1()
274 iova |= cfg->asid; in arm_smmu_tlb_inv_range_s1()
277 iova += granule; in arm_smmu_tlb_inv_range_s1()
280 iova >>= 12; in arm_smmu_tlb_inv_range_s1()
284 iova += granule >> 12; in arm_smmu_tlb_inv_range_s1()
299 iova >>= 12; in arm_smmu_tlb_inv_range_s2()
305 iova += granule >> 12; in arm_smmu_tlb_inv_range_s2()
394 unsigned long iova; in arm_smmu_context_fault() local
1263 va = iova & ~0xfffUL; in arm_smmu_iova_to_phys_hard()
1275 &iova); in arm_smmu_iova_to_phys_hard()
[all …]
/openbmc/linux/drivers/iommu/iommufd/
H A Diommufd_test.h63 __aligned_u64 iova; member
82 __aligned_u64 iova; member
87 __aligned_u64 iova; member
H A Dvfio_compat.c167 unsigned long iova; in iommufd_vfio_map_dma() local
190 iova = map.iova; in iommufd_vfio_map_dma()
191 rc = iopt_map_user_pages(ictx, &ioas->iopt, &iova, u64_to_user_ptr(map.vaddr), in iommufd_vfio_map_dma()
224 if (unmap.iova != 0 || unmap.size != 0) { in iommufd_vfio_unmap_dma()
236 unsigned long iovas[] = { unmap.iova + unmap.size - 1, in iommufd_vfio_unmap_dma()
237 unmap.iova - 1 }; in iommufd_vfio_unmap_dma()
240 unmap.iova ? 2 : 1); in iommufd_vfio_unmap_dma()
244 rc = iopt_unmap_iova(&ioas->iopt, unmap.iova, unmap.size, in iommufd_vfio_unmap_dma()
/openbmc/qemu/hw/virtio/
H A Dvhost-backend.c329 uint64_t iova, uint64_t uaddr, in vhost_backend_update_device_iotlb() argument
335 imsg.iova = iova; in vhost_backend_update_device_iotlb()
361 uint64_t iova, uint64_t len) in vhost_backend_invalidate_device_iotlb() argument
365 imsg.iova = iova; in vhost_backend_invalidate_device_iotlb()
387 ret = vhost_device_iotlb_miss(dev, imsg->iova, in vhost_backend_handle_iotlb_msg()
/openbmc/linux/drivers/vhost/
H A Dvdpa.c889 r = vhost_iotlb_add_range_ctx(iotlb, iova, iova + size - 1, in vhost_vdpa_map()
900 r = iommu_map(v->domain, iova, pa, size, in vhost_vdpa_map()
904 vhost_iotlb_del_range(iotlb, iova, iova + size - 1); in vhost_vdpa_map()
916 u64 iova, u64 size) in vhost_vdpa_unmap() argument
922 vhost_vdpa_iotlb_unmap(v, iotlb, iova, iova + size - 1, asid); in vhost_vdpa_unmap()
936 u64 offset, map_size, map_iova = iova; in vhost_vdpa_va_map()
975 vhost_vdpa_unmap(v, iotlb, iova, map_iova - iova); in vhost_vdpa_va_map()
992 u64 start = iova; in vhost_vdpa_pa_map()
1019 iova &= PAGE_MASK; in vhost_vdpa_pa_map()
1065 iova += csize; in vhost_vdpa_pa_map()
[all …]
/openbmc/linux/drivers/gpu/drm/tegra/
H A Dnvdec.c229 nvdec->falcon.firmware.iova); in nvdec_exit()
233 nvdec->falcon.firmware.iova); in nvdec_exit()
248 dma_addr_t iova; in nvdec_load_falcon_firmware() local
263 virt = dma_alloc_coherent(nvdec->dev, size, &iova, GFP_KERNEL); in nvdec_load_falcon_firmware()
265 err = dma_mapping_error(nvdec->dev, iova); in nvdec_load_falcon_firmware()
269 virt = tegra_drm_alloc(tegra, size, &iova); in nvdec_load_falcon_firmware()
275 nvdec->falcon.firmware.iova = iova; in nvdec_load_falcon_firmware()
302 dma_free_coherent(nvdec->dev, size, virt, iova); in nvdec_load_falcon_firmware()
304 tegra_drm_free(tegra, size, virt, iova); in nvdec_load_falcon_firmware()

12345678910>>...13