Skip to content

Commit 2480c91

Browse files
xen0ntsbogend
authored andcommitted
MIPS: add definitions for Loongson-specific CP0.Diag1 register
This 32-bit CP0 register is named GSCause in Loongson manuals. It carries Loongson extended exception information. We name it Diag1 because we fear the "GSCause" name might get changed in the future. Reviewed-by: Huacai Chen <[email protected]> Signed-off-by: WANG Xuerui <[email protected]> Cc: Huacai Chen <[email protected]> Cc: Jiaxun Yang <[email protected]> Cc: Tiezhu Yang <[email protected]> Signed-off-by: Thomas Bogendoerfer <[email protected]>
1 parent efd1b4a commit 2480c91

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

arch/mips/include/asm/mipsregs.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@
8686
#define CP0_XCONTEXT $20
8787
#define CP0_FRAMEMASK $21
8888
#define CP0_DIAGNOSTIC $22
89+
#define CP0_DIAGNOSTIC1 $22, 1
8990
#define CP0_DEBUG $23
9091
#define CP0_DEPC $24
9192
#define CP0_PERFORMANCE $25
@@ -1051,6 +1052,13 @@
10511052
/* Flush FTLB */
10521053
#define LOONGSON_DIAG_FTLB (_ULCAST_(1) << 13)
10531054

1055+
/*
1056+
* Diag1 (GSCause in Loongson-speak) fields
1057+
*/
1058+
/* Loongson-specific exception code (GSExcCode) */
1059+
#define LOONGSON_DIAG1_EXCCODE_SHIFT 2
1060+
#define LOONGSON_DIAG1_EXCCODE GENMASK(6, 2)
1061+
10541062
/* CvmCtl register field definitions */
10551063
#define CVMCTL_IPPCI_SHIFT 7
10561064
#define CVMCTL_IPPCI (_U64CAST_(0x7) << CVMCTL_IPPCI_SHIFT)

0 commit comments

Comments
 (0)