]>
Commit | Line | Data |
---|---|---|
3ff1559e RK |
1 | #ifdef CONFIG_MMU |
2 | ||
5f0fbf9e | 3 | /* the upper-most page table pointer */ |
1b2e2b73 RK |
4 | extern pmd_t *top_pmd; |
5 | ||
6 | #define TOP_PTE(x) pte_offset_kernel(top_pmd, x) | |
7 | ||
1b2e2b73 RK |
8 | static inline pmd_t *pmd_off_k(unsigned long virt) |
9 | { | |
cc780af5 | 10 | return pmd_offset(pud_offset(pgd_offset_k(virt), virt), virt); |
1b2e2b73 RK |
11 | } |
12 | ||
b29e9f5e | 13 | struct mem_type { |
f6e3354d | 14 | pteval_t prot_pte; |
442e70c0 CM |
15 | pmdval_t prot_l1; |
16 | pmdval_t prot_sect; | |
b29e9f5e RK |
17 | unsigned int domain; |
18 | }; | |
19 | ||
20 | const struct mem_type *get_mem_type(unsigned int type); | |
21 | ||
7b0a1003 RK |
22 | extern void __flush_dcache_page(struct address_space *mapping, struct page *page); |
23 | ||
576d2f25 NP |
24 | /* |
25 | * ARM specific vm_struct->flags bits. | |
26 | */ | |
27 | ||
28 | /* (super)section-mapped I/O regions used by ioremap()/iounmap() */ | |
29 | #define VM_ARM_SECTION_MAPPING 0x80000000 | |
30 | ||
31 | /* permanent static mappings from iotable_init() */ | |
32 | #define VM_ARM_STATIC_MAPPING 0x40000000 | |
33 | ||
34 | /* mapping type (attributes) for permanent static mappings */ | |
35 | #define VM_ARM_MTYPE(mt) ((mt) << 20) | |
36 | #define VM_ARM_MTYPE_MASK (0x1f << 20) | |
37 | ||
3ff1559e RK |
38 | #endif |
39 | ||
022ae537 RK |
40 | #ifdef CONFIG_ZONE_DMA |
41 | extern u32 arm_dma_limit; | |
42 | #else | |
43 | #define arm_dma_limit ((u32)~0) | |
44 | #endif | |
45 | ||
8d717a52 | 46 | void __init bootmem_init(void); |
2778f620 | 47 | void arm_mm_memblock_reserve(void); |