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 unsigned int mmu_disabled_cpu_count; 9 extern bool __mmu_enabled(void); 10 static inline bool mmu_enabled(void) 11 { 12 return mmu_disabled_cpu_count == 0 || __mmu_enabled(); 13 } 14 extern void mmu_mark_enabled(int cpu); 15 extern void mmu_mark_disabled(int cpu); 16 extern void mmu_enable(pgd_t *pgtable); 17 extern void mmu_disable(void); 18 extern void mmu_enable_idmap(void); 19 extern void mmu_init_io_sect(pgd_t *pgtable, unsigned long virt_offset); 20 extern void mmu_set_range_sect(pgd_t *pgtable, unsigned long virt_offset, 21 unsigned long phys_start, unsigned long phys_end, 22 pgprot_t prot); 23 extern void mmu_set_range_ptes(pgd_t *pgtable, unsigned long virt_offset, 24 unsigned long phys_start, unsigned long phys_end, 25 pgprot_t prot); 26 #endif 27