acdispat.h revision 69450
122347Spst/******************************************************************************
222347Spst *
329964Sache * Name: acdispat.h - dispatcher (parser to interpreter interface)
492914Smarkm *       $Revision: 32 $
522347Spst *
622347Spst *****************************************************************************/
722347Spst
822347Spst/******************************************************************************
922347Spst *
1022347Spst * 1. Copyright Notice
1122347Spst *
1222347Spst * Some or all of this work - Copyright (c) 1999, Intel Corp.  All rights
1322347Spst * reserved.
1422347Spst *
1522347Spst * 2. License
1622347Spst *
1792914Smarkm * 2.1. This is your license from Intel Corp. under its intellectual property
1892914Smarkm * rights.  You may have additional license terms from the party that provided
1959121Skris * you this software, covering your right to use that party's intellectual
2059121Skris * property rights.
2129964Sache *
2229964Sache * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
2322347Spst * copy of the source code appearing in this file ("Covered Code") an
2422347Spst * irrevocable, perpetual, worldwide license under Intel's copyrights in the
2522347Spst * base code distributed originally by Intel ("Original Intel Code") to copy,
2622347Spst * make derivatives, distribute, use and display any portion of the Covered
2722347Spst * Code in any form, with the right to sublicense such rights; and
2822347Spst *
2922347Spst * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
3022347Spst * license (with the right to sublicense), under only those claims of Intel
3122347Spst * patents that are infringed by the Original Intel Code, to make, use, sell,
3222347Spst * offer to sell, and import the Covered Code and derivative works thereof
3322347Spst * solely to the minimum extent necessary to exercise the above copyright
3422347Spst * license, and in no event shall the patent license extend to any additions
3522347Spst * to or modifications of the Original Intel Code.  No other license or right
3622347Spst * is granted directly or by implication, estoppel or otherwise;
3722347Spst *
3822347Spst * The above copyright and patent license is granted only if the following
3922347Spst * conditions are met:
4022347Spst *
4122347Spst * 3. Conditions
4222347Spst *
4322347Spst * 3.1. Redistribution of Source with Rights to Further Distribute Source.
4422347Spst * Redistribution of source code of any substantial portion of the Covered
4522347Spst * Code or modification with rights to further distribute source must include
4622347Spst * the above Copyright Notice, the above License, this list of Conditions,
4722347Spst * and the following Disclaimer and Export Compliance provision.  In addition,
4822347Spst * Licensee must cause all Covered Code to which Licensee contributes to
4922347Spst * contain a file documenting the changes Licensee made to create that Covered
5059121Skris * Code and the date of any change.  Licensee must include in that file the
5159121Skris * documentation of any changes made by any predecessor Licensee.  Licensee
5222347Spst * must include a prominent statement that the modification is derived,
5322347Spst * directly or indirectly, from Original Intel Code.
5422347Spst *
5522347Spst * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
5622347Spst * Redistribution of source code of any substantial portion of the Covered
5722347Spst * Code or modification without rights to further distribute source must
5822347Spst * include the following Disclaimer and Export Compliance provision in the
5922347Spst * documentation and/or other materials provided with distribution.  In
6022347Spst * addition, Licensee may not authorize further sublicense of source of any
6122347Spst * portion of the Covered Code, and must include terms to the effect that the
6222347Spst * license from Licensee to its licensee is limited to the intellectual
6322347Spst * property embodied in the software Licensee provides to its licensee, and
6422347Spst * not to intellectual property embodied in modifications its licensee may
6522347Spst * make.
6622347Spst *
6722347Spst * 3.3. Redistribution of Executable. Redistribution in executable form of any
6822347Spst * substantial portion of the Covered Code or modification must reproduce the
6922347Spst * above Copyright Notice, and the following Disclaimer and Export Compliance
7022347Spst * provision in the documentation and/or other materials provided with the
7122347Spst * distribution.
7222347Spst *
7322347Spst * 3.4. Intel retains all right, title, and interest in and to the Original
7422347Spst * Intel Code.
7522347Spst *
7622347Spst * 3.5. Neither the name Intel nor any other trademark owned or controlled by
7722347Spst * Intel shall be used in advertising or otherwise to promote the sale, use or
7822347Spst * other dealings in products derived from or relating to the Covered Code
7922347Spst * without prior written authorization from Intel.
8022347Spst *
8122347Spst * 4. Disclaimer and Export Compliance
8222347Spst *
8322347Spst * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
8422347Spst * HERE.  ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
8522347Spst * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT,  ASSISTANCE,
8622347Spst * INSTALLATION, TRAINING OR OTHER SERVICES.  INTEL WILL NOT PROVIDE ANY
8722347Spst * UPDATES, ENHANCEMENTS OR EXTENSIONS.  INTEL SPECIFICALLY DISCLAIMS ANY
8822347Spst * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
8922347Spst * PARTICULAR PURPOSE.
9022347Spst *
9122347Spst * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
9222347Spst * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
9322347Spst * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
9422347Spst * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
9522347Spst * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
9622347Spst * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.  THESE LIMITATIONS
9722347Spst * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
9822347Spst * LIMITED REMEDY.
9922347Spst *
10022347Spst * 4.3. Licensee shall not export, either directly or indirectly, any of this
10122347Spst * software or system incorporating such software without first obtaining any
10222347Spst * required license or other approval from the U. S. Department of Commerce or
10322347Spst * any other agency or department of the United States Government.  In the
10422347Spst * event Licensee exports any such software from the United States or
10522347Spst * re-exports any such software from a foreign destination, Licensee shall
10622347Spst * ensure that the distribution and export/re-export of the software is in
10722347Spst * compliance with all laws, regulations, orders, or other restrictions of the
10822347Spst * U.S. Export Administration Regulations. Licensee agrees that neither it nor
10922347Spst * any of its subsidiaries will export/re-export any technical data, process,
11022347Spst * software, or service, directly or indirectly, to any country for which the
11122347Spst * United States government or any agency thereof requires an export license,
11222347Spst * other governmental approval, or letter of assurance, without first obtaining
11322347Spst * such license, approval or letter.
11422347Spst *
11522347Spst *****************************************************************************/
11622347Spst
11722347Spst
11822347Spst#ifndef _ACDISPAT_H_
11922347Spst#define _ACDISPAT_H_
12022347Spst
12122347Spst
12222347Spst#define NAMEOF_LOCAL_NTE    "__L0"
12322347Spst#define NAMEOF_ARG_NTE      "__A0"
12422347Spst
12522347Spst
12622347Spst/* For AcpiDsMethodDataSetValue */
12722347Spst
12822347Spst#define MTH_TYPE_LOCAL              0
12922347Spst#define MTH_TYPE_ARG                1
13022347Spst
13122347Spst
13222347Spst/* Common interfaces */
13322347Spst
13422347SpstACPI_STATUS
13522347SpstAcpiDsObjStackPush (
13622347Spst    void                    *Object,
13722347Spst    ACPI_WALK_STATE         *WalkState);
13822347Spst
13922347SpstACPI_STATUS
14022347SpstAcpiDsObjStackPop (
14122347Spst    UINT32                  PopCount,
14222347Spst    ACPI_WALK_STATE         *WalkState);
14322347Spst
14422347Spstvoid *
14522347SpstAcpiDsObjStackGetValue (
14622347Spst    UINT32                  Index,
14722347Spst    ACPI_WALK_STATE         *WalkState);
14822347Spst
14922347SpstACPI_STATUS
15022347SpstAcpiDsObjStackPopObject (
15122347Spst    ACPI_OPERAND_OBJECT     **Object,
15222347Spst    ACPI_WALK_STATE         *WalkState);
15322347Spst
15422347Spst
15522347Spst/* dsopcode - support for late evaluation */
15622347Spst
15722347SpstACPI_STATUS
15822347SpstAcpiDsGetFieldUnitArguments (
15922347Spst    ACPI_OPERAND_OBJECT     *ObjDesc);
16022347Spst
16122347SpstACPI_STATUS
16222347SpstAcpiDsGetRegionArguments (
16322347Spst    ACPI_OPERAND_OBJECT     *RgnDesc);
16422347Spst
16522347Spst
16622347Spst/* dsctrl - Parser/Interpreter interface, control stack routines */
16722347Spst
16822347Spst
16922347SpstACPI_STATUS
17022347SpstAcpiDsExecBeginControlOp (
17122347Spst    ACPI_WALK_STATE         *WalkState,
17222347Spst    ACPI_PARSE_OBJECT       *Op);
17322347Spst
17422347SpstACPI_STATUS
17522347SpstAcpiDsExecEndControlOp (
17622347Spst    ACPI_WALK_STATE         *WalkState,
17722347Spst    ACPI_PARSE_OBJECT       *Op);
17822347Spst
17922347Spst
18022347Spst/* dsexec - Parser/Interpreter interface, method execution callbacks */
18122347Spst
18222347Spst
18322347SpstACPI_STATUS
18422347SpstAcpiDsGetPredicateValue (
18522347Spst    ACPI_WALK_STATE         *WalkState,
18622347Spst    ACPI_PARSE_OBJECT       *Op,
18722347Spst    UINT32                  HasResultObj);
18822347Spst
18922347SpstACPI_STATUS
19022347SpstAcpiDsExecBeginOp (
19122347Spst    UINT16                  Opcode,
19222347Spst    ACPI_PARSE_OBJECT       *Op,
19322347Spst    ACPI_WALK_STATE         *WalkState,
19422347Spst    ACPI_PARSE_OBJECT       **OutOp);
19522347Spst
19622347SpstACPI_STATUS
19722347SpstAcpiDsExecEndOp (
19822347Spst    ACPI_WALK_STATE         *State,
19922347Spst    ACPI_PARSE_OBJECT       *Op);
20022347Spst
20122347Spst
20222347Spst/* dsfield - Parser/Interpreter interface for AML fields */
20322347Spst
20422347Spst
20522347SpstACPI_STATUS
20622347SpstAcpiDsCreateField (
20722347Spst    ACPI_PARSE_OBJECT       *Op,
20822347Spst    ACPI_NAMESPACE_NODE     *RegionNode,
20922347Spst    ACPI_WALK_STATE         *WalkState);
21022347Spst
21122347SpstACPI_STATUS
21222347SpstAcpiDsCreateBankField (
21322347Spst    ACPI_PARSE_OBJECT       *Op,
21422347Spst    ACPI_NAMESPACE_NODE     *RegionNode,
21522347Spst    ACPI_WALK_STATE         *WalkState);
21622347Spst
21722347SpstACPI_STATUS
21822347SpstAcpiDsCreateIndexField (
21922347Spst    ACPI_PARSE_OBJECT       *Op,
22022347Spst    ACPI_HANDLE             RegionNode,
22122347Spst    ACPI_WALK_STATE         *WalkState);
22222347Spst
22322347Spst
22422347Spst/* dsload - Parser/Interpreter interface, namespace load callbacks */
22522347Spst
22622347SpstACPI_STATUS
22722347SpstAcpiDsLoad1BeginOp (
22822347Spst    UINT16                  Opcode,
22922347Spst    ACPI_PARSE_OBJECT       *Op,
23022347Spst    ACPI_WALK_STATE         *WalkState,
23122347Spst    ACPI_PARSE_OBJECT       **OutOp);
23222347Spst
23322347SpstACPI_STATUS
23422347SpstAcpiDsLoad1EndOp (
23522347Spst    ACPI_WALK_STATE         *WalkState,
23622347Spst    ACPI_PARSE_OBJECT       *Op);
23722347Spst
23829964SacheACPI_STATUS
23922347SpstAcpiDsLoad2BeginOp (
24022347Spst    UINT16                  Opcode,
24122347Spst    ACPI_PARSE_OBJECT       *Op,
24222347Spst    ACPI_WALK_STATE         *WalkState,
24322347Spst    ACPI_PARSE_OBJECT       **OutOp);
24422347Spst
24522347SpstACPI_STATUS
24622347SpstAcpiDsLoad2EndOp (
24722347Spst    ACPI_WALK_STATE         *State,
24892914Smarkm    ACPI_PARSE_OBJECT       *Op);
24922347Spst
25022347SpstACPI_STATUS
25122347SpstAcpiDsLoad3BeginOp (
25222347Spst    UINT16                  Opcode,
25322347Spst    ACPI_PARSE_OBJECT       *Op,
25422347Spst    ACPI_WALK_STATE         *WalkState,
25522347Spst    ACPI_PARSE_OBJECT       **OutOp);
25622347Spst
25722347SpstACPI_STATUS
25822347SpstAcpiDsLoad3EndOp (
25922347Spst    ACPI_WALK_STATE         *State,
26022347Spst    ACPI_PARSE_OBJECT       *Op);
26122347Spst
26222347Spst
26322347Spst/* dsmthdat - method data (locals/args) */
26422347Spst
26522347Spst
26622347SpstACPI_STATUS
26722347SpstAcpiDsMethodDataGetEntry (
26822347Spst    UINT32                  Type,
26922347Spst    UINT32                  Index,
27022347Spst    ACPI_WALK_STATE         *WalkState,
27122347Spst    ACPI_OPERAND_OBJECT     ***Node);
27222347Spst
27322347SpstACPI_STATUS
27422347SpstAcpiDsMethodDataDeleteAll (
27522347Spst    ACPI_WALK_STATE         *WalkState);
27622347Spst
27722347SpstBOOLEAN
27822347SpstAcpiDsIsMethodValue (
27922347Spst    ACPI_OPERAND_OBJECT     *ObjDesc);
28022347Spst
28122347SpstOBJECT_TYPE_INTERNAL
28222347SpstAcpiDsMethodDataGetType (
28322347Spst    UINT32                  Type,
28422347Spst    UINT32                  Index,
28522347Spst    ACPI_WALK_STATE         *WalkState);
28622347Spst
28722347SpstACPI_STATUS
28822347SpstAcpiDsMethodDataGetValue (
28922347Spst    UINT32                  Type,
29022347Spst    UINT32                  Index,
29122347Spst    ACPI_WALK_STATE         *WalkState,
29222347Spst    ACPI_OPERAND_OBJECT     **DestDesc);
29322347Spst
29422347SpstACPI_STATUS
29522347SpstAcpiDsMethodDataSetValue (
29622347Spst    UINT32                  Type,
29722347Spst    UINT32                  Index,
29822347Spst    ACPI_OPERAND_OBJECT     *SrcDesc,
29922347Spst    ACPI_WALK_STATE         *WalkState);
30022347Spst
30122347SpstACPI_STATUS
30222347SpstAcpiDsMethodDataDeleteValue (
30322347Spst    UINT32                  Type,
30422347Spst    UINT32                  Index,
30522347Spst    ACPI_WALK_STATE         *WalkState);
30622347Spst
30722347SpstACPI_STATUS
30822347SpstAcpiDsMethodDataInitArgs (
30922347Spst    ACPI_OPERAND_OBJECT     **Params,
31029964Sache    UINT32                  MaxParamCount,
31129964Sache    ACPI_WALK_STATE         *WalkState);
31229964Sache
31329964SacheACPI_NAMESPACE_NODE *
31429964SacheAcpiDsMethodDataGetNte (
31529964Sache    UINT32                  Type,
31629964Sache    UINT32                  Index,
31729964Sache    ACPI_WALK_STATE         *WalkState);
31829964Sache
31929964SacheACPI_STATUS
32029964SacheAcpiDsMethodDataInit (
32129964Sache    ACPI_WALK_STATE         *WalkState);
32229964Sache
32329964SacheACPI_STATUS
32422347SpstAcpiDsMethodDataSetEntry (
32522347Spst    UINT32                  Type,
32622347Spst    UINT32                  Index,
32722347Spst    ACPI_OPERAND_OBJECT     *Object,
32822347Spst    ACPI_WALK_STATE         *WalkState);
32922347Spst
33022347Spst
33122347Spst/* dsmethod - Parser/Interpreter interface - control method parsing */
33222347Spst
33322347SpstACPI_STATUS
33422347SpstAcpiDsParseMethod (
33522347Spst    ACPI_HANDLE             ObjHandle);
33622347Spst
33722347SpstACPI_STATUS
33822347SpstAcpiDsCallControlMethod (
33922347Spst    ACPI_WALK_LIST          *WalkList,
34022347Spst    ACPI_WALK_STATE         *WalkState,
34122347Spst    ACPI_PARSE_OBJECT       *Op);
34222347Spst
34322347SpstACPI_STATUS
34422347SpstAcpiDsRestartControlMethod (
34522347Spst    ACPI_WALK_STATE         *WalkState,
34622347Spst    ACPI_OPERAND_OBJECT     *ReturnDesc);
34722347Spst
34822347SpstACPI_STATUS
34922347SpstAcpiDsTerminateControlMethod (
35022347Spst    ACPI_WALK_STATE         *WalkState);
35122347Spst
35222347SpstACPI_STATUS
35322347SpstAcpiDsBeginMethodExecution (
35422347Spst    ACPI_NAMESPACE_NODE     *MethodNode,
35522347Spst    ACPI_OPERAND_OBJECT     *ObjDesc);
35622347Spst
35722347Spst
35822347Spst/* dsobj - Parser/Interpreter interface - object initialization and conversion */
35922347Spst
36022347SpstACPI_STATUS
36122347SpstAcpiDsInitOneObject (
36222347Spst    ACPI_HANDLE             ObjHandle,
36322347Spst    UINT32                  Level,
36422347Spst    void                    *Context,
36522347Spst    void                    **ReturnValue);
36622347Spst
36722347SpstACPI_STATUS
36822347SpstAcpiDsInitializeObjects (
36922347Spst    ACPI_TABLE_DESC         *TableDesc,
37022347Spst    ACPI_NAMESPACE_NODE     *StartNode);
37122347Spst
37222347SpstACPI_STATUS
37322347SpstAcpiDsBuildInternalPackageObj (
37422347Spst    ACPI_WALK_STATE         *WalkState,
37522347Spst    ACPI_PARSE_OBJECT       *op,
37622347Spst    ACPI_OPERAND_OBJECT     **ObjDesc);
37722347Spst
37822347SpstACPI_STATUS
37922347SpstAcpiDsBuildInternalObject (
38022347Spst    ACPI_WALK_STATE         *WalkState,
38122347Spst    ACPI_PARSE_OBJECT       *op,
38222347Spst    ACPI_OPERAND_OBJECT     **ObjDescPtr);
38322347Spst
38422347SpstACPI_STATUS
38522347SpstAcpiDsInitObjectFromOp (
38622347Spst    ACPI_WALK_STATE         *WalkState,
38722347Spst    ACPI_PARSE_OBJECT       *Op,
38822347Spst    UINT16                  Opcode,
38922347Spst    ACPI_OPERAND_OBJECT     **ObjDesc);
39022347Spst
39122347SpstACPI_STATUS
39222347SpstAcpiDsCreateNode (
39322347Spst    ACPI_WALK_STATE         *WalkState,
39422347Spst    ACPI_NAMESPACE_NODE     *Node,
39522347Spst    ACPI_PARSE_OBJECT       *Op);
39622347Spst
39722347Spst
39822347Spst/* dsregn - Parser/Interpreter interface - Op Region parsing */
39922347Spst
40022347SpstACPI_STATUS
40122347SpstAcpiDsEvalFieldUnitOperands (
40222347Spst    ACPI_WALK_STATE         *WalkState,
40322347Spst    ACPI_PARSE_OBJECT       *Op);
40422347Spst
40522347SpstACPI_STATUS
40622347SpstAcpiDsEvalRegionOperands (
40722347Spst    ACPI_WALK_STATE         *WalkState,
40822347Spst    ACPI_PARSE_OBJECT       *Op);
40922347Spst
41022347SpstACPI_STATUS
41122347SpstAcpiDsInitializeRegion (
41222347Spst    ACPI_HANDLE             ObjHandle);
41322347Spst
41422347Spst
41522347Spst/* dsutils - Parser/Interpreter interface utility routines */
41622347Spst
41722347SpstBOOLEAN
41822347SpstAcpiDsIsResultUsed (
41922347Spst    ACPI_PARSE_OBJECT       *Op,
42022347Spst    ACPI_WALK_STATE         *WalkState);
42122347Spst
42222347Spstvoid
42322347SpstAcpiDsDeleteResultIfNotUsed (
42422347Spst    ACPI_PARSE_OBJECT       *Op,
42522347Spst    ACPI_OPERAND_OBJECT     *ResultObj,
42622347Spst    ACPI_WALK_STATE         *WalkState);
42722347Spst
42822347SpstACPI_STATUS
42929964SacheAcpiDsCreateOperand (
43029964Sache    ACPI_WALK_STATE         *WalkState,
43122347Spst    ACPI_PARSE_OBJECT       *Arg);
43222347Spst
43322347SpstACPI_STATUS
43422347SpstAcpiDsCreateOperands (
43522347Spst    ACPI_WALK_STATE         *WalkState,
43622347Spst    ACPI_PARSE_OBJECT       *FirstArg);
43722347Spst
43822347SpstACPI_STATUS
43922347SpstAcpiDsResolveOperands (
44022347Spst    ACPI_WALK_STATE         *WalkState);
44129964Sache
44222347SpstOBJECT_TYPE_INTERNAL
44322347SpstAcpiDsMapOpcodeToDataType (
44422347Spst    UINT16                  Opcode,
44522347Spst    UINT32                  *OutFlags);
44622347Spst
44722347SpstOBJECT_TYPE_INTERNAL
44822347SpstAcpiDsMapNamedOpcodeToDataType (
44922347Spst    UINT16                  Opcode);
45022347Spst
45122347Spst
45222347Spst/*
45322347Spst * dswscope - Scope Stack manipulation
45422347Spst */
45522347Spst
45622347SpstACPI_STATUS
45722347SpstAcpiDsScopeStackPush (
45822347Spst    ACPI_NAMESPACE_NODE     *Node,
45922347Spst    OBJECT_TYPE_INTERNAL    Type,
46022347Spst    ACPI_WALK_STATE         *WalkState);
46122347Spst
46222347Spst
46322347SpstACPI_STATUS
46422347SpstAcpiDsScopeStackPop (
46522347Spst    ACPI_WALK_STATE         *WalkState);
46622347Spst
46722347Spstvoid
46822347SpstAcpiDsScopeStackClear (
46922347Spst    ACPI_WALK_STATE         *WalkState);
47022347Spst
47122347Spst
47222347Spst/* AcpiDswstate - parser WALK_STATE management routines */
47322347Spst
47422347SpstACPI_WALK_STATE *
47522347SpstAcpiDsCreateWalkState (
47622347Spst    ACPI_OWNER_ID           OwnerId,
47722347Spst    ACPI_PARSE_OBJECT       *Origin,
47822347Spst    ACPI_OPERAND_OBJECT     *MthDesc,
47922347Spst    ACPI_WALK_LIST          *WalkList);
48022347Spst
48122347SpstACPI_STATUS
48222347SpstAcpiDsObjStackDeleteAll (
48322347Spst    ACPI_WALK_STATE         *WalkState);
48422347Spst
48522347SpstACPI_STATUS
48622347SpstAcpiDsObjStackPopAndDelete (
48722347Spst    UINT32                  PopCount,
48822347Spst    ACPI_WALK_STATE         *WalkState);
48922347Spst
49022347Spstvoid
49122347SpstAcpiDsDeleteWalkState (
49222347Spst    ACPI_WALK_STATE         *WalkState);
49322347Spst
49422347SpstACPI_WALK_STATE *
49529964SacheAcpiDsPopWalkState (
49629964Sache    ACPI_WALK_LIST          *WalkList);
49722347Spst
49829964SacheACPI_STATUS
49922347SpstAcpiDsResultStackPop (
50022347Spst    ACPI_OPERAND_OBJECT     **Object,
50122347Spst    ACPI_WALK_STATE         *WalkState);
50222347Spst
50322347SpstACPI_STATUS
50422347SpstAcpiDsResultStackPush (
50522347Spst    void                    *Object,
50622347Spst    ACPI_WALK_STATE         *WalkState);
50722347Spst
50822347SpstACPI_STATUS
50922347SpstAcpiDsResultStackClear (
51022347Spst    ACPI_WALK_STATE         *WalkState);
51129964Sache
51222347SpstACPI_WALK_STATE *
51322347SpstAcpiDsGetCurrentWalkState (
51422347Spst    ACPI_WALK_LIST          *WalkList);
51592914Smarkm
51622347Spstvoid
51722347SpstAcpiDsDeleteWalkStateCache (
51822347Spst    void);
51922347Spst
52022347Spst
52129964Sache#endif /* _ACDISPAT_H_ */
52222347Spst