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


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

2015-09-07 Thread Sudeep Holla
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-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