Re: [PATCH] efi: parse ARM error information value

From: Andy Shevchenko
Date: Tue Oct 17 2017 - 15:34:53 EST


On Tue, 2017-10-17 at 11:23 -0600, Tyler Baicar wrote:
> ARM errors just print out the error information value, then the
> 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.

Could it be located in separate file?

> + printk("%stransaction type: %s\n", pfx,
> + arm_err_trans_type_strs[trans_type]);

Plain printk():s?

> +#define CPER_ARM_ERR_VALID_TRANSACTION_TYPE 0x0001
> +#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

BIT() is already being used in this file.

> +
> +#define CPER_ARM_ERR_TRANSACTION_SHIFT 16
> +#define CPER_ARM_ERR_TRANSACTION_MASK 0x3

Mask is mask, so GENMASK()

--
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy