diff options
Diffstat (limited to 'sys/contrib/dev/acpica/exresnte.c')
-rw-r--r-- | sys/contrib/dev/acpica/exresnte.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/sys/contrib/dev/acpica/exresnte.c b/sys/contrib/dev/acpica/exresnte.c index 4b4c8ff..cb38295 100644 --- a/sys/contrib/dev/acpica/exresnte.c +++ b/sys/contrib/dev/acpica/exresnte.c @@ -2,7 +2,7 @@ /****************************************************************************** * * Module Name: exresnte - AML Interpreter object resolution - * $Revision: 57 $ + * $Revision: 59 $ * *****************************************************************************/ @@ -118,7 +118,6 @@ #define __EXRESNTE_C__ #include "acpi.h" -#include "amlcode.h" #include "acdispat.h" #include "acinterp.h" #include "acnamesp.h" @@ -181,6 +180,16 @@ AcpiExResolveNodeToValue ( ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "Entry=%p SourceDesc=%p Type=%X\n", Node, SourceDesc, EntryType)); + if (EntryType == INTERNAL_TYPE_ALIAS) + { + /* There is always exactly one level of indirection */ + + Node = (ACPI_NAMESPACE_NODE *) Node->Object; + SourceDesc = AcpiNsGetAttachedObject (Node); + EntryType = AcpiNsGetType ((ACPI_HANDLE) Node); + *ObjectPtr = Node; + } + /* * Several object types require no further processing: * 1) Devices rarely have an attached object, return the Node @@ -306,7 +315,7 @@ AcpiExResolveNodeToValue ( break; - /* TYPE_Any is untyped, and thus there is no object associated with it */ + /* TYPE_ANY is untyped, and thus there is no object associated with it */ case ACPI_TYPE_ANY: |