• Home
  • Raw
  • Download

Lines Matching full:iop

31 	container_of((x), struct arm_lpae_io_pgtable, iop)
139 struct io_pgtable iop; member
262 if (data->iop.fmt != ARM_MALI_LPAE && lvl == ARM_LPAE_MAX_LEVELS - 1) in __arm_lpae_init_pte()
269 __arm_lpae_set_pte(ptep, pte, &data->iop.cfg); in __arm_lpae_init_pte()
279 if (iopte_leaf(pte, lvl, data->iop.fmt)) { in arm_lpae_init_pte()
308 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_install_table()
341 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_lpae_map()
368 if (pte && !iopte_leaf(pte, lvl, data->iop.fmt)) { in __arm_lpae_map()
385 if (data->iop.fmt == ARM_64_LPAE_S1 || in arm_lpae_prot_to_pte()
386 data->iop.fmt == ARM_32_LPAE_S1) { in arm_lpae_prot_to_pte()
404 if (data->iop.fmt == ARM_64_LPAE_S2 || in arm_lpae_prot_to_pte()
405 data->iop.fmt == ARM_32_LPAE_S2) { in arm_lpae_prot_to_pte()
427 if (prot & IOMMU_CACHE && data->iop.fmt != ARM_MALI_LPAE) in arm_lpae_prot_to_pte()
435 if (data->iop.cfg.quirks & IO_PGTABLE_QUIRK_ARM_NS) in arm_lpae_prot_to_pte()
438 if (data->iop.fmt != ARM_MALI_LPAE) in arm_lpae_prot_to_pte()
448 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_map()
499 if (!pte || iopte_leaf(pte, lvl, data->iop.fmt)) in __arm_lpae_free_pgtable()
505 __arm_lpae_free_pages(start, table_size, &data->iop.cfg); in __arm_lpae_free_pgtable()
508 static void arm_lpae_free_pgtable(struct io_pgtable *iop) in arm_lpae_free_pgtable() argument
510 struct arm_lpae_io_pgtable *data = io_pgtable_to_data(iop); in arm_lpae_free_pgtable()
522 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_split_blk_unmap()
563 io_pgtable_tlb_add_page(&data->iop, gather, iova, size); in arm_lpae_split_blk_unmap()
576 struct io_pgtable *iop = &data->iop; in __arm_lpae_unmap() local
589 __arm_lpae_set_pte(ptep, 0, &iop->cfg); in __arm_lpae_unmap()
591 if (!iopte_leaf(pte, lvl, iop->fmt)) { in __arm_lpae_unmap()
593 io_pgtable_tlb_flush_walk(iop, iova, size, in __arm_lpae_unmap()
597 } else if (iop->cfg.quirks & IO_PGTABLE_QUIRK_NON_STRICT) { in __arm_lpae_unmap()
605 io_pgtable_tlb_add_page(iop, gather, iova, size); in __arm_lpae_unmap()
609 } else if (iopte_leaf(pte, lvl, iop->fmt)) { in __arm_lpae_unmap()
627 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_unmap()
663 if (iopte_leaf(pte, lvl, data->iop.fmt)) in arm_lpae_iova_to_phys()
752 data->iop.ops = (struct io_pgtable_ops) { in arm_lpae_alloc_pgtable()
853 return &data->iop; in arm_64_lpae_alloc_pgtable_s1()
955 return &data->iop; in arm_64_lpae_alloc_pgtable_s2()
1034 return &data->iop; in arm_mali_lpae_alloc_pgtable()
1099 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_dump_ops()