Lines Matching refs:ti
169 static void set_pa_range(struct core_mmu_table_info *ti, vaddr_t va, in set_pa_range() argument
172 unsigned int end = core_mmu_va2idx(ti, va + size); in set_pa_range()
173 unsigned int idx = core_mmu_va2idx(ti, va); in set_pa_range()
176 core_mmu_set_entry(ti, idx, pa, attr); in set_pa_range()
178 pa += BIT64(ti->shift); in set_pa_range()
182 static void set_reg_in_table(struct core_mmu_table_info *ti, in set_reg_in_table() argument
185 vaddr_t va = MAX(r->va, ti->va_base); in set_reg_in_table()
186 vaddr_t end = MIN(r->va + r->size, ti->va_base + CORE_MMU_PGDIR_SIZE); in set_reg_in_table()
188 size_t granule = BIT(ti->shift); in set_reg_in_table()
196 set_pa_range(ti, va, pa, sz, r->attr); in set_reg_in_table()
204 struct core_mmu_table_info ti = { }; in set_um_region() local
208 core_mmu_set_info_table(&ti, CORE_MMU_PGDIR_LEVEL, 0, NULL); in set_um_region()
213 ti.va_base = p->vabase; in set_um_region()
214 ti.table = p->tbl; in set_um_region()
215 set_reg_in_table(&ti, r); in set_um_region()
223 for (ti.va_base = ROUNDDOWN(r->va, CORE_MMU_PGDIR_SIZE); in set_um_region()
224 ti.va_base < r->va + r->size; in set_um_region()
225 ti.va_base += CORE_MMU_PGDIR_SIZE) { in set_um_region()
226 p = pgt_pop_from_cache_list(ti.va_base, uctx->ts_ctx); in set_um_region()
229 ti.table = p->tbl; in set_um_region()
230 set_reg_in_table(&ti, r); in set_um_region()