diff options
Diffstat (limited to 'drivers/misc/sgi-gru/gru_instructions.h')
-rw-r--r-- | drivers/misc/sgi-gru/gru_instructions.h | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/drivers/misc/sgi-gru/gru_instructions.h b/drivers/misc/sgi-gru/gru_instructions.h index 3fde33c1e8f3..2feb885ca96f 100644 --- a/drivers/misc/sgi-gru/gru_instructions.h +++ b/drivers/misc/sgi-gru/gru_instructions.h | |||
@@ -81,6 +81,8 @@ struct control_block_extended_exc_detail { | |||
81 | int exopc; | 81 | int exopc; |
82 | long exceptdet0; | 82 | long exceptdet0; |
83 | int exceptdet1; | 83 | int exceptdet1; |
84 | int cbrstate; | ||
85 | int cbrexecstatus; | ||
84 | }; | 86 | }; |
85 | 87 | ||
86 | /* | 88 | /* |
@@ -107,7 +109,8 @@ struct gru_instruction_bits { | |||
107 | unsigned char reserved2: 2; | 109 | unsigned char reserved2: 2; |
108 | unsigned char istatus: 2; | 110 | unsigned char istatus: 2; |
109 | unsigned char isubstatus:4; | 111 | unsigned char isubstatus:4; |
110 | unsigned char reserved3: 2; | 112 | unsigned char reserved3: 1; |
113 | unsigned char tlb_fault_color: 1; | ||
111 | /* DW 1 */ | 114 | /* DW 1 */ |
112 | unsigned long idef4; /* 42 bits: TRi1, BufSize */ | 115 | unsigned long idef4; /* 42 bits: TRi1, BufSize */ |
113 | /* DW 2-6 */ | 116 | /* DW 2-6 */ |
@@ -253,6 +256,21 @@ struct gru_instruction { | |||
253 | #define CBE_CAUSE_RESPONSE_DATA_ERROR (1 << 16) | 256 | #define CBE_CAUSE_RESPONSE_DATA_ERROR (1 << 16) |
254 | #define CBE_CAUSE_PROTOCOL_STATE_DATA_ERROR (1 << 17) | 257 | #define CBE_CAUSE_PROTOCOL_STATE_DATA_ERROR (1 << 17) |
255 | 258 | ||
259 | /* CBE cbrexecstatus bits */ | ||
260 | #define CBR_EXS_ABORT_OCC_BIT 0 | ||
261 | #define CBR_EXS_INT_OCC_BIT 1 | ||
262 | #define CBR_EXS_PENDING_BIT 2 | ||
263 | #define CBR_EXS_QUEUED_BIT 3 | ||
264 | #define CBR_EXS_TLBHW_BIT 4 | ||
265 | #define CBR_EXS_EXCEPTION_BIT 5 | ||
266 | |||
267 | #define CBR_EXS_ABORT_OCC (1 << CBR_EXS_ABORT_OCC_BIT) | ||
268 | #define CBR_EXS_INT_OCC (1 << CBR_EXS_INT_OCC_BIT) | ||
269 | #define CBR_EXS_PENDING (1 << CBR_EXS_PENDING_BIT) | ||
270 | #define CBR_EXS_QUEUED (1 << CBR_EXS_QUEUED_BIT) | ||
271 | #define CBR_EXS_TLBHW (1 << CBR_EXS_TLBHW_BIT) | ||
272 | #define CBR_EXS_EXCEPTION (1 << CBR_EXS_EXCEPTION_BIT) | ||
273 | |||
256 | /* | 274 | /* |
257 | * Exceptions are retried for the following cases. If any OTHER bits are set | 275 | * Exceptions are retried for the following cases. If any OTHER bits are set |
258 | * in ecause, the exception is not retryable. | 276 | * in ecause, the exception is not retryable. |