]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - arch/arm/include/asm/fixmap.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[karo-tx-linux.git] / arch / arm / include / asm / fixmap.h
1 #ifndef _ASM_FIXMAP_H
2 #define _ASM_FIXMAP_H
3
4 #define FIXADDR_START           0xffc00000UL
5 #define FIXADDR_END             0xfff00000UL
6 #define FIXADDR_TOP             (FIXADDR_END - PAGE_SIZE)
7
8 #include <asm/kmap_types.h>
9 #include <asm/pgtable.h>
10
11 enum fixed_addresses {
12         FIX_EARLYCON_MEM_BASE,
13         __end_of_permanent_fixed_addresses,
14
15         FIX_KMAP_BEGIN = __end_of_permanent_fixed_addresses,
16         FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * NR_CPUS) - 1,
17
18         /* Support writing RO kernel text via kprobes, jump labels, etc. */
19         FIX_TEXT_POKE0,
20         FIX_TEXT_POKE1,
21
22         __end_of_fixed_addresses
23 };
24
25 #define FIXMAP_PAGE_COMMON      (L_PTE_YOUNG | L_PTE_PRESENT | L_PTE_XN | L_PTE_DIRTY)
26
27 #define FIXMAP_PAGE_NORMAL      (FIXMAP_PAGE_COMMON | L_PTE_MT_WRITEBACK)
28
29 /* Used by set_fixmap_(io|nocache), both meant for mapping a device */
30 #define FIXMAP_PAGE_IO          (FIXMAP_PAGE_COMMON | L_PTE_MT_DEV_SHARED | L_PTE_SHARED)
31 #define FIXMAP_PAGE_NOCACHE     FIXMAP_PAGE_IO
32
33 void __set_fixmap(enum fixed_addresses idx, phys_addr_t phys, pgprot_t prot);
34 void __init early_fixmap_init(void);
35
36 #include <asm-generic/fixmap.h>
37
38 #endif