xref: /onnv-gate/usr/src/uts/intel/sys/acpi/acinterp.h (revision 1560:284d350b6828)
10Sstevel@tonic-gate /******************************************************************************
20Sstevel@tonic-gate  *
30Sstevel@tonic-gate  * Name: acinterp.h - Interpreter subcomponent prototypes and defines
4*1560Smyers  *       $Revision: 1.164 $
50Sstevel@tonic-gate  *
60Sstevel@tonic-gate  *****************************************************************************/
70Sstevel@tonic-gate 
80Sstevel@tonic-gate /******************************************************************************
90Sstevel@tonic-gate  *
100Sstevel@tonic-gate  * 1. Copyright Notice
110Sstevel@tonic-gate  *
12*1560Smyers  * Some or all of this work - Copyright (c) 1999 - 2006, Intel Corp.
130Sstevel@tonic-gate  * All rights reserved.
140Sstevel@tonic-gate  *
150Sstevel@tonic-gate  * 2. License
160Sstevel@tonic-gate  *
170Sstevel@tonic-gate  * 2.1. This is your license from Intel Corp. under its intellectual property
180Sstevel@tonic-gate  * rights.  You may have additional license terms from the party that provided
190Sstevel@tonic-gate  * you this software, covering your right to use that party's intellectual
200Sstevel@tonic-gate  * property rights.
210Sstevel@tonic-gate  *
220Sstevel@tonic-gate  * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
230Sstevel@tonic-gate  * copy of the source code appearing in this file ("Covered Code") an
240Sstevel@tonic-gate  * irrevocable, perpetual, worldwide license under Intel's copyrights in the
250Sstevel@tonic-gate  * base code distributed originally by Intel ("Original Intel Code") to copy,
260Sstevel@tonic-gate  * make derivatives, distribute, use and display any portion of the Covered
270Sstevel@tonic-gate  * Code in any form, with the right to sublicense such rights; and
280Sstevel@tonic-gate  *
290Sstevel@tonic-gate  * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
300Sstevel@tonic-gate  * license (with the right to sublicense), under only those claims of Intel
310Sstevel@tonic-gate  * patents that are infringed by the Original Intel Code, to make, use, sell,
320Sstevel@tonic-gate  * offer to sell, and import the Covered Code and derivative works thereof
330Sstevel@tonic-gate  * solely to the minimum extent necessary to exercise the above copyright
340Sstevel@tonic-gate  * license, and in no event shall the patent license extend to any additions
350Sstevel@tonic-gate  * to or modifications of the Original Intel Code.  No other license or right
360Sstevel@tonic-gate  * is granted directly or by implication, estoppel or otherwise;
370Sstevel@tonic-gate  *
380Sstevel@tonic-gate  * The above copyright and patent license is granted only if the following
390Sstevel@tonic-gate  * conditions are met:
400Sstevel@tonic-gate  *
410Sstevel@tonic-gate  * 3. Conditions
420Sstevel@tonic-gate  *
430Sstevel@tonic-gate  * 3.1. Redistribution of Source with Rights to Further Distribute Source.
440Sstevel@tonic-gate  * Redistribution of source code of any substantial portion of the Covered
450Sstevel@tonic-gate  * Code or modification with rights to further distribute source must include
460Sstevel@tonic-gate  * the above Copyright Notice, the above License, this list of Conditions,
470Sstevel@tonic-gate  * and the following Disclaimer and Export Compliance provision.  In addition,
480Sstevel@tonic-gate  * Licensee must cause all Covered Code to which Licensee contributes to
490Sstevel@tonic-gate  * contain a file documenting the changes Licensee made to create that Covered
500Sstevel@tonic-gate  * Code and the date of any change.  Licensee must include in that file the
510Sstevel@tonic-gate  * documentation of any changes made by any predecessor Licensee.  Licensee
520Sstevel@tonic-gate  * must include a prominent statement that the modification is derived,
530Sstevel@tonic-gate  * directly or indirectly, from Original Intel Code.
540Sstevel@tonic-gate  *
550Sstevel@tonic-gate  * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
560Sstevel@tonic-gate  * Redistribution of source code of any substantial portion of the Covered
570Sstevel@tonic-gate  * Code or modification without rights to further distribute source must
580Sstevel@tonic-gate  * include the following Disclaimer and Export Compliance provision in the
590Sstevel@tonic-gate  * documentation and/or other materials provided with distribution.  In
600Sstevel@tonic-gate  * addition, Licensee may not authorize further sublicense of source of any
610Sstevel@tonic-gate  * portion of the Covered Code, and must include terms to the effect that the
620Sstevel@tonic-gate  * license from Licensee to its licensee is limited to the intellectual
630Sstevel@tonic-gate  * property embodied in the software Licensee provides to its licensee, and
640Sstevel@tonic-gate  * not to intellectual property embodied in modifications its licensee may
650Sstevel@tonic-gate  * make.
660Sstevel@tonic-gate  *
670Sstevel@tonic-gate  * 3.3. Redistribution of Executable. Redistribution in executable form of any
680Sstevel@tonic-gate  * substantial portion of the Covered Code or modification must reproduce the
690Sstevel@tonic-gate  * above Copyright Notice, and the following Disclaimer and Export Compliance
700Sstevel@tonic-gate  * provision in the documentation and/or other materials provided with the
710Sstevel@tonic-gate  * distribution.
720Sstevel@tonic-gate  *
730Sstevel@tonic-gate  * 3.4. Intel retains all right, title, and interest in and to the Original
740Sstevel@tonic-gate  * Intel Code.
750Sstevel@tonic-gate  *
760Sstevel@tonic-gate  * 3.5. Neither the name Intel nor any other trademark owned or controlled by
770Sstevel@tonic-gate  * Intel shall be used in advertising or otherwise to promote the sale, use or
780Sstevel@tonic-gate  * other dealings in products derived from or relating to the Covered Code
790Sstevel@tonic-gate  * without prior written authorization from Intel.
800Sstevel@tonic-gate  *
810Sstevel@tonic-gate  * 4. Disclaimer and Export Compliance
820Sstevel@tonic-gate  *
830Sstevel@tonic-gate  * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
840Sstevel@tonic-gate  * HERE.  ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
850Sstevel@tonic-gate  * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT,  ASSISTANCE,
860Sstevel@tonic-gate  * INSTALLATION, TRAINING OR OTHER SERVICES.  INTEL WILL NOT PROVIDE ANY
870Sstevel@tonic-gate  * UPDATES, ENHANCEMENTS OR EXTENSIONS.  INTEL SPECIFICALLY DISCLAIMS ANY
880Sstevel@tonic-gate  * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
890Sstevel@tonic-gate  * PARTICULAR PURPOSE.
900Sstevel@tonic-gate  *
910Sstevel@tonic-gate  * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
920Sstevel@tonic-gate  * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
930Sstevel@tonic-gate  * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
940Sstevel@tonic-gate  * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
950Sstevel@tonic-gate  * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
960Sstevel@tonic-gate  * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.  THESE LIMITATIONS
970Sstevel@tonic-gate  * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
980Sstevel@tonic-gate  * LIMITED REMEDY.
990Sstevel@tonic-gate  *
1000Sstevel@tonic-gate  * 4.3. Licensee shall not export, either directly or indirectly, any of this
1010Sstevel@tonic-gate  * software or system incorporating such software without first obtaining any
1020Sstevel@tonic-gate  * required license or other approval from the U. S. Department of Commerce or
1030Sstevel@tonic-gate  * any other agency or department of the United States Government.  In the
1040Sstevel@tonic-gate  * event Licensee exports any such software from the United States or
1050Sstevel@tonic-gate  * re-exports any such software from a foreign destination, Licensee shall
1060Sstevel@tonic-gate  * ensure that the distribution and export/re-export of the software is in
1070Sstevel@tonic-gate  * compliance with all laws, regulations, orders, or other restrictions of the
1080Sstevel@tonic-gate  * U.S. Export Administration Regulations. Licensee agrees that neither it nor
1090Sstevel@tonic-gate  * any of its subsidiaries will export/re-export any technical data, process,
1100Sstevel@tonic-gate  * software, or service, directly or indirectly, to any country for which the
1110Sstevel@tonic-gate  * United States government or any agency thereof requires an export license,
1120Sstevel@tonic-gate  * other governmental approval, or letter of assurance, without first obtaining
1130Sstevel@tonic-gate  * such license, approval or letter.
1140Sstevel@tonic-gate  *
1150Sstevel@tonic-gate  *****************************************************************************/
1160Sstevel@tonic-gate 
1170Sstevel@tonic-gate #ifndef __ACINTERP_H__
1180Sstevel@tonic-gate #define __ACINTERP_H__
1190Sstevel@tonic-gate 
1200Sstevel@tonic-gate 
121*1560Smyers #define ACPI_WALK_OPERANDS          (&(WalkState->Operands [WalkState->NumOperands -1]))
122*1560Smyers 
123*1560Smyers /* Macros for tables used for debug output */
124*1560Smyers 
125*1560Smyers #define ACPI_EXD_OFFSET(f)          (UINT8) ACPI_OFFSET (ACPI_OPERAND_OBJECT,f)
126*1560Smyers #define ACPI_EXD_NSOFFSET(f)        (UINT8) ACPI_OFFSET (ACPI_NAMESPACE_NODE,f)
127*1560Smyers #define ACPI_EXD_TABLE_SIZE(name)   (sizeof(name) / sizeof (ACPI_EXDUMP_INFO))
128*1560Smyers 
129*1560Smyers /*
130*1560Smyers  * If possible, pack the following structure to byte alignment, since we
131*1560Smyers  * don't care about performance for debug output
132*1560Smyers  */
133*1560Smyers #ifndef ACPI_MISALIGNMENT_NOT_SUPPORTED
134*1560Smyers #pragma pack(1)
135*1560Smyers #endif
136*1560Smyers 
137*1560Smyers typedef const struct acpi_exdump_info
138*1560Smyers {
139*1560Smyers     UINT8                   Opcode;
140*1560Smyers     UINT8                   Offset;
141*1560Smyers     char                    *Name;
142*1560Smyers 
143*1560Smyers } ACPI_EXDUMP_INFO;
144*1560Smyers 
145*1560Smyers /* Values for the Opcode field above */
146*1560Smyers 
147*1560Smyers #define ACPI_EXD_INIT                   0
148*1560Smyers #define ACPI_EXD_TYPE                   1
149*1560Smyers #define ACPI_EXD_UINT8                  2
150*1560Smyers #define ACPI_EXD_UINT16                 3
151*1560Smyers #define ACPI_EXD_UINT32                 4
152*1560Smyers #define ACPI_EXD_UINT64                 5
153*1560Smyers #define ACPI_EXD_LITERAL                6
154*1560Smyers #define ACPI_EXD_POINTER                7
155*1560Smyers #define ACPI_EXD_ADDRESS                8
156*1560Smyers #define ACPI_EXD_STRING                 9
157*1560Smyers #define ACPI_EXD_BUFFER                 10
158*1560Smyers #define ACPI_EXD_PACKAGE                11
159*1560Smyers #define ACPI_EXD_FIELD                  12
160*1560Smyers #define ACPI_EXD_REFERENCE              13
161*1560Smyers 
162*1560Smyers /* restore default alignment */
163*1560Smyers 
164*1560Smyers #pragma pack()
1650Sstevel@tonic-gate 
1660Sstevel@tonic-gate 
1670Sstevel@tonic-gate /*
1680Sstevel@tonic-gate  * exconvrt - object conversion
1690Sstevel@tonic-gate  */
1700Sstevel@tonic-gate ACPI_STATUS
1710Sstevel@tonic-gate AcpiExConvertToInteger (
1720Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
1730Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ResultDesc,
1740Sstevel@tonic-gate     UINT32                  Flags);
1750Sstevel@tonic-gate 
1760Sstevel@tonic-gate ACPI_STATUS
1770Sstevel@tonic-gate AcpiExConvertToBuffer (
1780Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
1790Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ResultDesc);
1800Sstevel@tonic-gate 
1810Sstevel@tonic-gate ACPI_STATUS
1820Sstevel@tonic-gate AcpiExConvertToString (
1830Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
1840Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ResultDesc,
1850Sstevel@tonic-gate     UINT32                  Type);
1860Sstevel@tonic-gate 
1870Sstevel@tonic-gate /* Types for ->String conversion */
1880Sstevel@tonic-gate 
1890Sstevel@tonic-gate #define ACPI_EXPLICIT_BYTE_COPY         0x00000000
1900Sstevel@tonic-gate #define ACPI_EXPLICIT_CONVERT_HEX       0x00000001
1910Sstevel@tonic-gate #define ACPI_IMPLICIT_CONVERT_HEX       0x00000002
1920Sstevel@tonic-gate #define ACPI_EXPLICIT_CONVERT_DECIMAL   0x00000003
1930Sstevel@tonic-gate 
1940Sstevel@tonic-gate ACPI_STATUS
1950Sstevel@tonic-gate AcpiExConvertToTargetType (
1960Sstevel@tonic-gate     ACPI_OBJECT_TYPE        DestinationType,
1970Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
1980Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ResultDesc,
1990Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
2000Sstevel@tonic-gate 
2010Sstevel@tonic-gate 
2020Sstevel@tonic-gate /*
2030Sstevel@tonic-gate  * exfield - ACPI AML (p-code) execution - field manipulation
2040Sstevel@tonic-gate  */
2050Sstevel@tonic-gate ACPI_STATUS
2060Sstevel@tonic-gate AcpiExCommonBufferSetup (
2070Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2080Sstevel@tonic-gate     UINT32                  BufferLength,
2090Sstevel@tonic-gate     UINT32                  *DatumCount);
2100Sstevel@tonic-gate 
2110Sstevel@tonic-gate ACPI_STATUS
2120Sstevel@tonic-gate AcpiExWriteWithUpdateRule (
2130Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2140Sstevel@tonic-gate     ACPI_INTEGER            Mask,
2150Sstevel@tonic-gate     ACPI_INTEGER            FieldValue,
2160Sstevel@tonic-gate     UINT32                  FieldDatumByteOffset);
2170Sstevel@tonic-gate 
2180Sstevel@tonic-gate void
2190Sstevel@tonic-gate AcpiExGetBufferDatum(
2200Sstevel@tonic-gate     ACPI_INTEGER            *Datum,
2210Sstevel@tonic-gate     void                    *Buffer,
2220Sstevel@tonic-gate     UINT32                  BufferLength,
2230Sstevel@tonic-gate     UINT32                  ByteGranularity,
2240Sstevel@tonic-gate     UINT32                  BufferOffset);
2250Sstevel@tonic-gate 
2260Sstevel@tonic-gate void
2270Sstevel@tonic-gate AcpiExSetBufferDatum (
2280Sstevel@tonic-gate     ACPI_INTEGER            MergedDatum,
2290Sstevel@tonic-gate     void                    *Buffer,
2300Sstevel@tonic-gate     UINT32                  BufferLength,
2310Sstevel@tonic-gate     UINT32                  ByteGranularity,
2320Sstevel@tonic-gate     UINT32                  BufferOffset);
2330Sstevel@tonic-gate 
2340Sstevel@tonic-gate ACPI_STATUS
2350Sstevel@tonic-gate AcpiExReadDataFromField (
2360Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState,
2370Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2380Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **RetBufferDesc);
2390Sstevel@tonic-gate 
2400Sstevel@tonic-gate ACPI_STATUS
2410Sstevel@tonic-gate AcpiExWriteDataToField (
2420Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
2430Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2440Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ResultDesc);
2450Sstevel@tonic-gate 
2460Sstevel@tonic-gate 
2470Sstevel@tonic-gate /*
2480Sstevel@tonic-gate  * exfldio - low level field I/O
2490Sstevel@tonic-gate  */
2500Sstevel@tonic-gate ACPI_STATUS
2510Sstevel@tonic-gate AcpiExExtractFromField (
2520Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2530Sstevel@tonic-gate     void                    *Buffer,
2540Sstevel@tonic-gate     UINT32                  BufferLength);
2550Sstevel@tonic-gate 
2560Sstevel@tonic-gate ACPI_STATUS
2570Sstevel@tonic-gate AcpiExInsertIntoField (
2580Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2590Sstevel@tonic-gate     void                    *Buffer,
2600Sstevel@tonic-gate     UINT32                  BufferLength);
2610Sstevel@tonic-gate 
2620Sstevel@tonic-gate ACPI_STATUS
2630Sstevel@tonic-gate AcpiExAccessRegion (
2640Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2650Sstevel@tonic-gate     UINT32                  FieldDatumByteOffset,
2660Sstevel@tonic-gate     ACPI_INTEGER            *Value,
2670Sstevel@tonic-gate     UINT32                  ReadWrite);
2680Sstevel@tonic-gate 
2690Sstevel@tonic-gate 
2700Sstevel@tonic-gate /*
2710Sstevel@tonic-gate  * exmisc - misc support routines
2720Sstevel@tonic-gate  */
2730Sstevel@tonic-gate ACPI_STATUS
2740Sstevel@tonic-gate AcpiExGetObjectReference (
2750Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2760Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ReturnDesc,
2770Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
2780Sstevel@tonic-gate 
2790Sstevel@tonic-gate ACPI_STATUS
2800Sstevel@tonic-gate AcpiExConcatTemplate (
2810Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2820Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc2,
2830Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ActualReturnDesc,
2840Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
2850Sstevel@tonic-gate 
2860Sstevel@tonic-gate ACPI_STATUS
2870Sstevel@tonic-gate AcpiExDoConcatenate (
2880Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
2890Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc2,
2900Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ActualReturnDesc,
2910Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
2920Sstevel@tonic-gate 
2930Sstevel@tonic-gate ACPI_STATUS
2940Sstevel@tonic-gate AcpiExDoLogicalNumericOp (
2950Sstevel@tonic-gate     UINT16                  Opcode,
2960Sstevel@tonic-gate     ACPI_INTEGER            Integer0,
2970Sstevel@tonic-gate     ACPI_INTEGER            Integer1,
2980Sstevel@tonic-gate     BOOLEAN                 *LogicalResult);
2990Sstevel@tonic-gate 
3000Sstevel@tonic-gate ACPI_STATUS
3010Sstevel@tonic-gate AcpiExDoLogicalOp (
3020Sstevel@tonic-gate     UINT16                  Opcode,
3030Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Operand0,
3040Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Operand1,
3050Sstevel@tonic-gate     BOOLEAN                 *LogicalResult);
3060Sstevel@tonic-gate 
3070Sstevel@tonic-gate ACPI_INTEGER
3080Sstevel@tonic-gate AcpiExDoMathOp (
3090Sstevel@tonic-gate     UINT16                  Opcode,
3100Sstevel@tonic-gate     ACPI_INTEGER            Operand0,
3110Sstevel@tonic-gate     ACPI_INTEGER            Operand1);
3120Sstevel@tonic-gate 
3130Sstevel@tonic-gate ACPI_STATUS
3140Sstevel@tonic-gate AcpiExCreateMutex (
3150Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3160Sstevel@tonic-gate 
3170Sstevel@tonic-gate ACPI_STATUS
3180Sstevel@tonic-gate AcpiExCreateProcessor (
3190Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3200Sstevel@tonic-gate 
3210Sstevel@tonic-gate ACPI_STATUS
3220Sstevel@tonic-gate AcpiExCreatePowerResource (
3230Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3240Sstevel@tonic-gate 
3250Sstevel@tonic-gate ACPI_STATUS
3260Sstevel@tonic-gate AcpiExCreateRegion (
3270Sstevel@tonic-gate     UINT8                   *AmlStart,
3280Sstevel@tonic-gate     UINT32                  AmlLength,
3290Sstevel@tonic-gate     UINT8                   RegionSpace,
3300Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3310Sstevel@tonic-gate 
3320Sstevel@tonic-gate ACPI_STATUS
3330Sstevel@tonic-gate AcpiExCreateTableRegion (
3340Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3350Sstevel@tonic-gate 
3360Sstevel@tonic-gate ACPI_STATUS
3370Sstevel@tonic-gate AcpiExCreateEvent (
3380Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3390Sstevel@tonic-gate 
3400Sstevel@tonic-gate ACPI_STATUS
3410Sstevel@tonic-gate AcpiExCreateAlias (
3420Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3430Sstevel@tonic-gate 
3440Sstevel@tonic-gate ACPI_STATUS
3450Sstevel@tonic-gate AcpiExCreateMethod (
3460Sstevel@tonic-gate     UINT8                   *AmlStart,
3470Sstevel@tonic-gate     UINT32                  AmlLength,
3480Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3490Sstevel@tonic-gate 
3500Sstevel@tonic-gate 
3510Sstevel@tonic-gate /*
3520Sstevel@tonic-gate  * exconfig - dynamic table load/unload
3530Sstevel@tonic-gate  */
3540Sstevel@tonic-gate ACPI_STATUS
3550Sstevel@tonic-gate AcpiExLoadOp (
3560Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
3570Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Target,
3580Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3590Sstevel@tonic-gate 
3600Sstevel@tonic-gate ACPI_STATUS
3610Sstevel@tonic-gate AcpiExLoadTableOp (
3620Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState,
3630Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ReturnDesc);
3640Sstevel@tonic-gate 
3650Sstevel@tonic-gate ACPI_STATUS
3660Sstevel@tonic-gate AcpiExUnloadTable (
3670Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *DdbHandle);
3680Sstevel@tonic-gate 
3690Sstevel@tonic-gate 
3700Sstevel@tonic-gate /*
3710Sstevel@tonic-gate  * exmutex - mutex support
3720Sstevel@tonic-gate  */
3730Sstevel@tonic-gate ACPI_STATUS
3740Sstevel@tonic-gate AcpiExAcquireMutex (
3750Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *TimeDesc,
3760Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
3770Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3780Sstevel@tonic-gate 
3790Sstevel@tonic-gate ACPI_STATUS
3800Sstevel@tonic-gate AcpiExReleaseMutex (
3810Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
3820Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
3830Sstevel@tonic-gate 
3840Sstevel@tonic-gate void
3850Sstevel@tonic-gate AcpiExReleaseAllMutexes (
3860Sstevel@tonic-gate     ACPI_THREAD_STATE       *Thread);
3870Sstevel@tonic-gate 
3880Sstevel@tonic-gate void
3890Sstevel@tonic-gate AcpiExUnlinkMutex (
3900Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
3910Sstevel@tonic-gate 
3920Sstevel@tonic-gate 
3930Sstevel@tonic-gate /*
3940Sstevel@tonic-gate  * exprep - ACPI AML execution - prep utilities
3950Sstevel@tonic-gate  */
3960Sstevel@tonic-gate ACPI_STATUS
3970Sstevel@tonic-gate AcpiExPrepCommonFieldObject (
3980Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
3990Sstevel@tonic-gate     UINT8                   FieldFlags,
4000Sstevel@tonic-gate     UINT8                   FieldAttribute,
4010Sstevel@tonic-gate     UINT32                  FieldBitPosition,
4020Sstevel@tonic-gate     UINT32                  FieldBitLength);
4030Sstevel@tonic-gate 
4040Sstevel@tonic-gate ACPI_STATUS
4050Sstevel@tonic-gate AcpiExPrepFieldValue (
4060Sstevel@tonic-gate     ACPI_CREATE_FIELD_INFO  *Info);
4070Sstevel@tonic-gate 
4080Sstevel@tonic-gate 
4090Sstevel@tonic-gate /*
4100Sstevel@tonic-gate  * exsystem - Interface to OS services
4110Sstevel@tonic-gate  */
4120Sstevel@tonic-gate ACPI_STATUS
4130Sstevel@tonic-gate AcpiExSystemDoNotifyOp (
4140Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Value,
4150Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
4160Sstevel@tonic-gate 
4170Sstevel@tonic-gate ACPI_STATUS
4180Sstevel@tonic-gate AcpiExSystemDoSuspend(
4190Sstevel@tonic-gate     ACPI_INTEGER            Time);
4200Sstevel@tonic-gate 
4210Sstevel@tonic-gate ACPI_STATUS
4220Sstevel@tonic-gate AcpiExSystemDoStall (
4230Sstevel@tonic-gate     UINT32                  Time);
4240Sstevel@tonic-gate 
4250Sstevel@tonic-gate ACPI_STATUS
4260Sstevel@tonic-gate AcpiExSystemAcquireMutex(
4270Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Time,
4280Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
4290Sstevel@tonic-gate 
4300Sstevel@tonic-gate ACPI_STATUS
4310Sstevel@tonic-gate AcpiExSystemReleaseMutex(
4320Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
4330Sstevel@tonic-gate 
4340Sstevel@tonic-gate ACPI_STATUS
4350Sstevel@tonic-gate AcpiExSystemSignalEvent(
4360Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
4370Sstevel@tonic-gate 
4380Sstevel@tonic-gate ACPI_STATUS
4390Sstevel@tonic-gate AcpiExSystemWaitEvent(
4400Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Time,
4410Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
4420Sstevel@tonic-gate 
4430Sstevel@tonic-gate ACPI_STATUS
4440Sstevel@tonic-gate AcpiExSystemResetEvent(
4450Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
4460Sstevel@tonic-gate 
4470Sstevel@tonic-gate ACPI_STATUS
4480Sstevel@tonic-gate AcpiExSystemWaitSemaphore (
4490Sstevel@tonic-gate     ACPI_HANDLE             Semaphore,
4500Sstevel@tonic-gate     UINT16                  Timeout);
4510Sstevel@tonic-gate 
4520Sstevel@tonic-gate 
4530Sstevel@tonic-gate /*
4540Sstevel@tonic-gate  * exoparg1 - ACPI AML execution, 1 operand
4550Sstevel@tonic-gate  */
4560Sstevel@tonic-gate ACPI_STATUS
4570Sstevel@tonic-gate AcpiExOpcode_0A_0T_1R (
4580Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4590Sstevel@tonic-gate 
4600Sstevel@tonic-gate ACPI_STATUS
4610Sstevel@tonic-gate AcpiExOpcode_1A_0T_0R (
4620Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4630Sstevel@tonic-gate 
4640Sstevel@tonic-gate ACPI_STATUS
4650Sstevel@tonic-gate AcpiExOpcode_1A_0T_1R (
4660Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4670Sstevel@tonic-gate 
4680Sstevel@tonic-gate ACPI_STATUS
4690Sstevel@tonic-gate AcpiExOpcode_1A_1T_1R (
4700Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4710Sstevel@tonic-gate 
4720Sstevel@tonic-gate ACPI_STATUS
4730Sstevel@tonic-gate AcpiExOpcode_1A_1T_0R (
4740Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4750Sstevel@tonic-gate 
4760Sstevel@tonic-gate /*
4770Sstevel@tonic-gate  * exoparg2 - ACPI AML execution, 2 operands
4780Sstevel@tonic-gate  */
4790Sstevel@tonic-gate ACPI_STATUS
4800Sstevel@tonic-gate AcpiExOpcode_2A_0T_0R (
4810Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4820Sstevel@tonic-gate 
4830Sstevel@tonic-gate ACPI_STATUS
4840Sstevel@tonic-gate AcpiExOpcode_2A_0T_1R (
4850Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4860Sstevel@tonic-gate 
4870Sstevel@tonic-gate ACPI_STATUS
4880Sstevel@tonic-gate AcpiExOpcode_2A_1T_1R (
4890Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4900Sstevel@tonic-gate 
4910Sstevel@tonic-gate ACPI_STATUS
4920Sstevel@tonic-gate AcpiExOpcode_2A_2T_1R (
4930Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
4940Sstevel@tonic-gate 
4950Sstevel@tonic-gate 
4960Sstevel@tonic-gate /*
4970Sstevel@tonic-gate  * exoparg3 - ACPI AML execution, 3 operands
4980Sstevel@tonic-gate  */
4990Sstevel@tonic-gate ACPI_STATUS
5000Sstevel@tonic-gate AcpiExOpcode_3A_0T_0R (
5010Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5020Sstevel@tonic-gate 
5030Sstevel@tonic-gate ACPI_STATUS
5040Sstevel@tonic-gate AcpiExOpcode_3A_1T_1R (
5050Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5060Sstevel@tonic-gate 
5070Sstevel@tonic-gate 
5080Sstevel@tonic-gate /*
5090Sstevel@tonic-gate  * exoparg6 - ACPI AML execution, 6 operands
5100Sstevel@tonic-gate  */
5110Sstevel@tonic-gate ACPI_STATUS
5120Sstevel@tonic-gate AcpiExOpcode_6A_0T_1R (
5130Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5140Sstevel@tonic-gate 
5150Sstevel@tonic-gate 
5160Sstevel@tonic-gate /*
5170Sstevel@tonic-gate  * exresolv - Object resolution and get value functions
5180Sstevel@tonic-gate  */
5190Sstevel@tonic-gate ACPI_STATUS
5200Sstevel@tonic-gate AcpiExResolveToValue (
5210Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **StackPtr,
5220Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5230Sstevel@tonic-gate 
5240Sstevel@tonic-gate ACPI_STATUS
5250Sstevel@tonic-gate AcpiExResolveMultiple (
5260Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState,
5270Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Operand,
5280Sstevel@tonic-gate     ACPI_OBJECT_TYPE        *ReturnType,
5290Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **ReturnDesc);
5300Sstevel@tonic-gate 
5310Sstevel@tonic-gate 
5320Sstevel@tonic-gate /*
5330Sstevel@tonic-gate  * exresnte - resolve namespace node
5340Sstevel@tonic-gate  */
5350Sstevel@tonic-gate ACPI_STATUS
5360Sstevel@tonic-gate AcpiExResolveNodeToValue (
5370Sstevel@tonic-gate     ACPI_NAMESPACE_NODE     **StackPtr,
5380Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5390Sstevel@tonic-gate 
5400Sstevel@tonic-gate 
5410Sstevel@tonic-gate /*
5420Sstevel@tonic-gate  * exresop - resolve operand to value
5430Sstevel@tonic-gate  */
5440Sstevel@tonic-gate ACPI_STATUS
5450Sstevel@tonic-gate AcpiExResolveOperands (
5460Sstevel@tonic-gate     UINT16                  Opcode,
5470Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **StackPtr,
5480Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5490Sstevel@tonic-gate 
5500Sstevel@tonic-gate 
5510Sstevel@tonic-gate /*
5520Sstevel@tonic-gate  * exdump - Interpreter debug output routines
5530Sstevel@tonic-gate  */
5540Sstevel@tonic-gate void
5550Sstevel@tonic-gate AcpiExDumpOperand (
5560Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc,
5570Sstevel@tonic-gate     UINT32                  Depth);
5580Sstevel@tonic-gate 
5590Sstevel@tonic-gate void
5600Sstevel@tonic-gate AcpiExDumpOperands (
5610Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **Operands,
5620Sstevel@tonic-gate     ACPI_INTERPRETER_MODE   InterpreterMode,
5630Sstevel@tonic-gate     char                    *Ident,
5640Sstevel@tonic-gate     UINT32                  NumLevels,
5650Sstevel@tonic-gate     char                    *Note,
5660Sstevel@tonic-gate     char                    *ModuleName,
5670Sstevel@tonic-gate     UINT32                  LineNumber);
5680Sstevel@tonic-gate 
5690Sstevel@tonic-gate void
5700Sstevel@tonic-gate AcpiExDumpObjectDescriptor (
5710Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *Object,
5720Sstevel@tonic-gate     UINT32                  Flags);
5730Sstevel@tonic-gate 
5740Sstevel@tonic-gate void
575*1560Smyers AcpiExDumpNamespaceNode (
5760Sstevel@tonic-gate     ACPI_NAMESPACE_NODE     *Node,
5770Sstevel@tonic-gate     UINT32                  Flags);
5780Sstevel@tonic-gate 
5790Sstevel@tonic-gate 
5800Sstevel@tonic-gate /*
5810Sstevel@tonic-gate  * exnames - AML namestring support
5820Sstevel@tonic-gate  */
5830Sstevel@tonic-gate ACPI_STATUS
5840Sstevel@tonic-gate AcpiExGetNameString (
5850Sstevel@tonic-gate     ACPI_OBJECT_TYPE        DataType,
5860Sstevel@tonic-gate     UINT8                   *InAmlAddress,
5870Sstevel@tonic-gate     char                    **OutNameString,
5880Sstevel@tonic-gate     UINT32                  *OutNameLength);
5890Sstevel@tonic-gate 
5900Sstevel@tonic-gate 
5910Sstevel@tonic-gate /*
5920Sstevel@tonic-gate  * exstore - Object store support
5930Sstevel@tonic-gate  */
5940Sstevel@tonic-gate ACPI_STATUS
5950Sstevel@tonic-gate AcpiExStore (
5960Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ValDesc,
5970Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *DestDesc,
5980Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
5990Sstevel@tonic-gate 
6000Sstevel@tonic-gate ACPI_STATUS
6010Sstevel@tonic-gate AcpiExStoreObjectToNode (
6020Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6030Sstevel@tonic-gate     ACPI_NAMESPACE_NODE     *Node,
6040Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState,
6050Sstevel@tonic-gate     UINT8                   ImplicitConversion);
6060Sstevel@tonic-gate 
6070Sstevel@tonic-gate #define ACPI_IMPLICIT_CONVERSION        TRUE
6080Sstevel@tonic-gate #define ACPI_NO_IMPLICIT_CONVERSION     FALSE
6090Sstevel@tonic-gate 
6100Sstevel@tonic-gate 
6110Sstevel@tonic-gate /*
6120Sstevel@tonic-gate  * exstoren - resolve/store object
6130Sstevel@tonic-gate  */
6140Sstevel@tonic-gate ACPI_STATUS
6150Sstevel@tonic-gate AcpiExResolveObject (
6160Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **SourceDescPtr,
6170Sstevel@tonic-gate     ACPI_OBJECT_TYPE        TargetType,
6180Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
6190Sstevel@tonic-gate 
6200Sstevel@tonic-gate ACPI_STATUS
6210Sstevel@tonic-gate AcpiExStoreObjectToObject (
6220Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6230Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *DestDesc,
6240Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     **NewDesc,
6250Sstevel@tonic-gate     ACPI_WALK_STATE         *WalkState);
6260Sstevel@tonic-gate 
6270Sstevel@tonic-gate 
6280Sstevel@tonic-gate /*
6290Sstevel@tonic-gate  * exstorob - store object - buffer/string
6300Sstevel@tonic-gate  */
6310Sstevel@tonic-gate ACPI_STATUS
6320Sstevel@tonic-gate AcpiExStoreBufferToBuffer (
6330Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6340Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *TargetDesc);
6350Sstevel@tonic-gate 
6360Sstevel@tonic-gate ACPI_STATUS
6370Sstevel@tonic-gate AcpiExStoreStringToString (
6380Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6390Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *TargetDesc);
6400Sstevel@tonic-gate 
6410Sstevel@tonic-gate 
6420Sstevel@tonic-gate /*
6430Sstevel@tonic-gate  * excopy - object copy
6440Sstevel@tonic-gate  */
6450Sstevel@tonic-gate ACPI_STATUS
6460Sstevel@tonic-gate AcpiExCopyIntegerToIndexField (
6470Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6480Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *TargetDesc);
6490Sstevel@tonic-gate 
6500Sstevel@tonic-gate ACPI_STATUS
6510Sstevel@tonic-gate AcpiExCopyIntegerToBankField (
6520Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6530Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *TargetDesc);
6540Sstevel@tonic-gate 
6550Sstevel@tonic-gate ACPI_STATUS
6560Sstevel@tonic-gate AcpiExCopyDataToNamedField (
6570Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6580Sstevel@tonic-gate     ACPI_NAMESPACE_NODE     *Node);
6590Sstevel@tonic-gate 
6600Sstevel@tonic-gate ACPI_STATUS
6610Sstevel@tonic-gate AcpiExCopyIntegerToBufferField (
6620Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *SourceDesc,
6630Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *TargetDesc);
6640Sstevel@tonic-gate 
6650Sstevel@tonic-gate 
6660Sstevel@tonic-gate /*
6670Sstevel@tonic-gate  * exutils - interpreter/scanner utilities
6680Sstevel@tonic-gate  */
6690Sstevel@tonic-gate ACPI_STATUS
6700Sstevel@tonic-gate AcpiExEnterInterpreter (
6710Sstevel@tonic-gate     void);
6720Sstevel@tonic-gate 
6730Sstevel@tonic-gate void
6740Sstevel@tonic-gate AcpiExExitInterpreter (
6750Sstevel@tonic-gate     void);
6760Sstevel@tonic-gate 
6770Sstevel@tonic-gate void
6780Sstevel@tonic-gate AcpiExTruncateFor32bitTable (
6790Sstevel@tonic-gate     ACPI_OPERAND_OBJECT     *ObjDesc);
6800Sstevel@tonic-gate 
6810Sstevel@tonic-gate BOOLEAN
6820Sstevel@tonic-gate AcpiExAcquireGlobalLock (
6830Sstevel@tonic-gate     UINT32                  Rule);
6840Sstevel@tonic-gate 
6850Sstevel@tonic-gate void
6860Sstevel@tonic-gate AcpiExReleaseGlobalLock (
6870Sstevel@tonic-gate     BOOLEAN                 Locked);
6880Sstevel@tonic-gate 
6890Sstevel@tonic-gate void
6900Sstevel@tonic-gate AcpiExEisaIdToString (
6910Sstevel@tonic-gate     UINT32                  NumericId,
6920Sstevel@tonic-gate     char                    *OutString);
6930Sstevel@tonic-gate 
6940Sstevel@tonic-gate void
6950Sstevel@tonic-gate AcpiExUnsignedIntegerToString (
6960Sstevel@tonic-gate     ACPI_INTEGER            Value,
6970Sstevel@tonic-gate     char                    *OutString);
6980Sstevel@tonic-gate 
6990Sstevel@tonic-gate 
7000Sstevel@tonic-gate /*
7010Sstevel@tonic-gate  * exregion - default OpRegion handlers
7020Sstevel@tonic-gate  */
7030Sstevel@tonic-gate ACPI_STATUS
7040Sstevel@tonic-gate AcpiExSystemMemorySpaceHandler (
7050Sstevel@tonic-gate     UINT32                  Function,
7060Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7070Sstevel@tonic-gate     UINT32                  BitWidth,
7080Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7090Sstevel@tonic-gate     void                    *HandlerContext,
7100Sstevel@tonic-gate     void                    *RegionContext);
7110Sstevel@tonic-gate 
7120Sstevel@tonic-gate ACPI_STATUS
7130Sstevel@tonic-gate AcpiExSystemIoSpaceHandler (
7140Sstevel@tonic-gate     UINT32                  Function,
7150Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7160Sstevel@tonic-gate     UINT32                  BitWidth,
7170Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7180Sstevel@tonic-gate     void                    *HandlerContext,
7190Sstevel@tonic-gate     void                    *RegionContext);
7200Sstevel@tonic-gate 
7210Sstevel@tonic-gate ACPI_STATUS
7220Sstevel@tonic-gate AcpiExPciConfigSpaceHandler (
7230Sstevel@tonic-gate     UINT32                  Function,
7240Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7250Sstevel@tonic-gate     UINT32                  BitWidth,
7260Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7270Sstevel@tonic-gate     void                    *HandlerContext,
7280Sstevel@tonic-gate     void                    *RegionContext);
7290Sstevel@tonic-gate 
7300Sstevel@tonic-gate ACPI_STATUS
7310Sstevel@tonic-gate AcpiExCmosSpaceHandler (
7320Sstevel@tonic-gate     UINT32                  Function,
7330Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7340Sstevel@tonic-gate     UINT32                  BitWidth,
7350Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7360Sstevel@tonic-gate     void                    *HandlerContext,
7370Sstevel@tonic-gate     void                    *RegionContext);
7380Sstevel@tonic-gate 
7390Sstevel@tonic-gate ACPI_STATUS
7400Sstevel@tonic-gate AcpiExPciBarSpaceHandler (
7410Sstevel@tonic-gate     UINT32                  Function,
7420Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7430Sstevel@tonic-gate     UINT32                  BitWidth,
7440Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7450Sstevel@tonic-gate     void                    *HandlerContext,
7460Sstevel@tonic-gate     void                    *RegionContext);
7470Sstevel@tonic-gate 
7480Sstevel@tonic-gate ACPI_STATUS
7490Sstevel@tonic-gate AcpiExEmbeddedControllerSpaceHandler (
7500Sstevel@tonic-gate     UINT32                  Function,
7510Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7520Sstevel@tonic-gate     UINT32                  BitWidth,
7530Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7540Sstevel@tonic-gate     void                    *HandlerContext,
7550Sstevel@tonic-gate     void                    *RegionContext);
7560Sstevel@tonic-gate 
7570Sstevel@tonic-gate ACPI_STATUS
7580Sstevel@tonic-gate AcpiExSmBusSpaceHandler (
7590Sstevel@tonic-gate     UINT32                  Function,
7600Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7610Sstevel@tonic-gate     UINT32                  BitWidth,
7620Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7630Sstevel@tonic-gate     void                    *HandlerContext,
7640Sstevel@tonic-gate     void                    *RegionContext);
7650Sstevel@tonic-gate 
7660Sstevel@tonic-gate 
7670Sstevel@tonic-gate ACPI_STATUS
7680Sstevel@tonic-gate AcpiExDataTableSpaceHandler (
7690Sstevel@tonic-gate     UINT32                  Function,
7700Sstevel@tonic-gate     ACPI_PHYSICAL_ADDRESS   Address,
7710Sstevel@tonic-gate     UINT32                  BitWidth,
7720Sstevel@tonic-gate     ACPI_INTEGER            *Value,
7730Sstevel@tonic-gate     void                    *HandlerContext,
7740Sstevel@tonic-gate     void                    *RegionContext);
7750Sstevel@tonic-gate 
7760Sstevel@tonic-gate #endif /* __INTERP_H__ */
777