1 Index: acpica-unix2-20220331/source/components/tables/tbutils.c
2 ===================================================================
3 --- acpica-unix2-20220331.orig/source/components/tables/tbutils.c
4 +++ acpica-unix2-20220331/source/components/tables/tbutils.c
5 @@ -238,9 +238,11 @@ AcpiTbGetRootTableEntry (
6 * 64-bit platform, XSDT: Move (unaligned) 64-bit to local,
9 - ACPI_MOVE_64_TO_64 (&Address64, TableEntry);
11 #if ACPI_MACHINE_WIDTH == 32
12 + UINT32 Tmp32 = (UINT32) TableEntry;
14 + Address64 = (UINT64) Tmp32;
15 if (Address64 > ACPI_UINT32_MAX)
17 /* Will truncate 64-bit address to 32 bits, issue warning */
18 @@ -250,8 +252,14 @@ AcpiTbGetRootTableEntry (
20 ACPI_FORMAT_UINT64 (Address64)));
24 + return ((ACPI_PHYSICAL_ADDRESS) (*ACPI_CAST_PTR (
25 + UINT32, TableEntry)));
27 + Address64 = (UINT64) TableEntry;
29 return ((ACPI_PHYSICAL_ADDRESS) (Address64));
34 Index: acpica-unix2-20220331/source/compiler/aslparseop.c
35 ===================================================================
36 --- acpica-unix2-20220331.orig/source/compiler/aslparseop.c
37 +++ acpica-unix2-20220331/source/compiler/aslparseop.c
38 @@ -289,7 +289,11 @@ TrCreateValuedLeafOp (
39 ParseOpcode == PARSEOP_NAMESEG ||
40 ParseOpcode == PARSEOP_STRING_LITERAL)
42 +#if ACPI_MACHINE_WIDTH == 32
43 + Op->Asl.Value.String = (char *) (UINT32) Value;
45 Op->Asl.Value.String = (char *) Value;