Lines Matching defs:mm

62 	mmap_region_t *mm = mmap;
63 while (mm->size != 0U) {
65 (void *)mm->base_va, mm->base_pa,
66 mm->size, mm->attr);
67 ++mm;
76 mmap_region_t *mm = mmap;
77 const mmap_region_t *mm_last = mm + ARRAY_SIZE(mmap) - 1U;
99 for (mm = mmap; mm->size; ++mm) {
101 uintptr_t mm_end_va = mm->base_va + mm->size - 1U;
108 ((base_va >= mm->base_va) && (end_va <= mm_end_va)) ||
109 ((mm->base_va >= base_va) && (mm_end_va <= end_va));
117 assert((mm->base_va - mm->base_pa) ==
119 assert((base_va != mm->base_va) || (size != mm->size));
128 mm->base_pa + mm->size - 1;
130 bool separated_pa = (end_pa < mm->base_pa) ||
132 bool separated_va = (end_va < mm->base_va) ||
139 mm = mmap; /* Restore pointer to the start of the array */
144 while ((mm->base_va < base_va) && (mm->size != 0U))
145 ++mm;
158 while ((mm->base_va == base_va) && (mm->size > size))
159 ++mm;
162 (void)memmove(mm + 1, mm, (uintptr_t)mm_last - (uintptr_t)mm);
167 mm->base_pa = base_pa;
168 mm->base_va = base_va;
169 mm->size = size;
170 mm->attr = attr;
178 void mmap_add(const mmap_region_t *mm)
180 const mmap_region_t *mm_cursor = mm;
279 static unsigned int mmap_region_attr(const mmap_region_t *mm, uintptr_t base_va,
300 for ( ; ; ++mm) {
302 if (mm->size == 0U)
305 if (mm->base_va > (base_va + size - 1U))
308 if ((mm->base_va + mm->size - 1U) < base_va)
311 if ((ret == 0U) && (mm->attr == *attr))
314 if ((mm->base_va > base_va) ||
315 ((mm->base_va + mm->size - 1U) < (base_va + size - 1U)))
318 *attr = mm->attr;
324 static mmap_region_t *init_xlation_table_inner(mmap_region_t *mm,
343 if (mm->size == 0U) {
346 } else if ((mm->base_va + mm->size - 1U) < base_va) {
348 ++mm;
355 if (mm->base_va > (base_va + level_size - 1U)) {
366 unsigned int r = mmap_region_attr(mm, base_va,
371 base_va - mm->base_va + mm->base_pa,
385 mm = init_xlation_table_inner(mm, base_va,
396 return mm;