diff options
author | msmith <msmith@FreeBSD.org> | 2000-12-01 09:49:35 +0000 |
---|---|---|
committer | msmith <msmith@FreeBSD.org> | 2000-12-01 09:49:35 +0000 |
commit | 706c27579bb5e3bba459847ba6192d0c98441471 (patch) | |
tree | 63081d80c4771c846f22c60383c7849c2df8de20 | |
parent | cafb2a0daa952ef4a9f04e3ba3e8ab940a51ee68 (diff) | |
download | FreeBSD-src-706c27579bb5e3bba459847ba6192d0c98441471.zip FreeBSD-src-706c27579bb5e3bba459847ba6192d0c98441471.tar.gz |
Resolve conflicts from the vendor update.
-rw-r--r-- | sys/contrib/dev/acpica/Subsystem/Hardware/hwxface.c | 60 | ||||
-rw-r--r-- | sys/contrib/dev/acpica/Subsystem/Include/acconfig.h | 30 | ||||
-rw-r--r-- | sys/contrib/dev/acpica/Subsystem/Include/acpixf.h | 9 | ||||
-rw-r--r-- | sys/contrib/dev/acpica/Subsystem/Parser/psparse.c | 118 | ||||
-rw-r--r-- | sys/contrib/dev/acpica/acconfig.h | 30 | ||||
-rw-r--r-- | sys/contrib/dev/acpica/acpixf.h | 9 | ||||
-rw-r--r-- | sys/contrib/dev/acpica/psparse.c | 118 |
7 files changed, 80 insertions, 294 deletions
diff --git a/sys/contrib/dev/acpica/Subsystem/Hardware/hwxface.c b/sys/contrib/dev/acpica/Subsystem/Hardware/hwxface.c index 0bae46e..eeb40ba 100644 --- a/sys/contrib/dev/acpica/Subsystem/Hardware/hwxface.c +++ b/sys/contrib/dev/acpica/Subsystem/Hardware/hwxface.c @@ -2,7 +2,7 @@ /****************************************************************************** * * Name: hwxface.c - Hardware access external interfaces - * $Revision: 32 $ + * $Revision: 36 $ * *****************************************************************************/ @@ -222,7 +222,7 @@ AcpiGetProcessorThrottlingInfo ( NATIVE_UINT NumThrottleStates; NATIVE_UINT BufferSpaceNeeded; NATIVE_UINT i; - UINT8 DutyWidth = 0; + UINT8 DutyWidth; ACPI_NAMESPACE_NODE *CpuNode; ACPI_OPERAND_OBJECT *CpuObj; ACPI_CPU_THROTTLING_STATE *StatePtr; @@ -259,12 +259,10 @@ AcpiGetProcessorThrottlingInfo ( return_ACPI_STATUS (AE_NOT_FOUND); } -#ifndef _IA64 /* - * No Duty fields in IA64 tables + * (Duty Width on IA-64 is zero) */ - DutyWidth = AcpiGbl_FACP->DutyWidth; -#endif + DutyWidth = AcpiGbl_FADT->DutyWidth; /* * P0 must always have a P_BLK all others may be null @@ -339,8 +337,8 @@ AcpiGetProcessorThrottlingState ( ACPI_OPERAND_OBJECT *CpuObj; UINT32 NumThrottleStates; UINT32 DutyCycle; - UINT8 DutyOffset = 0; - UINT8 DutyWidth = 0; + UINT8 DutyOffset; + UINT8 DutyWidth; FUNCTION_TRACE ("AcpiGetProcessorThrottlingState"); @@ -362,13 +360,11 @@ AcpiGetProcessorThrottlingState ( return_ACPI_STATUS (AE_NOT_FOUND); } -#ifndef _IA64 /* * No Duty fields in IA64 tables */ - DutyOffset = AcpiGbl_FACP->DutyOffset; - DutyWidth = AcpiGbl_FACP->DutyWidth; -#endif + DutyOffset = AcpiGbl_FADT->DutyOffset; + DutyWidth = AcpiGbl_FADT->DutyWidth; /* * Must have a valid P_BLK P0 must have a P_BLK all others may be null @@ -432,8 +428,8 @@ AcpiSetProcessorThrottlingState ( ACPI_NAMESPACE_NODE *CpuNode; ACPI_OPERAND_OBJECT *CpuObj; UINT32 NumThrottleStates = 0; - UINT8 DutyOffset = 0; - UINT8 DutyWidth = 0; + UINT8 DutyOffset; + UINT8 DutyWidth; UINT32 DutyCycle = 0; @@ -456,13 +452,11 @@ AcpiSetProcessorThrottlingState ( return_ACPI_STATUS (AE_NOT_FOUND); } -#ifndef _IA64 /* * No Duty fields in IA64 tables */ - DutyOffset = AcpiGbl_FACP->DutyOffset; - DutyWidth = AcpiGbl_FACP->DutyWidth; -#endif + DutyOffset = AcpiGbl_FADT->DutyOffset; + DutyWidth = AcpiGbl_FADT->DutyWidth; /* * Must have a valid P_BLK P0 must have a P_BLK all others may be null @@ -489,7 +483,7 @@ AcpiSetProcessorThrottlingState ( return_ACPI_STATUS (AE_SUPPORT); } - NumThrottleStates = (int) AcpiHwLocalPow (2,DutyWidth); + NumThrottleStates = (UINT32) AcpiHwLocalPow (2,DutyWidth); /* * Convert throttling state to duty cycle (invert). @@ -726,8 +720,9 @@ AcpiGetTimer ( ACPI_STATUS AcpiSetFirmwareWakingVector ( - void *PhysicalAddress) + ACPI_PHYSICAL_ADDRESS PhysicalAddress) { + FUNCTION_TRACE ("AcpiSetFirmwareWakingVector"); @@ -740,7 +735,14 @@ AcpiSetFirmwareWakingVector ( /* Set the vector */ - * ((void **) AcpiGbl_FACS->FirmwareWakingVector) = PhysicalAddress; + if (AcpiGbl_FACS->VectorWidth == 32) + { + * (UINT32 *) AcpiGbl_FACS->FirmwareWakingVector = (UINT32) PhysicalAddress; + } + else + { + *AcpiGbl_FACS->FirmwareWakingVector = PhysicalAddress; + } return_ACPI_STATUS (AE_OK); } @@ -751,7 +753,7 @@ AcpiSetFirmwareWakingVector ( * FUNCTION: AcpiGetFirmwareWakingVector * * PARAMETERS: *PhysicalAddress - Output buffer where contents of - * the dFirmwareWakingVector field of + * the FirmwareWakingVector field of * the FACS will be stored. * * RETURN: Status @@ -762,8 +764,9 @@ AcpiSetFirmwareWakingVector ( ACPI_STATUS AcpiGetFirmwareWakingVector ( - void **PhysicalAddress) + ACPI_PHYSICAL_ADDRESS *PhysicalAddress) { + FUNCTION_TRACE ("AcpiGetFirmwareWakingVector"); @@ -780,9 +783,14 @@ AcpiGetFirmwareWakingVector ( } /* Get the vector */ - - *PhysicalAddress = * ((void **) AcpiGbl_FACS->FirmwareWakingVector); - + if (AcpiGbl_FACS->VectorWidth == 32) + { + *PhysicalAddress = * (UINT32 *) AcpiGbl_FACS->FirmwareWakingVector; + } + else + { + *PhysicalAddress = *AcpiGbl_FACS->FirmwareWakingVector; + } return_ACPI_STATUS (AE_OK); } diff --git a/sys/contrib/dev/acpica/Subsystem/Include/acconfig.h b/sys/contrib/dev/acpica/Subsystem/Include/acconfig.h index 08653a3..ea2c476 100644 --- a/sys/contrib/dev/acpica/Subsystem/Include/acconfig.h +++ b/sys/contrib/dev/acpica/Subsystem/Include/acconfig.h @@ -1,7 +1,7 @@ /****************************************************************************** * * Name: acconfig.h - Global configuration constants - * $Revision: 44 $ + * $Revision: 48 $ * *****************************************************************************/ @@ -147,21 +147,6 @@ #define ACPI_CA_VERSION __DATE__ -/* - * How and when control methods will be parsed - * The default action is to parse all methods at table load time to verify them, but delete the parse trees - * to conserve memory. Methods are parsed just in time before execution and the parse tree is deleted - * when execution completes. - */ -#define METHOD_PARSE_AT_INIT 0x0 /* Parse at table init, never delete the method parse tree */ -#define METHOD_PARSE_JUST_IN_TIME 0x1 /* Parse only when a method is invoked */ -#define METHOD_DELETE_AT_COMPLETION 0x2 /* Delete parse tree on method completion */ - -/* Default parsing configuration */ - -#define METHOD_PARSE_CONFIGURATION (METHOD_PARSE_JUST_IN_TIME | METHOD_DELETE_AT_COMPLETION) - - /* Maximum objects in the various object caches */ #define MAX_STATE_CACHE_DEPTH 64 /* State objects for stacks */ @@ -170,13 +155,6 @@ #define MAX_OBJECT_CACHE_DEPTH 64 /* Interpreter operand objects */ #define MAX_WALK_CACHE_DEPTH 2 /* Objects for parse tree walks (method execution) */ -/* - * NameSpace Table size - * - * All tables are the same size to simplify the implementation. - * Tables may be extended by allocating additional tables that - * are in turn linked together to form a chain of tables. - */ #define NS_TABLE_SIZE 4 @@ -248,14 +226,14 @@ /* Names within the namespace are 4 bytes long */ #define ACPI_NAME_SIZE 4 -#define PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 INT8 for separator */ +#define PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 INT8 for separator */ #define PATH_SEPARATOR '.' /* Constants used in searching for the RSDP in low memory */ -#define LO_RSDP_WINDOW_BASE (void *) 0 -#define HI_RSDP_WINDOW_BASE (void *) 0xE0000 +#define LO_RSDP_WINDOW_BASE 0 /* Physical Address */ +#define HI_RSDP_WINDOW_BASE 0xE0000 /* Physical Address */ #define LO_RSDP_WINDOW_SIZE 0x400 #define HI_RSDP_WINDOW_SIZE 0x20000 #define RSDP_SCAN_STEP 16 diff --git a/sys/contrib/dev/acpica/Subsystem/Include/acpixf.h b/sys/contrib/dev/acpica/Subsystem/Include/acpixf.h index 3451820..410a35d 100644 --- a/sys/contrib/dev/acpica/Subsystem/Include/acpixf.h +++ b/sys/contrib/dev/acpica/Subsystem/Include/acpixf.h @@ -161,11 +161,11 @@ AcpiFormatException ( ACPI_STATUS AcpiFindRootPointer ( - void **RsdpPhysicalAddress); + ACPI_PHYSICAL_ADDRESS *RsdpPhysicalAddress); ACPI_STATUS AcpiLoadTables ( - void *RsdpPhysicalAddress); + ACPI_PHYSICAL_ADDRESS RsdpPhysicalAddress); ACPI_STATUS AcpiLoadTable ( @@ -201,7 +201,6 @@ AcpiWalkNamespace ( void *Context, void * *ReturnValue); - ACPI_STATUS AcpiGetDevices ( NATIVE_CHAR *HID, @@ -370,11 +369,11 @@ AcpiGetIrqRoutingTable ( ACPI_STATUS AcpiSetFirmwareWakingVector ( - void *PhysicalAddress); + ACPI_PHYSICAL_ADDRESS PhysicalAddress); ACPI_STATUS AcpiGetFirmwareWakingVector ( - void **PhysicalAddress); + ACPI_PHYSICAL_ADDRESS *PhysicalAddress); ACPI_STATUS AcpiGetProcessorId ( diff --git a/sys/contrib/dev/acpica/Subsystem/Parser/psparse.c b/sys/contrib/dev/acpica/Subsystem/Parser/psparse.c index 74a8cb6..6f0c609 100644 --- a/sys/contrib/dev/acpica/Subsystem/Parser/psparse.c +++ b/sys/contrib/dev/acpica/Subsystem/Parser/psparse.c @@ -1,7 +1,7 @@ /****************************************************************************** * * Module Name: psparse - Parser top level AML parse routines - * $Revision: 60 $ + * $Revision: 65 $ * *****************************************************************************/ @@ -121,7 +121,7 @@ * generated parser to tightly constrain stack and dynamic memory * usage. At the same time, parsing is kept flexible and the code * fairly compact by parsing based on a list of AML opcode - * templates in AcpiGbl_AmlOpInfo[] + * templates in AmlOpInfo[] */ #include "acpi.h" @@ -141,101 +141,6 @@ extern UINT32 AcpiGbl_ScopeDepth; /******************************************************************************* * - * FUNCTION: AcpiPsDeleteCompletedOp - * - * PARAMETERS: State - Walk state - * Op - Completed op - * - * RETURN: AE_OK - * - * DESCRIPTION: Callback function for AcpiPsGetNextWalkOp(). Used during - * AcpiPsDeleteParse tree to delete Op objects when all sub-objects - * have been visited (and deleted.) - * - ******************************************************************************/ - -ACPI_STATUS -AcpiPsDeleteCompletedOp ( - ACPI_WALK_STATE *State, - ACPI_PARSE_OBJECT *Op) -{ - - AcpiPsFreeOp (Op); - return (AE_OK); -} - - -#ifndef PARSER_ONLY -/******************************************************************************* - * - * FUNCTION: AcpiPsDeleteParseTree - * - * PARAMETERS: SubtreeRoot - Root of tree (or subtree) to delete - * - * RETURN: None - * - * DESCRIPTION: Delete a portion of or an entire parse tree. - * - ******************************************************************************/ - -void -AcpiPsDeleteParseTree ( - ACPI_PARSE_OBJECT *SubtreeRoot) -{ - ACPI_WALK_STATE *WalkState; - ACPI_WALK_LIST WalkList; - - - FUNCTION_TRACE_PTR ("PsDeleteParseTree", SubtreeRoot); - - - if (!SubtreeRoot) - { - return_VOID; - } - - /* Create and initialize a new walk list */ - - WalkList.WalkState = NULL; - WalkState = AcpiDsCreateWalkState (TABLE_ID_DSDT, NULL, NULL, &WalkList); - if (!WalkState) - { - return_VOID; - } - - WalkState->ParserState = NULL; - WalkState->ParseFlags = 0; - WalkState->DescendingCallback = NULL; - WalkState->AscendingCallback = NULL; - - - WalkState->Origin = SubtreeRoot; - WalkState->NextOp = SubtreeRoot; - - - /* Head downward in the tree */ - - WalkState->NextOpInfo = NEXT_OP_DOWNWARD; - - /* Visit all nodes in the subtree */ - - while (WalkState->NextOp) - { - AcpiPsGetNextWalkOp (WalkState, WalkState->NextOp, - AcpiPsDeleteCompletedOp); - } - - /* We are done with this walk */ - - AcpiDsDeleteWalkState (WalkState); - - return_VOID; -} -#endif - - -/******************************************************************************* - * * FUNCTION: AcpiPsPeekOpcode * * PARAMETERS: None @@ -246,7 +151,7 @@ AcpiPsDeleteParseTree ( * ******************************************************************************/ -UINT32 +static UINT32 AcpiPsGetOpcodeSize ( UINT32 Opcode) { @@ -428,7 +333,7 @@ AcpiPsFindObject ( * ******************************************************************************/ -BOOLEAN +static BOOLEAN AcpiPsCompleteThisOp ( ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT *Op) @@ -560,8 +465,7 @@ AcpiPsCompleteThisOp ( * ******************************************************************************/ - -ACPI_STATUS +static ACPI_STATUS AcpiPsNextParseState ( ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT *Op, @@ -700,12 +604,12 @@ AcpiPsParseLoop ( ACPI_PARSE_STATE *ParserState; - FUNCTION_TRACE_PTR ("PsParseLoop", WalkState); ParserState = WalkState->ParserState; +#ifndef PARSER_ONLY if (WalkState->WalkType & WALK_METHOD_RESTART) { /* We are restarting a preempted control method */ @@ -725,11 +629,18 @@ AcpiPsParseLoop ( { /* - * A predicate was just completed, get the value of the + * A predicate was just completed, get the value of the * predicate and branch based on that value */ Status = AcpiDsGetPredicateValue (WalkState, NULL, TRUE); + if (Status == AE_AML_NO_OPERAND) + { + DEBUG_PRINT (ACPI_ERROR, + ("PsParseLoop: Invoked method did not return a value, %s\n", + AcpiCmFormatException (Status))); + + } Status = AcpiPsNextParseState (WalkState, Op, Status); } @@ -745,6 +656,7 @@ AcpiPsParseLoop ( ArgTypes = WalkState->PrevArgTypes; } } +#endif /* * Iterative parsing loop, while there is more aml to process: diff --git a/sys/contrib/dev/acpica/acconfig.h b/sys/contrib/dev/acpica/acconfig.h index 08653a3..ea2c476 100644 --- a/sys/contrib/dev/acpica/acconfig.h +++ b/sys/contrib/dev/acpica/acconfig.h @@ -1,7 +1,7 @@ /****************************************************************************** * * Name: acconfig.h - Global configuration constants - * $Revision: 44 $ + * $Revision: 48 $ * *****************************************************************************/ @@ -147,21 +147,6 @@ #define ACPI_CA_VERSION __DATE__ -/* - * How and when control methods will be parsed - * The default action is to parse all methods at table load time to verify them, but delete the parse trees - * to conserve memory. Methods are parsed just in time before execution and the parse tree is deleted - * when execution completes. - */ -#define METHOD_PARSE_AT_INIT 0x0 /* Parse at table init, never delete the method parse tree */ -#define METHOD_PARSE_JUST_IN_TIME 0x1 /* Parse only when a method is invoked */ -#define METHOD_DELETE_AT_COMPLETION 0x2 /* Delete parse tree on method completion */ - -/* Default parsing configuration */ - -#define METHOD_PARSE_CONFIGURATION (METHOD_PARSE_JUST_IN_TIME | METHOD_DELETE_AT_COMPLETION) - - /* Maximum objects in the various object caches */ #define MAX_STATE_CACHE_DEPTH 64 /* State objects for stacks */ @@ -170,13 +155,6 @@ #define MAX_OBJECT_CACHE_DEPTH 64 /* Interpreter operand objects */ #define MAX_WALK_CACHE_DEPTH 2 /* Objects for parse tree walks (method execution) */ -/* - * NameSpace Table size - * - * All tables are the same size to simplify the implementation. - * Tables may be extended by allocating additional tables that - * are in turn linked together to form a chain of tables. - */ #define NS_TABLE_SIZE 4 @@ -248,14 +226,14 @@ /* Names within the namespace are 4 bytes long */ #define ACPI_NAME_SIZE 4 -#define PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 INT8 for separator */ +#define PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 INT8 for separator */ #define PATH_SEPARATOR '.' /* Constants used in searching for the RSDP in low memory */ -#define LO_RSDP_WINDOW_BASE (void *) 0 -#define HI_RSDP_WINDOW_BASE (void *) 0xE0000 +#define LO_RSDP_WINDOW_BASE 0 /* Physical Address */ +#define HI_RSDP_WINDOW_BASE 0xE0000 /* Physical Address */ #define LO_RSDP_WINDOW_SIZE 0x400 #define HI_RSDP_WINDOW_SIZE 0x20000 #define RSDP_SCAN_STEP 16 diff --git a/sys/contrib/dev/acpica/acpixf.h b/sys/contrib/dev/acpica/acpixf.h index 3451820..410a35d 100644 --- a/sys/contrib/dev/acpica/acpixf.h +++ b/sys/contrib/dev/acpica/acpixf.h @@ -161,11 +161,11 @@ AcpiFormatException ( ACPI_STATUS AcpiFindRootPointer ( - void **RsdpPhysicalAddress); + ACPI_PHYSICAL_ADDRESS *RsdpPhysicalAddress); ACPI_STATUS AcpiLoadTables ( - void *RsdpPhysicalAddress); + ACPI_PHYSICAL_ADDRESS RsdpPhysicalAddress); ACPI_STATUS AcpiLoadTable ( @@ -201,7 +201,6 @@ AcpiWalkNamespace ( void *Context, void * *ReturnValue); - ACPI_STATUS AcpiGetDevices ( NATIVE_CHAR *HID, @@ -370,11 +369,11 @@ AcpiGetIrqRoutingTable ( ACPI_STATUS AcpiSetFirmwareWakingVector ( - void *PhysicalAddress); + ACPI_PHYSICAL_ADDRESS PhysicalAddress); ACPI_STATUS AcpiGetFirmwareWakingVector ( - void **PhysicalAddress); + ACPI_PHYSICAL_ADDRESS *PhysicalAddress); ACPI_STATUS AcpiGetProcessorId ( diff --git a/sys/contrib/dev/acpica/psparse.c b/sys/contrib/dev/acpica/psparse.c index 74a8cb6..6f0c609 100644 --- a/sys/contrib/dev/acpica/psparse.c +++ b/sys/contrib/dev/acpica/psparse.c @@ -1,7 +1,7 @@ /****************************************************************************** * * Module Name: psparse - Parser top level AML parse routines - * $Revision: 60 $ + * $Revision: 65 $ * *****************************************************************************/ @@ -121,7 +121,7 @@ * generated parser to tightly constrain stack and dynamic memory * usage. At the same time, parsing is kept flexible and the code * fairly compact by parsing based on a list of AML opcode - * templates in AcpiGbl_AmlOpInfo[] + * templates in AmlOpInfo[] */ #include "acpi.h" @@ -141,101 +141,6 @@ extern UINT32 AcpiGbl_ScopeDepth; /******************************************************************************* * - * FUNCTION: AcpiPsDeleteCompletedOp - * - * PARAMETERS: State - Walk state - * Op - Completed op - * - * RETURN: AE_OK - * - * DESCRIPTION: Callback function for AcpiPsGetNextWalkOp(). Used during - * AcpiPsDeleteParse tree to delete Op objects when all sub-objects - * have been visited (and deleted.) - * - ******************************************************************************/ - -ACPI_STATUS -AcpiPsDeleteCompletedOp ( - ACPI_WALK_STATE *State, - ACPI_PARSE_OBJECT *Op) -{ - - AcpiPsFreeOp (Op); - return (AE_OK); -} - - -#ifndef PARSER_ONLY -/******************************************************************************* - * - * FUNCTION: AcpiPsDeleteParseTree - * - * PARAMETERS: SubtreeRoot - Root of tree (or subtree) to delete - * - * RETURN: None - * - * DESCRIPTION: Delete a portion of or an entire parse tree. - * - ******************************************************************************/ - -void -AcpiPsDeleteParseTree ( - ACPI_PARSE_OBJECT *SubtreeRoot) -{ - ACPI_WALK_STATE *WalkState; - ACPI_WALK_LIST WalkList; - - - FUNCTION_TRACE_PTR ("PsDeleteParseTree", SubtreeRoot); - - - if (!SubtreeRoot) - { - return_VOID; - } - - /* Create and initialize a new walk list */ - - WalkList.WalkState = NULL; - WalkState = AcpiDsCreateWalkState (TABLE_ID_DSDT, NULL, NULL, &WalkList); - if (!WalkState) - { - return_VOID; - } - - WalkState->ParserState = NULL; - WalkState->ParseFlags = 0; - WalkState->DescendingCallback = NULL; - WalkState->AscendingCallback = NULL; - - - WalkState->Origin = SubtreeRoot; - WalkState->NextOp = SubtreeRoot; - - - /* Head downward in the tree */ - - WalkState->NextOpInfo = NEXT_OP_DOWNWARD; - - /* Visit all nodes in the subtree */ - - while (WalkState->NextOp) - { - AcpiPsGetNextWalkOp (WalkState, WalkState->NextOp, - AcpiPsDeleteCompletedOp); - } - - /* We are done with this walk */ - - AcpiDsDeleteWalkState (WalkState); - - return_VOID; -} -#endif - - -/******************************************************************************* - * * FUNCTION: AcpiPsPeekOpcode * * PARAMETERS: None @@ -246,7 +151,7 @@ AcpiPsDeleteParseTree ( * ******************************************************************************/ -UINT32 +static UINT32 AcpiPsGetOpcodeSize ( UINT32 Opcode) { @@ -428,7 +333,7 @@ AcpiPsFindObject ( * ******************************************************************************/ -BOOLEAN +static BOOLEAN AcpiPsCompleteThisOp ( ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT *Op) @@ -560,8 +465,7 @@ AcpiPsCompleteThisOp ( * ******************************************************************************/ - -ACPI_STATUS +static ACPI_STATUS AcpiPsNextParseState ( ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT *Op, @@ -700,12 +604,12 @@ AcpiPsParseLoop ( ACPI_PARSE_STATE *ParserState; - FUNCTION_TRACE_PTR ("PsParseLoop", WalkState); ParserState = WalkState->ParserState; +#ifndef PARSER_ONLY if (WalkState->WalkType & WALK_METHOD_RESTART) { /* We are restarting a preempted control method */ @@ -725,11 +629,18 @@ AcpiPsParseLoop ( { /* - * A predicate was just completed, get the value of the + * A predicate was just completed, get the value of the * predicate and branch based on that value */ Status = AcpiDsGetPredicateValue (WalkState, NULL, TRUE); + if (Status == AE_AML_NO_OPERAND) + { + DEBUG_PRINT (ACPI_ERROR, + ("PsParseLoop: Invoked method did not return a value, %s\n", + AcpiCmFormatException (Status))); + + } Status = AcpiPsNextParseState (WalkState, Op, Status); } @@ -745,6 +656,7 @@ AcpiPsParseLoop ( ArgTypes = WalkState->PrevArgTypes; } } +#endif /* * Iterative parsing loop, while there is more aml to process: |