xref: /kvm-unit-tests/lib/arm/asm/mmu-api.h (revision 7e9737739f738c9a2e555947082a59edbc5b49b9)
1 #ifndef _ASMARM_MMU_API_H_
2 #define _ASMARM_MMU_API_H_
3 
4 #include <asm/page.h>
5 #include <stdbool.h>
6 
7 extern pgd_t *mmu_idmap;
8 extern bool mmu_enabled(void);
9 extern void mmu_mark_enabled(int cpu);
10 extern void mmu_mark_disabled(int cpu);
11 extern void mmu_enable(pgd_t *pgtable);
12 extern void mmu_disable(void);
13 
14 extern void mmu_set_range_sect(pgd_t *pgtable, uintptr_t virt_offset,
15 			       phys_addr_t phys_start, phys_addr_t phys_end,
16 			       pgprot_t prot);
17 extern void mmu_set_range_ptes(pgd_t *pgtable, uintptr_t virt_offset,
18 			       phys_addr_t phys_start, phys_addr_t phys_end,
19 			       pgprot_t prot);
20 extern pteval_t *follow_pte(pgd_t *pgtable, uintptr_t vaddr);
21 extern void mmu_clear_user(pgd_t *pgtable, unsigned long vaddr);
22 #endif
23