aboutsummaryrefslogtreecommitdiff
path: root/include/sbi/riscv_encoding.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/sbi/riscv_encoding.h')
-rw-r--r--include/sbi/riscv_encoding.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/sbi/riscv_encoding.h b/include/sbi/riscv_encoding.h
index 5a5086a..dace9e6 100644
--- a/include/sbi/riscv_encoding.h
+++ b/include/sbi/riscv_encoding.h
@@ -38,8 +38,21 @@
#define MSTATUS_TW 0x00200000
#define MSTATUS_TSR 0x00400000
#define MSTATUS32_SD 0x80000000
+#if __riscv_xlen == 64
#define MSTATUS_UXL 0x0000000300000000
#define MSTATUS_SXL 0x0000000C00000000
+#define MSTATUS_MTL 0x0000004000000000
+#define MSTATUS_MTL_SHIFT 38
+#define MSTATUS_MPV 0x0000008000000000
+#define MSTATUS_MPV_HIFT 39
+#else
+#define MSTATUSH_UXL 0x00000003
+#define MSTATUSH_SXL 0x0000000C
+#define MSTATUSH_MTL 0x00000040
+#define MSTATUSH_MTL_SHIFT 6
+#define MSTATUSH_MPV 0x00000080
+#define MSTATUSH_MPV_HIFT 7
+#endif
#define MSTATUS64_SD 0x8000000000000000
#define SSTATUS_UIE 0x00000001
@@ -256,6 +269,7 @@
#define CSR_MIE 0x304
#define CSR_MTVEC 0x305
#define CSR_MCOUNTEREN 0x306
+#define CSR_MSTATUSH 0x310
#define CSR_MSCRATCH 0x340
#define CSR_MEPC 0x341
#define CSR_MCAUSE 0x342