xref: /kvm-unit-tests/lib/arm/asm/mmu-api.h (revision 372e3528a7881eea82805fa7f3e206be9db6ed7e)
1 #ifndef __ASMARM_MMU_API_H_
2 #define __ASMARM_MMU_API_H_
3 extern pgd_t *mmu_idmap;
4 extern unsigned int mmu_disabled_cpu_count;
5 extern bool __mmu_enabled(void);
6 static inline bool mmu_enabled(void)
7 {
8 	return mmu_disabled_cpu_count == 0 || __mmu_enabled();
9 }
10 extern void mmu_mark_enabled(int cpu);
11 extern void mmu_mark_disabled(int cpu);
12 extern void mmu_enable(pgd_t *pgtable);
13 extern void mmu_disable(void);
14 extern void mmu_enable_idmap(void);
15 extern void mmu_init_io_sect(pgd_t *pgtable, unsigned long virt_offset);
16 extern void mmu_set_range_sect(pgd_t *pgtable, unsigned long virt_offset,
17 			       unsigned long phys_start, unsigned long phys_end,
18 			       pgprot_t prot);
19 extern void mmu_set_range_ptes(pgd_t *pgtable, unsigned long virt_offset,
20 			       unsigned long phys_start, unsigned long phys_end,
21 			       pgprot_t prot);
22 #endif
23