On Tue, 2017-10-17 at 11:23 -0600, Tyler Baicar wrote:Hello Andy,
ARM errors just print out the error information value, then theCould it be located in separate file?
value needs to be manually decoded as per the UEFI spec. Add
decoding of the ARM error information value so that the kernel
logs capture all of the valid information at first glance.
ARM error information value decoding is captured in UEFI 2.7
spec tables 263-265.
This is consistent with the other prints in this CPER code.
+ printk("%stransaction type: %s\n", pfx,Plain printk():s?
+ arm_err_trans_type_strs[trans_type]);
I'll convert these to use BIT().
+#define CPER_ARM_ERR_VALID_TRANSACTION_TYPE 0x0001BIT() is already being used in this file.
+#define CPER_ARM_ERR_VALID_OPERATION_TYPE 0x0002
+#define CPER_ARM_ERR_VALID_LEVEL 0x0004
+#define CPER_ARM_ERR_VALID_PROC_CONTEXT_CORRUPT 0x0008
+#define CPER_ARM_ERR_VALID_CORRECTED 0x0010
+#define CPER_ARM_ERR_VALID_PRECISE_PC 0x0020
+#define CPER_ARM_ERR_VALID_RESTARTABLE_PC 0x0040
+#define CPER_ARM_ERR_VALID_PARTICIPATION_TYPE 0x0080
+#define CPER_ARM_ERR_VALID_TIME_OUT 0x0100
+#define CPER_ARM_ERR_VALID_ADDRESS_SPACE 0x0200
+#define CPER_ARM_ERR_VALID_MEM_ATTRIBUTES 0x0400
+#define CPER_ARM_ERR_VALID_ACCESS_MODE 0x0800
I'll convert the masks to use GENMASK()
+Mask is mask, so GENMASK()
+#define CPER_ARM_ERR_TRANSACTION_SHIFT 16
+#define CPER_ARM_ERR_TRANSACTION_MASK 0x3