xref: /openbmc/linux/arch/arm/mm/mm.h (revision fd589a8f)
1 #ifdef CONFIG_MMU
2 
3 /* the upper-most page table pointer */
4 extern pmd_t *top_pmd;
5 
6 #define TOP_PTE(x)	pte_offset_kernel(top_pmd, x)
7 
8 static inline pmd_t *pmd_off(pgd_t *pgd, unsigned long virt)
9 {
10 	return pmd_offset(pgd, virt);
11 }
12 
13 static inline pmd_t *pmd_off_k(unsigned long virt)
14 {
15 	return pmd_off(pgd_offset_k(virt), virt);
16 }
17 
18 struct mem_type {
19 	unsigned int prot_pte;
20 	unsigned int prot_l1;
21 	unsigned int prot_sect;
22 	unsigned int domain;
23 };
24 
25 const struct mem_type *get_mem_type(unsigned int type);
26 
27 #endif
28 
29 struct map_desc;
30 struct meminfo;
31 struct pglist_data;
32 
33 void __init create_mapping(struct map_desc *md);
34 void __init bootmem_init(void);
35 void reserve_node_zero(struct pglist_data *pgdat);
36