Patch carried over from the prior iasl package and updated. This allows
-
-From: Al Stone <ahs3@redhat.com>
-
for builds on systems requiring aligned memory access. Please see
http://lists.acpica.org/pipermail/devel/2010-July/000159.html. Resolves
BZ#865013 and BZ#856856.
Signed-off-by: Mattia Dongili <malattia@linux.it>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
- source/compiler/asltree.c | 15 ++++++++++-----
source/components/executer/exoparg2.c | 12 +++++++++---
source/include/actypes.h | 26 +++++++++++++-------------
3 files changed, 32 insertions(+), 21 deletions(-)
-Index: acpica-unix2-20170224/source/compiler/asltree.c
-===================================================================
---- acpica-unix2-20170224.orig/source/compiler/asltree.c
-+++ acpica-unix2-20170224/source/compiler/asltree.c
-@@ -998,28 +998,31 @@ TrCreateValuedLeafNode (
- "Op %s Value %8.8X%8.8X ",
- Op->Asl.LineNumber, Op->Asl.Column, Op, UtGetOpName(ParseOpcode),
- ACPI_FORMAT_UINT64 (Value));
-- Op->Asl.Value.Integer = Value;
-
- switch (ParseOpcode)
- {
- case PARSEOP_STRING_LITERAL:
-
-- DbgPrint (ASL_PARSE_OUTPUT, "STRING->%s", Value);
-+ Op->Asl.Value.String = (ACPI_STRING) (ACPI_SIZE) Value;
-+ DbgPrint (ASL_PARSE_OUTPUT, "STRING->%s", Op->Asl.Value.String);
- break;
-
- case PARSEOP_NAMESEG:
-
-- DbgPrint (ASL_PARSE_OUTPUT, "NAMESEG->%s", Value);
-+ Op->Asl.Value.String = (ACPI_STRING) (ACPI_SIZE) Value;
-+ DbgPrint (ASL_PARSE_OUTPUT, "NAMESEG->%s", Op->Asl.Value.String);
- break;
-
- case PARSEOP_NAMESTRING:
-
-- DbgPrint (ASL_PARSE_OUTPUT, "NAMESTRING->%s", Value);
-+ Op->Asl.Value.String = (ACPI_STRING) (ACPI_SIZE) Value;
-+ DbgPrint (ASL_PARSE_OUTPUT, "NAMESTRING->%s", Op->Asl.Value.String);
- break;
-
- case PARSEOP_EISAID:
-
-- DbgPrint (ASL_PARSE_OUTPUT, "EISAID->%s", Value);
-+ Op->Asl.Value.String = (ACPI_STRING) (ACPI_SIZE) Value;
-+ DbgPrint (ASL_PARSE_OUTPUT, "EISAID->%s", Op->Asl.Value.String);
- break;
-
- case PARSEOP_METHOD:
-@@ -1029,12 +1032,14 @@ TrCreateValuedLeafNode (
-
- case PARSEOP_INTEGER:
-
-+ Op->Asl.Value.Integer = Value;
- DbgPrint (ASL_PARSE_OUTPUT, "INTEGER->%8.8X%8.8X",
- ACPI_FORMAT_UINT64 (Value));
- break;
-
- default:
-
-+ Op->Asl.Value.Integer = Value;
- break;
- }
-
-Index: acpica-unix2-20170224/source/components/executer/exoparg2.c
+Index: acpica-unix-20180508/source/components/executer/exoparg2.c
===================================================================
---- acpica-unix2-20170224.orig/source/components/executer/exoparg2.c
-+++ acpica-unix2-20170224/source/components/executer/exoparg2.c
+--- acpica-unix-20180508.orig/source/components/executer/exoparg2.c
++++ acpica-unix-20180508/source/components/executer/exoparg2.c
@@ -172,6 +172,8 @@ AcpiExOpcode_2A_2T_1R (
ACPI_OPERAND_OBJECT **Operand = &WalkState->Operands[0];
ACPI_OPERAND_OBJECT *ReturnDesc1 = NULL;
break;
case AML_CONCATENATE_OP: /* Concatenate (Data1, Data2, Result) */
-Index: acpica-unix2-20170224/source/include/actypes.h
+Index: acpica-unix-20180508/source/include/actypes.h
===================================================================
---- acpica-unix2-20170224.orig/source/include/actypes.h
-+++ acpica-unix2-20170224/source/include/actypes.h
+--- acpica-unix-20180508.orig/source/include/actypes.h
++++ acpica-unix-20180508/source/include/actypes.h
@@ -143,6 +143,19 @@ typedef COMPILER_DEPENDENT_INT64
*/
#define ACPI_THREAD_ID UINT64
/*******************************************************************************
*
-@@ -169,19 +182,6 @@ typedef UINT64
- #define ACPI_SIZE_MAX ACPI_UINT64_MAX
+@@ -170,20 +183,6 @@ typedef UINT64
#define ACPI_USE_NATIVE_DIVIDE /* Has native 64-bit integer support */
+ #define ACPI_USE_NATIVE_MATH64 /* Has native 64-bit integer support */
-/*
- * In the case of the Itanium Processor Family (IPF), the hardware does not
-- * support misaligned memory transfers. Set the MISALIGNMENT_NOT_SUPPORTED flag
-- * to indicate that special precautions must be taken to avoid alignment faults.
-- * (IA64 or ia64 is currently used by existing compilers to indicate IPF.)
+- * support misaligned memory transfers. Set the MISALIGNMENT_NOT_SUPPORTED
+- * flag to indicate that special precautions must be taken to avoid alignment
+- * faults. (IA64 or ia64 is currently used by existing compilers to indicate
+- * IPF.)
- *
- * Note: EM64T and other X86-64 processors support misaligned transfers,
- * so there is no need to define this flag.