Re: [edk2] [PATCH] ArmPlatformPkg/ArmJunoPkg/Madt.aslc: Fix MADT header version

2015-09-08 Thread Leif Lindholm
Fair enough.

Sudeep - can you point me to how I can verify the behaviour of these
patches? Has Al's sanity checking gone into 4.3 merge window, or do I
need to add it from elsewhere?

Regards,

Leif

On Mon, Sep 07, 2015 at 06:53:55PM +0100, Ryan Harkin wrote:
> Hi Sudeep,
> 
> I'm not involved in ACPI development, so am not able to review this.
> 
> Regards,
> Ryan.
> 
> On 7 September 2015 at 17:07, Sudeep Holla  wrote:
> 
> > Currently the MADT signature and revision is mapped to v1.0 macros
> > which results in MADT with incorrect entries in the header for Juno.
> > This patch fixes these EFI_ACPI_*_0_MULTIPLE_APIC_DESCRIPTION_TABLE
> > macros by using appropriate v5.0 versions.
> >
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Sudeep Holla 
> > Cc: Ryan Harkin 
> > Cc: Leif Lindholm 
> > Cc: Al Stone 
> > ---
> >  ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc | 24
> > 
> >  1 file changed, 12 insertions(+), 12 deletions(-)
> >
> > Hi Ryan, Lief,
> >
> > Resending as my previous attempt was before I had subscribed to the list.
> > Al Stone is introducing strict check for MADT in Linux kernel and this
> > bug got exposed as result of that.
> >
> > Regards,
> > Sudeep
> >
> > diff --git a/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> > b/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> > index 406bd94f5636..d63a19b3904a 100644
> > --- a/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> > +++ b/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> > @@ -26,19 +26,19 @@
> >#pragma pack (1)
> >
> >typedef struct {
> > -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> >  EFI_ACPI_5_0_GIC_STRUCTURE
> > GicInterfaces[FixedPcdGet32 (PcdCoreCount)];
> >  EFI_ACPI_5_0_GIC_DISTRIBUTOR_STRUCTUREGicDistributor;
> > -  } EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
> > +  } EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
> >
> >#pragma pack ()
> >
> > -  EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> > +  EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> >  {
> >ARM_ACPI_HEADER (
> > -EFI_ACPI_1_0_APIC_SIGNATURE,
> > -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> > -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE,
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> >),
> >//
> >// MADT specific fields
> > @@ -68,20 +68,20 @@
> >#pragma pack (1)
> >
> >typedef struct {
> > -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> >  EFI_ACPI_5_1_GIC_STRUCTURE
> > GicInterfaces[FixedPcdGet32 (PcdCoreCount)];
> >  EFI_ACPI_5_0_GIC_DISTRIBUTOR_STRUCTUREGicDistributor;
> >  EFI_ACPI_6_0_GIC_MSI_FRAME_STRUCTURE  MsiFrame;
> > -  } EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
> > +  } EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
> >
> >#pragma pack ()
> >
> > -  EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> > +  EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> >  {
> >ARM_ACPI_HEADER (
> > -EFI_ACPI_1_0_APIC_SIGNATURE,
> > -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> > -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE,
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> > +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> >),
> >//
> >// MADT specific fields
> > --
> > 1.9.1
> >
> >
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] [PATCH] ArmPlatformPkg/ArmJunoPkg/Madt.aslc: Fix MADT header version

2015-09-08 Thread Sudeep Holla



On 08/09/15 11:02, Leif Lindholm wrote:

Fair enough.

Sudeep - can you point me to how I can verify the behaviour of these
patches? Has Al's sanity checking gone into 4.3 merge window, or do I
need to add it from elsewhere?



No, not yet made to upstream kernel, but I briefly checked now and I can
see the commmit[0] in leg-kernel[1]. It just fails to boot so we need to
get this change in before the kernel change is merged IMO. I wonder if
that branch was tested on Juno though.

"...
ACPI: undefined MADT subtable type for FADT 5.1: 12 (length 24).
Kernel panic - not syncing: No interrupt controller.
"

Anyway this change can go irrespective of the kernel change as we
started supporting ACPI on ARM only from v5.0 and it makes no sense to
mark MADT as v1.0. I think this bug was not visible as most of the
macros have same value expect revision which got caught by Al's sanity
check.

Regards,
Sudeep

[0] 
https://git.linaro.org/leg/acpi/leg-kernel.git/commit/bd8aac91f1ee9a90b6b51b2c48b1e0ee3755c5b0
[1] 
https://git.linaro.org/leg/acpi/leg-kernel.git/shortlog/refs/heads/leg-kernel

___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] [PATCH] ArmPlatformPkg/ArmJunoPkg/Madt.aslc: Fix MADT header version

2015-09-07 Thread Ryan Harkin
Hi Sudeep,

I'm not involved in ACPI development, so am not able to review this.

Regards,
Ryan.

On 7 September 2015 at 17:07, Sudeep Holla  wrote:

> Currently the MADT signature and revision is mapped to v1.0 macros
> which results in MADT with incorrect entries in the header for Juno.
> This patch fixes these EFI_ACPI_*_0_MULTIPLE_APIC_DESCRIPTION_TABLE
> macros by using appropriate v5.0 versions.
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Sudeep Holla 
> Cc: Ryan Harkin 
> Cc: Leif Lindholm 
> Cc: Al Stone 
> ---
>  ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc | 24
> 
>  1 file changed, 12 insertions(+), 12 deletions(-)
>
> Hi Ryan, Lief,
>
> Resending as my previous attempt was before I had subscribed to the list.
> Al Stone is introducing strict check for MADT in Linux kernel and this
> bug got exposed as result of that.
>
> Regards,
> Sudeep
>
> diff --git a/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> b/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> index 406bd94f5636..d63a19b3904a 100644
> --- a/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> +++ b/ArmPlatformPkg/ArmJunoPkg/AcpiTables/Madt.aslc
> @@ -26,19 +26,19 @@
>#pragma pack (1)
>
>typedef struct {
> -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
>  EFI_ACPI_5_0_GIC_STRUCTURE
> GicInterfaces[FixedPcdGet32 (PcdCoreCount)];
>  EFI_ACPI_5_0_GIC_DISTRIBUTOR_STRUCTUREGicDistributor;
> -  } EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
> +  } EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
>
>#pragma pack ()
>
> -  EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> +  EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
>  {
>ARM_ACPI_HEADER (
> -EFI_ACPI_1_0_APIC_SIGNATURE,
> -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE,
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
>),
>//
>// MADT specific fields
> @@ -68,20 +68,20 @@
>#pragma pack (1)
>
>typedef struct {
> -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
>  EFI_ACPI_5_1_GIC_STRUCTURE
> GicInterfaces[FixedPcdGet32 (PcdCoreCount)];
>  EFI_ACPI_5_0_GIC_DISTRIBUTOR_STRUCTUREGicDistributor;
>  EFI_ACPI_6_0_GIC_MSI_FRAME_STRUCTURE  MsiFrame;
> -  } EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
> +  } EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE;
>
>#pragma pack ()
>
> -  EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> +  EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
>  {
>ARM_ACPI_HEADER (
> -EFI_ACPI_1_0_APIC_SIGNATURE,
> -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> -EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE,
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE,
> +EFI_ACPI_5_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
>),
>//
>// MADT specific fields
> --
> 1.9.1
>
>
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel