ReactOS
0.4.15-dev-5606-gf34e425
armintr.h
Go to the documentation of this file.
1
2
3
#pragma once
4
5
#if defined(__cplusplus)
6
extern
"C"
{
7
#endif
8
9
typedef
enum
_tag_ARMINTR_SHIFT_T
10
{
11
_ARM_LSR
= 0,
12
_ARM_LSL
= 1,
13
_ARM_ASR
= 2,
14
_ARM_ROR
= 3
15
}
_ARMINTR_SHIFT_T
;
16
17
typedef
enum
_tag_ARMINTR_CPS_OP
18
{
19
_ARM_CPS_ENABLE_INTERRUPTS
= 1,
20
_ARM_CPS_DISABLE_INTERRUPTS
= 2,
21
_ARM_CPS_CHANGE_MODE
= 4
22
}
_ARMINTR_CPS_OP
;
23
24
typedef
enum
_tag_ARMINTR_CPS_FLAG
25
{
26
_ARM_CPS_INTERRUPT_FLAG_F
= 1,
27
_ARM_CPS_INTERRUPT_FLAG_I
= 2,
28
_ARM_CPS_INTERRUPT_FLAG_A
= 4
29
}
_ARMINTR_CPS_FLAG
;
30
31
typedef
enum
_tag_ARMINTR_BARRIER_TYPE
32
{
33
_ARM_BARRIER_SY
= 0xF,
34
_ARM_BARRIER_ST
= 0xE,
35
_ARM_BARRIER_ISH
= 0xB,
36
_ARM_BARRIER_ISHST
= 0xA,
37
_ARM_BARRIER_NSH
= 0x7,
38
_ARM_BARRIER_NSHST
= 0x6,
39
_ARM_BARRIER_OSH
= 0x3,
40
_ARM_BARRIER_OSHST
= 0x2
41
}
_ARMINTR_BARRIER_TYPE
;
42
43
typedef
enum
_tag_ARMINTR_BANKED_REG
44
{
45
_ARM_BANKED_R8_USR
= 0x0,
46
_ARM_BANKED_R9_USR
= 0x1,
47
_ARM_BANKED_R10_USR
= 0x2,
48
_ARM_BANKED_R11_USR
= 0x3,
49
_ARM_BANKED_R12_USR
= 0x4,
50
_ARM_BANKED_R13_USR
= 0x5,
51
_ARM_BANKED_SP_USR
= 0x5,
52
_ARM_BANKED_R14_USR
= 0x6,
53
_ARM_BANKED_LR_USR
= 0x6,
54
_ARM_BANKED_R8_FIQ
= 0x8,
55
_ARM_BANKED_R9_FIQ
= 0x9,
56
_ARM_BANKED_R10_FIQ
= 0xA,
57
_ARM_BANKED_R11_FIQ
= 0xB,
58
_ARM_BANKED_R12_FIQ
= 0xC,
59
_ARM_BANKED_R13_FIQ
= 0xD,
60
_ARM_BANKED_SP_FIQ
= 0xD,
61
_ARM_BANKED_R14_FIQ
= 0xE,
62
_ARM_BANKED_LR_FIQ
= 0xE,
63
_ARM_BANKED_R14_IRQ
= 0x10,
64
_ARM_BANKED_LR_IRQ
= 0x10,
65
_ARM_BANKED_R13_IRQ
= 0x11,
66
_ARM_BANKED_SP_IRQ
= 0x11,
67
_ARM_BANKED_R14_SVC
= 0x12,
68
_ARM_BANKED_LR_SVC
= 0x12,
69
_ARM_BANKED_R13_SVC
= 0x13,
70
_ARM_BANKED_SP_SVC
= 0x13,
71
_ARM_BANKED_R14_ABT
= 0x14,
72
_ARM_BANKED_LR_ABT
= 0x14,
73
_ARM_BANKED_R13_ABT
= 0x15,
74
_ARM_BANKED_SP_ABT
= 0x15,
75
_ARM_BANKED_R14_UND
= 0x16,
76
_ARM_BANKED_LR_UND
= 0x16,
77
_ARM_BANKED_R13_UND
= 0x17,
78
_ARM_BANKED_SP_UND
= 0x17,
79
_ARM_BANKED_R14_MON
= 0x1C,
80
_ARM_BANKED_LR_MON
= 0x1C,
81
_ARM_BANKED_R13_MON
= 0x1D,
82
_ARM_BANKED_SP_MON
= 0x1D,
83
_ARM_BANKED_ELR_HYP
= 0x1E,
84
_ARM_BANKED_R13_HYP
= 0x1F,
85
_ARM_BANKED_SP_HYP
= 0x1F,
86
_ARM_BANKED_SPSR_FIQ
= 0x2E,
87
_ARM_BANKED_SPSR_IRQ
= 0x30,
88
_ARM_BANKED_SPSR_SVC
= 0x32,
89
_ARM_BANKED_SPSR_ABT
= 0x34,
90
_ARM_BANKED_SPSR_UND
= 0x36,
91
_ARM_BANKED_SPSR_MON
= 0x3C,
92
_ARM_BANKED_SPSR_HYP
= 0x3E
93
}
_ARMINTR_BANKED_REG
;
94
95
void
__dmb
(
unsigned
int
Type
);
96
void
__dsb
(
unsigned
int
Type
);
97
void
__isb
(
unsigned
int
Type
);
98
99
#pragma intrinsic(__dmb)
100
#pragma intrinsic(__dsb)
101
#pragma intrinsic(__isb)
102
103
104
#if defined(__cplusplus)
105
}
// extern "C"
106
#endif
_ARMINTR_BARRIER_TYPE
enum _tag_ARMINTR_BARRIER_TYPE _ARMINTR_BARRIER_TYPE
_ARM_CPS_DISABLE_INTERRUPTS
Definition:
armintr.h:20
_ARM_BANKED_SPSR_SVC
Definition:
armintr.h:88
_ARM_BANKED_SPSR_IRQ
Definition:
armintr.h:87
_ARM_BANKED_R10_FIQ
Definition:
armintr.h:56
_ARM_BANKED_SP_SVC
Definition:
armintr.h:70
_ARM_BANKED_LR_USR
Definition:
armintr.h:53
_ARM_BARRIER_NSHST
Definition:
armintr.h:38
__dmb
void __dmb(unsigned int Type)
_ARM_BANKED_R13_USR
Definition:
armintr.h:50
_ARM_BANKED_R13_MON
Definition:
armintr.h:81
_ARM_BANKED_R11_USR
Definition:
armintr.h:48
_ARM_BANKED_LR_FIQ
Definition:
armintr.h:62
_ARM_BANKED_SPSR_FIQ
Definition:
armintr.h:86
_ARM_LSR
Definition:
armintr.h:11
_ARM_BANKED_R14_FIQ
Definition:
armintr.h:61
_ARM_BARRIER_OSH
Definition:
armintr.h:39
_ARM_BANKED_SPSR_HYP
Definition:
armintr.h:92
_tag_ARMINTR_CPS_FLAG
_tag_ARMINTR_CPS_FLAG
Definition:
armintr.h:24
_ARM_BANKED_R13_IRQ
Definition:
armintr.h:65
_ARM_BARRIER_NSH
Definition:
armintr.h:37
_ARM_BANKED_ELR_HYP
Definition:
armintr.h:83
_ARM_CPS_ENABLE_INTERRUPTS
Definition:
armintr.h:19
_ARM_BANKED_R14_USR
Definition:
armintr.h:52
__isb
void __isb(unsigned int Type)
_ARM_BANKED_SPSR_UND
Definition:
armintr.h:90
_ARM_CPS_INTERRUPT_FLAG_I
Definition:
armintr.h:27
_ARM_BARRIER_SY
Definition:
armintr.h:33
_tag_ARMINTR_BARRIER_TYPE
_tag_ARMINTR_BARRIER_TYPE
Definition:
armintr.h:31
_ARM_CPS_INTERRUPT_FLAG_F
Definition:
armintr.h:26
_ARM_BANKED_LR_ABT
Definition:
armintr.h:72
_ARM_ROR
Definition:
armintr.h:14
_ARM_BANKED_R9_USR
Definition:
armintr.h:46
_ARM_BANKED_SP_HYP
Definition:
armintr.h:85
_ARMINTR_CPS_FLAG
enum _tag_ARMINTR_CPS_FLAG _ARMINTR_CPS_FLAG
_ARMINTR_CPS_OP
enum _tag_ARMINTR_CPS_OP _ARMINTR_CPS_OP
_ARM_BANKED_SP_FIQ
Definition:
armintr.h:60
_ARM_BANKED_R11_FIQ
Definition:
armintr.h:57
_ARM_BANKED_R8_FIQ
Definition:
armintr.h:54
_ARM_BANKED_R10_USR
Definition:
armintr.h:47
_ARM_BANKED_R14_ABT
Definition:
armintr.h:71
_ARM_BANKED_R14_UND
Definition:
armintr.h:75
_ARM_BANKED_SPSR_MON
Definition:
armintr.h:91
_ARM_CPS_INTERRUPT_FLAG_A
Definition:
armintr.h:28
_ARM_BANKED_LR_SVC
Definition:
armintr.h:68
_ARM_BANKED_R13_ABT
Definition:
armintr.h:73
_ARM_BANKED_SP_IRQ
Definition:
armintr.h:66
_ARM_BANKED_SP_UND
Definition:
armintr.h:78
_ARM_BARRIER_ISHST
Definition:
armintr.h:36
_ARM_BANKED_SP_ABT
Definition:
armintr.h:74
_ARMINTR_BANKED_REG
enum _tag_ARMINTR_BANKED_REG _ARMINTR_BANKED_REG
Type
Type
Definition:
Type.h:6
_ARM_ASR
Definition:
armintr.h:13
_tag_ARMINTR_SHIFT_T
_tag_ARMINTR_SHIFT_T
Definition:
armintr.h:9
_ARM_BARRIER_ST
Definition:
armintr.h:34
_ARM_BANKED_R12_USR
Definition:
armintr.h:49
_ARM_BANKED_R13_UND
Definition:
armintr.h:77
_ARM_BANKED_R14_SVC
Definition:
armintr.h:67
_ARM_BARRIER_OSHST
Definition:
armintr.h:40
_ARM_BANKED_SP_MON
Definition:
armintr.h:82
_ARM_BANKED_R14_MON
Definition:
armintr.h:79
__dsb
void __dsb(unsigned int Type)
_ARM_BANKED_R13_SVC
Definition:
armintr.h:69
_ARM_BANKED_R12_FIQ
Definition:
armintr.h:58
_ARM_BANKED_SPSR_ABT
Definition:
armintr.h:89
_ARM_BANKED_R13_FIQ
Definition:
armintr.h:59
_tag_ARMINTR_CPS_OP
_tag_ARMINTR_CPS_OP
Definition:
armintr.h:17
_ARM_BANKED_LR_UND
Definition:
armintr.h:76
_ARM_BANKED_LR_MON
Definition:
armintr.h:80
_ARMINTR_SHIFT_T
enum _tag_ARMINTR_SHIFT_T _ARMINTR_SHIFT_T
_ARM_BANKED_R9_FIQ
Definition:
armintr.h:55
_ARM_BANKED_R8_USR
Definition:
armintr.h:45
_ARM_BANKED_SP_USR
Definition:
armintr.h:51
_ARM_BARRIER_ISH
Definition:
armintr.h:35
_ARM_BANKED_R14_IRQ
Definition:
armintr.h:63
_ARM_CPS_CHANGE_MODE
Definition:
armintr.h:21
_tag_ARMINTR_BANKED_REG
_tag_ARMINTR_BANKED_REG
Definition:
armintr.h:43
_ARM_BANKED_R13_HYP
Definition:
armintr.h:84
_ARM_BANKED_LR_IRQ
Definition:
armintr.h:64
_ARM_LSL
Definition:
armintr.h:12
sdk
include
crt
armintr.h
Generated on Thu Jan 26 2023 06:09:07 for ReactOS by
1.8.15