Home | History | Annotate | Line # | Download | only in include
acpixf.h revision 1.7.2.2
      1      1.1    jruoho /******************************************************************************
      2      1.1    jruoho  *
      3      1.1    jruoho  * Name: acpixf.h - External interfaces to the ACPI subsystem
      4      1.1    jruoho  *
      5      1.1    jruoho  *****************************************************************************/
      6      1.1    jruoho 
      7      1.3    jruoho /*
      8  1.7.2.1     skrll  * Copyright (C) 2000 - 2015, Intel Corp.
      9      1.1    jruoho  * All rights reserved.
     10      1.1    jruoho  *
     11      1.3    jruoho  * Redistribution and use in source and binary forms, with or without
     12      1.3    jruoho  * modification, are permitted provided that the following conditions
     13      1.3    jruoho  * are met:
     14      1.3    jruoho  * 1. Redistributions of source code must retain the above copyright
     15      1.3    jruoho  *    notice, this list of conditions, and the following disclaimer,
     16      1.3    jruoho  *    without modification.
     17      1.3    jruoho  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
     18      1.3    jruoho  *    substantially similar to the "NO WARRANTY" disclaimer below
     19      1.3    jruoho  *    ("Disclaimer") and any redistribution must be conditioned upon
     20      1.3    jruoho  *    including a substantially similar Disclaimer requirement for further
     21      1.3    jruoho  *    binary redistribution.
     22      1.3    jruoho  * 3. Neither the names of the above-listed copyright holders nor the names
     23      1.3    jruoho  *    of any contributors may be used to endorse or promote products derived
     24      1.3    jruoho  *    from this software without specific prior written permission.
     25      1.3    jruoho  *
     26      1.3    jruoho  * Alternatively, this software may be distributed under the terms of the
     27      1.3    jruoho  * GNU General Public License ("GPL") version 2 as published by the Free
     28      1.3    jruoho  * Software Foundation.
     29      1.3    jruoho  *
     30      1.3    jruoho  * NO WARRANTY
     31      1.3    jruoho  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     32      1.3    jruoho  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     33      1.3    jruoho  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
     34      1.3    jruoho  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     35      1.3    jruoho  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     36      1.3    jruoho  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     37      1.3    jruoho  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     38      1.3    jruoho  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     39      1.3    jruoho  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     40      1.3    jruoho  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     41      1.3    jruoho  * POSSIBILITY OF SUCH DAMAGES.
     42      1.3    jruoho  */
     43      1.1    jruoho 
     44      1.1    jruoho #ifndef __ACXFACE_H__
     45      1.1    jruoho #define __ACXFACE_H__
     46      1.1    jruoho 
     47      1.1    jruoho /* Current ACPICA subsystem version in YYYYMMDD format */
     48      1.1    jruoho 
     49  1.7.2.2     skrll #define ACPI_CA_VERSION                 0x20150717
     50      1.1    jruoho 
     51      1.6  christos #include "acconfig.h"
     52      1.1    jruoho #include "actypes.h"
     53      1.1    jruoho #include "actbl.h"
     54      1.6  christos #include "acbuffer.h"
     55      1.1    jruoho 
     56      1.7  christos 
     57      1.7  christos /*****************************************************************************
     58      1.7  christos  *
     59      1.7  christos  * Macros used for ACPICA globals and configuration
     60      1.7  christos  *
     61      1.7  christos  ****************************************************************************/
     62      1.7  christos 
     63      1.7  christos /*
     64      1.7  christos  * Ensure that global variables are defined and initialized only once.
     65      1.7  christos  *
     66      1.7  christos  * The use of these macros allows for a single list of globals (here)
     67      1.7  christos  * in order to simplify maintenance of the code.
     68      1.7  christos  */
     69      1.7  christos #ifdef DEFINE_ACPI_GLOBALS
     70      1.7  christos #define ACPI_GLOBAL(type,name) \
     71      1.7  christos     extern type name; \
     72      1.7  christos     type name
     73      1.7  christos 
     74      1.7  christos #define ACPI_INIT_GLOBAL(type,name,value) \
     75      1.7  christos     type name=value
     76      1.7  christos 
     77      1.7  christos #else
     78      1.7  christos #ifndef ACPI_GLOBAL
     79      1.7  christos #define ACPI_GLOBAL(type,name) \
     80      1.7  christos     extern type name
     81      1.7  christos #endif
     82      1.7  christos 
     83      1.7  christos #ifndef ACPI_INIT_GLOBAL
     84      1.7  christos #define ACPI_INIT_GLOBAL(type,name,value) \
     85      1.7  christos     extern type name
     86      1.7  christos #endif
     87      1.7  christos #endif
     88      1.7  christos 
     89      1.7  christos /*
     90      1.7  christos  * These macros configure the various ACPICA interfaces. They are
     91      1.7  christos  * useful for generating stub inline functions for features that are
     92      1.7  christos  * configured out of the current kernel or ACPICA application.
     93      1.7  christos  */
     94      1.7  christos #ifndef ACPI_EXTERNAL_RETURN_STATUS
     95      1.7  christos #define ACPI_EXTERNAL_RETURN_STATUS(Prototype) \
     96      1.7  christos     Prototype;
     97      1.7  christos #endif
     98      1.7  christos 
     99      1.7  christos #ifndef ACPI_EXTERNAL_RETURN_OK
    100      1.7  christos #define ACPI_EXTERNAL_RETURN_OK(Prototype) \
    101      1.7  christos     Prototype;
    102      1.7  christos #endif
    103      1.7  christos 
    104      1.7  christos #ifndef ACPI_EXTERNAL_RETURN_VOID
    105      1.7  christos #define ACPI_EXTERNAL_RETURN_VOID(Prototype) \
    106      1.7  christos     Prototype;
    107      1.7  christos #endif
    108      1.7  christos 
    109      1.7  christos #ifndef ACPI_EXTERNAL_RETURN_UINT32
    110      1.7  christos #define ACPI_EXTERNAL_RETURN_UINT32(Prototype) \
    111      1.7  christos     Prototype;
    112      1.7  christos #endif
    113      1.7  christos 
    114      1.7  christos #ifndef ACPI_EXTERNAL_RETURN_PTR
    115      1.7  christos #define ACPI_EXTERNAL_RETURN_PTR(Prototype) \
    116      1.7  christos     Prototype;
    117      1.7  christos #endif
    118      1.7  christos 
    119      1.7  christos 
    120      1.7  christos /*****************************************************************************
    121      1.7  christos  *
    122      1.7  christos  * Public globals and runtime configuration options
    123      1.7  christos  *
    124      1.7  christos  ****************************************************************************/
    125      1.7  christos 
    126      1.7  christos /*
    127      1.7  christos  * Enable "slack mode" of the AML interpreter?  Default is FALSE, and the
    128      1.7  christos  * interpreter strictly follows the ACPI specification. Setting to TRUE
    129      1.7  christos  * allows the interpreter to ignore certain errors and/or bad AML constructs.
    130      1.7  christos  *
    131      1.7  christos  * Currently, these features are enabled by this flag:
    132      1.7  christos  *
    133      1.7  christos  * 1) Allow "implicit return" of last value in a control method
    134      1.7  christos  * 2) Allow access beyond the end of an operation region
    135      1.7  christos  * 3) Allow access to uninitialized locals/args (auto-init to integer 0)
    136      1.7  christos  * 4) Allow ANY object type to be a source operand for the Store() operator
    137      1.7  christos  * 5) Allow unresolved references (invalid target name) in package objects
    138      1.7  christos  * 6) Enable warning messages for behavior that is not ACPI spec compliant
    139      1.7  christos  */
    140      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableInterpreterSlack, FALSE);
    141      1.7  christos 
    142      1.7  christos /*
    143      1.7  christos  * Automatically serialize all methods that create named objects? Default
    144      1.7  christos  * is TRUE, meaning that all NonSerialized methods are scanned once at
    145      1.7  christos  * table load time to determine those that create named objects. Methods
    146      1.7  christos  * that create named objects are marked Serialized in order to prevent
    147      1.7  christos  * possible run-time problems if they are entered by more than one thread.
    148      1.7  christos  */
    149      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_AutoSerializeMethods, TRUE);
    150      1.7  christos 
    151      1.7  christos /*
    152      1.7  christos  * Create the predefined _OSI method in the namespace? Default is TRUE
    153      1.7  christos  * because ACPICA is fully compatible with other ACPI implementations.
    154      1.7  christos  * Changing this will revert ACPICA (and machine ASL) to pre-OSI behavior.
    155      1.7  christos  */
    156      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CreateOsiMethod, TRUE);
    157      1.7  christos 
    158      1.7  christos /*
    159      1.7  christos  * Optionally use default values for the ACPI register widths. Set this to
    160      1.7  christos  * TRUE to use the defaults, if an FADT contains incorrect widths/lengths.
    161      1.7  christos  */
    162      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_UseDefaultRegisterWidths, TRUE);
    163      1.7  christos 
    164      1.7  christos /*
    165      1.7  christos  * Whether or not to verify the table checksum before installation. Set
    166      1.7  christos  * this to TRUE to verify the table checksum before install it to the table
    167      1.7  christos  * manager. Note that enabling this option causes errors to happen in some
    168      1.7  christos  * OSPMs during early initialization stages. Default behavior is to do such
    169      1.7  christos  * verification.
    170      1.7  christos  */
    171      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_VerifyTableChecksum, TRUE);
    172      1.7  christos 
    173      1.7  christos /*
    174      1.7  christos  * Optionally enable output from the AML Debug Object.
    175      1.7  christos  */
    176      1.7  christos ACPI_INIT_GLOBAL (_Bool,            AcpiGbl_EnableAmlDebugObject, FALSE);
    177      1.7  christos 
    178      1.7  christos /*
    179      1.7  christos  * Optionally copy the entire DSDT to local memory (instead of simply
    180      1.7  christos  * mapping it.) There are some BIOSs that corrupt or replace the original
    181      1.7  christos  * DSDT, creating the need for this option. Default is FALSE, do not copy
    182      1.7  christos  * the DSDT.
    183      1.7  christos  */
    184      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CopyDsdtLocally, FALSE);
    185      1.7  christos 
    186      1.7  christos /*
    187      1.7  christos  * Optionally ignore an XSDT if present and use the RSDT instead.
    188      1.7  christos  * Although the ACPI specification requires that an XSDT be used instead
    189      1.7  christos  * of the RSDT, the XSDT has been found to be corrupt or ill-formed on
    190      1.7  christos  * some machines. Default behavior is to use the XSDT if present.
    191      1.7  christos  */
    192      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DoNotUseXsdt, FALSE);
    193      1.7  christos 
    194      1.7  christos /*
    195      1.7  christos  * Optionally use 32-bit FADT addresses if and when there is a conflict
    196      1.7  christos  * (address mismatch) between the 32-bit and 64-bit versions of the
    197      1.7  christos  * address. Although ACPICA adheres to the ACPI specification which
    198      1.7  christos  * requires the use of the corresponding 64-bit address if it is non-zero,
    199      1.7  christos  * some machines have been found to have a corrupted non-zero 64-bit
    200      1.7  christos  * address. Default is FALSE, do not favor the 32-bit addresses.
    201      1.7  christos  */
    202      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFadtAddresses, FALSE);
    203      1.7  christos 
    204      1.7  christos /*
    205  1.7.2.2     skrll  * Optionally use 32-bit FACS table addresses.
    206  1.7.2.2     skrll  * It is reported that some platforms fail to resume from system suspending
    207  1.7.2.2     skrll  * if 64-bit FACS table address is selected:
    208  1.7.2.2     skrll  * https://bugzilla.kernel.org/show_bug.cgi?id=74021
    209  1.7.2.2     skrll  * Default is TRUE, favor the 32-bit addresses.
    210  1.7.2.2     skrll  */
    211  1.7.2.2     skrll ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFacsAddresses, TRUE);
    212  1.7.2.2     skrll 
    213  1.7.2.2     skrll /*
    214      1.7  christos  * Optionally truncate I/O addresses to 16 bits. Provides compatibility
    215      1.7  christos  * with other ACPI implementations. NOTE: During ACPICA initialization,
    216      1.7  christos  * this value is set to TRUE if any Windows OSI strings have been
    217      1.7  christos  * requested by the BIOS.
    218      1.7  christos  */
    219      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_TruncateIoAddresses, FALSE);
    220      1.7  christos 
    221      1.7  christos /*
    222      1.7  christos  * Disable runtime checking and repair of values returned by control methods.
    223      1.7  christos  * Use only if the repair is causing a problem on a particular machine.
    224      1.7  christos  */
    225      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableAutoRepair, FALSE);
    226      1.7  christos 
    227      1.7  christos /*
    228      1.7  christos  * Optionally do not install any SSDTs from the RSDT/XSDT during initialization.
    229      1.7  christos  * This can be useful for debugging ACPI problems on some machines.
    230      1.7  christos  */
    231      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableSsdtTableInstall, FALSE);
    232      1.7  christos 
    233      1.7  christos /*
    234  1.7.2.2     skrll  * Optionally enable runtime namespace override.
    235  1.7.2.2     skrll  */
    236  1.7.2.2     skrll ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_RuntimeNamespaceOverride, TRUE);
    237  1.7.2.2     skrll 
    238  1.7.2.2     skrll /*
    239      1.7  christos  * We keep track of the latest version of Windows that has been requested by
    240      1.7  christos  * the BIOS. ACPI 5.0.
    241      1.7  christos  */
    242      1.7  christos ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_OsiData, 0);
    243      1.7  christos 
    244      1.7  christos /*
    245      1.7  christos  * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning
    246      1.7  christos  * that the ACPI hardware is no longer required. A flag in the FADT indicates
    247      1.7  christos  * a reduced HW machine, and that flag is duplicated here for convenience.
    248      1.7  christos  */
    249      1.7  christos ACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_ReducedHardware, FALSE);
    250      1.7  christos 
    251      1.7  christos /*
    252      1.7  christos  * This mechanism is used to trace a specified AML method. The method is
    253      1.7  christos  * traced each time it is executed.
    254      1.7  christos  */
    255      1.7  christos ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceFlags, 0);
    256  1.7.2.2     skrll ACPI_INIT_GLOBAL (const char *,     AcpiGbl_TraceMethodName, NULL);
    257  1.7.2.2     skrll ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceDbgLevel, ACPI_TRACE_LEVEL_DEFAULT);
    258  1.7.2.2     skrll ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceDbgLayer, ACPI_TRACE_LAYER_DEFAULT);
    259      1.7  christos 
    260      1.1    jruoho /*
    261      1.7  christos  * Runtime configuration of debug output control masks. We want the debug
    262      1.7  christos  * switches statically initialized so they are already set when the debugger
    263      1.7  christos  * is entered.
    264      1.1    jruoho  */
    265      1.7  christos #ifdef ACPI_DEBUG_OUTPUT
    266      1.7  christos ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_DEBUG_DEFAULT);
    267      1.7  christos #else
    268      1.7  christos ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_NORMAL_DEFAULT);
    269      1.7  christos #endif
    270      1.7  christos ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLayer, ACPI_COMPONENT_DEFAULT);
    271      1.7  christos 
    272      1.7  christos /*
    273      1.7  christos  * Other miscellaneous globals
    274      1.7  christos  */
    275      1.7  christos ACPI_GLOBAL (ACPI_TABLE_FADT,       AcpiGbl_FADT);
    276      1.7  christos ACPI_GLOBAL (UINT32,                AcpiCurrentGpeCount);
    277      1.7  christos ACPI_GLOBAL (BOOLEAN,               AcpiGbl_SystemAwakeAndRunning);
    278      1.6  christos 
    279      1.6  christos 
    280      1.7  christos /*****************************************************************************
    281      1.7  christos  *
    282      1.7  christos  * ACPICA public interface configuration.
    283      1.7  christos  *
    284      1.7  christos  * Interfaces that are configured out of the ACPICA build are replaced
    285      1.7  christos  * by inlined stubs by default.
    286      1.7  christos  *
    287      1.7  christos  ****************************************************************************/
    288      1.7  christos 
    289      1.6  christos /*
    290      1.7  christos  * Hardware-reduced prototypes (default: Not hardware reduced).
    291      1.7  christos  *
    292      1.7  christos  * All ACPICA hardware-related interfaces that use these macros will be
    293      1.7  christos  * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag
    294      1.6  christos  * is set to TRUE.
    295      1.7  christos  *
    296      1.7  christos  * Note: This static build option for reduced hardware is intended to
    297      1.7  christos  * reduce ACPICA code size if desired or necessary. However, even if this
    298      1.7  christos  * option is not specified, the runtime behavior of ACPICA is dependent
    299      1.7  christos  * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set,
    300      1.7  christos  * the flag will enable similar behavior -- ACPICA will not attempt
    301      1.7  christos  * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.)
    302      1.6  christos  */
    303      1.6  christos #if (!ACPI_REDUCED_HARDWARE)
    304      1.6  christos #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
    305      1.7  christos     ACPI_EXTERNAL_RETURN_STATUS(Prototype)
    306      1.6  christos 
    307      1.6  christos #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
    308      1.7  christos     ACPI_EXTERNAL_RETURN_OK(Prototype)
    309      1.6  christos 
    310      1.6  christos #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
    311      1.7  christos     ACPI_EXTERNAL_RETURN_VOID(Prototype)
    312      1.6  christos 
    313      1.6  christos #else
    314      1.6  christos #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
    315      1.6  christos     static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);}
    316      1.6  christos 
    317      1.6  christos #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
    318      1.6  christos     static ACPI_INLINE Prototype {return(AE_OK);}
    319      1.6  christos 
    320      1.6  christos #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
    321      1.6  christos     static ACPI_INLINE Prototype {return;}
    322      1.6  christos 
    323      1.6  christos #endif /* !ACPI_REDUCED_HARDWARE */
    324      1.1    jruoho 
    325      1.1    jruoho 
    326      1.1    jruoho /*
    327      1.7  christos  * Error message prototypes (default: error messages enabled).
    328      1.7  christos  *
    329      1.7  christos  * All interfaces related to error and warning messages
    330      1.7  christos  * will be configured out of the ACPICA build if the
    331      1.7  christos  * ACPI_NO_ERROR_MESSAGE flag is defined.
    332      1.7  christos  */
    333      1.7  christos #ifndef ACPI_NO_ERROR_MESSAGES
    334      1.7  christos #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
    335      1.7  christos     Prototype;
    336      1.7  christos 
    337      1.7  christos #else
    338      1.7  christos #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
    339      1.7  christos     static ACPI_INLINE Prototype {return;}
    340      1.7  christos 
    341      1.7  christos #endif /* ACPI_NO_ERROR_MESSAGES */
    342      1.7  christos 
    343      1.7  christos 
    344      1.7  christos /*
    345      1.7  christos  * Debugging output prototypes (default: no debug output).
    346      1.7  christos  *
    347      1.7  christos  * All interfaces related to debug output messages
    348      1.7  christos  * will be configured out of the ACPICA build unless the
    349      1.7  christos  * ACPI_DEBUG_OUTPUT flag is defined.
    350      1.7  christos  */
    351      1.7  christos #ifdef ACPI_DEBUG_OUTPUT
    352      1.7  christos #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
    353      1.7  christos     Prototype;
    354      1.7  christos 
    355      1.7  christos #else
    356      1.7  christos #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
    357      1.7  christos     static ACPI_INLINE Prototype {return;}
    358      1.7  christos 
    359      1.7  christos #endif /* ACPI_DEBUG_OUTPUT */
    360      1.7  christos 
    361      1.7  christos 
    362      1.7  christos /*
    363      1.7  christos  * Application prototypes
    364      1.7  christos  *
    365      1.7  christos  * All interfaces used by application will be configured
    366      1.7  christos  * out of the ACPICA build unless the ACPI_APPLICATION
    367      1.7  christos  * flag is defined.
    368      1.7  christos  */
    369      1.7  christos #ifdef ACPI_APPLICATION
    370      1.7  christos #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
    371      1.7  christos     Prototype;
    372      1.7  christos 
    373      1.7  christos #else
    374      1.7  christos #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
    375      1.7  christos     static ACPI_INLINE Prototype {return;}
    376      1.7  christos 
    377      1.7  christos #endif /* ACPI_APPLICATION */
    378      1.7  christos 
    379      1.7  christos 
    380      1.7  christos /*****************************************************************************
    381      1.7  christos  *
    382      1.7  christos  * ACPICA public interface prototypes
    383      1.7  christos  *
    384      1.7  christos  ****************************************************************************/
    385      1.7  christos 
    386      1.7  christos /*
    387      1.3    jruoho  * Initialization
    388      1.1    jruoho  */
    389      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    390      1.1    jruoho ACPI_STATUS
    391      1.1    jruoho AcpiInitializeTables (
    392      1.1    jruoho     ACPI_TABLE_DESC         *InitialStorage,
    393      1.1    jruoho     UINT32                  InitialTableCount,
    394      1.7  christos     BOOLEAN                 AllowResize))
    395      1.1    jruoho 
    396      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    397      1.1    jruoho ACPI_STATUS
    398      1.1    jruoho AcpiInitializeSubsystem (
    399      1.7  christos     void))
    400      1.1    jruoho 
    401      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    402      1.1    jruoho ACPI_STATUS
    403      1.1    jruoho AcpiEnableSubsystem (
    404      1.7  christos     UINT32                  Flags))
    405      1.1    jruoho 
    406      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    407      1.1    jruoho ACPI_STATUS
    408      1.1    jruoho AcpiInitializeObjects (
    409      1.7  christos     UINT32                  Flags))
    410      1.1    jruoho 
    411      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    412      1.1    jruoho ACPI_STATUS
    413      1.1    jruoho AcpiTerminate (
    414      1.7  christos     void))
    415      1.1    jruoho 
    416      1.3    jruoho 
    417      1.3    jruoho /*
    418      1.3    jruoho  * Miscellaneous global interfaces
    419      1.3    jruoho  */
    420      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    421      1.1    jruoho ACPI_STATUS
    422      1.3    jruoho AcpiEnable (
    423      1.6  christos     void))
    424      1.1    jruoho 
    425      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    426      1.1    jruoho ACPI_STATUS
    427      1.3    jruoho AcpiDisable (
    428      1.6  christos     void))
    429      1.1    jruoho 
    430      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    431      1.1    jruoho ACPI_STATUS
    432      1.3    jruoho AcpiSubsystemStatus (
    433      1.7  christos     void))
    434      1.1    jruoho 
    435      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    436      1.1    jruoho ACPI_STATUS
    437      1.1    jruoho AcpiGetSystemInfo (
    438      1.7  christos     ACPI_BUFFER             *RetBuffer))
    439      1.1    jruoho 
    440      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    441      1.1    jruoho ACPI_STATUS
    442      1.1    jruoho AcpiGetStatistics (
    443      1.7  christos     ACPI_STATISTICS         *Stats))
    444      1.1    jruoho 
    445      1.7  christos ACPI_EXTERNAL_RETURN_PTR (
    446      1.1    jruoho const char *
    447      1.1    jruoho AcpiFormatException (
    448      1.7  christos     ACPI_STATUS             Exception))
    449      1.1    jruoho 
    450      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    451      1.1    jruoho ACPI_STATUS
    452      1.1    jruoho AcpiPurgeCachedObjects (
    453      1.7  christos     void))
    454      1.1    jruoho 
    455      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    456      1.3    jruoho ACPI_STATUS
    457      1.3    jruoho AcpiInstallInterface (
    458      1.7  christos     ACPI_STRING             InterfaceName))
    459      1.3    jruoho 
    460      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    461      1.3    jruoho ACPI_STATUS
    462      1.3    jruoho AcpiRemoveInterface (
    463      1.7  christos     ACPI_STRING             InterfaceName))
    464      1.3    jruoho 
    465      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    466      1.6  christos ACPI_STATUS
    467      1.6  christos AcpiUpdateInterfaces (
    468      1.7  christos     UINT8                   Action))
    469      1.6  christos 
    470      1.7  christos ACPI_EXTERNAL_RETURN_UINT32 (
    471      1.6  christos UINT32
    472      1.6  christos AcpiCheckAddressRange (
    473      1.6  christos     ACPI_ADR_SPACE_TYPE     SpaceId,
    474      1.6  christos     ACPI_PHYSICAL_ADDRESS   Address,
    475      1.6  christos     ACPI_SIZE               Length,
    476      1.7  christos     BOOLEAN                 Warn))
    477      1.6  christos 
    478      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    479      1.6  christos ACPI_STATUS
    480      1.6  christos AcpiDecodePldBuffer (
    481      1.6  christos     UINT8                   *InBuffer,
    482      1.6  christos     ACPI_SIZE               Length,
    483      1.7  christos     ACPI_PLD_INFO           **ReturnBuffer))
    484      1.6  christos 
    485      1.1    jruoho 
    486      1.1    jruoho /*
    487      1.6  christos  * ACPI table load/unload interfaces
    488      1.1    jruoho  */
    489      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    490      1.7  christos ACPI_STATUS
    491      1.7  christos AcpiInstallTable (
    492      1.7  christos     ACPI_PHYSICAL_ADDRESS   Address,
    493      1.7  christos     BOOLEAN                 Physical))
    494      1.7  christos 
    495      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    496      1.6  christos ACPI_STATUS
    497      1.6  christos AcpiLoadTable (
    498      1.7  christos     ACPI_TABLE_HEADER       *Table))
    499      1.6  christos 
    500      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    501      1.6  christos ACPI_STATUS
    502      1.6  christos AcpiUnloadParentTable (
    503      1.7  christos     ACPI_HANDLE             Object))
    504      1.6  christos 
    505      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    506      1.6  christos ACPI_STATUS
    507      1.6  christos AcpiLoadTables (
    508      1.7  christos     void))
    509      1.1    jruoho 
    510      1.1    jruoho 
    511      1.1    jruoho /*
    512      1.1    jruoho  * ACPI table manipulation interfaces
    513      1.1    jruoho  */
    514      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    515      1.1    jruoho ACPI_STATUS
    516      1.1    jruoho AcpiReallocateRootTable (
    517      1.7  christos     void))
    518      1.1    jruoho 
    519      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    520      1.1    jruoho ACPI_STATUS
    521      1.1    jruoho AcpiFindRootPointer (
    522  1.7.2.1     skrll     ACPI_PHYSICAL_ADDRESS   *RsdpAddress))
    523      1.1    jruoho 
    524      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    525      1.1    jruoho ACPI_STATUS
    526      1.1    jruoho AcpiGetTableHeader (
    527      1.2    jruoho     ACPI_CONST_STRING       Signature,
    528      1.1    jruoho     UINT32                  Instance,
    529      1.7  christos     ACPI_TABLE_HEADER       *OutTableHeader))
    530      1.1    jruoho 
    531      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    532      1.1    jruoho ACPI_STATUS
    533      1.1    jruoho AcpiGetTable (
    534      1.2    jruoho     ACPI_CONST_STRING       Signature,
    535      1.1    jruoho     UINT32                  Instance,
    536      1.7  christos     ACPI_TABLE_HEADER       **OutTable))
    537      1.1    jruoho 
    538      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    539      1.1    jruoho ACPI_STATUS
    540      1.1    jruoho AcpiGetTableByIndex (
    541      1.1    jruoho     UINT32                  TableIndex,
    542      1.7  christos     ACPI_TABLE_HEADER       **OutTable))
    543      1.1    jruoho 
    544      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    545      1.1    jruoho ACPI_STATUS
    546      1.1    jruoho AcpiInstallTableHandler (
    547      1.1    jruoho     ACPI_TABLE_HANDLER      Handler,
    548      1.7  christos     void                    *Context))
    549      1.1    jruoho 
    550      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    551      1.1    jruoho ACPI_STATUS
    552      1.1    jruoho AcpiRemoveTableHandler (
    553      1.7  christos     ACPI_TABLE_HANDLER      Handler))
    554      1.1    jruoho 
    555      1.1    jruoho 
    556      1.1    jruoho /*
    557      1.1    jruoho  * Namespace and name interfaces
    558      1.1    jruoho  */
    559      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    560      1.1    jruoho ACPI_STATUS
    561      1.1    jruoho AcpiWalkNamespace (
    562      1.1    jruoho     ACPI_OBJECT_TYPE        Type,
    563      1.1    jruoho     ACPI_HANDLE             StartObject,
    564      1.1    jruoho     UINT32                  MaxDepth,
    565      1.6  christos     ACPI_WALK_CALLBACK      DescendingCallback,
    566      1.6  christos     ACPI_WALK_CALLBACK      AscendingCallback,
    567      1.1    jruoho     void                    *Context,
    568      1.7  christos     void                    **ReturnValue))
    569      1.1    jruoho 
    570      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    571      1.1    jruoho ACPI_STATUS
    572      1.1    jruoho AcpiGetDevices (
    573      1.1    jruoho     char                    *HID,
    574      1.1    jruoho     ACPI_WALK_CALLBACK      UserFunction,
    575      1.1    jruoho     void                    *Context,
    576      1.7  christos     void                    **ReturnValue))
    577      1.1    jruoho 
    578      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    579      1.1    jruoho ACPI_STATUS
    580      1.1    jruoho AcpiGetName (
    581      1.1    jruoho     ACPI_HANDLE             Object,
    582      1.1    jruoho     UINT32                  NameType,
    583      1.7  christos     ACPI_BUFFER             *RetPathPtr))
    584      1.1    jruoho 
    585      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    586      1.1    jruoho ACPI_STATUS
    587      1.1    jruoho AcpiGetHandle (
    588      1.1    jruoho     ACPI_HANDLE             Parent,
    589      1.2    jruoho     ACPI_CONST_STRING       Pathname,
    590      1.7  christos     ACPI_HANDLE             *RetHandle))
    591      1.1    jruoho 
    592      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    593      1.1    jruoho ACPI_STATUS
    594      1.1    jruoho AcpiAttachData (
    595      1.1    jruoho     ACPI_HANDLE             Object,
    596      1.1    jruoho     ACPI_OBJECT_HANDLER     Handler,
    597      1.7  christos     void                    *Data))
    598      1.1    jruoho 
    599      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    600      1.1    jruoho ACPI_STATUS
    601      1.1    jruoho AcpiDetachData (
    602      1.1    jruoho     ACPI_HANDLE             Object,
    603      1.7  christos     ACPI_OBJECT_HANDLER     Handler))
    604      1.1    jruoho 
    605      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    606      1.1    jruoho ACPI_STATUS
    607      1.1    jruoho AcpiGetData (
    608      1.1    jruoho     ACPI_HANDLE             Object,
    609      1.1    jruoho     ACPI_OBJECT_HANDLER     Handler,
    610      1.7  christos     void                    **Data))
    611      1.1    jruoho 
    612      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    613      1.1    jruoho ACPI_STATUS
    614      1.1    jruoho AcpiDebugTrace (
    615  1.7.2.2     skrll     const char              *Name,
    616      1.1    jruoho     UINT32                  DebugLevel,
    617      1.1    jruoho     UINT32                  DebugLayer,
    618      1.7  christos     UINT32                  Flags))
    619      1.1    jruoho 
    620      1.1    jruoho 
    621      1.1    jruoho /*
    622      1.1    jruoho  * Object manipulation and enumeration
    623      1.1    jruoho  */
    624      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    625      1.1    jruoho ACPI_STATUS
    626      1.1    jruoho AcpiEvaluateObject (
    627      1.1    jruoho     ACPI_HANDLE             Object,
    628      1.2    jruoho     ACPI_CONST_STRING       Pathname,
    629      1.1    jruoho     ACPI_OBJECT_LIST        *ParameterObjects,
    630      1.7  christos     ACPI_BUFFER             *ReturnObjectBuffer))
    631      1.1    jruoho 
    632      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    633      1.1    jruoho ACPI_STATUS
    634      1.1    jruoho AcpiEvaluateObjectTyped (
    635      1.1    jruoho     ACPI_HANDLE             Object,
    636      1.2    jruoho     ACPI_CONST_STRING       Pathname,
    637      1.1    jruoho     ACPI_OBJECT_LIST        *ExternalParams,
    638      1.1    jruoho     ACPI_BUFFER             *ReturnBuffer,
    639      1.7  christos     ACPI_OBJECT_TYPE        ReturnType))
    640      1.1    jruoho 
    641      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    642      1.1    jruoho ACPI_STATUS
    643      1.1    jruoho AcpiGetObjectInfo (
    644      1.1    jruoho     ACPI_HANDLE             Object,
    645      1.7  christos     ACPI_DEVICE_INFO        **ReturnBuffer))
    646      1.1    jruoho 
    647      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    648      1.1    jruoho ACPI_STATUS
    649      1.1    jruoho AcpiInstallMethod (
    650      1.7  christos     UINT8                   *Buffer))
    651      1.1    jruoho 
    652      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    653      1.1    jruoho ACPI_STATUS
    654      1.1    jruoho AcpiGetNextObject (
    655      1.1    jruoho     ACPI_OBJECT_TYPE        Type,
    656      1.1    jruoho     ACPI_HANDLE             Parent,
    657      1.1    jruoho     ACPI_HANDLE             Child,
    658      1.7  christos     ACPI_HANDLE             *OutHandle))
    659      1.1    jruoho 
    660      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    661      1.1    jruoho ACPI_STATUS
    662      1.1    jruoho AcpiGetType (
    663      1.1    jruoho     ACPI_HANDLE             Object,
    664      1.7  christos     ACPI_OBJECT_TYPE        *OutType))
    665      1.1    jruoho 
    666      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    667      1.1    jruoho ACPI_STATUS
    668      1.1    jruoho AcpiGetParent (
    669      1.1    jruoho     ACPI_HANDLE             Object,
    670      1.7  christos     ACPI_HANDLE             *OutHandle))
    671      1.1    jruoho 
    672      1.1    jruoho 
    673      1.1    jruoho /*
    674      1.1    jruoho  * Handler interfaces
    675      1.1    jruoho  */
    676      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    677      1.1    jruoho ACPI_STATUS
    678      1.1    jruoho AcpiInstallInitializationHandler (
    679      1.1    jruoho     ACPI_INIT_HANDLER       Handler,
    680      1.7  christos     UINT32                  Function))
    681      1.1    jruoho 
    682      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    683      1.6  christos ACPI_STATUS
    684      1.6  christos AcpiInstallSciHandler (
    685      1.6  christos     ACPI_SCI_HANDLER        Address,
    686      1.6  christos     void                    *Context))
    687      1.6  christos 
    688      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    689      1.6  christos ACPI_STATUS
    690      1.6  christos AcpiRemoveSciHandler (
    691      1.6  christos     ACPI_SCI_HANDLER        Address))
    692      1.6  christos 
    693      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    694      1.1    jruoho ACPI_STATUS
    695      1.3    jruoho AcpiInstallGlobalEventHandler (
    696      1.3    jruoho     ACPI_GBL_EVENT_HANDLER  Handler,
    697      1.6  christos     void                    *Context))
    698      1.3    jruoho 
    699      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    700      1.3    jruoho ACPI_STATUS
    701      1.1    jruoho AcpiInstallFixedEventHandler (
    702      1.1    jruoho     UINT32                  AcpiEvent,
    703      1.1    jruoho     ACPI_EVENT_HANDLER      Handler,
    704      1.6  christos     void                    *Context))
    705      1.1    jruoho 
    706      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    707      1.1    jruoho ACPI_STATUS
    708      1.1    jruoho AcpiRemoveFixedEventHandler (
    709      1.1    jruoho     UINT32                  AcpiEvent,
    710      1.6  christos     ACPI_EVENT_HANDLER      Handler))
    711      1.1    jruoho 
    712      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    713      1.1    jruoho ACPI_STATUS
    714      1.3    jruoho AcpiInstallGpeHandler (
    715      1.3    jruoho     ACPI_HANDLE             GpeDevice,
    716      1.3    jruoho     UINT32                  GpeNumber,
    717      1.3    jruoho     UINT32                  Type,
    718      1.3    jruoho     ACPI_GPE_HANDLER        Address,
    719      1.6  christos     void                    *Context))
    720      1.3    jruoho 
    721      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    722      1.3    jruoho ACPI_STATUS
    723  1.7.2.1     skrll AcpiInstallGpeRawHandler (
    724  1.7.2.1     skrll     ACPI_HANDLE             GpeDevice,
    725  1.7.2.1     skrll     UINT32                  GpeNumber,
    726  1.7.2.1     skrll     UINT32                  Type,
    727  1.7.2.1     skrll     ACPI_GPE_HANDLER        Address,
    728  1.7.2.1     skrll     void                    *Context))
    729  1.7.2.1     skrll 
    730  1.7.2.1     skrll ACPI_HW_DEPENDENT_RETURN_STATUS (
    731  1.7.2.1     skrll ACPI_STATUS
    732      1.3    jruoho AcpiRemoveGpeHandler (
    733      1.3    jruoho     ACPI_HANDLE             GpeDevice,
    734      1.3    jruoho     UINT32                  GpeNumber,
    735      1.6  christos     ACPI_GPE_HANDLER        Address))
    736      1.3    jruoho 
    737      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    738      1.3    jruoho ACPI_STATUS
    739      1.1    jruoho AcpiInstallNotifyHandler (
    740      1.1    jruoho     ACPI_HANDLE             Device,
    741      1.1    jruoho     UINT32                  HandlerType,
    742      1.1    jruoho     ACPI_NOTIFY_HANDLER     Handler,
    743      1.7  christos     void                    *Context))
    744      1.1    jruoho 
    745      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    746      1.1    jruoho ACPI_STATUS
    747      1.1    jruoho AcpiRemoveNotifyHandler (
    748      1.1    jruoho     ACPI_HANDLE             Device,
    749      1.1    jruoho     UINT32                  HandlerType,
    750      1.7  christos     ACPI_NOTIFY_HANDLER     Handler))
    751      1.1    jruoho 
    752      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    753      1.1    jruoho ACPI_STATUS
    754      1.1    jruoho AcpiInstallAddressSpaceHandler (
    755      1.1    jruoho     ACPI_HANDLE             Device,
    756      1.1    jruoho     ACPI_ADR_SPACE_TYPE     SpaceId,
    757      1.1    jruoho     ACPI_ADR_SPACE_HANDLER  Handler,
    758      1.1    jruoho     ACPI_ADR_SPACE_SETUP    Setup,
    759      1.7  christos     void                    *Context))
    760      1.1    jruoho 
    761      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    762      1.1    jruoho ACPI_STATUS
    763      1.1    jruoho AcpiRemoveAddressSpaceHandler (
    764      1.1    jruoho     ACPI_HANDLE             Device,
    765      1.1    jruoho     ACPI_ADR_SPACE_TYPE     SpaceId,
    766      1.7  christos     ACPI_ADR_SPACE_HANDLER  Handler))
    767      1.1    jruoho 
    768      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    769      1.1    jruoho ACPI_STATUS
    770      1.3    jruoho AcpiInstallExceptionHandler (
    771      1.7  christos     ACPI_EXCEPTION_HANDLER  Handler))
    772      1.1    jruoho 
    773      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    774      1.1    jruoho ACPI_STATUS
    775      1.3    jruoho AcpiInstallInterfaceHandler (
    776      1.7  christos     ACPI_INTERFACE_HANDLER  Handler))
    777      1.1    jruoho 
    778      1.1    jruoho 
    779      1.1    jruoho /*
    780      1.3    jruoho  * Global Lock interfaces
    781      1.1    jruoho  */
    782      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    783      1.1    jruoho ACPI_STATUS
    784      1.1    jruoho AcpiAcquireGlobalLock (
    785      1.1    jruoho     UINT16                  Timeout,
    786      1.6  christos     UINT32                  *Handle))
    787      1.1    jruoho 
    788      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    789      1.1    jruoho ACPI_STATUS
    790      1.1    jruoho AcpiReleaseGlobalLock (
    791      1.6  christos     UINT32                  Handle))
    792      1.6  christos 
    793      1.6  christos 
    794      1.6  christos /*
    795      1.6  christos  * Interfaces to AML mutex objects
    796      1.6  christos  */
    797      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    798      1.6  christos ACPI_STATUS
    799      1.6  christos AcpiAcquireMutex (
    800      1.6  christos     ACPI_HANDLE             Handle,
    801      1.6  christos     ACPI_STRING             Pathname,
    802      1.7  christos     UINT16                  Timeout))
    803      1.6  christos 
    804      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    805      1.6  christos ACPI_STATUS
    806      1.6  christos AcpiReleaseMutex (
    807      1.6  christos     ACPI_HANDLE             Handle,
    808      1.7  christos     ACPI_STRING             Pathname))
    809      1.1    jruoho 
    810      1.3    jruoho 
    811      1.3    jruoho /*
    812      1.3    jruoho  * Fixed Event interfaces
    813      1.3    jruoho  */
    814      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    815      1.1    jruoho ACPI_STATUS
    816      1.1    jruoho AcpiEnableEvent (
    817      1.1    jruoho     UINT32                  Event,
    818      1.6  christos     UINT32                  Flags))
    819      1.1    jruoho 
    820      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    821      1.1    jruoho ACPI_STATUS
    822      1.1    jruoho AcpiDisableEvent (
    823      1.1    jruoho     UINT32                  Event,
    824      1.6  christos     UINT32                  Flags))
    825      1.1    jruoho 
    826      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    827      1.1    jruoho ACPI_STATUS
    828      1.1    jruoho AcpiClearEvent (
    829      1.6  christos     UINT32                  Event))
    830      1.1    jruoho 
    831      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    832      1.1    jruoho ACPI_STATUS
    833      1.1    jruoho AcpiGetEventStatus (
    834      1.1    jruoho     UINT32                  Event,
    835      1.6  christos     ACPI_EVENT_STATUS       *EventStatus))
    836      1.1    jruoho 
    837      1.1    jruoho 
    838      1.1    jruoho /*
    839      1.3    jruoho  * General Purpose Event (GPE) Interfaces
    840      1.1    jruoho  */
    841      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    842      1.1    jruoho ACPI_STATUS
    843      1.3    jruoho AcpiUpdateAllGpes (
    844      1.6  christos     void))
    845      1.3    jruoho 
    846      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    847      1.3    jruoho ACPI_STATUS
    848      1.3    jruoho AcpiEnableGpe (
    849      1.3    jruoho     ACPI_HANDLE             GpeDevice,
    850      1.6  christos     UINT32                  GpeNumber))
    851      1.3    jruoho 
    852      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    853      1.3    jruoho ACPI_STATUS
    854      1.3    jruoho AcpiDisableGpe (
    855      1.3    jruoho     ACPI_HANDLE             GpeDevice,
    856      1.6  christos     UINT32                  GpeNumber))
    857      1.3    jruoho 
    858      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    859      1.3    jruoho ACPI_STATUS
    860      1.3    jruoho AcpiClearGpe (
    861      1.3    jruoho     ACPI_HANDLE             GpeDevice,
    862      1.6  christos     UINT32                  GpeNumber))
    863      1.3    jruoho 
    864      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    865      1.3    jruoho ACPI_STATUS
    866      1.1    jruoho AcpiSetGpe (
    867      1.1    jruoho     ACPI_HANDLE             GpeDevice,
    868      1.1    jruoho     UINT32                  GpeNumber,
    869      1.6  christos     UINT8                   Action))
    870      1.1    jruoho 
    871      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    872      1.1    jruoho ACPI_STATUS
    873      1.3    jruoho AcpiFinishGpe (
    874      1.1    jruoho     ACPI_HANDLE             GpeDevice,
    875      1.6  christos     UINT32                  GpeNumber))
    876      1.1    jruoho 
    877      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    878      1.1    jruoho ACPI_STATUS
    879      1.7  christos AcpiMarkGpeForWake (
    880      1.7  christos     ACPI_HANDLE             GpeDevice,
    881      1.7  christos     UINT32                  GpeNumber))
    882      1.7  christos 
    883      1.7  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    884      1.7  christos ACPI_STATUS
    885      1.3    jruoho AcpiSetupGpeForWake (
    886      1.3    jruoho     ACPI_HANDLE             ParentDevice,
    887      1.1    jruoho     ACPI_HANDLE             GpeDevice,
    888      1.6  christos     UINT32                  GpeNumber))
    889      1.1    jruoho 
    890      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    891      1.1    jruoho ACPI_STATUS
    892      1.3    jruoho AcpiSetGpeWakeMask (
    893      1.1    jruoho     ACPI_HANDLE             GpeDevice,
    894      1.3    jruoho     UINT32                  GpeNumber,
    895      1.6  christos     UINT8                   Action))
    896      1.1    jruoho 
    897      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    898      1.1    jruoho ACPI_STATUS
    899      1.1    jruoho AcpiGetGpeStatus (
    900      1.1    jruoho     ACPI_HANDLE             GpeDevice,
    901      1.1    jruoho     UINT32                  GpeNumber,
    902      1.6  christos     ACPI_EVENT_STATUS       *EventStatus))
    903      1.1    jruoho 
    904      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    905      1.1    jruoho ACPI_STATUS
    906      1.1    jruoho AcpiDisableAllGpes (
    907      1.6  christos     void))
    908      1.1    jruoho 
    909      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    910      1.1    jruoho ACPI_STATUS
    911      1.1    jruoho AcpiEnableAllRuntimeGpes (
    912      1.6  christos     void))
    913      1.1    jruoho 
    914      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    915      1.1    jruoho ACPI_STATUS
    916  1.7.2.1     skrll AcpiEnableAllWakeupGpes (
    917  1.7.2.1     skrll     void))
    918  1.7.2.1     skrll 
    919  1.7.2.1     skrll ACPI_HW_DEPENDENT_RETURN_STATUS (
    920  1.7.2.1     skrll ACPI_STATUS
    921      1.1    jruoho AcpiGetGpeDevice (
    922      1.1    jruoho     UINT32                  GpeIndex,
    923      1.6  christos     ACPI_HANDLE             *GpeDevice))
    924      1.1    jruoho 
    925      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    926      1.1    jruoho ACPI_STATUS
    927      1.1    jruoho AcpiInstallGpeBlock (
    928      1.1    jruoho     ACPI_HANDLE             GpeDevice,
    929      1.1    jruoho     ACPI_GENERIC_ADDRESS    *GpeBlockAddress,
    930      1.1    jruoho     UINT32                  RegisterCount,
    931      1.6  christos     UINT32                  InterruptNumber))
    932      1.1    jruoho 
    933      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
    934      1.1    jruoho ACPI_STATUS
    935      1.1    jruoho AcpiRemoveGpeBlock (
    936      1.6  christos     ACPI_HANDLE             GpeDevice))
    937      1.1    jruoho 
    938      1.1    jruoho 
    939      1.1    jruoho /*
    940      1.1    jruoho  * Resource interfaces
    941      1.1    jruoho  */
    942      1.1    jruoho typedef
    943      1.1    jruoho ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
    944      1.1    jruoho     ACPI_RESOURCE           *Resource,
    945      1.1    jruoho     void                    *Context);
    946      1.1    jruoho 
    947      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    948      1.1    jruoho ACPI_STATUS
    949      1.1    jruoho AcpiGetVendorResource (
    950      1.1    jruoho     ACPI_HANDLE             Device,
    951      1.1    jruoho     char                    *Name,
    952      1.1    jruoho     ACPI_VENDOR_UUID        *Uuid,
    953      1.7  christos     ACPI_BUFFER             *RetBuffer))
    954      1.1    jruoho 
    955      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    956      1.1    jruoho ACPI_STATUS
    957      1.1    jruoho AcpiGetCurrentResources (
    958      1.1    jruoho     ACPI_HANDLE             Device,
    959      1.7  christos     ACPI_BUFFER             *RetBuffer))
    960      1.1    jruoho 
    961      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    962      1.1    jruoho ACPI_STATUS
    963      1.1    jruoho AcpiGetPossibleResources (
    964      1.1    jruoho     ACPI_HANDLE             Device,
    965      1.7  christos     ACPI_BUFFER             *RetBuffer))
    966      1.1    jruoho 
    967      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    968      1.1    jruoho ACPI_STATUS
    969      1.6  christos AcpiGetEventResources (
    970      1.6  christos     ACPI_HANDLE             DeviceHandle,
    971      1.7  christos     ACPI_BUFFER             *RetBuffer))
    972      1.6  christos 
    973      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    974      1.6  christos ACPI_STATUS
    975      1.6  christos AcpiWalkResourceBuffer (
    976      1.6  christos     ACPI_BUFFER                 *Buffer,
    977      1.6  christos     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
    978      1.7  christos     void                        *Context))
    979      1.6  christos 
    980      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    981      1.6  christos ACPI_STATUS
    982      1.1    jruoho AcpiWalkResources (
    983      1.1    jruoho     ACPI_HANDLE                 Device,
    984      1.2    jruoho     const char                  *Name,
    985      1.1    jruoho     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
    986      1.7  christos     void                        *Context))
    987      1.1    jruoho 
    988      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    989      1.1    jruoho ACPI_STATUS
    990      1.1    jruoho AcpiSetCurrentResources (
    991      1.1    jruoho     ACPI_HANDLE             Device,
    992      1.7  christos     ACPI_BUFFER             *InBuffer))
    993      1.1    jruoho 
    994      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
    995      1.1    jruoho ACPI_STATUS
    996      1.1    jruoho AcpiGetIrqRoutingTable (
    997      1.1    jruoho     ACPI_HANDLE             Device,
    998      1.7  christos     ACPI_BUFFER             *RetBuffer))
    999      1.1    jruoho 
   1000      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1001      1.1    jruoho ACPI_STATUS
   1002      1.1    jruoho AcpiResourceToAddress64 (
   1003      1.1    jruoho     ACPI_RESOURCE           *Resource,
   1004      1.7  christos     ACPI_RESOURCE_ADDRESS64 *Out))
   1005      1.1    jruoho 
   1006      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1007      1.6  christos ACPI_STATUS
   1008      1.6  christos AcpiBufferToResource (
   1009      1.6  christos     UINT8                   *AmlBuffer,
   1010      1.6  christos     UINT16                  AmlBufferLength,
   1011      1.7  christos     ACPI_RESOURCE           **ResourcePtr))
   1012      1.6  christos 
   1013      1.1    jruoho 
   1014      1.1    jruoho /*
   1015      1.1    jruoho  * Hardware (ACPI device) interfaces
   1016      1.1    jruoho  */
   1017      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1018      1.1    jruoho ACPI_STATUS
   1019      1.1    jruoho AcpiReset (
   1020      1.7  christos     void))
   1021      1.1    jruoho 
   1022      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1023      1.1    jruoho ACPI_STATUS
   1024      1.1    jruoho AcpiRead (
   1025      1.1    jruoho     UINT64                  *Value,
   1026      1.7  christos     ACPI_GENERIC_ADDRESS    *Reg))
   1027      1.1    jruoho 
   1028      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1029      1.1    jruoho ACPI_STATUS
   1030      1.1    jruoho AcpiWrite (
   1031      1.1    jruoho     UINT64                  Value,
   1032      1.7  christos     ACPI_GENERIC_ADDRESS    *Reg))
   1033      1.1    jruoho 
   1034      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1035      1.1    jruoho ACPI_STATUS
   1036      1.1    jruoho AcpiReadBitRegister (
   1037      1.1    jruoho     UINT32                  RegisterId,
   1038      1.6  christos     UINT32                  *ReturnValue))
   1039      1.1    jruoho 
   1040      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1041      1.1    jruoho ACPI_STATUS
   1042      1.1    jruoho AcpiWriteBitRegister (
   1043      1.1    jruoho     UINT32                  RegisterId,
   1044      1.6  christos     UINT32                  Value))
   1045      1.1    jruoho 
   1046      1.6  christos 
   1047      1.6  christos /*
   1048      1.6  christos  * Sleep/Wake interfaces
   1049      1.6  christos  */
   1050      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1051      1.1    jruoho ACPI_STATUS
   1052      1.1    jruoho AcpiGetSleepTypeData (
   1053      1.1    jruoho     UINT8                   SleepState,
   1054      1.1    jruoho     UINT8                   *Slp_TypA,
   1055      1.7  christos     UINT8                   *Slp_TypB))
   1056      1.1    jruoho 
   1057      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1058      1.1    jruoho ACPI_STATUS
   1059      1.1    jruoho AcpiEnterSleepStatePrep (
   1060      1.7  christos     UINT8                   SleepState))
   1061      1.1    jruoho 
   1062      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1063      1.1    jruoho ACPI_STATUS
   1064      1.1    jruoho AcpiEnterSleepState (
   1065      1.7  christos     UINT8                   SleepState))
   1066      1.1    jruoho 
   1067      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1068      1.1    jruoho ACPI_STATUS
   1069      1.1    jruoho AcpiEnterSleepStateS4bios (
   1070      1.6  christos     void))
   1071      1.6  christos 
   1072      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1073      1.6  christos ACPI_STATUS
   1074      1.6  christos AcpiLeaveSleepStatePrep (
   1075      1.7  christos     UINT8                   SleepState))
   1076      1.1    jruoho 
   1077      1.7  christos ACPI_EXTERNAL_RETURN_STATUS (
   1078      1.1    jruoho ACPI_STATUS
   1079      1.1    jruoho AcpiLeaveSleepState (
   1080      1.7  christos     UINT8                   SleepState))
   1081      1.6  christos 
   1082      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1083      1.1    jruoho ACPI_STATUS
   1084      1.1    jruoho AcpiSetFirmwareWakingVector (
   1085  1.7.2.2     skrll     ACPI_PHYSICAL_ADDRESS   PhysicalAddress,
   1086  1.7.2.2     skrll     ACPI_PHYSICAL_ADDRESS   PhysicalAddress64))
   1087      1.1    jruoho 
   1088      1.1    jruoho 
   1089      1.1    jruoho /*
   1090      1.6  christos  * ACPI Timer interfaces
   1091      1.6  christos  */
   1092      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1093      1.6  christos ACPI_STATUS
   1094      1.6  christos AcpiGetTimerResolution (
   1095      1.6  christos     UINT32                  *Resolution))
   1096      1.6  christos 
   1097      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1098      1.6  christos ACPI_STATUS
   1099      1.6  christos AcpiGetTimer (
   1100      1.6  christos     UINT32                  *Ticks))
   1101      1.6  christos 
   1102      1.6  christos ACPI_HW_DEPENDENT_RETURN_STATUS (
   1103      1.6  christos ACPI_STATUS
   1104      1.6  christos AcpiGetTimerDuration (
   1105      1.6  christos     UINT32                  StartTicks,
   1106      1.6  christos     UINT32                  EndTicks,
   1107      1.6  christos     UINT32                  *TimeElapsed))
   1108      1.6  christos 
   1109      1.6  christos 
   1110      1.6  christos /*
   1111      1.1    jruoho  * Error/Warning output
   1112      1.1    jruoho  */
   1113      1.7  christos ACPI_MSG_DEPENDENT_RETURN_VOID (
   1114      1.6  christos ACPI_PRINTF_LIKE(3)
   1115      1.1    jruoho void ACPI_INTERNAL_VAR_XFACE
   1116      1.1    jruoho AcpiError (
   1117      1.1    jruoho     const char              *ModuleName,
   1118      1.1    jruoho     UINT32                  LineNumber,
   1119      1.1    jruoho     const char              *Format,
   1120      1.7  christos     ...))
   1121      1.1    jruoho 
   1122      1.7  christos ACPI_MSG_DEPENDENT_RETURN_VOID (
   1123      1.6  christos ACPI_PRINTF_LIKE(4)
   1124      1.1    jruoho void  ACPI_INTERNAL_VAR_XFACE
   1125      1.1    jruoho AcpiException (
   1126      1.1    jruoho     const char              *ModuleName,
   1127      1.1    jruoho     UINT32                  LineNumber,
   1128      1.1    jruoho     ACPI_STATUS             Status,
   1129      1.1    jruoho     const char              *Format,
   1130      1.7  christos     ...))
   1131      1.1    jruoho 
   1132      1.7  christos ACPI_MSG_DEPENDENT_RETURN_VOID (
   1133      1.6  christos ACPI_PRINTF_LIKE(3)
   1134      1.1    jruoho void ACPI_INTERNAL_VAR_XFACE
   1135      1.1    jruoho AcpiWarning (
   1136      1.1    jruoho     const char              *ModuleName,
   1137      1.1    jruoho     UINT32                  LineNumber,
   1138      1.1    jruoho     const char              *Format,
   1139      1.7  christos     ...))
   1140      1.1    jruoho 
   1141      1.7  christos ACPI_MSG_DEPENDENT_RETURN_VOID (
   1142      1.6  christos ACPI_PRINTF_LIKE(3)
   1143      1.1    jruoho void ACPI_INTERNAL_VAR_XFACE
   1144      1.1    jruoho AcpiInfo (
   1145      1.1    jruoho     const char              *ModuleName,
   1146      1.1    jruoho     UINT32                  LineNumber,
   1147      1.1    jruoho     const char              *Format,
   1148      1.7  christos     ...))
   1149      1.6  christos 
   1150      1.7  christos ACPI_MSG_DEPENDENT_RETURN_VOID (
   1151      1.6  christos ACPI_PRINTF_LIKE(3)
   1152      1.6  christos void ACPI_INTERNAL_VAR_XFACE
   1153      1.6  christos AcpiBiosError (
   1154      1.6  christos     const char              *ModuleName,
   1155      1.6  christos     UINT32                  LineNumber,
   1156      1.6  christos     const char              *Format,
   1157      1.7  christos     ...))
   1158      1.6  christos 
   1159      1.7  christos ACPI_MSG_DEPENDENT_RETURN_VOID (
   1160      1.6  christos ACPI_PRINTF_LIKE(3)
   1161      1.6  christos void ACPI_INTERNAL_VAR_XFACE
   1162      1.6  christos AcpiBiosWarning (
   1163      1.6  christos     const char              *ModuleName,
   1164      1.6  christos     UINT32                  LineNumber,
   1165      1.6  christos     const char              *Format,
   1166      1.7  christos     ...))
   1167      1.1    jruoho 
   1168      1.1    jruoho 
   1169      1.1    jruoho /*
   1170      1.1    jruoho  * Debug output
   1171      1.1    jruoho  */
   1172      1.7  christos ACPI_DBG_DEPENDENT_RETURN_VOID (
   1173      1.6  christos ACPI_PRINTF_LIKE(6)
   1174      1.1    jruoho void ACPI_INTERNAL_VAR_XFACE
   1175      1.1    jruoho AcpiDebugPrint (
   1176      1.1    jruoho     UINT32                  RequestedDebugLevel,
   1177      1.1    jruoho     UINT32                  LineNumber,
   1178      1.1    jruoho     const char              *FunctionName,
   1179      1.1    jruoho     const char              *ModuleName,
   1180      1.1    jruoho     UINT32                  ComponentId,
   1181      1.1    jruoho     const char              *Format,
   1182      1.7  christos     ...))
   1183      1.1    jruoho 
   1184      1.7  christos ACPI_DBG_DEPENDENT_RETURN_VOID (
   1185      1.6  christos ACPI_PRINTF_LIKE(6)
   1186      1.1    jruoho void ACPI_INTERNAL_VAR_XFACE
   1187      1.1    jruoho AcpiDebugPrintRaw (
   1188      1.1    jruoho     UINT32                  RequestedDebugLevel,
   1189      1.1    jruoho     UINT32                  LineNumber,
   1190      1.1    jruoho     const char              *FunctionName,
   1191      1.1    jruoho     const char              *ModuleName,
   1192      1.1    jruoho     UINT32                  ComponentId,
   1193      1.1    jruoho     const char              *Format,
   1194      1.7  christos     ...))
   1195      1.7  christos 
   1196  1.7.2.2     skrll ACPI_DBG_DEPENDENT_RETURN_VOID (
   1197  1.7.2.2     skrll void
   1198  1.7.2.2     skrll AcpiTracePoint (
   1199  1.7.2.2     skrll     ACPI_TRACE_EVENT_TYPE   Type,
   1200  1.7.2.2     skrll     BOOLEAN                 Begin,
   1201  1.7.2.2     skrll     UINT8                   *Aml,
   1202  1.7.2.2     skrll     char                    *Pathname))
   1203  1.7.2.2     skrll 
   1204      1.7  christos ACPI_APP_DEPENDENT_RETURN_VOID (
   1205      1.7  christos ACPI_PRINTF_LIKE(1)
   1206      1.7  christos void ACPI_INTERNAL_VAR_XFACE
   1207      1.7  christos AcpiLogError (
   1208      1.7  christos     const char              *Format,
   1209      1.7  christos     ...))
   1210      1.1    jruoho 
   1211      1.1    jruoho #endif /* __ACXFACE_H__ */
   1212