1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef __ARM_MPU_CPREGS_H
4 #define __ARM_MPU_CPREGS_H
5 
6 /* CP15 CR0: MPU Type Register */
7 #define HMPUIR          p15,4,c0,c0,4
8 
9 /* CP15 CR6: Protection Region Enable Register */
10 #define HPRENR          p15,4,c6,c1,1
11 
12 /* CP15 CR6: MPU Protection Region Base/Limit/Select Address Register */
13 #define HPRSELR         p15,4,c6,c2,1
14 #define HPRBAR          p15,4,c6,c3,0
15 #define HPRLAR          p15,4,c6,c3,1
16 
17 /* CP15 CR6: MPU Protection Region Base/Limit Address Register */
18 #define HPRBAR0         p15,4,c6,c8,0
19 #define HPRLAR0         p15,4,c6,c8,1
20 #define HPRBAR1         p15,4,c6,c8,4
21 #define HPRLAR1         p15,4,c6,c8,5
22 #define HPRBAR2         p15,4,c6,c9,0
23 #define HPRLAR2         p15,4,c6,c9,1
24 #define HPRBAR3         p15,4,c6,c9,4
25 #define HPRLAR3         p15,4,c6,c9,5
26 #define HPRBAR4         p15,4,c6,c10,0
27 #define HPRLAR4         p15,4,c6,c10,1
28 #define HPRBAR5         p15,4,c6,c10,4
29 #define HPRLAR5         p15,4,c6,c10,5
30 #define HPRBAR6         p15,4,c6,c11,0
31 #define HPRLAR6         p15,4,c6,c11,1
32 #define HPRBAR7         p15,4,c6,c11,4
33 #define HPRLAR7         p15,4,c6,c11,5
34 #define HPRBAR8         p15,4,c6,c12,0
35 #define HPRLAR8         p15,4,c6,c12,1
36 #define HPRBAR9         p15,4,c6,c12,4
37 #define HPRLAR9         p15,4,c6,c12,5
38 #define HPRBAR10        p15,4,c6,c13,0
39 #define HPRLAR10        p15,4,c6,c13,1
40 #define HPRBAR11        p15,4,c6,c13,4
41 #define HPRLAR11        p15,4,c6,c13,5
42 #define HPRBAR12        p15,4,c6,c14,0
43 #define HPRLAR12        p15,4,c6,c14,1
44 #define HPRBAR13        p15,4,c6,c14,4
45 #define HPRLAR13        p15,4,c6,c14,5
46 #define HPRBAR14        p15,4,c6,c15,0
47 #define HPRLAR14        p15,4,c6,c15,1
48 #define HPRBAR15        p15,4,c6,c15,4
49 #define HPRLAR15        p15,4,c6,c15,5
50 #define HPRBAR16        p15,5,c6,c8,0
51 #define HPRLAR16        p15,5,c6,c8,1
52 #define HPRBAR17        p15,5,c6,c8,4
53 #define HPRLAR17        p15,5,c6,c8,5
54 #define HPRBAR18        p15,5,c6,c9,0
55 #define HPRLAR18        p15,5,c6,c9,1
56 #define HPRBAR19        p15,5,c6,c9,4
57 #define HPRLAR19        p15,5,c6,c9,5
58 #define HPRBAR20        p15,5,c6,c10,0
59 #define HPRLAR20        p15,5,c6,c10,1
60 #define HPRBAR21        p15,5,c6,c10,4
61 #define HPRLAR21        p15,5,c6,c10,5
62 #define HPRBAR22        p15,5,c6,c11,0
63 #define HPRLAR22        p15,5,c6,c11,1
64 #define HPRBAR23        p15,5,c6,c11,4
65 #define HPRLAR23        p15,5,c6,c11,5
66 #define HPRBAR24        p15,5,c6,c12,0
67 #define HPRLAR24        p15,5,c6,c12,1
68 #define HPRBAR25        p15,5,c6,c12,4
69 #define HPRLAR25        p15,5,c6,c12,5
70 #define HPRBAR26        p15,5,c6,c13,0
71 #define HPRLAR26        p15,5,c6,c13,1
72 #define HPRBAR27        p15,5,c6,c13,4
73 #define HPRLAR27        p15,5,c6,c13,5
74 #define HPRBAR28        p15,5,c6,c14,0
75 #define HPRLAR28        p15,5,c6,c14,1
76 #define HPRBAR29        p15,5,c6,c14,4
77 #define HPRLAR29        p15,5,c6,c14,5
78 #define HPRBAR30        p15,5,c6,c15,0
79 #define HPRLAR30        p15,5,c6,c15,1
80 #define HPRBAR31        p15,5,c6,c15,4
81 #define HPRLAR31        p15,5,c6,c15,5
82 
83 /* Aliases of AArch64 names for use in common code */
84 #ifdef CONFIG_ARM_32
85 /* Alphabetically... */
86 #define MPUIR_EL2       HMPUIR
87 #define PRBAR_EL2       HPRBAR
88 #define PRENR_EL2       HPRENR
89 #define PRLAR_EL2       HPRLAR
90 #define PRSELR_EL2      HPRSELR
91 #endif /* CONFIG_ARM_32 */
92 
93 #endif /* __ARM_MPU_CPREGS_H */
94 
95 /*
96  * Local variables:
97  * mode: C
98  * c-file-style: "BSD"
99  * c-basic-offset: 4
100  * indent-tabs-mode: nil
101  * End:
102  */
103