Re: [PATCH v2 6/9] ACPI: APEI: EINJ: Add einjv2 extension struct
From: Zaid Alali
Date: Thu Feb 06 2025 - 17:08:53 EST
On Tue, Dec 24, 2024 at 03:51:13PM +0000, Jonathan Cameron wrote:
> On Thu, 5 Dec 2024 13:18:51 -0800
> Zaid Alali <zaidal@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> > Add einjv2 extension struct and EINJv2 error types to prepare
> > the driver for EINJv2 support. ACPI specifications(1) enables
>
> Reference got lost?
>
I will fix this.
> > EINJv2 by extending set_error_type_with_address struct.
> >
> > Signed-off-by: Zaid Alali <zaidal@xxxxxxxxxxxxxxxxxxxxxx>
> > ---
> > drivers/acpi/apei/einj-core.c | 23 +++++++++++++++++++++++
> > 1 file changed, 23 insertions(+)
> >
> > diff --git a/drivers/acpi/apei/einj-core.c b/drivers/acpi/apei/einj-core.c
> > index 2c57e25252ac..039d36472342 100644
> > --- a/drivers/acpi/apei/einj-core.c
> > +++ b/drivers/acpi/apei/einj-core.c
>
> > +struct einjv2_extension_struct {
> > + u32 length;
> > + u16 revision;
> > + u16 component_arr_count;
> > + struct syndrome_array component_arr[];
>
> __counted_by marking seems appropriate here.
I understand __counted_by may seem appropriate here, however, component_arr_count
is a value set be the user and does not represent syndrome_array size.
The size of syndrome_array will be calculated in Patch 8/9.
>
> > +};
> > +
> > struct set_error_type_with_address {
> > u32 type;
> > u32 vendor_extension;
> > @@ -58,6 +80,7 @@ struct set_error_type_with_address {
> > u64 memory_address;
> > u64 memory_address_range;
> > u32 pcie_sbdf;
> > + struct einjv2_extension_struct einjv2_struct;
> > };
> > enum {
> > SETWA_FLAGS_APICID = 1,
>