Lines Matching refs:level
133 void *get_dat_entry(pgd_t *pgtable, void *vaddr, enum pgt_level level) in get_dat_entry() argument
141 assert(level && (level <= 5)); in get_dat_entry()
143 if (level == pgtable_level_pgd) in get_dat_entry()
146 if (level == pgtable_level_p4d) in get_dat_entry()
150 if (level == pgtable_level_pud) in get_dat_entry()
155 if (level == pgtable_level_pmd) in get_dat_entry()
162 void *split_page(pgd_t *pgtable, void *vaddr, enum pgt_level level) in split_page() argument
164 assert((level >= 3) && (level <= 5)); in split_page()
165 return get_dat_entry(pgtable ? pgtable : table_root, vaddr, level); in split_page()
195 static void *dat_get_and_invalidate(pgd_t *pgtable, void *vaddr, enum pgt_level level, unsigned lon… in dat_get_and_invalidate() argument
200 ptr = get_dat_entry(pgtable, vaddr, level); in dat_get_and_invalidate()
203 if ((level == pgtable_level_pgd) && !pgd_none(*(pgd_t *)ptr)) in dat_get_and_invalidate()
205 else if ((level == pgtable_level_p4d) && !p4d_none(*(p4d_t *)ptr)) in dat_get_and_invalidate()
207 else if ((level == pgtable_level_pud) && !pud_none(*(pud_t *)ptr)) in dat_get_and_invalidate()
209 else if ((level == pgtable_level_pmd) && !pmd_none(*(pmd_t *)ptr)) in dat_get_and_invalidate()
251 static void *set_dat_entry(pgd_t *pgtable, unsigned long val, void *vaddr, enum pgt_level level) in set_dat_entry() argument
255 res = dat_get_and_invalidate(pgtable, vaddr, level, &old); in set_dat_entry()
256 if (level == pgtable_level_pmd) in set_dat_entry()
258 if (level == pgtable_level_pud) in set_dat_entry()
285 void protect_dat_entry(void *vaddr, unsigned long prot, enum pgt_level level) in protect_dat_entry() argument
289 ptr = dat_get_and_invalidate(table_root, vaddr, level, &old); in protect_dat_entry()
293 void unprotect_dat_entry(void *vaddr, unsigned long prot, enum pgt_level level) in unprotect_dat_entry() argument
297 ptr = dat_get_and_invalidate(table_root, vaddr, level, &old); in unprotect_dat_entry()