diff options
Diffstat (limited to 'include/linux/cper.h')
-rw-r--r-- | include/linux/cper.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/include/linux/cper.h b/include/linux/cper.h index 723e952fde0d..d14ef4e77c8a 100644 --- a/include/linux/cper.h +++ b/include/linux/cper.h | |||
@@ -275,6 +275,50 @@ enum { | |||
275 | #define CPER_ARM_INFO_FLAGS_PROPAGATED BIT(2) | 275 | #define CPER_ARM_INFO_FLAGS_PROPAGATED BIT(2) |
276 | #define CPER_ARM_INFO_FLAGS_OVERFLOW BIT(3) | 276 | #define CPER_ARM_INFO_FLAGS_OVERFLOW BIT(3) |
277 | 277 | ||
278 | #define CPER_ARM_CACHE_ERROR 0 | ||
279 | #define CPER_ARM_TLB_ERROR 1 | ||
280 | #define CPER_ARM_BUS_ERROR 2 | ||
281 | #define CPER_ARM_VENDOR_ERROR 3 | ||
282 | #define CPER_ARM_MAX_TYPE CPER_ARM_VENDOR_ERROR | ||
283 | |||
284 | #define CPER_ARM_ERR_VALID_TRANSACTION_TYPE BIT(0) | ||
285 | #define CPER_ARM_ERR_VALID_OPERATION_TYPE BIT(1) | ||
286 | #define CPER_ARM_ERR_VALID_LEVEL BIT(2) | ||
287 | #define CPER_ARM_ERR_VALID_PROC_CONTEXT_CORRUPT BIT(3) | ||
288 | #define CPER_ARM_ERR_VALID_CORRECTED BIT(4) | ||
289 | #define CPER_ARM_ERR_VALID_PRECISE_PC BIT(5) | ||
290 | #define CPER_ARM_ERR_VALID_RESTARTABLE_PC BIT(6) | ||
291 | #define CPER_ARM_ERR_VALID_PARTICIPATION_TYPE BIT(7) | ||
292 | #define CPER_ARM_ERR_VALID_TIME_OUT BIT(8) | ||
293 | #define CPER_ARM_ERR_VALID_ADDRESS_SPACE BIT(9) | ||
294 | #define CPER_ARM_ERR_VALID_MEM_ATTRIBUTES BIT(10) | ||
295 | #define CPER_ARM_ERR_VALID_ACCESS_MODE BIT(11) | ||
296 | |||
297 | #define CPER_ARM_ERR_TRANSACTION_SHIFT 16 | ||
298 | #define CPER_ARM_ERR_TRANSACTION_MASK GENMASK(1,0) | ||
299 | #define CPER_ARM_ERR_OPERATION_SHIFT 18 | ||
300 | #define CPER_ARM_ERR_OPERATION_MASK GENMASK(3,0) | ||
301 | #define CPER_ARM_ERR_LEVEL_SHIFT 22 | ||
302 | #define CPER_ARM_ERR_LEVEL_MASK GENMASK(2,0) | ||
303 | #define CPER_ARM_ERR_PC_CORRUPT_SHIFT 25 | ||
304 | #define CPER_ARM_ERR_PC_CORRUPT_MASK GENMASK(0,0) | ||
305 | #define CPER_ARM_ERR_CORRECTED_SHIFT 26 | ||
306 | #define CPER_ARM_ERR_CORRECTED_MASK GENMASK(0,0) | ||
307 | #define CPER_ARM_ERR_PRECISE_PC_SHIFT 27 | ||
308 | #define CPER_ARM_ERR_PRECISE_PC_MASK GENMASK(0,0) | ||
309 | #define CPER_ARM_ERR_RESTARTABLE_PC_SHIFT 28 | ||
310 | #define CPER_ARM_ERR_RESTARTABLE_PC_MASK GENMASK(0,0) | ||
311 | #define CPER_ARM_ERR_PARTICIPATION_TYPE_SHIFT 29 | ||
312 | #define CPER_ARM_ERR_PARTICIPATION_TYPE_MASK GENMASK(1,0) | ||
313 | #define CPER_ARM_ERR_TIME_OUT_SHIFT 31 | ||
314 | #define CPER_ARM_ERR_TIME_OUT_MASK GENMASK(0,0) | ||
315 | #define CPER_ARM_ERR_ADDRESS_SPACE_SHIFT 32 | ||
316 | #define CPER_ARM_ERR_ADDRESS_SPACE_MASK GENMASK(1,0) | ||
317 | #define CPER_ARM_ERR_MEM_ATTRIBUTES_SHIFT 34 | ||
318 | #define CPER_ARM_ERR_MEM_ATTRIBUTES_MASK GENMASK(8,0) | ||
319 | #define CPER_ARM_ERR_ACCESS_MODE_SHIFT 43 | ||
320 | #define CPER_ARM_ERR_ACCESS_MODE_MASK GENMASK(0,0) | ||
321 | |||
278 | /* | 322 | /* |
279 | * All tables and structs must be byte-packed to match CPER | 323 | * All tables and structs must be byte-packed to match CPER |
280 | * specification, since the tables are provided by the system BIOS | 324 | * specification, since the tables are provided by the system BIOS |
@@ -494,6 +538,8 @@ struct cper_sec_pcie { | |||
494 | /* Reset to default packing */ | 538 | /* Reset to default packing */ |
495 | #pragma pack() | 539 | #pragma pack() |
496 | 540 | ||
541 | extern const char * const cper_proc_error_type_strs[4]; | ||
542 | |||
497 | u64 cper_next_record_id(void); | 543 | u64 cper_next_record_id(void); |
498 | const char *cper_severity_str(unsigned int); | 544 | const char *cper_severity_str(unsigned int); |
499 | const char *cper_mem_err_type_str(unsigned int); | 545 | const char *cper_mem_err_type_str(unsigned int); |
@@ -503,5 +549,7 @@ void cper_mem_err_pack(const struct cper_sec_mem_err *, | |||
503 | struct cper_mem_err_compact *); | 549 | struct cper_mem_err_compact *); |
504 | const char *cper_mem_err_unpack(struct trace_seq *, | 550 | const char *cper_mem_err_unpack(struct trace_seq *, |
505 | struct cper_mem_err_compact *); | 551 | struct cper_mem_err_compact *); |
552 | void cper_print_proc_arm(const char *pfx, | ||
553 | const struct cper_sec_proc_arm *proc); | ||
506 | 554 | ||
507 | #endif | 555 | #endif |