Home | History | Annotate | Line # | Download | only in include
acpixf.h revision 1.2
      1 
      2 /******************************************************************************
      3  *
      4  * Name: acpixf.h - External interfaces to the ACPI subsystem
      5  *
      6  *****************************************************************************/
      7 
      8 /******************************************************************************
      9  *
     10  * 1. Copyright Notice
     11  *
     12  * Some or all of this work - Copyright (c) 1999 - 2010, Intel Corp.
     13  * All rights reserved.
     14  *
     15  * 2. License
     16  *
     17  * 2.1. This is your license from Intel Corp. under its intellectual property
     18  * rights.  You may have additional license terms from the party that provided
     19  * you this software, covering your right to use that party's intellectual
     20  * property rights.
     21  *
     22  * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
     23  * copy of the source code appearing in this file ("Covered Code") an
     24  * irrevocable, perpetual, worldwide license under Intel's copyrights in the
     25  * base code distributed originally by Intel ("Original Intel Code") to copy,
     26  * make derivatives, distribute, use and display any portion of the Covered
     27  * Code in any form, with the right to sublicense such rights; and
     28  *
     29  * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
     30  * license (with the right to sublicense), under only those claims of Intel
     31  * patents that are infringed by the Original Intel Code, to make, use, sell,
     32  * offer to sell, and import the Covered Code and derivative works thereof
     33  * solely to the minimum extent necessary to exercise the above copyright
     34  * license, and in no event shall the patent license extend to any additions
     35  * to or modifications of the Original Intel Code.  No other license or right
     36  * is granted directly or by implication, estoppel or otherwise;
     37  *
     38  * The above copyright and patent license is granted only if the following
     39  * conditions are met:
     40  *
     41  * 3. Conditions
     42  *
     43  * 3.1. Redistribution of Source with Rights to Further Distribute Source.
     44  * Redistribution of source code of any substantial portion of the Covered
     45  * Code or modification with rights to further distribute source must include
     46  * the above Copyright Notice, the above License, this list of Conditions,
     47  * and the following Disclaimer and Export Compliance provision.  In addition,
     48  * Licensee must cause all Covered Code to which Licensee contributes to
     49  * contain a file documenting the changes Licensee made to create that Covered
     50  * Code and the date of any change.  Licensee must include in that file the
     51  * documentation of any changes made by any predecessor Licensee.  Licensee
     52  * must include a prominent statement that the modification is derived,
     53  * directly or indirectly, from Original Intel Code.
     54  *
     55  * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
     56  * Redistribution of source code of any substantial portion of the Covered
     57  * Code or modification without rights to further distribute source must
     58  * include the following Disclaimer and Export Compliance provision in the
     59  * documentation and/or other materials provided with distribution.  In
     60  * addition, Licensee may not authorize further sublicense of source of any
     61  * portion of the Covered Code, and must include terms to the effect that the
     62  * license from Licensee to its licensee is limited to the intellectual
     63  * property embodied in the software Licensee provides to its licensee, and
     64  * not to intellectual property embodied in modifications its licensee may
     65  * make.
     66  *
     67  * 3.3. Redistribution of Executable. Redistribution in executable form of any
     68  * substantial portion of the Covered Code or modification must reproduce the
     69  * above Copyright Notice, and the following Disclaimer and Export Compliance
     70  * provision in the documentation and/or other materials provided with the
     71  * distribution.
     72  *
     73  * 3.4. Intel retains all right, title, and interest in and to the Original
     74  * Intel Code.
     75  *
     76  * 3.5. Neither the name Intel nor any other trademark owned or controlled by
     77  * Intel shall be used in advertising or otherwise to promote the sale, use or
     78  * other dealings in products derived from or relating to the Covered Code
     79  * without prior written authorization from Intel.
     80  *
     81  * 4. Disclaimer and Export Compliance
     82  *
     83  * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
     84  * HERE.  ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
     85  * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT,  ASSISTANCE,
     86  * INSTALLATION, TRAINING OR OTHER SERVICES.  INTEL WILL NOT PROVIDE ANY
     87  * UPDATES, ENHANCEMENTS OR EXTENSIONS.  INTEL SPECIFICALLY DISCLAIMS ANY
     88  * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
     89  * PARTICULAR PURPOSE.
     90  *
     91  * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
     92  * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
     93  * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
     94  * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
     95  * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
     96  * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.  THESE LIMITATIONS
     97  * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
     98  * LIMITED REMEDY.
     99  *
    100  * 4.3. Licensee shall not export, either directly or indirectly, any of this
    101  * software or system incorporating such software without first obtaining any
    102  * required license or other approval from the U. S. Department of Commerce or
    103  * any other agency or department of the United States Government.  In the
    104  * event Licensee exports any such software from the United States or
    105  * re-exports any such software from a foreign destination, Licensee shall
    106  * ensure that the distribution and export/re-export of the software is in
    107  * compliance with all laws, regulations, orders, or other restrictions of the
    108  * U.S. Export Administration Regulations. Licensee agrees that neither it nor
    109  * any of its subsidiaries will export/re-export any technical data, process,
    110  * software, or service, directly or indirectly, to any country for which the
    111  * United States government or any agency thereof requires an export license,
    112  * other governmental approval, or letter of assurance, without first obtaining
    113  * such license, approval or letter.
    114  *
    115  *****************************************************************************/
    116 
    117 
    118 #ifndef __ACXFACE_H__
    119 #define __ACXFACE_H__
    120 
    121 /* Current ACPICA subsystem version in YYYYMMDD format */
    122 
    123 #define ACPI_CA_VERSION                 0x20100528
    124 
    125 #include "actypes.h"
    126 #include "actbl.h"
    127 
    128 /*
    129  * Globals that are publically available
    130  */
    131 extern UINT32               AcpiCurrentGpeCount;
    132 extern ACPI_TABLE_FADT      AcpiGbl_FADT;
    133 
    134 /* Runtime configuration of debug print levels */
    135 
    136 extern UINT32               AcpiDbgLevel;
    137 extern UINT32               AcpiDbgLayer;
    138 
    139 /* ACPICA runtime options */
    140 
    141 extern UINT8                AcpiGbl_EnableInterpreterSlack;
    142 extern UINT8                AcpiGbl_AllMethodsSerialized;
    143 extern UINT8                AcpiGbl_CreateOsiMethod;
    144 extern UINT8                AcpiGbl_LeaveWakeGpesDisabled;
    145 extern UINT8                AcpiGbl_UseDefaultRegisterWidths;
    146 extern ACPI_NAME            AcpiGbl_TraceMethodName;
    147 extern UINT32               AcpiGbl_TraceFlags;
    148 extern UINT8                AcpiGbl_EnableAmlDebugObject;
    149 extern UINT8                AcpiGbl_CopyDsdtLocally;
    150 extern UINT8                AcpiGbl_TruncateIoAddresses;
    151 
    152 
    153 /*
    154  * Global interfaces
    155  */
    156 ACPI_STATUS
    157 AcpiInitializeTables (
    158     ACPI_TABLE_DESC         *InitialStorage,
    159     UINT32                  InitialTableCount,
    160     BOOLEAN                 AllowResize);
    161 
    162 ACPI_STATUS
    163 AcpiInitializeSubsystem (
    164     void);
    165 
    166 ACPI_STATUS
    167 AcpiEnableSubsystem (
    168     UINT32                  Flags);
    169 
    170 ACPI_STATUS
    171 AcpiInitializeObjects (
    172     UINT32                  Flags);
    173 
    174 ACPI_STATUS
    175 AcpiTerminate (
    176     void);
    177 
    178 ACPI_STATUS
    179 AcpiSubsystemStatus (
    180     void);
    181 
    182 ACPI_STATUS
    183 AcpiEnable (
    184     void);
    185 
    186 ACPI_STATUS
    187 AcpiDisable (
    188     void);
    189 
    190 ACPI_STATUS
    191 AcpiGetSystemInfo (
    192     ACPI_BUFFER             *RetBuffer);
    193 
    194 ACPI_STATUS
    195 AcpiGetStatistics (
    196     ACPI_STATISTICS         *Stats);
    197 
    198 const char *
    199 AcpiFormatException (
    200     ACPI_STATUS             Exception);
    201 
    202 ACPI_STATUS
    203 AcpiPurgeCachedObjects (
    204     void);
    205 
    206 
    207 /*
    208  * ACPI Memory managment
    209  */
    210 void *
    211 AcpiAllocate (
    212     UINT32                  Size);
    213 
    214 void *
    215 AcpiCallocate (
    216     UINT32                  Size);
    217 
    218 void
    219 AcpiFree (
    220     void                    *Address);
    221 
    222 
    223 /*
    224  * ACPI table manipulation interfaces
    225  */
    226 ACPI_STATUS
    227 AcpiReallocateRootTable (
    228     void);
    229 
    230 ACPI_STATUS
    231 AcpiFindRootPointer (
    232     ACPI_SIZE               *RsdpAddress);
    233 
    234 ACPI_STATUS
    235 AcpiLoadTables (
    236     void);
    237 
    238 ACPI_STATUS
    239 AcpiGetTableHeader (
    240     ACPI_CONST_STRING       Signature,
    241     UINT32                  Instance,
    242     ACPI_TABLE_HEADER       *OutTableHeader);
    243 
    244 ACPI_STATUS
    245 AcpiGetTable (
    246     ACPI_CONST_STRING       Signature,
    247     UINT32                  Instance,
    248     ACPI_TABLE_HEADER       **OutTable);
    249 
    250 ACPI_STATUS
    251 AcpiGetTableByIndex (
    252     UINT32                  TableIndex,
    253     ACPI_TABLE_HEADER       **OutTable);
    254 
    255 ACPI_STATUS
    256 AcpiInstallTableHandler (
    257     ACPI_TABLE_HANDLER      Handler,
    258     void                    *Context);
    259 
    260 ACPI_STATUS
    261 AcpiRemoveTableHandler (
    262     ACPI_TABLE_HANDLER      Handler);
    263 
    264 
    265 /*
    266  * Namespace and name interfaces
    267  */
    268 ACPI_STATUS
    269 AcpiWalkNamespace (
    270     ACPI_OBJECT_TYPE        Type,
    271     ACPI_HANDLE             StartObject,
    272     UINT32                  MaxDepth,
    273     ACPI_WALK_CALLBACK      PreOrderVisit,
    274     ACPI_WALK_CALLBACK      PostOrderVisit,
    275     void                    *Context,
    276     void                    **ReturnValue);
    277 
    278 ACPI_STATUS
    279 AcpiGetDevices (
    280     char                    *HID,
    281     ACPI_WALK_CALLBACK      UserFunction,
    282     void                    *Context,
    283     void                    **ReturnValue);
    284 
    285 ACPI_STATUS
    286 AcpiGetName (
    287     ACPI_HANDLE             Object,
    288     UINT32                  NameType,
    289     ACPI_BUFFER             *RetPathPtr);
    290 
    291 ACPI_STATUS
    292 AcpiGetHandle (
    293     ACPI_HANDLE             Parent,
    294     ACPI_CONST_STRING       Pathname,
    295     ACPI_HANDLE             *RetHandle);
    296 
    297 ACPI_STATUS
    298 AcpiAttachData (
    299     ACPI_HANDLE             Object,
    300     ACPI_OBJECT_HANDLER     Handler,
    301     void                    *Data);
    302 
    303 ACPI_STATUS
    304 AcpiDetachData (
    305     ACPI_HANDLE             Object,
    306     ACPI_OBJECT_HANDLER     Handler);
    307 
    308 ACPI_STATUS
    309 AcpiGetData (
    310     ACPI_HANDLE             Object,
    311     ACPI_OBJECT_HANDLER     Handler,
    312     void                    **Data);
    313 
    314 ACPI_STATUS
    315 AcpiDebugTrace (
    316     char                    *Name,
    317     UINT32                  DebugLevel,
    318     UINT32                  DebugLayer,
    319     UINT32                  Flags);
    320 
    321 
    322 /*
    323  * Object manipulation and enumeration
    324  */
    325 ACPI_STATUS
    326 AcpiEvaluateObject (
    327     ACPI_HANDLE             Object,
    328     ACPI_CONST_STRING       Pathname,
    329     ACPI_OBJECT_LIST        *ParameterObjects,
    330     ACPI_BUFFER             *ReturnObjectBuffer);
    331 
    332 ACPI_STATUS
    333 AcpiEvaluateObjectTyped (
    334     ACPI_HANDLE             Object,
    335     ACPI_CONST_STRING       Pathname,
    336     ACPI_OBJECT_LIST        *ExternalParams,
    337     ACPI_BUFFER             *ReturnBuffer,
    338     ACPI_OBJECT_TYPE        ReturnType);
    339 
    340 ACPI_STATUS
    341 AcpiGetObjectInfo (
    342     ACPI_HANDLE             Object,
    343     ACPI_DEVICE_INFO        **ReturnBuffer);
    344 
    345 ACPI_STATUS
    346 AcpiInstallMethod (
    347     UINT8                   *Buffer);
    348 
    349 ACPI_STATUS
    350 AcpiGetNextObject (
    351     ACPI_OBJECT_TYPE        Type,
    352     ACPI_HANDLE             Parent,
    353     ACPI_HANDLE             Child,
    354     ACPI_HANDLE             *OutHandle);
    355 
    356 ACPI_STATUS
    357 AcpiGetType (
    358     ACPI_HANDLE             Object,
    359     ACPI_OBJECT_TYPE        *OutType);
    360 
    361 ACPI_STATUS
    362 AcpiGetParent (
    363     ACPI_HANDLE             Object,
    364     ACPI_HANDLE             *OutHandle);
    365 
    366 
    367 /*
    368  * Handler interfaces
    369  */
    370 ACPI_STATUS
    371 AcpiInstallInitializationHandler (
    372     ACPI_INIT_HANDLER       Handler,
    373     UINT32                  Function);
    374 
    375 ACPI_STATUS
    376 AcpiInstallFixedEventHandler (
    377     UINT32                  AcpiEvent,
    378     ACPI_EVENT_HANDLER      Handler,
    379     void                    *Context);
    380 
    381 ACPI_STATUS
    382 AcpiRemoveFixedEventHandler (
    383     UINT32                  AcpiEvent,
    384     ACPI_EVENT_HANDLER      Handler);
    385 
    386 ACPI_STATUS
    387 AcpiInstallNotifyHandler (
    388     ACPI_HANDLE             Device,
    389     UINT32                  HandlerType,
    390     ACPI_NOTIFY_HANDLER     Handler,
    391     void                    *Context);
    392 
    393 ACPI_STATUS
    394 AcpiRemoveNotifyHandler (
    395     ACPI_HANDLE             Device,
    396     UINT32                  HandlerType,
    397     ACPI_NOTIFY_HANDLER     Handler);
    398 
    399 ACPI_STATUS
    400 AcpiInstallAddressSpaceHandler (
    401     ACPI_HANDLE             Device,
    402     ACPI_ADR_SPACE_TYPE     SpaceId,
    403     ACPI_ADR_SPACE_HANDLER  Handler,
    404     ACPI_ADR_SPACE_SETUP    Setup,
    405     void                    *Context);
    406 
    407 ACPI_STATUS
    408 AcpiRemoveAddressSpaceHandler (
    409     ACPI_HANDLE             Device,
    410     ACPI_ADR_SPACE_TYPE     SpaceId,
    411     ACPI_ADR_SPACE_HANDLER  Handler);
    412 
    413 ACPI_STATUS
    414 AcpiInstallGpeHandler (
    415     ACPI_HANDLE             GpeDevice,
    416     UINT32                  GpeNumber,
    417     UINT32                  Type,
    418     ACPI_EVENT_HANDLER      Address,
    419     void                    *Context);
    420 
    421 ACPI_STATUS
    422 AcpiRemoveGpeHandler (
    423     ACPI_HANDLE             GpeDevice,
    424     UINT32                  GpeNumber,
    425     ACPI_EVENT_HANDLER      Address);
    426 
    427 ACPI_STATUS
    428 AcpiInstallExceptionHandler (
    429     ACPI_EXCEPTION_HANDLER  Handler);
    430 
    431 
    432 /*
    433  * Event interfaces
    434  */
    435 ACPI_STATUS
    436 AcpiAcquireGlobalLock (
    437     UINT16                  Timeout,
    438     UINT32                  *Handle);
    439 
    440 ACPI_STATUS
    441 AcpiReleaseGlobalLock (
    442     UINT32                  Handle);
    443 
    444 ACPI_STATUS
    445 AcpiEnableEvent (
    446     UINT32                  Event,
    447     UINT32                  Flags);
    448 
    449 ACPI_STATUS
    450 AcpiDisableEvent (
    451     UINT32                  Event,
    452     UINT32                  Flags);
    453 
    454 ACPI_STATUS
    455 AcpiClearEvent (
    456     UINT32                  Event);
    457 
    458 ACPI_STATUS
    459 AcpiGetEventStatus (
    460     UINT32                  Event,
    461     ACPI_EVENT_STATUS       *EventStatus);
    462 
    463 
    464 /*
    465  * GPE Interfaces
    466  */
    467 ACPI_STATUS
    468 AcpiSetGpe (
    469     ACPI_HANDLE             GpeDevice,
    470     UINT32                  GpeNumber,
    471     UINT8                   Action);
    472 
    473 ACPI_STATUS
    474 AcpiEnableGpe (
    475     ACPI_HANDLE             GpeDevice,
    476     UINT32                  GpeNumber,
    477     UINT8                   GpeType);
    478 
    479 ACPI_STATUS
    480 AcpiDisableGpe (
    481     ACPI_HANDLE             GpeDevice,
    482     UINT32                  GpeNumber,
    483     UINT8                   GpeType);
    484 
    485 ACPI_STATUS
    486 AcpiClearGpe (
    487     ACPI_HANDLE             GpeDevice,
    488     UINT32                  GpeNumber);
    489 
    490 ACPI_STATUS
    491 AcpiGetGpeStatus (
    492     ACPI_HANDLE             GpeDevice,
    493     UINT32                  GpeNumber,
    494     ACPI_EVENT_STATUS       *EventStatus);
    495 
    496 ACPI_STATUS
    497 AcpiDisableAllGpes (
    498     void);
    499 
    500 ACPI_STATUS
    501 AcpiEnableAllRuntimeGpes (
    502     void);
    503 
    504 ACPI_STATUS
    505 AcpiGetGpeDevice (
    506     UINT32                  GpeIndex,
    507     ACPI_HANDLE             *GpeDevice);
    508 
    509 ACPI_STATUS
    510 AcpiInstallGpeBlock (
    511     ACPI_HANDLE             GpeDevice,
    512     ACPI_GENERIC_ADDRESS    *GpeBlockAddress,
    513     UINT32                  RegisterCount,
    514     UINT32                  InterruptNumber);
    515 
    516 ACPI_STATUS
    517 AcpiRemoveGpeBlock (
    518     ACPI_HANDLE             GpeDevice);
    519 
    520 
    521 /*
    522  * Resource interfaces
    523  */
    524 typedef
    525 ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
    526     ACPI_RESOURCE           *Resource,
    527     void                    *Context);
    528 
    529 ACPI_STATUS
    530 AcpiGetVendorResource (
    531     ACPI_HANDLE             Device,
    532     char                    *Name,
    533     ACPI_VENDOR_UUID        *Uuid,
    534     ACPI_BUFFER             *RetBuffer);
    535 
    536 ACPI_STATUS
    537 AcpiGetCurrentResources (
    538     ACPI_HANDLE             Device,
    539     ACPI_BUFFER             *RetBuffer);
    540 
    541 ACPI_STATUS
    542 AcpiGetPossibleResources (
    543     ACPI_HANDLE             Device,
    544     ACPI_BUFFER             *RetBuffer);
    545 
    546 ACPI_STATUS
    547 AcpiWalkResources (
    548     ACPI_HANDLE                 Device,
    549     const char                  *Name,
    550     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
    551     void                        *Context);
    552 
    553 ACPI_STATUS
    554 AcpiSetCurrentResources (
    555     ACPI_HANDLE             Device,
    556     ACPI_BUFFER             *InBuffer);
    557 
    558 ACPI_STATUS
    559 AcpiGetIrqRoutingTable (
    560     ACPI_HANDLE             Device,
    561     ACPI_BUFFER             *RetBuffer);
    562 
    563 ACPI_STATUS
    564 AcpiResourceToAddress64 (
    565     ACPI_RESOURCE           *Resource,
    566     ACPI_RESOURCE_ADDRESS64 *Out);
    567 
    568 
    569 /*
    570  * Hardware (ACPI device) interfaces
    571  */
    572 ACPI_STATUS
    573 AcpiReset (
    574     void);
    575 
    576 ACPI_STATUS
    577 AcpiRead (
    578     UINT64                  *Value,
    579     ACPI_GENERIC_ADDRESS    *Reg);
    580 
    581 ACPI_STATUS
    582 AcpiWrite (
    583     UINT64                  Value,
    584     ACPI_GENERIC_ADDRESS    *Reg);
    585 
    586 ACPI_STATUS
    587 AcpiReadBitRegister (
    588     UINT32                  RegisterId,
    589     UINT32                  *ReturnValue);
    590 
    591 ACPI_STATUS
    592 AcpiWriteBitRegister (
    593     UINT32                  RegisterId,
    594     UINT32                  Value);
    595 
    596 ACPI_STATUS
    597 AcpiGetSleepTypeData (
    598     UINT8                   SleepState,
    599     UINT8                   *Slp_TypA,
    600     UINT8                   *Slp_TypB);
    601 
    602 ACPI_STATUS
    603 AcpiEnterSleepStatePrep (
    604     UINT8                   SleepState);
    605 
    606 ACPI_STATUS
    607 AcpiEnterSleepState (
    608     UINT8                   SleepState);
    609 
    610 ACPI_STATUS
    611 AcpiEnterSleepStateS4bios (
    612     void);
    613 
    614 ACPI_STATUS
    615 AcpiLeaveSleepState (
    616     UINT8                   SleepState)
    617     ;
    618 ACPI_STATUS
    619 AcpiSetFirmwareWakingVector (
    620     UINT32                  PhysicalAddress);
    621 
    622 #if ACPI_MACHINE_WIDTH == 64
    623 ACPI_STATUS
    624 AcpiSetFirmwareWakingVector64 (
    625     UINT64                  PhysicalAddress);
    626 #endif
    627 
    628 
    629 /*
    630  * Error/Warning output
    631  */
    632 void ACPI_INTERNAL_VAR_XFACE
    633 AcpiError (
    634     const char              *ModuleName,
    635     UINT32                  LineNumber,
    636     const char              *Format,
    637     ...) ACPI_PRINTF_LIKE(3);
    638 
    639 void  ACPI_INTERNAL_VAR_XFACE
    640 AcpiException (
    641     const char              *ModuleName,
    642     UINT32                  LineNumber,
    643     ACPI_STATUS             Status,
    644     const char              *Format,
    645     ...) ACPI_PRINTF_LIKE(4);
    646 
    647 void ACPI_INTERNAL_VAR_XFACE
    648 AcpiWarning (
    649     const char              *ModuleName,
    650     UINT32                  LineNumber,
    651     const char              *Format,
    652     ...) ACPI_PRINTF_LIKE(3);
    653 
    654 void ACPI_INTERNAL_VAR_XFACE
    655 AcpiInfo (
    656     const char              *ModuleName,
    657     UINT32                  LineNumber,
    658     const char              *Format,
    659     ...) ACPI_PRINTF_LIKE(3);
    660 
    661 
    662 /*
    663  * Debug output
    664  */
    665 #ifdef ACPI_DEBUG_OUTPUT
    666 
    667 void ACPI_INTERNAL_VAR_XFACE
    668 AcpiDebugPrint (
    669     UINT32                  RequestedDebugLevel,
    670     UINT32                  LineNumber,
    671     const char              *FunctionName,
    672     const char              *ModuleName,
    673     UINT32                  ComponentId,
    674     const char              *Format,
    675     ...) ACPI_PRINTF_LIKE(6);
    676 
    677 void ACPI_INTERNAL_VAR_XFACE
    678 AcpiDebugPrintRaw (
    679     UINT32                  RequestedDebugLevel,
    680     UINT32                  LineNumber,
    681     const char              *FunctionName,
    682     const char              *ModuleName,
    683     UINT32                  ComponentId,
    684     const char              *Format,
    685     ...) ACPI_PRINTF_LIKE(6);
    686 #endif
    687 
    688 #endif /* __ACXFACE_H__ */
    689