Lines Matching refs:iova

255 			       unsigned long iova, size_t size, size_t pgcount,
280 unsigned long iova, phys_addr_t paddr,
299 tblp = ptep - ARM_LPAE_LVL_IDX(iova, lvl, data);
300 if (__arm_lpae_unmap(data, NULL, iova + i * sz, sz, 1,
343 static int __arm_lpae_map(struct arm_lpae_io_pgtable *data, unsigned long iova,
355 map_idx_start = ARM_LPAE_LVL_IDX(iova, lvl, data);
362 ret = arm_lpae_init_pte(data, iova, paddr, prot, lvl, num_entries, ptep);
396 return __arm_lpae_map(data, iova, paddr, size, pgcount, prot, lvl + 1,
464 static int arm_lpae_map_pages(struct io_pgtable_ops *ops, unsigned long iova,
473 long iaext = (s64)iova >> cfg->ias;
488 ret = __arm_lpae_map(data, iova, paddr, pgsize, pgcount, prot, lvl,
492 * a chance for anything to kick off a table walk for the new iova.
540 unsigned long iova, size_t size,
560 unmap_idx_start = ARM_LPAE_LVL_IDX(iova, lvl, data);
590 io_pgtable_tlb_add_page(&data->iop, gather, iova + i * size, size);
595 return __arm_lpae_unmap(data, gather, iova, size, pgcount, lvl, tablep);
600 unsigned long iova, size_t size, size_t pgcount,
611 unmap_idx_start = ARM_LPAE_LVL_IDX(iova, lvl, data);
631 io_pgtable_tlb_flush_walk(iop, iova + i * size, size,
635 io_pgtable_tlb_add_page(iop, gather, iova + i * size, size);
648 return arm_lpae_split_blk_unmap(data, gather, iova, size, pte,
654 return __arm_lpae_unmap(data, gather, iova, size, pgcount, lvl + 1, ptep);
657 static size_t arm_lpae_unmap_pages(struct io_pgtable_ops *ops, unsigned long iova,
664 long iaext = (s64)iova >> cfg->ias;
674 return __arm_lpae_unmap(data, gather, iova, pgsize, pgcount,
679 unsigned long iova)
691 ptep += ARM_LPAE_LVL_IDX(iova, lvl, data);
710 iova &= (ARM_LPAE_BLOCK_SIZE(lvl, data) - 1);
711 return iopte_to_paddr(pte, data) | iova;
1116 static void __init dummy_tlb_flush(unsigned long iova, size_t size,
1124 unsigned long iova, size_t granule,
1127 dummy_tlb_flush(iova, granule, granule, cookie);
1163 unsigned long iova;
1193 iova = 0;
1197 if (ops->map_pages(ops, iova, iova, size, 1,
1204 if (!ops->map_pages(ops, iova, iova + size, size, 1,
1209 if (ops->iova_to_phys(ops, iova + 42) != (iova + 42))
1212 iova += SZ_1G;
1229 iova = 0;
1233 if (ops->unmap_pages(ops, iova, size, 1, NULL) != size)
1236 if (ops->iova_to_phys(ops, iova + 42))
1240 if (ops->map_pages(ops, iova, iova, size, 1,
1244 if (ops->iova_to_phys(ops, iova + 42) != (iova + 42))
1247 iova += SZ_1G;