/linux-master/drivers/gpu/drm/panthor/ |
H A D | panthor_mmu.c | 572 u64 iova, u64 size, u32 op) 580 lock_region(ptdev, as_nr, iova, size); 590 u64 iova, u64 size, u32 op) 596 ret = mmu_hw_do_operation_locked(ptdev, vm->as.id, iova, size, op); 865 static int panthor_vm_flush_range(struct panthor_vm *vm, u64 iova, u64 size) argument 879 ret = mmu_hw_do_operation(vm, iova, size, AS_COMMAND_FLUSH_PT); 885 static int panthor_vm_unmap_pages(struct panthor_vm *vm, u64 iova, u64 size) argument 891 drm_dbg(&ptdev->base, "unmap: as=%d, iova=%llx, len=%llx", vm->as.id, iova, size); 895 size_t pgsize = get_pgsize(iova 571 mmu_hw_do_operation_locked(struct panthor_device *ptdev, int as_nr, u64 iova, u64 size, u32 op) argument 589 mmu_hw_do_operation(struct panthor_vm *vm, u64 iova, u64 size, u32 op) argument 914 panthor_vm_map_pages(struct panthor_vm *vm, u64 iova, int prot, struct sg_table *sgt, u64 offset, u64 size) argument 1601 mmu_tlb_flush_walk(unsigned long iova, size_t size, size_t granule, void *cookie) argument [all...] |
/linux-master/drivers/iommu/arm/arm-smmu/ |
H A D | arm-smmu-nvidia.c | 198 unsigned long iova; local 207 iova = readq_relaxed(cb_base + ARM_SMMU_CB_FAR); 211 "Unhandled context fault: fsr=0x%x, iova=0x%08lx, fsynr=0x%x, cbfrsynra=0x%x, cb=%d\n", 212 fsr, iova, fsynr, cbfrsynra, idx);
|
/linux-master/drivers/staging/media/ipu3/ |
H A D | ipu3.h | 7 #include <linux/iova.h>
|
/linux-master/drivers/gpu/drm/msm/adreno/ |
H A D | a6xx_hfi.h | 18 u32 iova; member in struct:a6xx_hfi_queue_header
|
H A D | a6xx_gpu_state.c | 97 u64 iova; member in struct:a6xx_crashdumper 139 &dumper->bo, &dumper->iova); 164 gpu_write64(gpu, REG_A6XX_CP_CRASH_SCRIPT_BASE, dumper->iova); 555 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; 601 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; 699 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; 758 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; 857 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; 892 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; 996 u64 out = dumper->iova [all...] |
/linux-master/drivers/vdpa/vdpa_sim/ |
H A D | vdpa_sim.h | 9 #include <linux/iova.h>
|
/linux-master/drivers/gpu/drm/etnaviv/ |
H A D | etnaviv_cmdbuf.c | 139 return mapping->iova + buf->suballoc_offset;
|
H A D | etnaviv_gem.h | 31 u32 iova; member in struct:etnaviv_vram_mapping
|
/linux-master/drivers/media/platform/nvidia/tegra-vde/ |
H A D | vde.c | 100 err = tegra_vde_iommu_map(vde, &bo->sgt, &bo->iova, bo->size); 106 bo->dma_addr = iova_dma_addr(&vde->iova, bo->iova); 134 tegra_vde_iommu_unmap(vde, bo->iova);
|
/linux-master/drivers/gpu/drm/tegra/ |
H A D | gem.c | 127 err = dma_get_sgtable(dev, map->sgt, obj->vaddr, obj->iova, gem->size); 145 map->phys = obj->iova; 257 bo->iova = bo->mm->start; 259 bo->size = iommu_map_sgtable(tegra->domain, bo->iova, bo->sgt, prot); 284 iommu_unmap(tegra->domain, bo->iova, bo->size); 339 dma_free_wc(drm->dev, bo->gem.size, bo->vaddr, bo->iova); 391 bo->vaddr = dma_alloc_wc(drm->dev, size, &bo->iova, 591 err = dma_mmap_wc(gem->dev->dev, vma, bo->vaddr, bo->iova, 641 if (dma_get_sgtable(attach->dev, sgt, bo->vaddr, bo->iova,
|
/linux-master/drivers/infiniband/sw/rdmavt/ |
H A D | mr.c | 362 mr->mr.iova = virt_addr; 597 mr->mr.user_base = ibmr->iova; 598 mr->mr.iova = ibmr->iova; 599 mr->mr.offset = ibmr->iova - (u64)mr->mr.map[0]->segs[0].vaddr; 633 mr->mr.iova = ibmr->iova; 872 off = vaddr - mr->iova; 873 if (unlikely(vaddr < mr->iova || off + len > mr->length ||
|
/linux-master/drivers/net/ethernet/mellanox/mlx4/ |
H A D | mr.c | 418 u64 iova, u64 size, u32 access, int npages, 421 mr->iova = iova; 527 int mlx4_mr_alloc(struct mlx4_dev *dev, u32 pd, u64 iova, u64 size, u32 access, argument 537 err = mlx4_mr_alloc_reserved(dev, index, pd, iova, size, 590 u64 iova, u64 size, int npages, 599 mpt_entry->start = cpu_to_be64(iova); 649 mpt_entry->start = cpu_to_be64(mr->iova); 417 mlx4_mr_alloc_reserved(struct mlx4_dev *dev, u32 mridx, u32 pd, u64 iova, u64 size, u32 access, int npages, int page_shift, struct mlx4_mr *mr) argument 589 mlx4_mr_rereg_mem_write(struct mlx4_dev *dev, struct mlx4_mr *mr, u64 iova, u64 size, int npages, int page_shift, struct mlx4_mpt_entry *mpt_entry) argument
|
/linux-master/drivers/vfio/ |
H A D | iommufd.c | 178 static void vfio_emulated_unmap(void *data, unsigned long iova, argument 184 vdev->ops->dma_unmap(vdev, iova, length);
|
H A D | vfio_iommu_spapr_tce.c | 930 num = tce_iommu_find_table(container, param.iova, &tbl); 938 /* iova is checked by the IOMMU API */ 951 ret = iommu_tce_put_param_check(tbl, param.iova, param.vaddr); 957 param.iova >> tbl->it_page_shift, 963 param.iova >> tbl->it_page_shift, 997 num = tce_iommu_find_table(container, param.iova, &tbl); 1004 ret = iommu_tce_clear_param_check(tbl, param.iova, 0, 1010 param.iova >> tbl->it_page_shift,
|
/linux-master/drivers/infiniband/core/ |
H A D | umem.c | 88 umem->iova = va = virt; 115 /* Except for the last entry, the ending iova alignment sets 116 * the maximum possible page size as the low bits of the iova 177 * Drivers should call ib_umem_find_best_pgsz() to set the iova 180 umem->iova = addr;
|
/linux-master/drivers/soc/apple/ |
H A D | rtkit.c | 261 buffer->iova = FIELD_GET(APPLE_RTKIT_BUFFER_REQUEST_IOVA, msg); 265 buffer->size, &buffer->iova); 267 if (buffer->iova && 279 &buffer->iova, GFP_KERNEL); 291 buffer->iova); 300 buffer->iova = 0; 315 dma_free_coherent(rtk->dev, bfr->size, bfr->buffer, bfr->iova); 319 bfr->iova = 0;
|
/linux-master/drivers/iommu/ |
H A D | mtk_iommu.c | 205 * The IOMMU HW may support 16GB iova. In order to balance the IOVA ranges, 206 * different masters will be put in different iova ranges, for example vcodec 210 * Here list the iova ranges this SoC supports and which larbs/ports are in 213 * 16GB iova all use one pgtable, but each a region is a iommu group. 308 #define MTK_IOMMU_TLB_ADDR(iova) ({ \ 309 dma_addr_t _addr = iova; \ 389 static void mtk_iommu_tlb_flush_range_sync(unsigned long iova, size_t size, argument 431 writel_relaxed(MTK_IOMMU_TLB_ADDR(iova), base + REG_MMU_INVLD_START_A); 432 writel_relaxed(MTK_IOMMU_TLB_ADDR(iova + size - 1), 511 "fault type=0x%x iova 798 mtk_iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) argument 812 mtk_iommu_unmap(struct iommu_domain *domain, unsigned long iova, size_t pgsize, size_t pgcount, struct iommu_iotlb_gather *gather) argument 839 mtk_iommu_sync_map(struct iommu_domain *domain, unsigned long iova, size_t size) argument 848 mtk_iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) argument [all...] |
/linux-master/drivers/net/ethernet/marvell/octeontx2/af/ |
H A D | rvu_npa.c | 101 inst.res_addr = (u64)aq->res->iova; 135 req->aura.pool_addr = pfvf->pool_ctx->iova + 408 (u64)pfvf->aura_ctx->iova); 414 (u64)pfvf->npa_qints_ctx->iova); 510 NPA_AF_AQ_BASE, (u64)block->aq->inst->iova);
|
/linux-master/drivers/iommu/intel/ |
H A D | iommu.c | 923 /* we don't need lock here; nobody else touches the iova range */ 993 /* We don't need lock here; nobody else touches the iova range */ 1084 /* we don't need lock here; nobody else touches the iova range */ 1915 * touches the iova range 3796 unsigned long iova, phys_addr_t hpa, 3810 max_addr = iova + size; 3827 return __domain_mapping(dmar_domain, iova >> VTD_PAGE_SHIFT, 3832 unsigned long iova, phys_addr_t paddr, 3843 if (!IS_ALIGNED(iova | paddr, pgsize)) 3846 ret = intel_iommu_map(domain, iova, padd 3795 intel_iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t hpa, size_t size, int iommu_prot, gfp_t gfp) argument 3831 intel_iommu_map_pages(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) argument 3853 intel_iommu_unmap(struct iommu_domain *domain, unsigned long iova, size_t size, struct iommu_iotlb_gather *gather) argument 3888 intel_iommu_unmap_pages(struct iommu_domain *domain, unsigned long iova, size_t pgsize, size_t pgcount, struct iommu_iotlb_gather *gather) argument 3907 intel_iommu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) argument 4333 intel_iommu_iotlb_sync_map(struct iommu_domain *domain, unsigned long iova, size_t size) argument 4336 cache_tag_flush_range_np(to_dmar_domain(domain), iova, iova + size - 1); local 4533 intel_iommu_read_and_clear_dirty(struct iommu_domain *domain, unsigned long iova, size_t size, unsigned long flags, struct iommu_dirty_bitmap *dirty) argument [all...] |
/linux-master/drivers/crypto/tegra/ |
H A D | tegra-se-main.c | 31 cmdbuf->iova, 0); 66 cmdbuf->iova, cmdbuf->words * 4); 130 cmdbuf->addr = dma_alloc_attrs(dev, size, &cmdbuf->iova,
|
/linux-master/drivers/gpu/drm/msm/ |
H A D | msm_gpu.h | 100 unsigned long iova; member in struct:msm_gpu_fault_info 259 /* Fault info for most recent iova fault: */ 520 u64 iova; member in struct:msm_gpu_state_bo 532 u64 iova; member in struct:msm_gpu_state::__anon746
|
/linux-master/drivers/iommu/arm/arm-smmu-v3/ |
H A D | arm-smmu-v3.c | 1822 "\tsid 0x%08x.0x%05x: [%u%s] %sprivileged %s%s%s access at iova 0x%016llx\n", 1932 arm_smmu_atc_inv_to_cmd(int ssid, unsigned long iova, size_t size, argument 1966 page_start = iova >> inval_grain_shift; 1967 page_end = (iova + size - 1) >> inval_grain_shift; 2016 unsigned long iova, size_t size) 2044 arm_smmu_atc_inv_to_cmd(ssid, iova, size, &cmd); 2088 unsigned long iova, size_t size, 2093 unsigned long end = iova + size, num_pages = 0, tg = 0; 2125 while (iova < end) { 2151 cmd->tlbi.addr = iova; 2015 arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, int ssid, unsigned long iova, size_t size) argument 2087 __arm_smmu_tlb_inv_range(struct arm_smmu_cmdq_ent *cmd, unsigned long iova, size_t size, size_t granule, struct arm_smmu_domain *smmu_domain) argument 2158 arm_smmu_tlb_inv_range_domain(unsigned long iova, size_t size, size_t granule, bool leaf, struct arm_smmu_domain *smmu_domain) argument 2185 arm_smmu_tlb_inv_range_asid(unsigned long iova, size_t size, int asid, size_t granule, bool leaf, struct arm_smmu_domain *smmu_domain) argument 2201 arm_smmu_tlb_inv_page_nosync(struct iommu_iotlb_gather *gather, unsigned long iova, size_t granule, void *cookie) argument 2211 arm_smmu_tlb_inv_walk(unsigned long iova, size_t size, size_t granule, void *cookie) argument 2715 arm_smmu_map_pages(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t pgsize, size_t pgcount, int prot, gfp_t gfp, size_t *mapped) argument 2727 arm_smmu_unmap_pages(struct iommu_domain *domain, unsigned long iova, size_t pgsize, size_t pgcount, struct iommu_iotlb_gather *gather) argument 2762 arm_smmu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) argument [all...] |
/linux-master/include/rdma/ |
H A D | rdmavt_mr.h | 34 u64 iova; /* IB start address of this region */ member in struct:rvt_mregion
|
/linux-master/drivers/infiniband/hw/mthca/ |
H A D | mthca_mr.c | 428 u64 iova, u64 total_size, u32 access, struct mthca_mr *mr) 467 mpt_entry->start = cpu_to_be64(iova); 518 int list_len, u64 iova, u64 total_size, 533 err = mthca_mr_alloc(dev, pd, buffer_size_shift, iova, 427 mthca_mr_alloc(struct mthca_dev *dev, u32 pd, int buffer_size_shift, u64 iova, u64 total_size, u32 access, struct mthca_mr *mr) argument 516 mthca_mr_alloc_phys(struct mthca_dev *dev, u32 pd, u64 *buffer_list, int buffer_size_shift, int list_len, u64 iova, u64 total_size, u32 access, struct mthca_mr *mr) argument
|
/linux-master/include/uapi/drm/ |
H A D | panfrost_drm.h | 259 __u64 iova; member in struct:panfrost_dump_object_header::__anon225::__anon227
|