summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/include
diff options
context:
space:
mode:
Diffstat (limited to 'sys/contrib/dev/acpica/include')
-rw-r--r--sys/contrib/dev/acpica/include/acconfig.h2
-rw-r--r--sys/contrib/dev/acpica/include/aclocal.h20
-rw-r--r--sys/contrib/dev/acpica/include/acmacros.h10
-rw-r--r--sys/contrib/dev/acpica/include/acnamesp.h47
-rw-r--r--sys/contrib/dev/acpica/include/acoutput.h8
-rw-r--r--sys/contrib/dev/acpica/include/acpixf.h2
-rw-r--r--sys/contrib/dev/acpica/include/acpredef.h4
-rw-r--r--sys/contrib/dev/acpica/include/acstruct.h40
-rw-r--r--sys/contrib/dev/acpica/include/acutils.h9
9 files changed, 79 insertions, 63 deletions
diff --git a/sys/contrib/dev/acpica/include/acconfig.h b/sys/contrib/dev/acpica/include/acconfig.h
index 452ab28..6a267fe 100644
--- a/sys/contrib/dev/acpica/include/acconfig.h
+++ b/sys/contrib/dev/acpica/include/acconfig.h
@@ -223,7 +223,7 @@
*
*****************************************************************************/
-#define ACPI_DEBUGGER_MAX_ARGS ACPI_METHOD_NUM_ARGS + 2 /* Max command line arguments */
+#define ACPI_DEBUGGER_MAX_ARGS ACPI_METHOD_NUM_ARGS + 4 /* Max command line arguments */
#define ACPI_DB_LINE_BUFFER_SIZE 512
#define ACPI_DEBUGGER_COMMAND_PROMPT '-'
diff --git a/sys/contrib/dev/acpica/include/aclocal.h b/sys/contrib/dev/acpica/include/aclocal.h
index f9fefb5..47e7437 100644
--- a/sys/contrib/dev/acpica/include/aclocal.h
+++ b/sys/contrib/dev/acpica/include/aclocal.h
@@ -414,26 +414,6 @@ typedef union acpi_predefined_info
#pragma pack()
-/* Data block used during object validation */
-
-typedef struct acpi_predefined_data
-{
- char *Pathname;
- const ACPI_PREDEFINED_INFO *Predefined;
- union acpi_operand_object *ParentPackage;
- ACPI_NAMESPACE_NODE *Node;
- UINT32 Flags;
- UINT32 ReturnBtype;
- UINT8 NodeFlags;
-
-} ACPI_PREDEFINED_DATA;
-
-/* Defines for Flags field above */
-
-#define ACPI_OBJECT_REPAIRED 1
-#define ACPI_OBJECT_WRAPPED 2
-
-
/* Return object auto-repair info */
typedef ACPI_STATUS (*ACPI_OBJECT_CONVERTER) (
diff --git a/sys/contrib/dev/acpica/include/acmacros.h b/sys/contrib/dev/acpica/include/acmacros.h
index a56dcd7..28bd2af 100644
--- a/sys/contrib/dev/acpica/include/acmacros.h
+++ b/sys/contrib/dev/acpica/include/acmacros.h
@@ -377,10 +377,11 @@
* the plist contains a set of parens to allow variable-length lists.
* These macros are used for both the debug and non-debug versions of the code.
*/
-#define ACPI_ERROR_NAMESPACE(s, e) AcpiUtNamespaceError (AE_INFO, s, e);
-#define ACPI_ERROR_METHOD(s, n, p, e) AcpiUtMethodError (AE_INFO, s, n, p, e);
-#define ACPI_WARN_PREDEFINED(plist) AcpiUtPredefinedWarning plist
-#define ACPI_INFO_PREDEFINED(plist) AcpiUtPredefinedInfo plist
+#define ACPI_ERROR_NAMESPACE(s, e) AcpiUtNamespaceError (AE_INFO, s, e);
+#define ACPI_ERROR_METHOD(s, n, p, e) AcpiUtMethodError (AE_INFO, s, n, p, e);
+#define ACPI_WARN_PREDEFINED(plist) AcpiUtPredefinedWarning plist
+#define ACPI_INFO_PREDEFINED(plist) AcpiUtPredefinedInfo plist
+#define ACPI_BIOS_ERROR_PREDEFINED(plist) AcpiUtPredefinedBiosError plist
#else
@@ -390,6 +391,7 @@
#define ACPI_ERROR_METHOD(s, n, p, e)
#define ACPI_WARN_PREDEFINED(plist)
#define ACPI_INFO_PREDEFINED(plist)
+#define ACPI_BIOS_ERROR_PREDEFINED(plist)
#endif /* ACPI_NO_ERROR_MESSAGES */
diff --git a/sys/contrib/dev/acpica/include/acnamesp.h b/sys/contrib/dev/acpica/include/acnamesp.h
index 07b0fe9..1118184 100644
--- a/sys/contrib/dev/acpica/include/acnamesp.h
+++ b/sys/contrib/dev/acpica/include/acnamesp.h
@@ -286,25 +286,40 @@ AcpiNsExecModuleCodeList (
/*
- * nspredef - Support for predefined/reserved names
+ * nsarguments - Argument count/type checking for predefined/reserved names
*/
-ACPI_STATUS
-AcpiNsCheckPredefinedNames (
- ACPI_NAMESPACE_NODE *Node,
- UINT32 UserParamCount,
- ACPI_STATUS ReturnStatus,
- ACPI_OPERAND_OBJECT **ReturnObject);
-
void
-AcpiNsCheckParameterCount (
+AcpiNsCheckArgumentCount (
char *Pathname,
ACPI_NAMESPACE_NODE *Node,
UINT32 UserParamCount,
const ACPI_PREDEFINED_INFO *Info);
+void
+AcpiNsCheckAcpiCompliance (
+ char *Pathname,
+ ACPI_NAMESPACE_NODE *Node,
+ const ACPI_PREDEFINED_INFO *Predefined);
+
+void
+AcpiNsCheckArgumentTypes (
+ ACPI_EVALUATE_INFO *Info);
+
+
+/*
+ * nspredef - Return value checking for predefined/reserved names
+ */
+ACPI_STATUS
+AcpiNsCheckReturnValue (
+ ACPI_NAMESPACE_NODE *Node,
+ ACPI_EVALUATE_INFO *Info,
+ UINT32 UserParamCount,
+ ACPI_STATUS ReturnStatus,
+ ACPI_OPERAND_OBJECT **ReturnObject);
+
ACPI_STATUS
AcpiNsCheckObjectType (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
ACPI_OPERAND_OBJECT **ReturnObjectPtr,
UINT32 ExpectedBtypes,
UINT32 PackageIndex);
@@ -315,7 +330,7 @@ AcpiNsCheckObjectType (
*/
ACPI_STATUS
AcpiNsCheckPackage (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
ACPI_OPERAND_OBJECT **ReturnObjectPtr);
@@ -403,27 +418,27 @@ AcpiNsGetAttachedData (
*/
ACPI_STATUS
AcpiNsSimpleRepair (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
UINT32 ExpectedBtypes,
UINT32 PackageIndex,
ACPI_OPERAND_OBJECT **ReturnObjectPtr);
ACPI_STATUS
AcpiNsWrapWithPackage (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
ACPI_OPERAND_OBJECT *OriginalObject,
ACPI_OPERAND_OBJECT **ObjDescPtr);
ACPI_STATUS
AcpiNsRepairNullElement (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
UINT32 ExpectedBtypes,
UINT32 PackageIndex,
ACPI_OPERAND_OBJECT **ReturnObjectPtr);
void
AcpiNsRemoveNullElements (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
UINT8 PackageType,
ACPI_OPERAND_OBJECT *ObjDesc);
@@ -434,7 +449,7 @@ AcpiNsRemoveNullElements (
*/
ACPI_STATUS
AcpiNsComplexRepairs (
- ACPI_PREDEFINED_DATA *Data,
+ ACPI_EVALUATE_INFO *Info,
ACPI_NAMESPACE_NODE *Node,
ACPI_STATUS ValidateStatus,
ACPI_OPERAND_OBJECT **ReturnObjectPtr);
diff --git a/sys/contrib/dev/acpica/include/acoutput.h b/sys/contrib/dev/acpica/include/acoutput.h
index 371ce7f..e7b1248 100644
--- a/sys/contrib/dev/acpica/include/acoutput.h
+++ b/sys/contrib/dev/acpica/include/acoutput.h
@@ -435,27 +435,21 @@
* This is the non-debug case -- make everything go away,
* leaving no executable debug code!
*/
-#define ACPI_FUNCTION_NAME(a)
#define ACPI_DEBUG_PRINT(pl)
#define ACPI_DEBUG_PRINT_RAW(pl)
#define ACPI_DEBUG_EXEC(a)
#define ACPI_DEBUG_ONLY_MEMBERS(a)
+#define ACPI_FUNCTION_NAME(a)
#define ACPI_FUNCTION_TRACE(a)
#define ACPI_FUNCTION_TRACE_PTR(a, b)
#define ACPI_FUNCTION_TRACE_U32(a, b)
#define ACPI_FUNCTION_TRACE_STR(a, b)
-#define ACPI_FUNCTION_EXIT
-#define ACPI_FUNCTION_STATUS_EXIT(s)
-#define ACPI_FUNCTION_VALUE_EXIT(s)
#define ACPI_FUNCTION_ENTRY()
#define ACPI_DUMP_STACK_ENTRY(a)
#define ACPI_DUMP_OPERANDS(a, b, c)
#define ACPI_DUMP_ENTRY(a, b)
-#define ACPI_DUMP_TABLES(a, b)
#define ACPI_DUMP_PATHNAME(a, b, c, d)
#define ACPI_DUMP_BUFFER(a, b)
-#define ACPI_DEBUG_PRINT(pl)
-#define ACPI_DEBUG_PRINT_RAW(pl)
#define ACPI_IS_DEBUG_ENABLED(Level, Component) 0
/* Return macros must have a return statement at the minimum */
diff --git a/sys/contrib/dev/acpica/include/acpixf.h b/sys/contrib/dev/acpica/include/acpixf.h
index 94111a6..652c87c 100644
--- a/sys/contrib/dev/acpica/include/acpixf.h
+++ b/sys/contrib/dev/acpica/include/acpixf.h
@@ -47,7 +47,7 @@
/* Current ACPICA subsystem version in YYYYMMDD format */
-#define ACPI_CA_VERSION 0x20130328
+#define ACPI_CA_VERSION 0x20130418
#include <contrib/dev/acpica/include/acconfig.h>
#include <contrib/dev/acpica/include/actypes.h>
diff --git a/sys/contrib/dev/acpica/include/acpredef.h b/sys/contrib/dev/acpica/include/acpredef.h
index 7a652b5..46f3d69 100644
--- a/sys/contrib/dev/acpica/include/acpredef.h
+++ b/sys/contrib/dev/acpica/include/acpredef.h
@@ -131,8 +131,8 @@ enum AcpiReturnPackageTypes
#define ARG_COUNT_IS_MINIMUM 0x8000
#define METHOD_MAX_ARG_TYPE ACPI_TYPE_PACKAGE
-#define METHOD_GET_COUNT(ArgList) (ArgList & METHOD_ARG_MASK)
-#define METHOD_GET_NEXT_ARG(ArgList) (ArgList >> METHOD_ARG_BIT_WIDTH)
+#define METHOD_GET_ARG_COUNT(ArgList) ((ArgList) & METHOD_ARG_MASK)
+#define METHOD_GET_NEXT_TYPE(ArgList) (((ArgList) >>= METHOD_ARG_BIT_WIDTH) & METHOD_ARG_MASK)
/* Macros used to build the predefined info table */
diff --git a/sys/contrib/dev/acpica/include/acstruct.h b/sys/contrib/dev/acpica/include/acstruct.h
index 8923d81..a6ba5ea 100644
--- a/sys/contrib/dev/acpica/include/acstruct.h
+++ b/sys/contrib/dev/acpica/include/acstruct.h
@@ -195,27 +195,43 @@ typedef union acpi_aml_operands
/*
- * Structure used to pass object evaluation parameters.
+ * Structure used to pass object evaluation information and parameters.
* Purpose is to reduce CPU stack use.
*/
typedef struct acpi_evaluate_info
{
- ACPI_NAMESPACE_NODE *PrefixNode;
- char *Pathname;
- ACPI_OPERAND_OBJECT *ObjDesc;
- ACPI_OPERAND_OBJECT **Parameters;
- ACPI_NAMESPACE_NODE *ResolvedNode;
- ACPI_OPERAND_OBJECT *ReturnObject;
- UINT8 ParamCount;
- UINT8 PassNumber;
- UINT8 ReturnObjectType;
- UINT8 Flags;
+ /* The first 3 elements are passed by the caller to AcpiNsEvaluate */
+
+ ACPI_NAMESPACE_NODE *PrefixNode; /* Input: starting node */
+ char *RelativePathname; /* Input: path relative to PrefixNode */
+ ACPI_OPERAND_OBJECT **Parameters; /* Input: argument list */
+
+ ACPI_NAMESPACE_NODE *Node; /* Resolved node (PrefixNode:RelativePathname) */
+ ACPI_OPERAND_OBJECT *ObjDesc; /* Object attached to the resolved node */
+ char *FullPathname; /* Full pathname of the resolved node */
+
+ const ACPI_PREDEFINED_INFO *Predefined; /* Used if Node is a predefined name */
+ ACPI_OPERAND_OBJECT *ReturnObject; /* Object returned from the evaluation */
+ union acpi_operand_object *ParentPackage; /* Used if return object is a Package */
+
+ UINT32 ReturnFlags; /* Used for return value analysis */
+ UINT32 ReturnBtype; /* Bitmapped type of the returned object */
+ UINT16 ParamCount; /* Count of the input argument list */
+ UINT8 PassNumber; /* Parser pass number */
+ UINT8 ReturnObjectType; /* Object type of the returned object */
+ UINT8 NodeFlags; /* Same as Node->Flags */
+ UINT8 Flags; /* General flags */
} ACPI_EVALUATE_INFO;
/* Values for Flags above */
-#define ACPI_IGNORE_RETURN_VALUE 1
+#define ACPI_IGNORE_RETURN_VALUE 1
+
+/* Defines for ReturnFlags field above */
+
+#define ACPI_OBJECT_REPAIRED 1
+#define ACPI_OBJECT_WRAPPED 2
/* Info used by AcpiNsInitializeDevices */
diff --git a/sys/contrib/dev/acpica/include/acutils.h b/sys/contrib/dev/acpica/include/acutils.h
index 52fb049..b4ea7e5 100644
--- a/sys/contrib/dev/acpica/include/acutils.h
+++ b/sys/contrib/dev/acpica/include/acutils.h
@@ -1020,6 +1020,15 @@ AcpiUtPredefinedInfo (
const char *Format,
...);
+void ACPI_INTERNAL_VAR_XFACE
+AcpiUtPredefinedBiosError (
+ const char *ModuleName,
+ UINT32 LineNumber,
+ char *Pathname,
+ UINT8 NodeFlags,
+ const char *Format,
+ ...);
+
void
AcpiUtNamespaceError (
const char *ModuleName,
OpenPOWER on IntegriCloud