Lines Matching refs:ptep
252 static void __arm_lpae_set_pte(arm_lpae_iopte *ptep, arm_lpae_iopte pte, in __arm_lpae_set_pte() argument
255 *ptep = pte; in __arm_lpae_set_pte()
259 __arm_lpae_dma_addr(ptep), in __arm_lpae_set_pte()
265 arm_lpae_iopte *ptep);
270 arm_lpae_iopte *ptep) in arm_lpae_init_pte() argument
275 if (iopte_leaf(*ptep, lvl)) { in arm_lpae_init_pte()
279 } else if (iopte_type(*ptep, lvl) == ARM_LPAE_PTE_TYPE_TABLE) { in arm_lpae_init_pte()
287 tblp = ptep - ARM_LPAE_LVL_IDX(iova, lvl, data); in arm_lpae_init_pte()
303 __arm_lpae_set_pte(ptep, pte, cfg); in arm_lpae_init_pte()
309 int lvl, arm_lpae_iopte *ptep) in __arm_lpae_map() argument
316 ptep += ARM_LPAE_LVL_IDX(iova, lvl, data); in __arm_lpae_map()
320 return arm_lpae_init_pte(data, iova, paddr, prot, lvl, ptep); in __arm_lpae_map()
327 pte = *ptep; in __arm_lpae_map()
337 __arm_lpae_set_pte(ptep, pte, cfg); in __arm_lpae_map()
383 arm_lpae_iopte *ptep = data->pgd; in arm_lpae_map() local
392 ret = __arm_lpae_map(data, iova, paddr, size, prot, lvl, ptep); in arm_lpae_map()
403 arm_lpae_iopte *ptep) in __arm_lpae_free_pgtable() argument
413 start = ptep; in __arm_lpae_free_pgtable()
417 end = ptep; in __arm_lpae_free_pgtable()
419 end = (void *)ptep + table_size; in __arm_lpae_free_pgtable()
421 while (ptep != end) { in __arm_lpae_free_pgtable()
422 arm_lpae_iopte pte = *ptep++; in __arm_lpae_free_pgtable()
444 arm_lpae_iopte *ptep, size_t blk_size) in arm_lpae_split_blk_unmap() argument
453 blk_paddr = iopte_to_pfn(*ptep, data) << data->pg_shift; in arm_lpae_split_blk_unmap()
475 __arm_lpae_set_pte(ptep, table, cfg); in arm_lpae_split_blk_unmap()
483 arm_lpae_iopte *ptep) in __arm_lpae_unmap() argument
490 ptep += ARM_LPAE_LVL_IDX(iova, lvl, data); in __arm_lpae_unmap()
491 pte = *ptep; in __arm_lpae_unmap()
499 __arm_lpae_set_pte(ptep, 0, &data->iop.cfg); in __arm_lpae_unmap()
505 ptep = iopte_deref(pte, data); in __arm_lpae_unmap()
506 __arm_lpae_free_pgtable(data, lvl + 1, ptep); in __arm_lpae_unmap()
518 iopte_prot(pte), lvl, ptep, in __arm_lpae_unmap()
523 ptep = iopte_deref(pte, data); in __arm_lpae_unmap()
524 return __arm_lpae_unmap(data, iova, size, lvl + 1, ptep); in __arm_lpae_unmap()
533 arm_lpae_iopte *ptep = data->pgd; in arm_lpae_unmap() local
536 unmapped = __arm_lpae_unmap(data, iova, size, lvl, ptep); in arm_lpae_unmap()
547 arm_lpae_iopte pte, *ptep = data->pgd; in arm_lpae_iova_to_phys() local
552 if (!ptep) in arm_lpae_iova_to_phys()
556 pte = *(ptep + ARM_LPAE_LVL_IDX(iova, lvl, data)); in arm_lpae_iova_to_phys()
567 ptep = iopte_deref(pte, data); in arm_lpae_iova_to_phys()