Lines Matching refs:mm

903 static bool __maybe_unused map_is_tee_ram(const struct tee_mmap_region *mm)  in map_is_tee_ram()  argument
905 switch (mm->type) { in map_is_tee_ram()
921 static bool __maybe_unused map_is_secure(const struct tee_mmap_region *mm) in map_is_secure() argument
923 return !!(core_mmu_type_to_attr(mm->type) & TEE_MATTR_SECURE); in map_is_secure()
926 static bool __maybe_unused map_is_pgdir(const struct tee_mmap_region *mm) in map_is_pgdir() argument
928 return mm->region_size == CORE_MMU_PGDIR_SIZE; in map_is_pgdir()
1940 struct tee_mmap_region *mm) in can_map_at_level() argument
1954 if (mm->region_size < block_size) in can_map_at_level()
1962 if ((map_is_tee_ram(mm) || mm->type == MEM_AREA_PAGER_VASPACE) && in can_map_at_level()
1970 void core_mmu_map_region(struct mmu_partition *prtn, struct tee_mmap_region *mm) in core_mmu_map_region() argument
1974 vaddr_t vaddr = mm->va; in core_mmu_map_region()
1975 paddr_t paddr = mm->pa; in core_mmu_map_region()
1976 ssize_t size_left = mm->size; in core_mmu_map_region()
1977 uint32_t attr = mm->attr; in core_mmu_map_region()
2003 block_size, mm)) { in core_mmu_map_region()
2004 bool secure = mm->attr & TEE_MATTR_SECURE; in core_mmu_map_region()
2045 struct tee_mmap_region *mm; in core_mmu_map_pages() local
2062 mm = find_map_by_va((void *)vaddr); in core_mmu_map_pages()
2063 if (!mm || !va_is_in_map(mm, vaddr + num_pages * SMALL_PAGE_SIZE - 1)) in core_mmu_map_pages()
2066 if (!core_mmu_is_dynamic_vaspace(mm)) in core_mmu_map_pages()
2122 struct tee_mmap_region *mm = NULL; in core_mmu_map_contiguous_pages() local
2140 mm = find_map_by_va((void *)vaddr); in core_mmu_map_contiguous_pages()
2141 if (!mm || !va_is_in_map(mm, vaddr + num_pages * SMALL_PAGE_SIZE - 1)) in core_mmu_map_contiguous_pages()
2144 if (!core_mmu_is_dynamic_vaspace(mm)) in core_mmu_map_contiguous_pages()
2193 struct tee_mmap_region *mm = NULL; in maybe_remove_from_mem_map() local
2197 mm = find_map_by_va((void *)vstart); in maybe_remove_from_mem_map()
2198 if (!mm || !va_is_in_map(mm, vstart + num_pages * SMALL_PAGE_SIZE - 1)) in maybe_remove_from_mem_map()
2201 if (core_mmu_is_dynamic_vaspace(mm)) in maybe_remove_from_mem_map()
2215 assert(mm->region_size == SMALL_PAGE_SIZE); in maybe_remove_from_mem_map()
2217 if (va == mm->va && mm->size == num_pages * SMALL_PAGE_SIZE) { in maybe_remove_from_mem_map()
2219 idx = mm - mem_map->map; in maybe_remove_from_mem_map()
2225 } else if (va == mm->va) { in maybe_remove_from_mem_map()
2226 mm->va += num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2227 mm->pa += num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2228 mm->size -= num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2229 } else if (va + num_pages * SMALL_PAGE_SIZE == mm->va + mm->size) { in maybe_remove_from_mem_map()
2230 mm->size -= num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2232 struct tee_mmap_region m = *mm; in maybe_remove_from_mem_map()
2235 idx = mm - mem_map->map; in maybe_remove_from_mem_map()
2238 mm->size = va - mm->va; in maybe_remove_from_mem_map()
2239 m.va += mm->size + num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2240 m.pa += mm->size + num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2241 m.size -= mm->size + num_pages * SMALL_PAGE_SIZE; in maybe_remove_from_mem_map()
2774 tee_mm_entry_t *mm __maybe_unused = NULL; in carve_out_core_mem()
2777 mm = phys_mem_alloc2(pa, end_pa - pa); in carve_out_core_mem()
2778 assert(mm); in carve_out_core_mem()