Blame big-endian-dmtbdump.patch

d7f8eec
Index: acpica-unix-20191018/source/common/dmtbdump.c
d7f8eec
===================================================================
d7f8eec
--- acpica-unix-20191018.orig/source/common/dmtbdump.c
d7f8eec
+++ acpica-unix-20191018/source/common/dmtbdump.c
d7f8eec
@@ -277,6 +277,8 @@ AcpiDmDumpRsdt (
d7f8eec
     UINT32                  Entries;
d7f8eec
     UINT32                  Offset;
d7f8eec
     UINT32                  i;
d7f8eec
+    UINT32		    Length;
d7f8eec
+    UINT32		    Address;
d7f8eec
 
d7f8eec
 
d7f8eec
     /* Point to start of table pointer array */
d7f8eec
@@ -286,12 +288,14 @@ AcpiDmDumpRsdt (
d7f8eec
 
d7f8eec
     /* RSDT uses 32-bit pointers */
d7f8eec
 
d7f8eec
-    Entries = (Table->Length - sizeof (ACPI_TABLE_HEADER)) / sizeof (UINT32);
d7f8eec
+    ACPI_MOVE_32_TO_32(&Length, &Table->Length);
d7f8eec
+    Entries = (Length - sizeof (ACPI_TABLE_HEADER)) / sizeof (UINT32);
d7f8eec
 
d7f8eec
     for (i = 0; i < Entries; i++)
d7f8eec
     {
d7f8eec
         AcpiDmLineHeader2 (Offset, sizeof (UINT32), "ACPI Table Address", i);
d7f8eec
-        AcpiOsPrintf ("%8.8X\n", Array[i]);
d7f8eec
+	ACPI_MOVE_32_TO_32(&Address, &Array[i]);
d7f8eec
+        AcpiOsPrintf ("%8.8X\n", Address);
d7f8eec
         Offset += sizeof (UINT32);
d7f8eec
     }
d7f8eec
 }
d7f8eec
@@ -317,6 +321,8 @@ AcpiDmDumpXsdt (
d7f8eec
     UINT32                  Entries;
d7f8eec
     UINT32                  Offset;
d7f8eec
     UINT32                  i;
d7f8eec
+    UINT32                  Length;
d7f8eec
+    UINT64		    Address;
d7f8eec
 
d7f8eec
 
d7f8eec
     /* Point to start of table pointer array */
d7f8eec
@@ -326,12 +332,14 @@ AcpiDmDumpXsdt (
d7f8eec
 
d7f8eec
     /* XSDT uses 64-bit pointers */
d7f8eec
 
d7f8eec
-    Entries = (Table->Length - sizeof (ACPI_TABLE_HEADER)) / sizeof (UINT64);
d7f8eec
+    ACPI_MOVE_32_TO_32(&Length, &Table->Length);
d7f8eec
+    Entries = (Length - sizeof (ACPI_TABLE_HEADER)) / sizeof (UINT64);
d7f8eec
 
d7f8eec
     for (i = 0; i < Entries; i++)
d7f8eec
     {
d7f8eec
         AcpiDmLineHeader2 (Offset, sizeof (UINT64), "ACPI Table Address", i);
d7f8eec
-        AcpiOsPrintf ("%8.8X%8.8X\n", ACPI_FORMAT_UINT64 (Array[i]));
d7f8eec
+	ACPI_MOVE_64_TO_64(&Address, &Array[i]);
d7f8eec
+        AcpiOsPrintf ("%8.8X%8.8X\n", ACPI_FORMAT_UINT64 (Address));
d7f8eec
         Offset += sizeof (UINT64);
d7f8eec
     }
d7f8eec
 }
d7f8eec
@@ -358,12 +366,12 @@ AcpiDmDumpFadt (
d7f8eec
     ACPI_TABLE_HEADER       *Table)
d7f8eec
 {
d7f8eec
     ACPI_STATUS             Status;
d7f8eec
-
d7f8eec
+    UINT32		    Length;
d7f8eec
 
d7f8eec
     /* Always dump the minimum FADT revision 1 fields (ACPI 1.0) */
d7f8eec
 
d7f8eec
-    Status = AcpiDmDumpTable (Table->Length, 0, Table, 0,
d7f8eec
-        AcpiDmTableInfoFadt1);
d7f8eec
+    ACPI_MOVE_32_TO_32(&Length, &Table->Length);
d7f8eec
+    Status = AcpiDmDumpTable (Length, 0, Table, 0, AcpiDmTableInfoFadt1);
d7f8eec
     if (ACPI_FAILURE (Status))
d7f8eec
     {
d7f8eec
         return;
d7f8eec
@@ -371,11 +379,9 @@ AcpiDmDumpFadt (
d7f8eec
 
d7f8eec
     /* Check for FADT revision 2 fields (ACPI 1.0B MS extensions) */
d7f8eec
 
d7f8eec
-    if ((Table->Length > ACPI_FADT_V1_SIZE) &&
d7f8eec
-        (Table->Length <= ACPI_FADT_V2_SIZE))
d7f8eec
+    if ((Length > ACPI_FADT_V1_SIZE) && (Length <= ACPI_FADT_V2_SIZE))
d7f8eec
     {
d7f8eec
-        Status = AcpiDmDumpTable (Table->Length, 0, Table, 0,
d7f8eec
-            AcpiDmTableInfoFadt2);
d7f8eec
+        Status = AcpiDmDumpTable (Length, 0, Table, 0, AcpiDmTableInfoFadt2);
d7f8eec
         if (ACPI_FAILURE (Status))
d7f8eec
         {
d7f8eec
             return;
d7f8eec
@@ -384,10 +390,9 @@ AcpiDmDumpFadt (
d7f8eec
 
d7f8eec
     /* Check for FADT revision 3/4 fields and up (ACPI 2.0+ extended data) */
d7f8eec
 
d7f8eec
-    else if (Table->Length > ACPI_FADT_V2_SIZE)
d7f8eec
+    else if (Length > ACPI_FADT_V2_SIZE)
d7f8eec
     {
d7f8eec
-        Status = AcpiDmDumpTable (Table->Length, 0, Table, 0,
d7f8eec
-            AcpiDmTableInfoFadt3);
d7f8eec
+        Status = AcpiDmDumpTable (Length, 0, Table, 0, AcpiDmTableInfoFadt3);
d7f8eec
         if (ACPI_FAILURE (Status))
d7f8eec
         {
d7f8eec
             return;
d7f8eec
@@ -395,9 +400,9 @@ AcpiDmDumpFadt (
d7f8eec
 
d7f8eec
         /* Check for FADT revision 5 fields and up (ACPI 5.0+) */
d7f8eec
 
d7f8eec
-        if (Table->Length > ACPI_FADT_V3_SIZE)
d7f8eec
+        if (Length > ACPI_FADT_V3_SIZE)
d7f8eec
         {
d7f8eec
-            Status = AcpiDmDumpTable (Table->Length, 0, Table, 0,
d7f8eec
+            Status = AcpiDmDumpTable (Length, 0, Table, 0,
d7f8eec
                 AcpiDmTableInfoFadt5);
d7f8eec
             if (ACPI_FAILURE (Status))
d7f8eec
             {
d7f8eec
@@ -407,9 +412,9 @@ AcpiDmDumpFadt (
d7f8eec
 
d7f8eec
         /* Check for FADT revision 6 fields and up (ACPI 6.0+) */
d7f8eec
 
d7f8eec
-        if (Table->Length > ACPI_FADT_V3_SIZE)
d7f8eec
+        if (Length > ACPI_FADT_V3_SIZE)
d7f8eec
         {
d7f8eec
-            Status = AcpiDmDumpTable (Table->Length, 0, Table, 0,
d7f8eec
+            Status = AcpiDmDumpTable (Length, 0, Table, 0,
d7f8eec
                 AcpiDmTableInfoFadt6);
d7f8eec
             if (ACPI_FAILURE (Status))
d7f8eec
             {
d7f8eec
@@ -420,11 +425,11 @@ AcpiDmDumpFadt (
d7f8eec
 
d7f8eec
     /* Validate various fields in the FADT, including length */
d7f8eec
 
d7f8eec
-    AcpiTbCreateLocalFadt (Table, Table->Length);
d7f8eec
+    AcpiTbCreateLocalFadt (Table, Length);
d7f8eec
 
d7f8eec
     /* Validate FADT length against the revision */
d7f8eec
 
d7f8eec
-    AcpiDmValidateFadtLength (Table->Revision, Table->Length);
d7f8eec
+    AcpiDmValidateFadtLength (Table->Revision, Length);
d7f8eec
 }
d7f8eec
 
d7f8eec
 
d7f8eec
@@ -450,6 +455,7 @@ AcpiDmValidateFadtLength (
d7f8eec
     UINT32                  Length)
d7f8eec
 {
d7f8eec
     UINT32                  ExpectedLength;
d7f8eec
+    UINT32		    Tmp32;
d7f8eec
 
d7f8eec
 
d7f8eec
     switch (Revision)
d7f8eec
@@ -485,7 +491,8 @@ AcpiDmValidateFadtLength (
d7f8eec
         return;
d7f8eec
     }
d7f8eec
 
d7f8eec
-    if (Length == ExpectedLength)
d7f8eec
+    ACPI_MOVE_32_TO_32(&Tmp32, &Length);
d7f8eec
+    if (Tmp32 == ExpectedLength)
d7f8eec
     {
d7f8eec
         return;
d7f8eec
     }
d7f8eec
@@ -493,5 +500,5 @@ AcpiDmValidateFadtLength (
d7f8eec
     AcpiOsPrintf (
d7f8eec
         "\n// ACPI Warning: FADT revision %X does not match length: "
d7f8eec
         "found %X expected %X\n",
d7f8eec
-        Revision, Length, ExpectedLength);
d7f8eec
+        Revision, Tmp32, ExpectedLength);
d7f8eec
 }