acinterp.h revision 67754
10SN/A/******************************************************************************
211238Sjuh *
30SN/A * Name: acinterp.h - Interpreter subcomponent prototypes and defines
40SN/A *       $Revision: 82 $
50SN/A *
60SN/A *****************************************************************************/
72362SN/A
80SN/A/******************************************************************************
92362SN/A *
100SN/A * 1. Copyright Notice
110SN/A *
120SN/A * Some or all of this work - Copyright (c) 1999, Intel Corp.  All rights
130SN/A * reserved.
140SN/A *
150SN/A * 2. License
160SN/A *
170SN/A * 2.1. This is your license from Intel Corp. under its intellectual property
180SN/A * rights.  You may have additional license terms from the party that provided
190SN/A * you this software, covering your right to use that party's intellectual
200SN/A * property rights.
212362SN/A *
222362SN/A * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
232362SN/A * copy of the source code appearing in this file ("Covered Code") an
240SN/A * irrevocable, perpetual, worldwide license under Intel's copyrights in the
250SN/A * base code distributed originally by Intel ("Original Intel Code") to copy,
260SN/A * make derivatives, distribute, use and display any portion of the Covered
270SN/A * Code in any form, with the right to sublicense such rights; and
280SN/A *
290SN/A * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
300SN/A * license (with the right to sublicense), under only those claims of Intel
310SN/A * patents that are infringed by the Original Intel Code, to make, use, sell,
320SN/A * offer to sell, and import the Covered Code and derivative works thereof
330SN/A * solely to the minimum extent necessary to exercise the above copyright
340SN/A * license, and in no event shall the patent license extend to any additions
350SN/A * to or modifications of the Original Intel Code.  No other license or right
360SN/A * is granted directly or by implication, estoppel or otherwise;
370SN/A *
380SN/A * The above copyright and patent license is granted only if the following
390SN/A * conditions are met:
400SN/A *
410SN/A * 3. Conditions
420SN/A *
430SN/A * 3.1. Redistribution of Source with Rights to Further Distribute Source.
440SN/A * Redistribution of source code of any substantial portion of the Covered
450SN/A * Code or modification with rights to further distribute source must include
460SN/A * the above Copyright Notice, the above License, this list of Conditions,
470SN/A * and the following Disclaimer and Export Compliance provision.  In addition,
480SN/A * Licensee must cause all Covered Code to which Licensee contributes to
490SN/A * contain a file documenting the changes Licensee made to create that Covered
500SN/A * Code and the date of any change.  Licensee must include in that file the
510SN/A * documentation of any changes made by any predecessor Licensee.  Licensee
520SN/A * must include a prominent statement that the modification is derived,
530SN/A * directly or indirectly, from Original Intel Code.
540SN/A *
550SN/A * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
560SN/A * Redistribution of source code of any substantial portion of the Covered
570SN/A * Code or modification without rights to further distribute source must
580SN/A * include the following Disclaimer and Export Compliance provision in the
590SN/A * documentation and/or other materials provided with distribution.  In
600SN/A * addition, Licensee may not authorize further sublicense of source of any
610SN/A * portion of the Covered Code, and must include terms to the effect that the
620SN/A * license from Licensee to its licensee is limited to the intellectual
630SN/A * property embodied in the software Licensee provides to its licensee, and
640SN/A * not to intellectual property embodied in modifications its licensee may
650SN/A * make.
660SN/A *
670SN/A * 3.3. Redistribution of Executable. Redistribution in executable form of any
680SN/A * substantial portion of the Covered Code or modification must reproduce the
690SN/A * above Copyright Notice, and the following Disclaimer and Export Compliance
700SN/A * provision in the documentation and/or other materials provided with the
710SN/A * distribution.
720SN/A *
730SN/A * 3.4. Intel retains all right, title, and interest in and to the Original
740SN/A * Intel Code.
750SN/A *
760SN/A * 3.5. Neither the name Intel nor any other trademark owned or controlled by
770SN/A * Intel shall be used in advertising or otherwise to promote the sale, use or
780SN/A * other dealings in products derived from or relating to the Covered Code
790SN/A * without prior written authorization from Intel.
800SN/A *
810SN/A * 4. Disclaimer and Export Compliance
820SN/A *
830SN/A * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
840SN/A * HERE.  ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
850SN/A * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT,  ASSISTANCE,
860SN/A * INSTALLATION, TRAINING OR OTHER SERVICES.  INTEL WILL NOT PROVIDE ANY
870SN/A * UPDATES, ENHANCEMENTS OR EXTENSIONS.  INTEL SPECIFICALLY DISCLAIMS ANY
880SN/A * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
890SN/A * PARTICULAR PURPOSE.
900SN/A *
910SN/A * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
920SN/A * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
930SN/A * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
940SN/A * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
950SN/A * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
960SN/A * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.  THESE LIMITATIONS
970SN/A * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
980SN/A * LIMITED REMEDY.
990SN/A *
1000SN/A * 4.3. Licensee shall not export, either directly or indirectly, any of this
1010SN/A * software or system incorporating such software without first obtaining any
1020SN/A * required license or other approval from the U. S. Department of Commerce or
1030SN/A * any other agency or department of the United States Government.  In the
1040SN/A * event Licensee exports any such software from the United States or
1050SN/A * re-exports any such software from a foreign destination, Licensee shall
1060SN/A * ensure that the distribution and export/re-export of the software is in
1070SN/A * compliance with all laws, regulations, orders, or other restrictions of the
1080SN/A * U.S. Export Administration Regulations. Licensee agrees that neither it nor
1090SN/A * any of its subsidiaries will export/re-export any technical data, process,
1100SN/A * software, or service, directly or indirectly, to any country for which the
1110SN/A * United States government or any agency thereof requires an export license,
11211238Sjuh * other governmental approval, or letter of assurance, without first obtaining
1130SN/A * such license, approval or letter.
1140SN/A *
1150SN/A *****************************************************************************/
1160SN/A
1170SN/A#ifndef __ACINTERP_H__
1180SN/A#define __ACINTERP_H__
1190SN/A
1200SN/A
1210SN/A#define WALK_OPERANDS       &(WalkState->Operands [WalkState->NumOperands -1])
1220SN/A
1230SN/A
1240SN/A/* Interpreter constants */
1250SN/A
1260SN/A#define AML_END_OF_BLOCK            -1
1270SN/A#define PUSH_PKG_LENGTH             1
1280SN/A#define DO_NOT_PUSH_PKG_LENGTH      0
1290SN/A
1300SN/A
1310SN/A#define STACK_TOP                   0
1320SN/A#define STACK_BOTTOM                (UINT32) -1
1330SN/A
1340SN/A/* Constants for global "WhenToParseMethods" */
1350SN/A
1360SN/A#define METHOD_PARSE_AT_INIT        0x0
1370SN/A#define METHOD_PARSE_JUST_IN_TIME   0x1
1380SN/A#define METHOD_DELETE_AT_COMPLETION 0x2
1390SN/A
1400SN/A
1410SN/AACPI_STATUS
1420SN/AAcpiAmlResolveOperands (
1430SN/A    UINT16                  Opcode,
1440SN/A    ACPI_OPERAND_OBJECT     **StackPtr,
1450SN/A    ACPI_WALK_STATE         *WalkState);
1460SN/A
1470SN/A
1480SN/A/*
1490SN/A * amxface - External interpreter interfaces
1500SN/A */
1510SN/A
1520SN/AACPI_STATUS
1530SN/AAcpiAmlLoadTable (
1540SN/A    ACPI_TABLE_TYPE         TableId);
1550SN/A
1560SN/AACPI_STATUS
1570SN/AAcpiAmlExecuteMethod (
1580SN/A    ACPI_NAMESPACE_NODE     *MethodNode,
1590SN/A    ACPI_OPERAND_OBJECT     **Params,
1600SN/A    ACPI_OPERAND_OBJECT     **ReturnObjDesc);
1610SN/A
1620SN/A
1630SN/A/*
1640SN/A * amfield - ACPI AML (p-code) execution - field manipulation
1650SN/A */
1660SN/A
1670SN/A
1680SN/AACPI_STATUS
1690SN/AAcpiAmlReadField (
1700SN/A    ACPI_OPERAND_OBJECT     *ObjDesc,
1710SN/A    void                    *Buffer,
1720SN/A    UINT32                  BufferLength,
1730SN/A    UINT32                  ByteLength,
1740SN/A    UINT32                  DatumLength,
1750SN/A    UINT32                  BitGranularity,
1760SN/A    UINT32                  ByteGranularity);
1770SN/A
17811975SigerasimACPI_STATUS
17911975SigerasimAcpiAmlWriteField (
18011975Sigerasim    ACPI_OPERAND_OBJECT     *ObjDesc,
18111975Sigerasim    void                    *Buffer,
18211975Sigerasim    UINT32                  BufferLength,
18311975Sigerasim    UINT32                  ByteLength,
18411975Sigerasim    UINT32                  DatumLength,
18511975Sigerasim    UINT32                  BitGranularity,
18611975Sigerasim    UINT32                  ByteGranularity);
18711975Sigerasim
18811975SigerasimACPI_STATUS
18911975SigerasimAcpiAmlSetupField (
19011975Sigerasim    ACPI_OPERAND_OBJECT     *ObjDesc,
19111975Sigerasim    ACPI_OPERAND_OBJECT     *RgnDesc,
19211975Sigerasim    UINT32                  FieldBitWidth);
19311975Sigerasim
19411975SigerasimACPI_STATUS
19511975SigerasimAcpiAmlReadFieldData (
1960SN/A    ACPI_OPERAND_OBJECT     *ObjDesc,
1970SN/A    UINT32                  FieldByteOffset,
1980SN/A    UINT32                  FieldBitWidth,
1990SN/A    UINT32                  *Value);
2000SN/A
2010SN/AACPI_STATUS
2020SN/AAcpiAmlAccessNamedField (
2030SN/A    UINT32                  Mode,
2040SN/A    ACPI_HANDLE             NamedField,
2050SN/A    void                    *Buffer,
2060SN/A    UINT32                  Length);
2070SN/A
20811238Sjuh/*
2090SN/A * ammisc - ACPI AML (p-code) execution - specific opcodes
2100SN/A */
2110SN/A
2120SN/AACPI_STATUS
2130SN/AAcpiAmlExecCreateField (
2140SN/A    UINT8                   *AmlPtr,
2150SN/A    UINT32                  AmlLength,
2160SN/A    ACPI_NAMESPACE_NODE     *Node,
2170SN/A    ACPI_WALK_STATE         *WalkState);
2180SN/A
2190SN/AACPI_STATUS
2200SN/AAcpiAmlExecReconfiguration (
2210SN/A    UINT16                  Opcode,
2220SN/A    ACPI_WALK_STATE         *WalkState);
2230SN/A
2240SN/AACPI_STATUS
2250SN/AAcpiAmlExecFatal (
2260SN/A    ACPI_WALK_STATE         *WalkState);
2270SN/A
2280SN/AACPI_STATUS
2290SN/AAcpiAmlExecIndex (
2300SN/A    ACPI_WALK_STATE         *WalkState,
2310SN/A    ACPI_OPERAND_OBJECT     **ReturnDesc);
2320SN/A
2330SN/AACPI_STATUS
2340SN/AAcpiAmlExecMatch (
2350SN/A    ACPI_WALK_STATE         *WalkState,
2360SN/A    ACPI_OPERAND_OBJECT     **ReturnDesc);
2374487SN/A
2380SN/AACPI_STATUS
23910294SN/AAcpiAmlExecCreateMutex (
2400SN/A    ACPI_WALK_STATE         *WalkState);
24110294SN/A
2420SN/AACPI_STATUS
2430SN/AAcpiAmlExecCreateProcessor (
2440SN/A    ACPI_PARSE_OBJECT       *Op,
2450SN/A    ACPI_HANDLE             ProcessorNTE);
2460SN/A
2470SN/AACPI_STATUS
2480SN/AAcpiAmlExecCreatePowerResource (
2490SN/A    ACPI_PARSE_OBJECT       *Op,
2500SN/A    ACPI_HANDLE             ProcessorNTE);
2510SN/A
2520SN/AACPI_STATUS
2530SN/AAcpiAmlExecCreateRegion (
2540SN/A    UINT8                   *AmlPtr,
2550SN/A    UINT32                  AcpiAmlLength,
2560SN/A    UINT32                  RegionSpace,
2570SN/A    ACPI_WALK_STATE         *WalkState);
2580SN/A
2590SN/AACPI_STATUS
2600SN/AAcpiAmlExecCreateEvent (
2610SN/A    ACPI_WALK_STATE         *WalkState);
2620SN/A
2630SN/AACPI_STATUS
2640SN/AAcpiAmlExecCreateAlias (
2650SN/A    ACPI_WALK_STATE         *WalkState);
2660SN/A
2670SN/AACPI_STATUS
2680SN/AAcpiAmlExecCreateMethod (
2690SN/A    UINT8                   *AmlPtr,
2700SN/A    UINT32                  AcpiAmlLength,
2710SN/A    UINT32                  MethodFlags,
2720SN/A    ACPI_HANDLE             Method);
2730SN/A
2740SN/A
2750SN/A/*
2760SN/A * amprep - ACPI AML (p-code) execution - prep utilities
2770SN/A */
2780SN/A
2790SN/AACPI_STATUS
2800SN/AAcpiAmlPrepDefFieldValue (
2810SN/A    ACPI_NAMESPACE_NODE     *Node,
282    ACPI_HANDLE             Region,
283    UINT8                   FieldFlags,
284    UINT8                   FieldAttribute,
285    UINT32                  FieldPosition,
286    UINT32                  FieldLength);
287
288ACPI_STATUS
289AcpiAmlPrepBankFieldValue (
290    ACPI_NAMESPACE_NODE     *Node,
291    ACPI_HANDLE             Region,
292    ACPI_HANDLE             BankReg,
293    UINT32                  BankVal,
294    UINT8                   FieldFlags,
295    UINT8                   FieldAttribute,
296    UINT32                  FieldPosition,
297    UINT32                  FieldLength);
298
299ACPI_STATUS
300AcpiAmlPrepIndexFieldValue (
301    ACPI_NAMESPACE_NODE     *Node,
302    ACPI_HANDLE             IndexReg,
303    ACPI_HANDLE             DataReg,
304    UINT8                   FieldFlags,
305    UINT8                   FieldAttribute,
306    UINT32                  FieldPosition,
307    UINT32                  FieldLength);
308
309
310/*
311 * amsystem - Interface to OS services
312 */
313
314UINT16
315AcpiAmlSystemThreadId (
316    void);
317
318ACPI_STATUS
319AcpiAmlSystemDoNotifyOp (
320    ACPI_OPERAND_OBJECT     *Value,
321    ACPI_OPERAND_OBJECT     *ObjDesc);
322
323void
324AcpiAmlSystemDoSuspend(
325    UINT32                  Time);
326
327void
328AcpiAmlSystemDoStall (
329    UINT32                  Time);
330
331ACPI_STATUS
332AcpiAmlSystemAcquireMutex(
333    ACPI_OPERAND_OBJECT     *Time,
334    ACPI_OPERAND_OBJECT     *ObjDesc);
335
336ACPI_STATUS
337AcpiAmlSystemReleaseMutex(
338    ACPI_OPERAND_OBJECT     *ObjDesc);
339
340ACPI_STATUS
341AcpiAmlSystemSignalEvent(
342    ACPI_OPERAND_OBJECT     *ObjDesc);
343
344ACPI_STATUS
345AcpiAmlSystemWaitEvent(
346    ACPI_OPERAND_OBJECT     *Time,
347    ACPI_OPERAND_OBJECT     *ObjDesc);
348
349ACPI_STATUS
350AcpiAmlSystemResetEvent(
351    ACPI_OPERAND_OBJECT     *ObjDesc);
352
353ACPI_STATUS
354AcpiAmlSystemWaitSemaphore (
355    ACPI_HANDLE             Semaphore,
356    UINT32                  Timeout);
357
358
359/*
360 * ammonadic - ACPI AML (p-code) execution, monadic operators
361 */
362
363ACPI_STATUS
364AcpiAmlExecMonadic1 (
365    UINT16                  Opcode,
366    ACPI_WALK_STATE         *WalkState);
367
368ACPI_STATUS
369AcpiAmlExecMonadic2 (
370    UINT16                  Opcode,
371    ACPI_WALK_STATE         *WalkState,
372    ACPI_OPERAND_OBJECT     **ReturnDesc);
373
374ACPI_STATUS
375AcpiAmlExecMonadic2R (
376    UINT16                  Opcode,
377    ACPI_WALK_STATE         *WalkState,
378    ACPI_OPERAND_OBJECT     **ReturnDesc);
379
380
381/*
382 * amdyadic - ACPI AML (p-code) execution, dyadic operators
383 */
384
385ACPI_STATUS
386AcpiAmlExecDyadic1 (
387    UINT16                  Opcode,
388    ACPI_WALK_STATE         *WalkState);
389
390ACPI_STATUS
391AcpiAmlExecDyadic2 (
392    UINT16                  Opcode,
393    ACPI_WALK_STATE         *WalkState,
394    ACPI_OPERAND_OBJECT     **ReturnDesc);
395
396ACPI_STATUS
397AcpiAmlExecDyadic2R (
398    UINT16                  Opcode,
399    ACPI_WALK_STATE         *WalkState,
400    ACPI_OPERAND_OBJECT     **ReturnDesc);
401
402ACPI_STATUS
403AcpiAmlExecDyadic2S (
404    UINT16                  Opcode,
405    ACPI_WALK_STATE         *WalkState,
406    ACPI_OPERAND_OBJECT     **ReturnDesc);
407
408
409/*
410 * amresolv  - Object resolution and get value functions
411 */
412
413ACPI_STATUS
414AcpiAmlResolveToValue (
415    ACPI_OPERAND_OBJECT     **StackPtr,
416    ACPI_WALK_STATE         *WalkState);
417
418ACPI_STATUS
419AcpiAmlResolveNodeToValue (
420    ACPI_NAMESPACE_NODE     **StackPtr);
421
422ACPI_STATUS
423AcpiAmlResolveObjectToValue (
424    ACPI_OPERAND_OBJECT     **StackPtr,
425    ACPI_WALK_STATE         *WalkState);
426
427ACPI_STATUS
428AcpiAmlGetFieldUnitValue (
429    ACPI_OPERAND_OBJECT     *FieldDesc,
430    ACPI_OPERAND_OBJECT     *ResultDesc);
431
432
433/*
434 * amdump - Scanner debug output routines
435 */
436
437void
438AcpiAmlShowHexValue (
439    UINT32                  ByteCount,
440    UINT8                   *AmlPtr,
441    UINT32                  LeadSpace);
442
443
444ACPI_STATUS
445AcpiAmlDumpOperand (
446    ACPI_OPERAND_OBJECT     *EntryDesc);
447
448void
449AcpiAmlDumpOperands (
450    ACPI_OPERAND_OBJECT     **Operands,
451    OPERATING_MODE          InterpreterMode,
452    NATIVE_CHAR             *Ident,
453    UINT32                  NumLevels,
454    NATIVE_CHAR             *Note,
455    NATIVE_CHAR             *ModuleName,
456    UINT32                  LineNumber);
457
458void
459AcpiAmlDumpObjectDescriptor (
460    ACPI_OPERAND_OBJECT     *Object,
461    UINT32                  Flags);
462
463
464void
465AcpiAmlDumpNode (
466    ACPI_NAMESPACE_NODE     *Node,
467    UINT32                  Flags);
468
469
470/*
471 * amnames - interpreter/scanner name load/execute
472 */
473
474NATIVE_CHAR *
475AcpiAmlAllocateNameString (
476    UINT32                  PrefixCount,
477    UINT32                  NumNameSegs);
478
479UINT32
480AcpiAmlGoodChar (
481    UINT32                  Character);
482
483ACPI_STATUS
484AcpiAmlExecNameSegment (
485    UINT8                   **InAmlAddress,
486    NATIVE_CHAR             *NameString);
487
488ACPI_STATUS
489AcpiAmlGetNameString (
490    OBJECT_TYPE_INTERNAL    DataType,
491    UINT8                   *InAmlAddress,
492    NATIVE_CHAR             **OutNameString,
493    UINT32                  *OutNameLength);
494
495ACPI_STATUS
496AcpiAmlDoName (
497    ACPI_OBJECT_TYPE        DataType,
498    OPERATING_MODE          LoadExecMode);
499
500
501/*
502 * amstore - Object store support
503 */
504
505ACPI_STATUS
506AcpiAmlExecStore (
507    ACPI_OPERAND_OBJECT     *ValDesc,
508    ACPI_OPERAND_OBJECT     *DestDesc,
509    ACPI_WALK_STATE         *WalkState);
510
511ACPI_STATUS
512AcpiAmlStoreObjectToObject (
513    ACPI_OPERAND_OBJECT     *ValDesc,
514    ACPI_OPERAND_OBJECT     *DestDesc,
515    ACPI_WALK_STATE         *WalkState);
516
517ACPI_STATUS
518AcpiAmlStoreObjectToNode (
519    ACPI_OPERAND_OBJECT     *ValDesc,
520    ACPI_NAMESPACE_NODE     *Node,
521    ACPI_WALK_STATE         *WalkState);
522
523
524/*
525 * amutils - interpreter/scanner utilities
526 */
527
528void
529AcpiAmlEnterInterpreter (
530    void);
531
532void
533AcpiAmlExitInterpreter (
534    void);
535
536BOOLEAN
537AcpiAmlValidateObjectType (
538    ACPI_OBJECT_TYPE        Type);
539
540BOOLEAN
541AcpiAmlAcquireGlobalLock (
542    UINT32                  Rule);
543
544ACPI_STATUS
545AcpiAmlReleaseGlobalLock (
546    BOOLEAN                 Locked);
547
548UINT32
549AcpiAmlBufSeq (
550    void);
551
552UINT32
553AcpiAmlDigitsNeeded (
554    ACPI_INTEGER            Value,
555    UINT32                  Base);
556
557ACPI_STATUS
558AcpiAmlEisaIdToString (
559    UINT32                  NumericId,
560    NATIVE_CHAR             *OutString);
561
562ACPI_STATUS
563AcpiAmlUnsignedIntegerToString (
564    ACPI_INTEGER            Value,
565    NATIVE_CHAR             *OutString);
566
567ACPI_STATUS
568AcpiAmlBuildCopyInternalPackageObject (
569    ACPI_OPERAND_OBJECT     *SourceObj,
570    ACPI_OPERAND_OBJECT     *DestObj,
571    ACPI_WALK_STATE         *WalkState);
572
573
574/*
575 * amregion - default OpRegion handlers
576 */
577
578ACPI_STATUS
579AcpiAmlSystemMemorySpaceHandler (
580    UINT32                  Function,
581    ACPI_INTEGER            Address,
582    UINT32                  BitWidth,
583    UINT32                  *Value,
584    void                    *HandlerContext,
585    void                    *RegionContext);
586
587ACPI_STATUS
588AcpiAmlSystemIoSpaceHandler (
589    UINT32                  Function,
590    ACPI_INTEGER            Address,
591    UINT32                  BitWidth,
592    UINT32                  *Value,
593    void                    *HandlerContext,
594    void                    *RegionContext);
595
596ACPI_STATUS
597AcpiAmlPciConfigSpaceHandler (
598    UINT32                  Function,
599    ACPI_INTEGER            Address,
600    UINT32                  BitWidth,
601    UINT32                  *Value,
602    void                    *HandlerContext,
603    void                    *RegionContext);
604
605ACPI_STATUS
606AcpiAmlEmbeddedControllerSpaceHandler (
607    UINT32                  Function,
608    ACPI_INTEGER            Address,
609    UINT32                  BitWidth,
610    UINT32                  *Value,
611    void                    *HandlerContext,
612    void                    *RegionContext);
613
614ACPI_STATUS
615AcpiAmlSmBusSpaceHandler (
616    UINT32                  Function,
617    ACPI_INTEGER            Address,
618    UINT32                  BitWidth,
619    UINT32                  *Value,
620    void                    *HandlerContext,
621    void                    *RegionContext);
622
623
624#endif /* __INTERP_H__ */
625