fix compilation issues in aarch64 ports
[lunaix-os.git] / lunaix-os / arch / aarch64 / includes / asm / aa64_mmu.h
1 #ifndef __LUNAIX_AA64_MMU_H
2 #define __LUNAIX_AA64_MMU_H
3
4 #include "aa64_asm.h"
5
6 #if    defined(CONFIG_AA64_PAGE_GRAN_4K)
7 #define _MMU_TG    0b01
8 #elif  defined(CONFIG_AA64_PAGE_GRAN_16K)
9 #define _MMU_TG    0b10
10 #elif  defined(CONFIG_AA64_PAGE_GRAN_64K)
11 #define _MMU_TG    0b11
12 #endif
13
14 #if CONFIG_AA_OA_SIZE == 52
15 #define _MMU_USE_OA52
16 #endif
17
18
19 #define TCR_DS              (1UL << 59)
20 #define TCR_E0PD1           (1UL << 56)
21 #define TCR_E0PD0           (1UL << 55)
22 #define TCR_TBID1           (1UL << 52)
23 #define TCR_TBID0           (1UL << 51)
24 #define TCR_HPD1            (1UL << 42)
25 #define TCR_HPD0            (1UL << 41)
26 #define TCR_HD              (1UL << 40)
27 #define TCR_HA              (1UL << 39)
28 #define TCR_TBI1            (1UL << 38)
29 #define TCR_TBI0            (1UL << 37)
30 #define TCR_AS              (1UL << 36)
31
32 #define TCR_G4K             (0b01)
33 #define TCR_G16K            (0b10)
34 #define TCR_G64K            (0b11)
35
36 #define TCR_SHNS            (0b01)
37 #define TCR_SHOS            (0b10)
38 #define TCR_SHIS            (0b11)
39
40 #define TCR_TG1(g)          (((g) & 0b11) << 30)
41 #define TCR_TG0(g)          (((g) & 0b11) << 14)
42
43 #define TCR_T1SZ(sz)        (((sz) & 0b111111) << 16)
44 #define TCR_T0SZ(sz)        (((sz) & 0b111111))
45
46 #define TCR_EPD1            (1UL << 23)
47 #define TCR_EPD0            (1UL << 7)
48 #define TCR_A1              (1UL << 22)
49
50 #endif /* __LUNAIX_AA64_MMU_H */