Lines Matching refs:iop

31 	container_of((x), struct arm_lpae_io_pgtable, iop)
142 struct io_pgtable iop; member
263 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_lpae_init_pte()
267 if (data->iop.fmt != ARM_MALI_LPAE && lvl == ARM_LPAE_MAX_LEVELS - 1) in __arm_lpae_init_pte()
287 if (iopte_leaf(ptep[i], lvl, data->iop.fmt)) { in arm_lpae_init_pte()
317 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_install_table()
351 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_lpae_map()
387 if (pte && !iopte_leaf(pte, lvl, data->iop.fmt)) { in __arm_lpae_map()
405 if (data->iop.fmt == ARM_64_LPAE_S1 || in arm_lpae_prot_to_pte()
406 data->iop.fmt == ARM_32_LPAE_S1) { in arm_lpae_prot_to_pte()
424 if (data->iop.fmt == ARM_64_LPAE_S2 || in arm_lpae_prot_to_pte()
425 data->iop.fmt == ARM_32_LPAE_S2) { in arm_lpae_prot_to_pte()
447 if (prot & IOMMU_CACHE && data->iop.fmt != ARM_MALI_LPAE) in arm_lpae_prot_to_pte()
455 if (data->iop.cfg.quirks & IO_PGTABLE_QUIRK_ARM_NS) in arm_lpae_prot_to_pte()
458 if (data->iop.fmt != ARM_MALI_LPAE) in arm_lpae_prot_to_pte()
469 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_map_pages()
521 if (!pte || iopte_leaf(pte, lvl, data->iop.fmt)) in __arm_lpae_free_pgtable()
527 __arm_lpae_free_pages(start, table_size, &data->iop.cfg); in __arm_lpae_free_pgtable()
530 static void arm_lpae_free_pgtable(struct io_pgtable *iop) in arm_lpae_free_pgtable() argument
532 struct arm_lpae_io_pgtable *data = io_pgtable_to_data(iop); in arm_lpae_free_pgtable()
544 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_split_blk_unmap()
590 io_pgtable_tlb_add_page(&data->iop, gather, iova + i * size, size); in arm_lpae_split_blk_unmap()
604 struct io_pgtable *iop = &data->iop; in __arm_lpae_unmap() local
627 __arm_lpae_clear_pte(ptep, &iop->cfg); in __arm_lpae_unmap()
629 if (!iopte_leaf(pte, lvl, iop->fmt)) { in __arm_lpae_unmap()
631 io_pgtable_tlb_flush_walk(iop, iova + i * size, size, in __arm_lpae_unmap()
635 io_pgtable_tlb_add_page(iop, gather, iova + i * size, size); in __arm_lpae_unmap()
643 } else if (iopte_leaf(pte, lvl, iop->fmt)) { in __arm_lpae_unmap()
662 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_unmap_pages()
699 if (iopte_leaf(pte, lvl, data->iop.fmt)) in arm_lpae_iova_to_phys()
788 data->iop.ops = (struct io_pgtable_ops) { in arm_lpae_alloc_pgtable()
894 return &data->iop; in arm_64_lpae_alloc_pgtable_s1()
996 return &data->iop; in arm_64_lpae_alloc_pgtable_s2()
1075 return &data->iop; in arm_mali_lpae_alloc_pgtable()
1139 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_dump_ops()