xref: /kvm-unit-tests/lib/arm/asm/mmu-api.h (revision 2c96b77ec9d3b1fcec7525174e23a6240ee05949)
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 *mmu_get_pte(pgd_t *pgtable, uintptr_t vaddr);
21 extern void mmu_clear_user(pgd_t *pgtable, unsigned long vaddr);
22 #endif
23