xref: /dflybsd-src/sys/contrib/dev/acpica/source/include/acpixf.h (revision 5f39c7e70ca0960d1868c75a449064df712dbb10)
10d02842fSSascha Wildner /******************************************************************************
20d02842fSSascha Wildner  *
30d02842fSSascha Wildner  * Name: acpixf.h - External interfaces to the ACPI subsystem
40d02842fSSascha Wildner  *
50d02842fSSascha Wildner  *****************************************************************************/
60d02842fSSascha Wildner 
70d02842fSSascha Wildner /*
820294b7eSSascha Wildner  * Copyright (C) 2000 - 2014, Intel Corp.
90d02842fSSascha Wildner  * All rights reserved.
100d02842fSSascha Wildner  *
110d02842fSSascha Wildner  * Redistribution and use in source and binary forms, with or without
120d02842fSSascha Wildner  * modification, are permitted provided that the following conditions
130d02842fSSascha Wildner  * are met:
140d02842fSSascha Wildner  * 1. Redistributions of source code must retain the above copyright
150d02842fSSascha Wildner  *    notice, this list of conditions, and the following disclaimer,
160d02842fSSascha Wildner  *    without modification.
170d02842fSSascha Wildner  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
180d02842fSSascha Wildner  *    substantially similar to the "NO WARRANTY" disclaimer below
190d02842fSSascha Wildner  *    ("Disclaimer") and any redistribution must be conditioned upon
200d02842fSSascha Wildner  *    including a substantially similar Disclaimer requirement for further
210d02842fSSascha Wildner  *    binary redistribution.
220d02842fSSascha Wildner  * 3. Neither the names of the above-listed copyright holders nor the names
230d02842fSSascha Wildner  *    of any contributors may be used to endorse or promote products derived
240d02842fSSascha Wildner  *    from this software without specific prior written permission.
250d02842fSSascha Wildner  *
260d02842fSSascha Wildner  * Alternatively, this software may be distributed under the terms of the
270d02842fSSascha Wildner  * GNU General Public License ("GPL") version 2 as published by the Free
280d02842fSSascha Wildner  * Software Foundation.
290d02842fSSascha Wildner  *
300d02842fSSascha Wildner  * NO WARRANTY
310d02842fSSascha Wildner  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
320d02842fSSascha Wildner  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
330d02842fSSascha Wildner  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
340d02842fSSascha Wildner  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
350d02842fSSascha Wildner  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
360d02842fSSascha Wildner  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
370d02842fSSascha Wildner  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
380d02842fSSascha Wildner  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
390d02842fSSascha Wildner  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
400d02842fSSascha Wildner  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
410d02842fSSascha Wildner  * POSSIBILITY OF SUCH DAMAGES.
420d02842fSSascha Wildner  */
430d02842fSSascha Wildner 
440d02842fSSascha Wildner #ifndef __ACXFACE_H__
450d02842fSSascha Wildner #define __ACXFACE_H__
460d02842fSSascha Wildner 
470d02842fSSascha Wildner /* Current ACPICA subsystem version in YYYYMMDD format */
480d02842fSSascha Wildner 
49*5f39c7e7SSascha Wildner #define ACPI_CA_VERSION                 0x20140627
500d02842fSSascha Wildner 
510d02842fSSascha Wildner #include "acconfig.h"
520d02842fSSascha Wildner #include "actypes.h"
530d02842fSSascha Wildner #include "actbl.h"
540d02842fSSascha Wildner #include "acbuffer.h"
550d02842fSSascha Wildner 
569e1c0880SSascha Wildner 
579e1c0880SSascha Wildner /*****************************************************************************
589e1c0880SSascha Wildner  *
599e1c0880SSascha Wildner  * Macros used for ACPICA globals and configuration
609e1c0880SSascha Wildner  *
619e1c0880SSascha Wildner  ****************************************************************************/
629e1c0880SSascha Wildner 
630d02842fSSascha Wildner /*
649e1c0880SSascha Wildner  * Ensure that global variables are defined and initialized only once.
659e1c0880SSascha Wildner  *
669e1c0880SSascha Wildner  * The use of these macros allows for a single list of globals (here)
679e1c0880SSascha Wildner  * in order to simplify maintenance of the code.
680d02842fSSascha Wildner  */
699e1c0880SSascha Wildner #ifdef DEFINE_ACPI_GLOBALS
709e1c0880SSascha Wildner #define ACPI_GLOBAL(type,name) \
719e1c0880SSascha Wildner     extern type name; \
729e1c0880SSascha Wildner     type name
730d02842fSSascha Wildner 
749e1c0880SSascha Wildner #define ACPI_INIT_GLOBAL(type,name,value) \
759e1c0880SSascha Wildner     type name=value
760d02842fSSascha Wildner 
779e1c0880SSascha Wildner #else
789e1c0880SSascha Wildner #ifndef ACPI_GLOBAL
799e1c0880SSascha Wildner #define ACPI_GLOBAL(type,name) \
809e1c0880SSascha Wildner     extern type name
819e1c0880SSascha Wildner #endif
820d02842fSSascha Wildner 
839e1c0880SSascha Wildner #ifndef ACPI_INIT_GLOBAL
849e1c0880SSascha Wildner #define ACPI_INIT_GLOBAL(type,name,value) \
859e1c0880SSascha Wildner     extern type name
869e1c0880SSascha Wildner #endif
879e1c0880SSascha Wildner #endif
880d02842fSSascha Wildner 
890d02842fSSascha Wildner /*
909e1c0880SSascha Wildner  * These macros configure the various ACPICA interfaces. They are
919e1c0880SSascha Wildner  * useful for generating stub inline functions for features that are
929e1c0880SSascha Wildner  * configured out of the current kernel or ACPICA application.
939e1c0880SSascha Wildner  */
949e1c0880SSascha Wildner #ifndef ACPI_EXTERNAL_RETURN_STATUS
959e1c0880SSascha Wildner #define ACPI_EXTERNAL_RETURN_STATUS(Prototype) \
969e1c0880SSascha Wildner     Prototype;
979e1c0880SSascha Wildner #endif
989e1c0880SSascha Wildner 
999e1c0880SSascha Wildner #ifndef ACPI_EXTERNAL_RETURN_OK
1009e1c0880SSascha Wildner #define ACPI_EXTERNAL_RETURN_OK(Prototype) \
1019e1c0880SSascha Wildner     Prototype;
1029e1c0880SSascha Wildner #endif
1039e1c0880SSascha Wildner 
1049e1c0880SSascha Wildner #ifndef ACPI_EXTERNAL_RETURN_VOID
1059e1c0880SSascha Wildner #define ACPI_EXTERNAL_RETURN_VOID(Prototype) \
1069e1c0880SSascha Wildner     Prototype;
1079e1c0880SSascha Wildner #endif
1089e1c0880SSascha Wildner 
1099e1c0880SSascha Wildner #ifndef ACPI_EXTERNAL_RETURN_UINT32
1109e1c0880SSascha Wildner #define ACPI_EXTERNAL_RETURN_UINT32(Prototype) \
1119e1c0880SSascha Wildner     Prototype;
1129e1c0880SSascha Wildner #endif
1139e1c0880SSascha Wildner 
1149e1c0880SSascha Wildner #ifndef ACPI_EXTERNAL_RETURN_PTR
1159e1c0880SSascha Wildner #define ACPI_EXTERNAL_RETURN_PTR(Prototype) \
1169e1c0880SSascha Wildner     Prototype;
1179e1c0880SSascha Wildner #endif
1189e1c0880SSascha Wildner 
1199e1c0880SSascha Wildner 
1209e1c0880SSascha Wildner /*****************************************************************************
1219e1c0880SSascha Wildner  *
1229e1c0880SSascha Wildner  * Public globals and runtime configuration options
1239e1c0880SSascha Wildner  *
1249e1c0880SSascha Wildner  ****************************************************************************/
1259e1c0880SSascha Wildner 
1269e1c0880SSascha Wildner /*
1279e1c0880SSascha Wildner  * Enable "slack mode" of the AML interpreter?  Default is FALSE, and the
1289e1c0880SSascha Wildner  * interpreter strictly follows the ACPI specification. Setting to TRUE
1299e1c0880SSascha Wildner  * allows the interpreter to ignore certain errors and/or bad AML constructs.
1309e1c0880SSascha Wildner  *
1319e1c0880SSascha Wildner  * Currently, these features are enabled by this flag:
1329e1c0880SSascha Wildner  *
1339e1c0880SSascha Wildner  * 1) Allow "implicit return" of last value in a control method
1349e1c0880SSascha Wildner  * 2) Allow access beyond the end of an operation region
1359e1c0880SSascha Wildner  * 3) Allow access to uninitialized locals/args (auto-init to integer 0)
1369e1c0880SSascha Wildner  * 4) Allow ANY object type to be a source operand for the Store() operator
1379e1c0880SSascha Wildner  * 5) Allow unresolved references (invalid target name) in package objects
1389e1c0880SSascha Wildner  * 6) Enable warning messages for behavior that is not ACPI spec compliant
1399e1c0880SSascha Wildner  */
1409e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableInterpreterSlack, FALSE);
1419e1c0880SSascha Wildner 
1429e1c0880SSascha Wildner /*
1439e1c0880SSascha Wildner  * Automatically serialize all methods that create named objects? Default
1449e1c0880SSascha Wildner  * is TRUE, meaning that all NonSerialized methods are scanned once at
1459e1c0880SSascha Wildner  * table load time to determine those that create named objects. Methods
1469e1c0880SSascha Wildner  * that create named objects are marked Serialized in order to prevent
1479e1c0880SSascha Wildner  * possible run-time problems if they are entered by more than one thread.
1489e1c0880SSascha Wildner  */
1499e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_AutoSerializeMethods, TRUE);
1509e1c0880SSascha Wildner 
1519e1c0880SSascha Wildner /*
1529e1c0880SSascha Wildner  * Create the predefined _OSI method in the namespace? Default is TRUE
1539e1c0880SSascha Wildner  * because ACPICA is fully compatible with other ACPI implementations.
1549e1c0880SSascha Wildner  * Changing this will revert ACPICA (and machine ASL) to pre-OSI behavior.
1559e1c0880SSascha Wildner  */
1569e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CreateOsiMethod, TRUE);
1579e1c0880SSascha Wildner 
1589e1c0880SSascha Wildner /*
1599e1c0880SSascha Wildner  * Optionally use default values for the ACPI register widths. Set this to
1609e1c0880SSascha Wildner  * TRUE to use the defaults, if an FADT contains incorrect widths/lengths.
1619e1c0880SSascha Wildner  */
1629e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_UseDefaultRegisterWidths, TRUE);
1639e1c0880SSascha Wildner 
1649e1c0880SSascha Wildner /*
165*5f39c7e7SSascha Wildner  * Whether or not to verify the table checksum before installation. Set
166*5f39c7e7SSascha Wildner  * this to TRUE to verify the table checksum before install it to the table
167*5f39c7e7SSascha Wildner  * manager. Note that enabling this option causes errors to happen in some
168*5f39c7e7SSascha Wildner  * OSPMs during early initialization stages. Default behavior is to do such
169*5f39c7e7SSascha Wildner  * verification.
170*5f39c7e7SSascha Wildner  */
171*5f39c7e7SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_VerifyTableChecksum, TRUE);
172*5f39c7e7SSascha Wildner 
173*5f39c7e7SSascha Wildner /*
1749e1c0880SSascha Wildner  * Optionally enable output from the AML Debug Object.
1759e1c0880SSascha Wildner  */
1769e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableAmlDebugObject, FALSE);
1779e1c0880SSascha Wildner 
1789e1c0880SSascha Wildner /*
1799e1c0880SSascha Wildner  * Optionally copy the entire DSDT to local memory (instead of simply
1809e1c0880SSascha Wildner  * mapping it.) There are some BIOSs that corrupt or replace the original
1819e1c0880SSascha Wildner  * DSDT, creating the need for this option. Default is FALSE, do not copy
1829e1c0880SSascha Wildner  * the DSDT.
1839e1c0880SSascha Wildner  */
1849e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CopyDsdtLocally, FALSE);
1859e1c0880SSascha Wildner 
1869e1c0880SSascha Wildner /*
1879e1c0880SSascha Wildner  * Optionally ignore an XSDT if present and use the RSDT instead.
1889e1c0880SSascha Wildner  * Although the ACPI specification requires that an XSDT be used instead
1899e1c0880SSascha Wildner  * of the RSDT, the XSDT has been found to be corrupt or ill-formed on
1909e1c0880SSascha Wildner  * some machines. Default behavior is to use the XSDT if present.
1919e1c0880SSascha Wildner  */
1929e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DoNotUseXsdt, FALSE);
1939e1c0880SSascha Wildner 
1949e1c0880SSascha Wildner /*
1959e1c0880SSascha Wildner  * Optionally use 32-bit FADT addresses if and when there is a conflict
1969e1c0880SSascha Wildner  * (address mismatch) between the 32-bit and 64-bit versions of the
1979e1c0880SSascha Wildner  * address. Although ACPICA adheres to the ACPI specification which
1989e1c0880SSascha Wildner  * requires the use of the corresponding 64-bit address if it is non-zero,
1999e1c0880SSascha Wildner  * some machines have been found to have a corrupted non-zero 64-bit
2009e1c0880SSascha Wildner  * address. Default is FALSE, do not favor the 32-bit addresses.
2019e1c0880SSascha Wildner  */
2029e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFadtAddresses, FALSE);
2039e1c0880SSascha Wildner 
2049e1c0880SSascha Wildner /*
2059e1c0880SSascha Wildner  * Optionally truncate I/O addresses to 16 bits. Provides compatibility
2069e1c0880SSascha Wildner  * with other ACPI implementations. NOTE: During ACPICA initialization,
2079e1c0880SSascha Wildner  * this value is set to TRUE if any Windows OSI strings have been
2089e1c0880SSascha Wildner  * requested by the BIOS.
2099e1c0880SSascha Wildner  */
2109e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_TruncateIoAddresses, FALSE);
2119e1c0880SSascha Wildner 
2129e1c0880SSascha Wildner /*
2139e1c0880SSascha Wildner  * Disable runtime checking and repair of values returned by control methods.
2149e1c0880SSascha Wildner  * Use only if the repair is causing a problem on a particular machine.
2159e1c0880SSascha Wildner  */
2169e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableAutoRepair, FALSE);
2179e1c0880SSascha Wildner 
2189e1c0880SSascha Wildner /*
2199e1c0880SSascha Wildner  * Optionally do not install any SSDTs from the RSDT/XSDT during initialization.
2209e1c0880SSascha Wildner  * This can be useful for debugging ACPI problems on some machines.
2219e1c0880SSascha Wildner  */
2229e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableSsdtTableInstall, FALSE);
2239e1c0880SSascha Wildner 
2249e1c0880SSascha Wildner /*
2259e1c0880SSascha Wildner  * We keep track of the latest version of Windows that has been requested by
2269e1c0880SSascha Wildner  * the BIOS. ACPI 5.0.
2279e1c0880SSascha Wildner  */
2289e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_OsiData, 0);
2299e1c0880SSascha Wildner 
2309e1c0880SSascha Wildner /*
2319e1c0880SSascha Wildner  * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning
2329e1c0880SSascha Wildner  * that the ACPI hardware is no longer required. A flag in the FADT indicates
2339e1c0880SSascha Wildner  * a reduced HW machine, and that flag is duplicated here for convenience.
2349e1c0880SSascha Wildner  */
2359e1c0880SSascha Wildner ACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_ReducedHardware, FALSE);
2369e1c0880SSascha Wildner 
2379e1c0880SSascha Wildner /*
2389e1c0880SSascha Wildner  * This mechanism is used to trace a specified AML method. The method is
2399e1c0880SSascha Wildner  * traced each time it is executed.
2409e1c0880SSascha Wildner  */
2419e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceFlags, 0);
2429e1c0880SSascha Wildner ACPI_INIT_GLOBAL (ACPI_NAME,        AcpiGbl_TraceMethodName, 0);
2439e1c0880SSascha Wildner 
2449e1c0880SSascha Wildner /*
2459e1c0880SSascha Wildner  * Runtime configuration of debug output control masks. We want the debug
2469e1c0880SSascha Wildner  * switches statically initialized so they are already set when the debugger
2479e1c0880SSascha Wildner  * is entered.
2489e1c0880SSascha Wildner  */
2499e1c0880SSascha Wildner #ifdef ACPI_DEBUG_OUTPUT
2509e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_DEBUG_DEFAULT);
2519e1c0880SSascha Wildner #else
2529e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_NORMAL_DEFAULT);
2539e1c0880SSascha Wildner #endif
2549e1c0880SSascha Wildner ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLayer, ACPI_COMPONENT_DEFAULT);
2559e1c0880SSascha Wildner 
2569e1c0880SSascha Wildner /*
2579e1c0880SSascha Wildner  * Other miscellaneous globals
2589e1c0880SSascha Wildner  */
2599e1c0880SSascha Wildner ACPI_GLOBAL (ACPI_TABLE_FADT,       AcpiGbl_FADT);
2609e1c0880SSascha Wildner ACPI_GLOBAL (UINT32,                AcpiCurrentGpeCount);
2619e1c0880SSascha Wildner ACPI_GLOBAL (BOOLEAN,               AcpiGbl_SystemAwakeAndRunning);
2629e1c0880SSascha Wildner 
2639e1c0880SSascha Wildner 
2649e1c0880SSascha Wildner /*****************************************************************************
2659e1c0880SSascha Wildner  *
2669e1c0880SSascha Wildner  * ACPICA public interface configuration.
2679e1c0880SSascha Wildner  *
2689e1c0880SSascha Wildner  * Interfaces that are configured out of the ACPICA build are replaced
2699e1c0880SSascha Wildner  * by inlined stubs by default.
2709e1c0880SSascha Wildner  *
2719e1c0880SSascha Wildner  ****************************************************************************/
2729e1c0880SSascha Wildner 
2739e1c0880SSascha Wildner /*
2749e1c0880SSascha Wildner  * Hardware-reduced prototypes (default: Not hardware reduced).
2759e1c0880SSascha Wildner  *
2769e1c0880SSascha Wildner  * All ACPICA hardware-related interfaces that use these macros will be
2779e1c0880SSascha Wildner  * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag
2780d02842fSSascha Wildner  * is set to TRUE.
2799e1c0880SSascha Wildner  *
2809e1c0880SSascha Wildner  * Note: This static build option for reduced hardware is intended to
2819e1c0880SSascha Wildner  * reduce ACPICA code size if desired or necessary. However, even if this
2829e1c0880SSascha Wildner  * option is not specified, the runtime behavior of ACPICA is dependent
2839e1c0880SSascha Wildner  * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set,
2849e1c0880SSascha Wildner  * the flag will enable similar behavior -- ACPICA will not attempt
2859e1c0880SSascha Wildner  * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.)
2860d02842fSSascha Wildner  */
2870d02842fSSascha Wildner #if (!ACPI_REDUCED_HARDWARE)
2880d02842fSSascha Wildner #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
2899e1c0880SSascha Wildner     ACPI_EXTERNAL_RETURN_STATUS(Prototype)
2900d02842fSSascha Wildner 
2910d02842fSSascha Wildner #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
2929e1c0880SSascha Wildner     ACPI_EXTERNAL_RETURN_OK(Prototype)
2930d02842fSSascha Wildner 
2940d02842fSSascha Wildner #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
2959e1c0880SSascha Wildner     ACPI_EXTERNAL_RETURN_VOID(Prototype)
2960d02842fSSascha Wildner 
2970d02842fSSascha Wildner #else
2980d02842fSSascha Wildner #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
2990d02842fSSascha Wildner     static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);}
3000d02842fSSascha Wildner 
3010d02842fSSascha Wildner #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
3020d02842fSSascha Wildner     static ACPI_INLINE Prototype {return(AE_OK);}
3030d02842fSSascha Wildner 
3040d02842fSSascha Wildner #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
3050d02842fSSascha Wildner     static ACPI_INLINE Prototype {return;}
3060d02842fSSascha Wildner 
3070d02842fSSascha Wildner #endif /* !ACPI_REDUCED_HARDWARE */
3080d02842fSSascha Wildner 
3090d02842fSSascha Wildner 
3100d02842fSSascha Wildner /*
3119e1c0880SSascha Wildner  * Error message prototypes (default: error messages enabled).
3129e1c0880SSascha Wildner  *
3139e1c0880SSascha Wildner  * All interfaces related to error and warning messages
3149e1c0880SSascha Wildner  * will be configured out of the ACPICA build if the
3159e1c0880SSascha Wildner  * ACPI_NO_ERROR_MESSAGE flag is defined.
3169e1c0880SSascha Wildner  */
3179e1c0880SSascha Wildner #ifndef ACPI_NO_ERROR_MESSAGES
3189e1c0880SSascha Wildner #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
3199e1c0880SSascha Wildner     Prototype;
3209e1c0880SSascha Wildner 
3219e1c0880SSascha Wildner #else
3229e1c0880SSascha Wildner #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
3239e1c0880SSascha Wildner     static ACPI_INLINE Prototype {return;}
3249e1c0880SSascha Wildner 
3259e1c0880SSascha Wildner #endif /* ACPI_NO_ERROR_MESSAGES */
3269e1c0880SSascha Wildner 
3279e1c0880SSascha Wildner 
3289e1c0880SSascha Wildner /*
3299e1c0880SSascha Wildner  * Debugging output prototypes (default: no debug output).
3309e1c0880SSascha Wildner  *
3319e1c0880SSascha Wildner  * All interfaces related to debug output messages
3329e1c0880SSascha Wildner  * will be configured out of the ACPICA build unless the
3339e1c0880SSascha Wildner  * ACPI_DEBUG_OUTPUT flag is defined.
3349e1c0880SSascha Wildner  */
3359e1c0880SSascha Wildner #ifdef ACPI_DEBUG_OUTPUT
3369e1c0880SSascha Wildner #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
3379e1c0880SSascha Wildner     Prototype;
3389e1c0880SSascha Wildner 
3399e1c0880SSascha Wildner #else
3409e1c0880SSascha Wildner #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
3419e1c0880SSascha Wildner     static ACPI_INLINE Prototype {return;}
3429e1c0880SSascha Wildner 
3439e1c0880SSascha Wildner #endif /* ACPI_DEBUG_OUTPUT */
3449e1c0880SSascha Wildner 
3459e1c0880SSascha Wildner 
346*5f39c7e7SSascha Wildner /*
347*5f39c7e7SSascha Wildner  * Application prototypes
348*5f39c7e7SSascha Wildner  *
349*5f39c7e7SSascha Wildner  * All interfaces used by application will be configured
350*5f39c7e7SSascha Wildner  * out of the ACPICA build unless the ACPI_APPLICATION
351*5f39c7e7SSascha Wildner  * flag is defined.
352*5f39c7e7SSascha Wildner  */
353*5f39c7e7SSascha Wildner #ifdef ACPI_APPLICATION
354*5f39c7e7SSascha Wildner #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
355*5f39c7e7SSascha Wildner     Prototype;
356*5f39c7e7SSascha Wildner 
357*5f39c7e7SSascha Wildner #else
358*5f39c7e7SSascha Wildner #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
359*5f39c7e7SSascha Wildner     static ACPI_INLINE Prototype {return;}
360*5f39c7e7SSascha Wildner 
361*5f39c7e7SSascha Wildner #endif /* ACPI_APPLICATION */
362*5f39c7e7SSascha Wildner 
363*5f39c7e7SSascha Wildner 
3649e1c0880SSascha Wildner /*****************************************************************************
3659e1c0880SSascha Wildner  *
3669e1c0880SSascha Wildner  * ACPICA public interface prototypes
3679e1c0880SSascha Wildner  *
3689e1c0880SSascha Wildner  ****************************************************************************/
3699e1c0880SSascha Wildner 
3709e1c0880SSascha Wildner /*
3710d02842fSSascha Wildner  * Initialization
3720d02842fSSascha Wildner  */
3739e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
3740d02842fSSascha Wildner ACPI_STATUS
3750d02842fSSascha Wildner AcpiInitializeTables (
3760d02842fSSascha Wildner     ACPI_TABLE_DESC         *InitialStorage,
3770d02842fSSascha Wildner     UINT32                  InitialTableCount,
3789e1c0880SSascha Wildner     BOOLEAN                 AllowResize))
3790d02842fSSascha Wildner 
3809e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
3810d02842fSSascha Wildner ACPI_STATUS
3820d02842fSSascha Wildner AcpiInitializeSubsystem (
3839e1c0880SSascha Wildner     void))
3840d02842fSSascha Wildner 
3859e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
3860d02842fSSascha Wildner ACPI_STATUS
3870d02842fSSascha Wildner AcpiEnableSubsystem (
3889e1c0880SSascha Wildner     UINT32                  Flags))
3890d02842fSSascha Wildner 
3909e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
3910d02842fSSascha Wildner ACPI_STATUS
3920d02842fSSascha Wildner AcpiInitializeObjects (
3939e1c0880SSascha Wildner     UINT32                  Flags))
3940d02842fSSascha Wildner 
3959e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
3960d02842fSSascha Wildner ACPI_STATUS
3970d02842fSSascha Wildner AcpiTerminate (
3989e1c0880SSascha Wildner     void))
3990d02842fSSascha Wildner 
4000d02842fSSascha Wildner 
4010d02842fSSascha Wildner /*
4020d02842fSSascha Wildner  * Miscellaneous global interfaces
4030d02842fSSascha Wildner  */
4040d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
4050d02842fSSascha Wildner ACPI_STATUS
4060d02842fSSascha Wildner AcpiEnable (
4070d02842fSSascha Wildner     void))
4080d02842fSSascha Wildner 
4090d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
4100d02842fSSascha Wildner ACPI_STATUS
4110d02842fSSascha Wildner AcpiDisable (
4120d02842fSSascha Wildner     void))
4130d02842fSSascha Wildner 
4149e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4150d02842fSSascha Wildner ACPI_STATUS
4160d02842fSSascha Wildner AcpiSubsystemStatus (
4179e1c0880SSascha Wildner     void))
4180d02842fSSascha Wildner 
4199e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4200d02842fSSascha Wildner ACPI_STATUS
4210d02842fSSascha Wildner AcpiGetSystemInfo (
4229e1c0880SSascha Wildner     ACPI_BUFFER             *RetBuffer))
4230d02842fSSascha Wildner 
4249e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4250d02842fSSascha Wildner ACPI_STATUS
4260d02842fSSascha Wildner AcpiGetStatistics (
4279e1c0880SSascha Wildner     ACPI_STATISTICS         *Stats))
4280d02842fSSascha Wildner 
4299e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_PTR (
4300d02842fSSascha Wildner const char *
4310d02842fSSascha Wildner AcpiFormatException (
4329e1c0880SSascha Wildner     ACPI_STATUS             Exception))
4330d02842fSSascha Wildner 
4349e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4350d02842fSSascha Wildner ACPI_STATUS
4360d02842fSSascha Wildner AcpiPurgeCachedObjects (
4379e1c0880SSascha Wildner     void))
4380d02842fSSascha Wildner 
4399e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4400d02842fSSascha Wildner ACPI_STATUS
4410d02842fSSascha Wildner AcpiInstallInterface (
4429e1c0880SSascha Wildner     ACPI_STRING             InterfaceName))
4430d02842fSSascha Wildner 
4449e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4450d02842fSSascha Wildner ACPI_STATUS
4460d02842fSSascha Wildner AcpiRemoveInterface (
4479e1c0880SSascha Wildner     ACPI_STRING             InterfaceName))
4480d02842fSSascha Wildner 
4499e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4500d02842fSSascha Wildner ACPI_STATUS
4510d02842fSSascha Wildner AcpiUpdateInterfaces (
4529e1c0880SSascha Wildner     UINT8                   Action))
4530d02842fSSascha Wildner 
4549e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_UINT32 (
4550d02842fSSascha Wildner UINT32
4560d02842fSSascha Wildner AcpiCheckAddressRange (
4570d02842fSSascha Wildner     ACPI_ADR_SPACE_TYPE     SpaceId,
4580d02842fSSascha Wildner     ACPI_PHYSICAL_ADDRESS   Address,
4590d02842fSSascha Wildner     ACPI_SIZE               Length,
4609e1c0880SSascha Wildner     BOOLEAN                 Warn))
4610d02842fSSascha Wildner 
4629e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4630d02842fSSascha Wildner ACPI_STATUS
4640d02842fSSascha Wildner AcpiDecodePldBuffer (
4650d02842fSSascha Wildner     UINT8                   *InBuffer,
4660d02842fSSascha Wildner     ACPI_SIZE               Length,
4679e1c0880SSascha Wildner     ACPI_PLD_INFO           **ReturnBuffer))
4680d02842fSSascha Wildner 
4690d02842fSSascha Wildner 
4700d02842fSSascha Wildner /*
4710d02842fSSascha Wildner  * ACPI table load/unload interfaces
4720d02842fSSascha Wildner  */
4739e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4740d02842fSSascha Wildner ACPI_STATUS
475d4972a9cSSascha Wildner AcpiInstallTable (
476d4972a9cSSascha Wildner     ACPI_PHYSICAL_ADDRESS   Address,
4779e1c0880SSascha Wildner     BOOLEAN                 Physical))
478d4972a9cSSascha Wildner 
4799e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
480d4972a9cSSascha Wildner ACPI_STATUS
4810d02842fSSascha Wildner AcpiLoadTable (
4829e1c0880SSascha Wildner     ACPI_TABLE_HEADER       *Table))
4830d02842fSSascha Wildner 
4849e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4850d02842fSSascha Wildner ACPI_STATUS
4860d02842fSSascha Wildner AcpiUnloadParentTable (
4879e1c0880SSascha Wildner     ACPI_HANDLE             Object))
4880d02842fSSascha Wildner 
4899e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4900d02842fSSascha Wildner ACPI_STATUS
4910d02842fSSascha Wildner AcpiLoadTables (
4929e1c0880SSascha Wildner     void))
4930d02842fSSascha Wildner 
4940d02842fSSascha Wildner 
4950d02842fSSascha Wildner /*
4960d02842fSSascha Wildner  * ACPI table manipulation interfaces
4970d02842fSSascha Wildner  */
4989e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
4990d02842fSSascha Wildner ACPI_STATUS
5000d02842fSSascha Wildner AcpiReallocateRootTable (
5019e1c0880SSascha Wildner     void))
5020d02842fSSascha Wildner 
5039e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5040d02842fSSascha Wildner ACPI_STATUS
5050d02842fSSascha Wildner AcpiFindRootPointer (
5069e1c0880SSascha Wildner     ACPI_SIZE               *RsdpAddress))
5070d02842fSSascha Wildner 
5089e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5090d02842fSSascha Wildner ACPI_STATUS
5100d02842fSSascha Wildner AcpiGetTableHeader (
5110d02842fSSascha Wildner     ACPI_STRING             Signature,
5120d02842fSSascha Wildner     UINT32                  Instance,
5139e1c0880SSascha Wildner     ACPI_TABLE_HEADER       *OutTableHeader))
5140d02842fSSascha Wildner 
5159e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5160d02842fSSascha Wildner ACPI_STATUS
5170d02842fSSascha Wildner AcpiGetTable (
5180d02842fSSascha Wildner     ACPI_STRING             Signature,
5190d02842fSSascha Wildner     UINT32                  Instance,
5209e1c0880SSascha Wildner     ACPI_TABLE_HEADER       **OutTable))
5210d02842fSSascha Wildner 
5229e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5230d02842fSSascha Wildner ACPI_STATUS
5240d02842fSSascha Wildner AcpiGetTableByIndex (
5250d02842fSSascha Wildner     UINT32                  TableIndex,
5269e1c0880SSascha Wildner     ACPI_TABLE_HEADER       **OutTable))
5270d02842fSSascha Wildner 
5289e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5290d02842fSSascha Wildner ACPI_STATUS
5300d02842fSSascha Wildner AcpiInstallTableHandler (
5310d02842fSSascha Wildner     ACPI_TABLE_HANDLER      Handler,
5329e1c0880SSascha Wildner     void                    *Context))
5330d02842fSSascha Wildner 
5349e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5350d02842fSSascha Wildner ACPI_STATUS
5360d02842fSSascha Wildner AcpiRemoveTableHandler (
5379e1c0880SSascha Wildner     ACPI_TABLE_HANDLER      Handler))
5380d02842fSSascha Wildner 
5390d02842fSSascha Wildner 
5400d02842fSSascha Wildner /*
5410d02842fSSascha Wildner  * Namespace and name interfaces
5420d02842fSSascha Wildner  */
5439e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5440d02842fSSascha Wildner ACPI_STATUS
5450d02842fSSascha Wildner AcpiWalkNamespace (
5460d02842fSSascha Wildner     ACPI_OBJECT_TYPE        Type,
5470d02842fSSascha Wildner     ACPI_HANDLE             StartObject,
5480d02842fSSascha Wildner     UINT32                  MaxDepth,
5490d02842fSSascha Wildner     ACPI_WALK_CALLBACK      DescendingCallback,
5500d02842fSSascha Wildner     ACPI_WALK_CALLBACK      AscendingCallback,
5510d02842fSSascha Wildner     void                    *Context,
5529e1c0880SSascha Wildner     void                    **ReturnValue))
5530d02842fSSascha Wildner 
5549e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5550d02842fSSascha Wildner ACPI_STATUS
5560d02842fSSascha Wildner AcpiGetDevices (
5570d02842fSSascha Wildner     char                    *HID,
5580d02842fSSascha Wildner     ACPI_WALK_CALLBACK      UserFunction,
5590d02842fSSascha Wildner     void                    *Context,
5609e1c0880SSascha Wildner     void                    **ReturnValue))
5610d02842fSSascha Wildner 
5629e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5630d02842fSSascha Wildner ACPI_STATUS
5640d02842fSSascha Wildner AcpiGetName (
5650d02842fSSascha Wildner     ACPI_HANDLE             Object,
5660d02842fSSascha Wildner     UINT32                  NameType,
5679e1c0880SSascha Wildner     ACPI_BUFFER             *RetPathPtr))
5680d02842fSSascha Wildner 
5699e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5700d02842fSSascha Wildner ACPI_STATUS
5710d02842fSSascha Wildner AcpiGetHandle (
5720d02842fSSascha Wildner     ACPI_HANDLE             Parent,
5730d02842fSSascha Wildner     ACPI_STRING             Pathname,
5749e1c0880SSascha Wildner     ACPI_HANDLE             *RetHandle))
5750d02842fSSascha Wildner 
5769e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5770d02842fSSascha Wildner ACPI_STATUS
5780d02842fSSascha Wildner AcpiAttachData (
5790d02842fSSascha Wildner     ACPI_HANDLE             Object,
5800d02842fSSascha Wildner     ACPI_OBJECT_HANDLER     Handler,
5819e1c0880SSascha Wildner     void                    *Data))
5820d02842fSSascha Wildner 
5839e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5840d02842fSSascha Wildner ACPI_STATUS
5850d02842fSSascha Wildner AcpiDetachData (
5860d02842fSSascha Wildner     ACPI_HANDLE             Object,
5879e1c0880SSascha Wildner     ACPI_OBJECT_HANDLER     Handler))
5880d02842fSSascha Wildner 
5899e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5900d02842fSSascha Wildner ACPI_STATUS
5910d02842fSSascha Wildner AcpiGetData (
5920d02842fSSascha Wildner     ACPI_HANDLE             Object,
5930d02842fSSascha Wildner     ACPI_OBJECT_HANDLER     Handler,
5949e1c0880SSascha Wildner     void                    **Data))
5950d02842fSSascha Wildner 
5969e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
5970d02842fSSascha Wildner ACPI_STATUS
5980d02842fSSascha Wildner AcpiDebugTrace (
5990d02842fSSascha Wildner     char                    *Name,
6000d02842fSSascha Wildner     UINT32                  DebugLevel,
6010d02842fSSascha Wildner     UINT32                  DebugLayer,
6029e1c0880SSascha Wildner     UINT32                  Flags))
6030d02842fSSascha Wildner 
6040d02842fSSascha Wildner 
6050d02842fSSascha Wildner /*
6060d02842fSSascha Wildner  * Object manipulation and enumeration
6070d02842fSSascha Wildner  */
6089e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6090d02842fSSascha Wildner ACPI_STATUS
6100d02842fSSascha Wildner AcpiEvaluateObject (
6110d02842fSSascha Wildner     ACPI_HANDLE             Object,
6120d02842fSSascha Wildner     ACPI_STRING             Pathname,
6130d02842fSSascha Wildner     ACPI_OBJECT_LIST        *ParameterObjects,
6149e1c0880SSascha Wildner     ACPI_BUFFER             *ReturnObjectBuffer))
6150d02842fSSascha Wildner 
6169e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6170d02842fSSascha Wildner ACPI_STATUS
6180d02842fSSascha Wildner AcpiEvaluateObjectTyped (
6190d02842fSSascha Wildner     ACPI_HANDLE             Object,
6200d02842fSSascha Wildner     ACPI_STRING             Pathname,
6210d02842fSSascha Wildner     ACPI_OBJECT_LIST        *ExternalParams,
6220d02842fSSascha Wildner     ACPI_BUFFER             *ReturnBuffer,
6239e1c0880SSascha Wildner     ACPI_OBJECT_TYPE        ReturnType))
6240d02842fSSascha Wildner 
6259e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6260d02842fSSascha Wildner ACPI_STATUS
6270d02842fSSascha Wildner AcpiGetObjectInfo (
6280d02842fSSascha Wildner     ACPI_HANDLE             Object,
6299e1c0880SSascha Wildner     ACPI_DEVICE_INFO        **ReturnBuffer))
6300d02842fSSascha Wildner 
6319e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6320d02842fSSascha Wildner ACPI_STATUS
6330d02842fSSascha Wildner AcpiInstallMethod (
6349e1c0880SSascha Wildner     UINT8                   *Buffer))
6350d02842fSSascha Wildner 
6369e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6370d02842fSSascha Wildner ACPI_STATUS
6380d02842fSSascha Wildner AcpiGetNextObject (
6390d02842fSSascha Wildner     ACPI_OBJECT_TYPE        Type,
6400d02842fSSascha Wildner     ACPI_HANDLE             Parent,
6410d02842fSSascha Wildner     ACPI_HANDLE             Child,
6429e1c0880SSascha Wildner     ACPI_HANDLE             *OutHandle))
6430d02842fSSascha Wildner 
6449e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6450d02842fSSascha Wildner ACPI_STATUS
6460d02842fSSascha Wildner AcpiGetType (
6470d02842fSSascha Wildner     ACPI_HANDLE             Object,
6489e1c0880SSascha Wildner     ACPI_OBJECT_TYPE        *OutType))
6490d02842fSSascha Wildner 
6509e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6510d02842fSSascha Wildner ACPI_STATUS
6520d02842fSSascha Wildner AcpiGetParent (
6530d02842fSSascha Wildner     ACPI_HANDLE             Object,
6549e1c0880SSascha Wildner     ACPI_HANDLE             *OutHandle))
6550d02842fSSascha Wildner 
6560d02842fSSascha Wildner 
6570d02842fSSascha Wildner /*
6580d02842fSSascha Wildner  * Handler interfaces
6590d02842fSSascha Wildner  */
6609e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
6610d02842fSSascha Wildner ACPI_STATUS
6620d02842fSSascha Wildner AcpiInstallInitializationHandler (
6630d02842fSSascha Wildner     ACPI_INIT_HANDLER       Handler,
6649e1c0880SSascha Wildner     UINT32                  Function))
6650d02842fSSascha Wildner 
6660d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
6670d02842fSSascha Wildner ACPI_STATUS
6680d02842fSSascha Wildner AcpiInstallSciHandler (
6690d02842fSSascha Wildner     ACPI_SCI_HANDLER        Address,
6700d02842fSSascha Wildner     void                    *Context))
6710d02842fSSascha Wildner 
6720d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
6730d02842fSSascha Wildner ACPI_STATUS
6740d02842fSSascha Wildner AcpiRemoveSciHandler (
6750d02842fSSascha Wildner     ACPI_SCI_HANDLER        Address))
6760d02842fSSascha Wildner 
6770d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
6780d02842fSSascha Wildner ACPI_STATUS
6790d02842fSSascha Wildner AcpiInstallGlobalEventHandler (
6800d02842fSSascha Wildner     ACPI_GBL_EVENT_HANDLER  Handler,
6810d02842fSSascha Wildner     void                    *Context))
6820d02842fSSascha Wildner 
6830d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
6840d02842fSSascha Wildner ACPI_STATUS
6850d02842fSSascha Wildner AcpiInstallFixedEventHandler (
6860d02842fSSascha Wildner     UINT32                  AcpiEvent,
6870d02842fSSascha Wildner     ACPI_EVENT_HANDLER      Handler,
6880d02842fSSascha Wildner     void                    *Context))
6890d02842fSSascha Wildner 
6900d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
6910d02842fSSascha Wildner ACPI_STATUS
6920d02842fSSascha Wildner AcpiRemoveFixedEventHandler (
6930d02842fSSascha Wildner     UINT32                  AcpiEvent,
6940d02842fSSascha Wildner     ACPI_EVENT_HANDLER      Handler))
6950d02842fSSascha Wildner 
6960d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
6970d02842fSSascha Wildner ACPI_STATUS
6980d02842fSSascha Wildner AcpiInstallGpeHandler (
6990d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
7000d02842fSSascha Wildner     UINT32                  GpeNumber,
7010d02842fSSascha Wildner     UINT32                  Type,
7020d02842fSSascha Wildner     ACPI_GPE_HANDLER        Address,
7030d02842fSSascha Wildner     void                    *Context))
7040d02842fSSascha Wildner 
7050d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
7060d02842fSSascha Wildner ACPI_STATUS
7070d02842fSSascha Wildner AcpiRemoveGpeHandler (
7080d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
7090d02842fSSascha Wildner     UINT32                  GpeNumber,
7100d02842fSSascha Wildner     ACPI_GPE_HANDLER        Address))
7110d02842fSSascha Wildner 
7129e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7130d02842fSSascha Wildner ACPI_STATUS
7140d02842fSSascha Wildner AcpiInstallNotifyHandler (
7150d02842fSSascha Wildner     ACPI_HANDLE             Device,
7160d02842fSSascha Wildner     UINT32                  HandlerType,
7170d02842fSSascha Wildner     ACPI_NOTIFY_HANDLER     Handler,
7189e1c0880SSascha Wildner     void                    *Context))
7190d02842fSSascha Wildner 
7209e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7210d02842fSSascha Wildner ACPI_STATUS
7220d02842fSSascha Wildner AcpiRemoveNotifyHandler (
7230d02842fSSascha Wildner     ACPI_HANDLE             Device,
7240d02842fSSascha Wildner     UINT32                  HandlerType,
7259e1c0880SSascha Wildner     ACPI_NOTIFY_HANDLER     Handler))
7260d02842fSSascha Wildner 
7279e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7280d02842fSSascha Wildner ACPI_STATUS
7290d02842fSSascha Wildner AcpiInstallAddressSpaceHandler (
7300d02842fSSascha Wildner     ACPI_HANDLE             Device,
7310d02842fSSascha Wildner     ACPI_ADR_SPACE_TYPE     SpaceId,
7320d02842fSSascha Wildner     ACPI_ADR_SPACE_HANDLER  Handler,
7330d02842fSSascha Wildner     ACPI_ADR_SPACE_SETUP    Setup,
7349e1c0880SSascha Wildner     void                    *Context))
7350d02842fSSascha Wildner 
7369e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7370d02842fSSascha Wildner ACPI_STATUS
7380d02842fSSascha Wildner AcpiRemoveAddressSpaceHandler (
7390d02842fSSascha Wildner     ACPI_HANDLE             Device,
7400d02842fSSascha Wildner     ACPI_ADR_SPACE_TYPE     SpaceId,
7419e1c0880SSascha Wildner     ACPI_ADR_SPACE_HANDLER  Handler))
7420d02842fSSascha Wildner 
7439e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7440d02842fSSascha Wildner ACPI_STATUS
7450d02842fSSascha Wildner AcpiInstallExceptionHandler (
7469e1c0880SSascha Wildner     ACPI_EXCEPTION_HANDLER  Handler))
7470d02842fSSascha Wildner 
7489e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7490d02842fSSascha Wildner ACPI_STATUS
7500d02842fSSascha Wildner AcpiInstallInterfaceHandler (
7519e1c0880SSascha Wildner     ACPI_INTERFACE_HANDLER  Handler))
7520d02842fSSascha Wildner 
7530d02842fSSascha Wildner 
7540d02842fSSascha Wildner /*
7550d02842fSSascha Wildner  * Global Lock interfaces
7560d02842fSSascha Wildner  */
7570d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
7580d02842fSSascha Wildner ACPI_STATUS
7590d02842fSSascha Wildner AcpiAcquireGlobalLock (
7600d02842fSSascha Wildner     UINT16                  Timeout,
7610d02842fSSascha Wildner     UINT32                  *Handle))
7620d02842fSSascha Wildner 
7630d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
7640d02842fSSascha Wildner ACPI_STATUS
7650d02842fSSascha Wildner AcpiReleaseGlobalLock (
7660d02842fSSascha Wildner     UINT32                  Handle))
7670d02842fSSascha Wildner 
7680d02842fSSascha Wildner 
7690d02842fSSascha Wildner /*
7700d02842fSSascha Wildner  * Interfaces to AML mutex objects
7710d02842fSSascha Wildner  */
7729e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7730d02842fSSascha Wildner ACPI_STATUS
7740d02842fSSascha Wildner AcpiAcquireMutex (
7750d02842fSSascha Wildner     ACPI_HANDLE             Handle,
7760d02842fSSascha Wildner     ACPI_STRING             Pathname,
7779e1c0880SSascha Wildner     UINT16                  Timeout))
7780d02842fSSascha Wildner 
7799e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
7800d02842fSSascha Wildner ACPI_STATUS
7810d02842fSSascha Wildner AcpiReleaseMutex (
7820d02842fSSascha Wildner     ACPI_HANDLE             Handle,
7839e1c0880SSascha Wildner     ACPI_STRING             Pathname))
7840d02842fSSascha Wildner 
7850d02842fSSascha Wildner 
7860d02842fSSascha Wildner /*
7870d02842fSSascha Wildner  * Fixed Event interfaces
7880d02842fSSascha Wildner  */
7890d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
7900d02842fSSascha Wildner ACPI_STATUS
7910d02842fSSascha Wildner AcpiEnableEvent (
7920d02842fSSascha Wildner     UINT32                  Event,
7930d02842fSSascha Wildner     UINT32                  Flags))
7940d02842fSSascha Wildner 
7950d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
7960d02842fSSascha Wildner ACPI_STATUS
7970d02842fSSascha Wildner AcpiDisableEvent (
7980d02842fSSascha Wildner     UINT32                  Event,
7990d02842fSSascha Wildner     UINT32                  Flags))
8000d02842fSSascha Wildner 
8010d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8020d02842fSSascha Wildner ACPI_STATUS
8030d02842fSSascha Wildner AcpiClearEvent (
8040d02842fSSascha Wildner     UINT32                  Event))
8050d02842fSSascha Wildner 
8060d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8070d02842fSSascha Wildner ACPI_STATUS
8080d02842fSSascha Wildner AcpiGetEventStatus (
8090d02842fSSascha Wildner     UINT32                  Event,
8100d02842fSSascha Wildner     ACPI_EVENT_STATUS       *EventStatus))
8110d02842fSSascha Wildner 
8120d02842fSSascha Wildner 
8130d02842fSSascha Wildner /*
8140d02842fSSascha Wildner  * General Purpose Event (GPE) Interfaces
8150d02842fSSascha Wildner  */
8160d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8170d02842fSSascha Wildner ACPI_STATUS
8180d02842fSSascha Wildner AcpiUpdateAllGpes (
8190d02842fSSascha Wildner     void))
8200d02842fSSascha Wildner 
8210d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8220d02842fSSascha Wildner ACPI_STATUS
8230d02842fSSascha Wildner AcpiEnableGpe (
8240d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8250d02842fSSascha Wildner     UINT32                  GpeNumber))
8260d02842fSSascha Wildner 
8270d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8280d02842fSSascha Wildner ACPI_STATUS
8290d02842fSSascha Wildner AcpiDisableGpe (
8300d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8310d02842fSSascha Wildner     UINT32                  GpeNumber))
8320d02842fSSascha Wildner 
8330d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8340d02842fSSascha Wildner ACPI_STATUS
8350d02842fSSascha Wildner AcpiClearGpe (
8360d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8370d02842fSSascha Wildner     UINT32                  GpeNumber))
8380d02842fSSascha Wildner 
8390d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8400d02842fSSascha Wildner ACPI_STATUS
8410d02842fSSascha Wildner AcpiSetGpe (
8420d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8430d02842fSSascha Wildner     UINT32                  GpeNumber,
8440d02842fSSascha Wildner     UINT8                   Action))
8450d02842fSSascha Wildner 
8460d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8470d02842fSSascha Wildner ACPI_STATUS
8480d02842fSSascha Wildner AcpiFinishGpe (
8490d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8500d02842fSSascha Wildner     UINT32                  GpeNumber))
8510d02842fSSascha Wildner 
8520d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8530d02842fSSascha Wildner ACPI_STATUS
8540d02842fSSascha Wildner AcpiSetupGpeForWake (
8550d02842fSSascha Wildner     ACPI_HANDLE             ParentDevice,
8560d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8570d02842fSSascha Wildner     UINT32                  GpeNumber))
8580d02842fSSascha Wildner 
8590d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8600d02842fSSascha Wildner ACPI_STATUS
8610d02842fSSascha Wildner AcpiSetGpeWakeMask (
8620d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8630d02842fSSascha Wildner     UINT32                  GpeNumber,
8640d02842fSSascha Wildner     UINT8                   Action))
8650d02842fSSascha Wildner 
8660d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8670d02842fSSascha Wildner ACPI_STATUS
8680d02842fSSascha Wildner AcpiGetGpeStatus (
8690d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8700d02842fSSascha Wildner     UINT32                  GpeNumber,
8710d02842fSSascha Wildner     ACPI_EVENT_STATUS       *EventStatus))
8720d02842fSSascha Wildner 
8730d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8740d02842fSSascha Wildner ACPI_STATUS
8750d02842fSSascha Wildner AcpiDisableAllGpes (
8760d02842fSSascha Wildner     void))
8770d02842fSSascha Wildner 
8780d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8790d02842fSSascha Wildner ACPI_STATUS
8800d02842fSSascha Wildner AcpiEnableAllRuntimeGpes (
8810d02842fSSascha Wildner     void))
8820d02842fSSascha Wildner 
8830d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8840d02842fSSascha Wildner ACPI_STATUS
8850d02842fSSascha Wildner AcpiGetGpeDevice (
8860d02842fSSascha Wildner     UINT32                  GpeIndex,
8870d02842fSSascha Wildner     ACPI_HANDLE             *GpeDevice))
8880d02842fSSascha Wildner 
8890d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8900d02842fSSascha Wildner ACPI_STATUS
8910d02842fSSascha Wildner AcpiInstallGpeBlock (
8920d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice,
8930d02842fSSascha Wildner     ACPI_GENERIC_ADDRESS    *GpeBlockAddress,
8940d02842fSSascha Wildner     UINT32                  RegisterCount,
8950d02842fSSascha Wildner     UINT32                  InterruptNumber))
8960d02842fSSascha Wildner 
8970d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
8980d02842fSSascha Wildner ACPI_STATUS
8990d02842fSSascha Wildner AcpiRemoveGpeBlock (
9000d02842fSSascha Wildner     ACPI_HANDLE             GpeDevice))
9010d02842fSSascha Wildner 
9020d02842fSSascha Wildner 
9030d02842fSSascha Wildner /*
9040d02842fSSascha Wildner  * Resource interfaces
9050d02842fSSascha Wildner  */
9060d02842fSSascha Wildner typedef
9070d02842fSSascha Wildner ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
9080d02842fSSascha Wildner     ACPI_RESOURCE           *Resource,
9090d02842fSSascha Wildner     void                    *Context);
9100d02842fSSascha Wildner 
9119e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9120d02842fSSascha Wildner ACPI_STATUS
9130d02842fSSascha Wildner AcpiGetVendorResource (
9140d02842fSSascha Wildner     ACPI_HANDLE             Device,
9150d02842fSSascha Wildner     char                    *Name,
9160d02842fSSascha Wildner     ACPI_VENDOR_UUID        *Uuid,
9179e1c0880SSascha Wildner     ACPI_BUFFER             *RetBuffer))
9180d02842fSSascha Wildner 
9199e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9200d02842fSSascha Wildner ACPI_STATUS
9210d02842fSSascha Wildner AcpiGetCurrentResources (
9220d02842fSSascha Wildner     ACPI_HANDLE             Device,
9239e1c0880SSascha Wildner     ACPI_BUFFER             *RetBuffer))
9240d02842fSSascha Wildner 
9259e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9260d02842fSSascha Wildner ACPI_STATUS
9270d02842fSSascha Wildner AcpiGetPossibleResources (
9280d02842fSSascha Wildner     ACPI_HANDLE             Device,
9299e1c0880SSascha Wildner     ACPI_BUFFER             *RetBuffer))
9300d02842fSSascha Wildner 
9319e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9320d02842fSSascha Wildner ACPI_STATUS
9330d02842fSSascha Wildner AcpiGetEventResources (
9340d02842fSSascha Wildner     ACPI_HANDLE             DeviceHandle,
9359e1c0880SSascha Wildner     ACPI_BUFFER             *RetBuffer))
9360d02842fSSascha Wildner 
9379e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9380d02842fSSascha Wildner ACPI_STATUS
9390d02842fSSascha Wildner AcpiWalkResourceBuffer (
9400d02842fSSascha Wildner     ACPI_BUFFER                 *Buffer,
9410d02842fSSascha Wildner     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
9429e1c0880SSascha Wildner     void                        *Context))
9430d02842fSSascha Wildner 
9449e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9450d02842fSSascha Wildner ACPI_STATUS
9460d02842fSSascha Wildner AcpiWalkResources (
9470d02842fSSascha Wildner     ACPI_HANDLE                 Device,
9480d02842fSSascha Wildner     char                        *Name,
9490d02842fSSascha Wildner     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
9509e1c0880SSascha Wildner     void                        *Context))
9510d02842fSSascha Wildner 
9529e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9530d02842fSSascha Wildner ACPI_STATUS
9540d02842fSSascha Wildner AcpiSetCurrentResources (
9550d02842fSSascha Wildner     ACPI_HANDLE             Device,
9569e1c0880SSascha Wildner     ACPI_BUFFER             *InBuffer))
9570d02842fSSascha Wildner 
9589e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9590d02842fSSascha Wildner ACPI_STATUS
9600d02842fSSascha Wildner AcpiGetIrqRoutingTable (
9610d02842fSSascha Wildner     ACPI_HANDLE             Device,
9629e1c0880SSascha Wildner     ACPI_BUFFER             *RetBuffer))
9630d02842fSSascha Wildner 
9649e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9650d02842fSSascha Wildner ACPI_STATUS
9660d02842fSSascha Wildner AcpiResourceToAddress64 (
9670d02842fSSascha Wildner     ACPI_RESOURCE           *Resource,
9689e1c0880SSascha Wildner     ACPI_RESOURCE_ADDRESS64 *Out))
9690d02842fSSascha Wildner 
9709e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9710d02842fSSascha Wildner ACPI_STATUS
9720d02842fSSascha Wildner AcpiBufferToResource (
9730d02842fSSascha Wildner     UINT8                   *AmlBuffer,
9740d02842fSSascha Wildner     UINT16                  AmlBufferLength,
9759e1c0880SSascha Wildner     ACPI_RESOURCE           **ResourcePtr))
9760d02842fSSascha Wildner 
9770d02842fSSascha Wildner 
9780d02842fSSascha Wildner /*
9790d02842fSSascha Wildner  * Hardware (ACPI device) interfaces
9800d02842fSSascha Wildner  */
9819e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9820d02842fSSascha Wildner ACPI_STATUS
9830d02842fSSascha Wildner AcpiReset (
9849e1c0880SSascha Wildner     void))
9850d02842fSSascha Wildner 
9869e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9870d02842fSSascha Wildner ACPI_STATUS
9880d02842fSSascha Wildner AcpiRead (
9890d02842fSSascha Wildner     UINT64                  *Value,
9909e1c0880SSascha Wildner     ACPI_GENERIC_ADDRESS    *Reg))
9910d02842fSSascha Wildner 
9929e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
9930d02842fSSascha Wildner ACPI_STATUS
9940d02842fSSascha Wildner AcpiWrite (
9950d02842fSSascha Wildner     UINT64                  Value,
9969e1c0880SSascha Wildner     ACPI_GENERIC_ADDRESS    *Reg))
9970d02842fSSascha Wildner 
9980d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
9990d02842fSSascha Wildner ACPI_STATUS
10000d02842fSSascha Wildner AcpiReadBitRegister (
10010d02842fSSascha Wildner     UINT32                  RegisterId,
10020d02842fSSascha Wildner     UINT32                  *ReturnValue))
10030d02842fSSascha Wildner 
10040d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10050d02842fSSascha Wildner ACPI_STATUS
10060d02842fSSascha Wildner AcpiWriteBitRegister (
10070d02842fSSascha Wildner     UINT32                  RegisterId,
10080d02842fSSascha Wildner     UINT32                  Value))
10090d02842fSSascha Wildner 
10100d02842fSSascha Wildner 
10110d02842fSSascha Wildner /*
10120d02842fSSascha Wildner  * Sleep/Wake interfaces
10130d02842fSSascha Wildner  */
10149e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
10150d02842fSSascha Wildner ACPI_STATUS
10160d02842fSSascha Wildner AcpiGetSleepTypeData (
10170d02842fSSascha Wildner     UINT8                   SleepState,
10180d02842fSSascha Wildner     UINT8                   *Slp_TypA,
10199e1c0880SSascha Wildner     UINT8                   *Slp_TypB))
10200d02842fSSascha Wildner 
10219e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
10220d02842fSSascha Wildner ACPI_STATUS
10230d02842fSSascha Wildner AcpiEnterSleepStatePrep (
10249e1c0880SSascha Wildner     UINT8                   SleepState))
10250d02842fSSascha Wildner 
10269e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
10270d02842fSSascha Wildner ACPI_STATUS
10280d02842fSSascha Wildner AcpiEnterSleepState (
10299e1c0880SSascha Wildner     UINT8                   SleepState))
10300d02842fSSascha Wildner 
10310d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10320d02842fSSascha Wildner ACPI_STATUS
10330d02842fSSascha Wildner AcpiEnterSleepStateS4bios (
10340d02842fSSascha Wildner     void))
10350d02842fSSascha Wildner 
10369e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
10370d02842fSSascha Wildner ACPI_STATUS
10380d02842fSSascha Wildner AcpiLeaveSleepStatePrep (
10399e1c0880SSascha Wildner     UINT8                   SleepState))
10400d02842fSSascha Wildner 
10419e1c0880SSascha Wildner ACPI_EXTERNAL_RETURN_STATUS (
10420d02842fSSascha Wildner ACPI_STATUS
10430d02842fSSascha Wildner AcpiLeaveSleepState (
10449e1c0880SSascha Wildner     UINT8                   SleepState))
10450d02842fSSascha Wildner 
10460d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10470d02842fSSascha Wildner ACPI_STATUS
10480d02842fSSascha Wildner AcpiSetFirmwareWakingVector (
10490d02842fSSascha Wildner     UINT32                  PhysicalAddress))
10500d02842fSSascha Wildner 
10510d02842fSSascha Wildner #if ACPI_MACHINE_WIDTH == 64
10520d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10530d02842fSSascha Wildner ACPI_STATUS
10540d02842fSSascha Wildner AcpiSetFirmwareWakingVector64 (
10550d02842fSSascha Wildner     UINT64                  PhysicalAddress))
10560d02842fSSascha Wildner #endif
10570d02842fSSascha Wildner 
10580d02842fSSascha Wildner 
10590d02842fSSascha Wildner /*
10600d02842fSSascha Wildner  * ACPI Timer interfaces
10610d02842fSSascha Wildner  */
10620d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10630d02842fSSascha Wildner ACPI_STATUS
10640d02842fSSascha Wildner AcpiGetTimerResolution (
10650d02842fSSascha Wildner     UINT32                  *Resolution))
10660d02842fSSascha Wildner 
10670d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10680d02842fSSascha Wildner ACPI_STATUS
10690d02842fSSascha Wildner AcpiGetTimer (
10700d02842fSSascha Wildner     UINT32                  *Ticks))
10710d02842fSSascha Wildner 
10720d02842fSSascha Wildner ACPI_HW_DEPENDENT_RETURN_STATUS (
10730d02842fSSascha Wildner ACPI_STATUS
10740d02842fSSascha Wildner AcpiGetTimerDuration (
10750d02842fSSascha Wildner     UINT32                  StartTicks,
10760d02842fSSascha Wildner     UINT32                  EndTicks,
10770d02842fSSascha Wildner     UINT32                  *TimeElapsed))
10780d02842fSSascha Wildner 
10790d02842fSSascha Wildner 
10800d02842fSSascha Wildner /*
10810d02842fSSascha Wildner  * Error/Warning output
10820d02842fSSascha Wildner  */
10839e1c0880SSascha Wildner ACPI_MSG_DEPENDENT_RETURN_VOID (
10840d02842fSSascha Wildner ACPI_PRINTF_LIKE(3)
10850d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
10860d02842fSSascha Wildner AcpiError (
10870d02842fSSascha Wildner     const char              *ModuleName,
10880d02842fSSascha Wildner     UINT32                  LineNumber,
10890d02842fSSascha Wildner     const char              *Format,
10909e1c0880SSascha Wildner     ...))
10910d02842fSSascha Wildner 
10929e1c0880SSascha Wildner ACPI_MSG_DEPENDENT_RETURN_VOID (
10930d02842fSSascha Wildner ACPI_PRINTF_LIKE(4)
10940d02842fSSascha Wildner void  ACPI_INTERNAL_VAR_XFACE
10950d02842fSSascha Wildner AcpiException (
10960d02842fSSascha Wildner     const char              *ModuleName,
10970d02842fSSascha Wildner     UINT32                  LineNumber,
10980d02842fSSascha Wildner     ACPI_STATUS             Status,
10990d02842fSSascha Wildner     const char              *Format,
11009e1c0880SSascha Wildner     ...))
11010d02842fSSascha Wildner 
11029e1c0880SSascha Wildner ACPI_MSG_DEPENDENT_RETURN_VOID (
11030d02842fSSascha Wildner ACPI_PRINTF_LIKE(3)
11040d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
11050d02842fSSascha Wildner AcpiWarning (
11060d02842fSSascha Wildner     const char              *ModuleName,
11070d02842fSSascha Wildner     UINT32                  LineNumber,
11080d02842fSSascha Wildner     const char              *Format,
11099e1c0880SSascha Wildner     ...))
11100d02842fSSascha Wildner 
11119e1c0880SSascha Wildner ACPI_MSG_DEPENDENT_RETURN_VOID (
11120d02842fSSascha Wildner ACPI_PRINTF_LIKE(3)
11130d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
11140d02842fSSascha Wildner AcpiInfo (
11150d02842fSSascha Wildner     const char              *ModuleName,
11160d02842fSSascha Wildner     UINT32                  LineNumber,
11170d02842fSSascha Wildner     const char              *Format,
11189e1c0880SSascha Wildner     ...))
11190d02842fSSascha Wildner 
11209e1c0880SSascha Wildner ACPI_MSG_DEPENDENT_RETURN_VOID (
11210d02842fSSascha Wildner ACPI_PRINTF_LIKE(3)
11220d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
11230d02842fSSascha Wildner AcpiBiosError (
11240d02842fSSascha Wildner     const char              *ModuleName,
11250d02842fSSascha Wildner     UINT32                  LineNumber,
11260d02842fSSascha Wildner     const char              *Format,
11279e1c0880SSascha Wildner     ...))
11280d02842fSSascha Wildner 
11299e1c0880SSascha Wildner ACPI_MSG_DEPENDENT_RETURN_VOID (
11300d02842fSSascha Wildner ACPI_PRINTF_LIKE(3)
11310d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
11320d02842fSSascha Wildner AcpiBiosWarning (
11330d02842fSSascha Wildner     const char              *ModuleName,
11340d02842fSSascha Wildner     UINT32                  LineNumber,
11350d02842fSSascha Wildner     const char              *Format,
11369e1c0880SSascha Wildner     ...))
11370d02842fSSascha Wildner 
11380d02842fSSascha Wildner 
11390d02842fSSascha Wildner /*
11400d02842fSSascha Wildner  * Debug output
11410d02842fSSascha Wildner  */
11429e1c0880SSascha Wildner ACPI_DBG_DEPENDENT_RETURN_VOID (
11430d02842fSSascha Wildner ACPI_PRINTF_LIKE(6)
11440d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
11450d02842fSSascha Wildner AcpiDebugPrint (
11460d02842fSSascha Wildner     UINT32                  RequestedDebugLevel,
11470d02842fSSascha Wildner     UINT32                  LineNumber,
11480d02842fSSascha Wildner     const char              *FunctionName,
11490d02842fSSascha Wildner     const char              *ModuleName,
11500d02842fSSascha Wildner     UINT32                  ComponentId,
11510d02842fSSascha Wildner     const char              *Format,
11529e1c0880SSascha Wildner     ...))
11530d02842fSSascha Wildner 
11549e1c0880SSascha Wildner ACPI_DBG_DEPENDENT_RETURN_VOID (
11550d02842fSSascha Wildner ACPI_PRINTF_LIKE(6)
11560d02842fSSascha Wildner void ACPI_INTERNAL_VAR_XFACE
11570d02842fSSascha Wildner AcpiDebugPrintRaw (
11580d02842fSSascha Wildner     UINT32                  RequestedDebugLevel,
11590d02842fSSascha Wildner     UINT32                  LineNumber,
11600d02842fSSascha Wildner     const char              *FunctionName,
11610d02842fSSascha Wildner     const char              *ModuleName,
11620d02842fSSascha Wildner     UINT32                  ComponentId,
11630d02842fSSascha Wildner     const char              *Format,
11649e1c0880SSascha Wildner     ...))
11650d02842fSSascha Wildner 
1166*5f39c7e7SSascha Wildner ACPI_APP_DEPENDENT_RETURN_VOID (
1167*5f39c7e7SSascha Wildner ACPI_PRINTF_LIKE(1)
1168*5f39c7e7SSascha Wildner void ACPI_INTERNAL_VAR_XFACE
1169*5f39c7e7SSascha Wildner AcpiLogError (
1170*5f39c7e7SSascha Wildner     const char              *Format,
1171*5f39c7e7SSascha Wildner     ...))
1172*5f39c7e7SSascha Wildner 
11730d02842fSSascha Wildner #endif /* __ACXFACE_H__ */
1174