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