SyterKit 0.4.0.x
SyterKit is a bare-metal framework
Loading...
Searching...
No Matches
riscv64.h
Go to the documentation of this file.
1#ifndef __RISCV64_H__
2#define __RISCV64_H__
3
4#define MSTATUS_UIE (1 << 0)
5#define MSTATUS_SIE (1 << 1)
6#define MSTATUS_MIE (1 << 3)
7#define MSTATUS_UPIE (1 << 4)
8#define MSTATUS_SPIE (1 << 5)
9#define MSTATUS_MPIE (1 << 7)
10#define MSTATUS_SPP (1 << 8)
11#define MSTATUS_MPP (3 << 11)
12#define MSTATUS_FS (3 << 13)
13#define MSTATUS_XS (3 << 15)
14#define MSTATUS_MPRV (1 << 17)
15#define MSTATUS_SUM (1 << 18)
16#define MSTATUS_MXR (1 << 19)
17#define MSTATUS_TVM (1 << 20)
18#define MSTATUS_TW (1 << 21)
19#define MSTATUS_TSR (1 << 22)
20#define MSTATUS32_SD (1 << 31)
21#define MSTATUS_UXL (3ULL << 32)
22#define MSTATUS_SXL (3ULL << 34)
23#define MSTATUS64_SD (1ULL << 63)
24
25#define MIP_USIP (1 << 0)
26#define MIP_SSIP (1 << 1)
27#define MIP_MSIP (1 << 3)
28#define MIP_UTIP (1 << 4)
29#define MIP_STIP (1 << 5)
30#define MIP_MTIP (1 << 7)
31#define MIP_UEIP (1 << 8)
32#define MIP_SEIP (1 << 9)
33#define MIP_MEIP (1 << 11)
34
35#define MIE_USIE (1 << 0)
36#define MIE_SSIE (1 << 1)
37#define MIE_MSIE (1 << 3)
38#define MIE_UTIE (1 << 4)
39#define MIE_STIE (1 << 5)
40#define MIE_MTIE (1 << 7)
41#define MIE_UEIE (1 << 8)
42#define MIE_SEIE (1 << 9)
43#define MIE_MEIE (1 << 11)
44
45#endif /* __RISCV64_H__ */