Changes to RISC-V supervisor mode
[akaros.git] / kern / arch / riscv / pcr.h
index 99be591..f2ebaab 100644 (file)
 #define PCR_COUNT    4
 #define PCR_COMPARE  5
 #define PCR_CAUSE    6
-#define PCR_IPI      7
-#define PCR_MEMSIZE  8
-#define PCR_PTBR     9
+#define PCR_PTBR     7
+#define PCR_SEND_IPI 8
+#define PCR_CLR_IPI  9
 #define PCR_COREID   10
-#define PCR_NUMCORES 12
+#define PCR_K0       12
+#define PCR_K1       13
 #define PCR_TOHOST   16
 #define PCR_FROMHOST 17
 #define PCR_CONSOLE  18
-#define PCR_K0       24
-#define PCR_K1       25
-
-#define CR_FSR       0
-#define CR_TID       29
-
-#define MEMSIZE_SHIFT 12
-
-#define TIMER_PERIOD 0x1000
 
 #define IPI_IRQ   5
 #define TIMER_IRQ 7
-#define NIRQ 8
-
-#define CAUSE_EXCCODE 0x000000FF
-#define CAUSE_IP      0x0000FF00
-#define CAUSE_EXCCODE_SHIFT 0
-#define CAUSE_IP_SHIFT      8
 
 #define CAUSE_MISALIGNED_FETCH 0
 #define CAUSE_FAULT_FETCH 1
 #define CAUSE_ILLEGAL_INSTRUCTION 2
 #define CAUSE_PRIVILEGED_INSTRUCTION 3
 #define CAUSE_FP_DISABLED 4
-#define CAUSE_INTERRUPT 5
 #define CAUSE_SYSCALL 6
 #define CAUSE_BREAKPOINT 7
 #define CAUSE_MISALIGNED_LOAD 8
 #define CAUSE_FAULT_LOAD 10
 #define CAUSE_FAULT_STORE 11
 #define CAUSE_VECTOR_DISABLED 12
-#define NUM_CAUSES 13
+#define CAUSE_IRQ0 16
+#define CAUSE_IRQ1 17
+#define CAUSE_IRQ2 18
+#define CAUSE_IRQ3 19
+#define CAUSE_IRQ4 20
+#define CAUSE_IRQ5 21
+#define CAUSE_IRQ6 22
+#define CAUSE_IRQ7 23
+#define NUM_CAUSES 24
 
 #define ASM_CR(r)   _ASM_CR(r)
 #define _ASM_CR(r)  cr##r