acpixf.h revision 1.1.1.18
11.1Sjruoho/******************************************************************************
21.1Sjruoho *
31.1Sjruoho * Name: acpixf.h - External interfaces to the ACPI subsystem
41.1Sjruoho *
51.1Sjruoho *****************************************************************************/
61.1Sjruoho
71.1.1.2Sjruoho/*
81.1.1.16Schristos * Copyright (C) 2000 - 2018, Intel Corp.
91.1Sjruoho * All rights reserved.
101.1Sjruoho *
111.1.1.2Sjruoho * Redistribution and use in source and binary forms, with or without
121.1.1.2Sjruoho * modification, are permitted provided that the following conditions
131.1.1.2Sjruoho * are met:
141.1.1.2Sjruoho * 1. Redistributions of source code must retain the above copyright
151.1.1.2Sjruoho *    notice, this list of conditions, and the following disclaimer,
161.1.1.2Sjruoho *    without modification.
171.1.1.2Sjruoho * 2. Redistributions in binary form must reproduce at minimum a disclaimer
181.1.1.2Sjruoho *    substantially similar to the "NO WARRANTY" disclaimer below
191.1.1.2Sjruoho *    ("Disclaimer") and any redistribution must be conditioned upon
201.1.1.2Sjruoho *    including a substantially similar Disclaimer requirement for further
211.1.1.2Sjruoho *    binary redistribution.
221.1.1.2Sjruoho * 3. Neither the names of the above-listed copyright holders nor the names
231.1.1.2Sjruoho *    of any contributors may be used to endorse or promote products derived
241.1.1.2Sjruoho *    from this software without specific prior written permission.
251.1.1.2Sjruoho *
261.1.1.2Sjruoho * Alternatively, this software may be distributed under the terms of the
271.1.1.2Sjruoho * GNU General Public License ("GPL") version 2 as published by the Free
281.1.1.2Sjruoho * Software Foundation.
291.1.1.2Sjruoho *
301.1.1.2Sjruoho * NO WARRANTY
311.1.1.2Sjruoho * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
321.1.1.2Sjruoho * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
331.1.1.2Sjruoho * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
341.1.1.2Sjruoho * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
351.1.1.2Sjruoho * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
361.1.1.2Sjruoho * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
371.1.1.2Sjruoho * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
381.1.1.2Sjruoho * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
391.1.1.2Sjruoho * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
401.1.1.2Sjruoho * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
411.1.1.2Sjruoho * POSSIBILITY OF SUCH DAMAGES.
421.1.1.2Sjruoho */
431.1Sjruoho
441.1Sjruoho#ifndef __ACXFACE_H__
451.1Sjruoho#define __ACXFACE_H__
461.1Sjruoho
471.1Sjruoho/* Current ACPICA subsystem version in YYYYMMDD format */
481.1Sjruoho
491.1.1.18Schristos#define ACPI_CA_VERSION                 0x20180810
501.1Sjruoho
511.1.1.4Schristos#include "acconfig.h"
521.1Sjruoho#include "actypes.h"
531.1Sjruoho#include "actbl.h"
541.1.1.4Schristos#include "acbuffer.h"
551.1Sjruoho
561.1.1.5Schristos
571.1.1.5Schristos/*****************************************************************************
581.1.1.5Schristos *
591.1.1.5Schristos * Macros used for ACPICA globals and configuration
601.1.1.5Schristos *
611.1.1.5Schristos ****************************************************************************/
621.1.1.5Schristos
631.1.1.5Schristos/*
641.1.1.5Schristos * Ensure that global variables are defined and initialized only once.
651.1.1.5Schristos *
661.1.1.5Schristos * The use of these macros allows for a single list of globals (here)
671.1.1.5Schristos * in order to simplify maintenance of the code.
681.1.1.5Schristos */
691.1.1.5Schristos#ifdef DEFINE_ACPI_GLOBALS
701.1.1.5Schristos#define ACPI_GLOBAL(type,name) \
711.1.1.5Schristos    extern type name; \
721.1.1.5Schristos    type name
731.1.1.5Schristos
741.1.1.5Schristos#define ACPI_INIT_GLOBAL(type,name,value) \
751.1.1.5Schristos    type name=value
761.1.1.5Schristos
771.1.1.5Schristos#else
781.1.1.5Schristos#ifndef ACPI_GLOBAL
791.1.1.5Schristos#define ACPI_GLOBAL(type,name) \
801.1.1.5Schristos    extern type name
811.1.1.5Schristos#endif
821.1.1.5Schristos
831.1.1.5Schristos#ifndef ACPI_INIT_GLOBAL
841.1.1.5Schristos#define ACPI_INIT_GLOBAL(type,name,value) \
851.1.1.5Schristos    extern type name
861.1.1.5Schristos#endif
871.1.1.5Schristos#endif
881.1.1.5Schristos
891.1.1.5Schristos/*
901.1.1.5Schristos * These macros configure the various ACPICA interfaces. They are
911.1.1.5Schristos * useful for generating stub inline functions for features that are
921.1.1.5Schristos * configured out of the current kernel or ACPICA application.
931.1.1.5Schristos */
941.1.1.5Schristos#ifndef ACPI_EXTERNAL_RETURN_STATUS
951.1.1.5Schristos#define ACPI_EXTERNAL_RETURN_STATUS(Prototype) \
961.1.1.5Schristos    Prototype;
971.1.1.5Schristos#endif
981.1.1.5Schristos
991.1.1.5Schristos#ifndef ACPI_EXTERNAL_RETURN_OK
1001.1.1.5Schristos#define ACPI_EXTERNAL_RETURN_OK(Prototype) \
1011.1.1.5Schristos    Prototype;
1021.1.1.5Schristos#endif
1031.1.1.5Schristos
1041.1.1.5Schristos#ifndef ACPI_EXTERNAL_RETURN_VOID
1051.1.1.5Schristos#define ACPI_EXTERNAL_RETURN_VOID(Prototype) \
1061.1.1.5Schristos    Prototype;
1071.1.1.5Schristos#endif
1081.1.1.5Schristos
1091.1.1.5Schristos#ifndef ACPI_EXTERNAL_RETURN_UINT32
1101.1.1.5Schristos#define ACPI_EXTERNAL_RETURN_UINT32(Prototype) \
1111.1.1.5Schristos    Prototype;
1121.1.1.5Schristos#endif
1131.1.1.5Schristos
1141.1.1.5Schristos#ifndef ACPI_EXTERNAL_RETURN_PTR
1151.1.1.5Schristos#define ACPI_EXTERNAL_RETURN_PTR(Prototype) \
1161.1.1.5Schristos    Prototype;
1171.1.1.5Schristos#endif
1181.1.1.5Schristos
1191.1.1.5Schristos
1201.1.1.5Schristos/*****************************************************************************
1211.1.1.5Schristos *
1221.1.1.5Schristos * Public globals and runtime configuration options
1231.1.1.5Schristos *
1241.1.1.5Schristos ****************************************************************************/
1251.1.1.5Schristos
1261.1.1.5Schristos/*
1271.1.1.5Schristos * Enable "slack mode" of the AML interpreter?  Default is FALSE, and the
1281.1.1.5Schristos * interpreter strictly follows the ACPI specification. Setting to TRUE
1291.1.1.5Schristos * allows the interpreter to ignore certain errors and/or bad AML constructs.
1301.1.1.5Schristos *
1311.1.1.5Schristos * Currently, these features are enabled by this flag:
1321.1.1.5Schristos *
1331.1.1.5Schristos * 1) Allow "implicit return" of last value in a control method
1341.1.1.5Schristos * 2) Allow access beyond the end of an operation region
1351.1.1.5Schristos * 3) Allow access to uninitialized locals/args (auto-init to integer 0)
1361.1.1.5Schristos * 4) Allow ANY object type to be a source operand for the Store() operator
1371.1.1.5Schristos * 5) Allow unresolved references (invalid target name) in package objects
1381.1.1.5Schristos * 6) Enable warning messages for behavior that is not ACPI spec compliant
1391.1.1.5Schristos */
1401.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableInterpreterSlack, FALSE);
1411.1.1.5Schristos
1421.1.1.5Schristos/*
1431.1.1.5Schristos * Automatically serialize all methods that create named objects? Default
1441.1.1.5Schristos * is TRUE, meaning that all NonSerialized methods are scanned once at
1451.1.1.5Schristos * table load time to determine those that create named objects. Methods
1461.1.1.5Schristos * that create named objects are marked Serialized in order to prevent
1471.1.1.5Schristos * possible run-time problems if they are entered by more than one thread.
1481.1.1.5Schristos */
1491.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_AutoSerializeMethods, TRUE);
1501.1.1.5Schristos
1511.1.1.5Schristos/*
1521.1.1.5Schristos * Create the predefined _OSI method in the namespace? Default is TRUE
1531.1.1.5Schristos * because ACPICA is fully compatible with other ACPI implementations.
1541.1.1.5Schristos * Changing this will revert ACPICA (and machine ASL) to pre-OSI behavior.
1551.1.1.5Schristos */
1561.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CreateOsiMethod, TRUE);
1571.1.1.5Schristos
1581.1.1.5Schristos/*
1591.1.1.5Schristos * Optionally use default values for the ACPI register widths. Set this to
1601.1.1.5Schristos * TRUE to use the defaults, if an FADT contains incorrect widths/lengths.
1611.1.1.5Schristos */
1621.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_UseDefaultRegisterWidths, TRUE);
1631.1.1.5Schristos
1641.1.1.5Schristos/*
1651.1.1.14Schristos * Whether or not to validate (map) an entire table to verify
1661.1.1.14Schristos * checksum/duplication in early stage before install. Set this to TRUE to
1671.1.1.14Schristos * allow early table validation before install it to the table manager.
1681.1.1.14Schristos * Note that enabling this option causes errors to happen in some OSPMs
1691.1.1.14Schristos * during early initialization stages. Default behavior is to allow such
1701.1.1.14Schristos * validation.
1711.1.1.5Schristos */
1721.1.1.14SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableTableValidation, TRUE);
1731.1.1.5Schristos
1741.1.1.5Schristos/*
1751.1.1.5Schristos * Optionally enable output from the AML Debug Object.
1761.1.1.5Schristos */
1771.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableAmlDebugObject, FALSE);
1781.1.1.5Schristos
1791.1.1.5Schristos/*
1801.1.1.5Schristos * Optionally copy the entire DSDT to local memory (instead of simply
1811.1.1.5Schristos * mapping it.) There are some BIOSs that corrupt or replace the original
1821.1.1.5Schristos * DSDT, creating the need for this option. Default is FALSE, do not copy
1831.1.1.5Schristos * the DSDT.
1841.1.1.5Schristos */
1851.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CopyDsdtLocally, FALSE);
1861.1.1.5Schristos
1871.1.1.5Schristos/*
1881.1.1.5Schristos * Optionally ignore an XSDT if present and use the RSDT instead.
1891.1.1.5Schristos * Although the ACPI specification requires that an XSDT be used instead
1901.1.1.5Schristos * of the RSDT, the XSDT has been found to be corrupt or ill-formed on
1911.1.1.5Schristos * some machines. Default behavior is to use the XSDT if present.
1921.1.1.5Schristos */
1931.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DoNotUseXsdt, FALSE);
1941.1.1.5Schristos
1951.1.1.5Schristos/*
1961.1.1.9Schristos * Optionally support group module level code.
1971.1.1.16Schristos * NOTE, this is essentially obsolete and will be removed soon
1981.1.1.16Schristos * (01/2018).
1991.1.1.8Schristos */
2001.1.1.9SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_GroupModuleLevelCode, FALSE);
2011.1.1.8Schristos
2021.1.1.8Schristos/*
2031.1.1.16Schristos * Optionally support module level code by parsing an entire table as
2041.1.1.16Schristos * a method as it is loaded. Default is TRUE.
2051.1.1.16Schristos * NOTE, this is essentially obsolete and will be removed soon
2061.1.1.16Schristos * (01/2018).
2071.1.1.11Schristos */
2081.1.1.16SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_ExecuteTablesAsMethods, TRUE);
2091.1.1.11Schristos
2101.1.1.11Schristos/*
2111.1.1.5Schristos * Optionally use 32-bit FADT addresses if and when there is a conflict
2121.1.1.5Schristos * (address mismatch) between the 32-bit and 64-bit versions of the
2131.1.1.5Schristos * address. Although ACPICA adheres to the ACPI specification which
2141.1.1.5Schristos * requires the use of the corresponding 64-bit address if it is non-zero,
2151.1.1.5Schristos * some machines have been found to have a corrupted non-zero 64-bit
2161.1.1.5Schristos * address. Default is FALSE, do not favor the 32-bit addresses.
2171.1.1.5Schristos */
2181.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFadtAddresses, FALSE);
2191.1.1.5Schristos
2201.1.1.5Schristos/*
2211.1.1.7Schristos * Optionally use 32-bit FACS table addresses.
2221.1.1.7Schristos * It is reported that some platforms fail to resume from system suspending
2231.1.1.7Schristos * if 64-bit FACS table address is selected:
2241.1.1.7Schristos * https://bugzilla.kernel.org/show_bug.cgi?id=74021
2251.1.1.7Schristos * Default is TRUE, favor the 32-bit addresses.
2261.1.1.7Schristos */
2271.1.1.7SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFacsAddresses, TRUE);
2281.1.1.7Schristos
2291.1.1.7Schristos/*
2301.1.1.5Schristos * Optionally truncate I/O addresses to 16 bits. Provides compatibility
2311.1.1.5Schristos * with other ACPI implementations. NOTE: During ACPICA initialization,
2321.1.1.5Schristos * this value is set to TRUE if any Windows OSI strings have been
2331.1.1.5Schristos * requested by the BIOS.
2341.1.1.5Schristos */
2351.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_TruncateIoAddresses, FALSE);
2361.1.1.5Schristos
2371.1.1.5Schristos/*
2381.1.1.5Schristos * Disable runtime checking and repair of values returned by control methods.
2391.1.1.5Schristos * Use only if the repair is causing a problem on a particular machine.
2401.1.1.5Schristos */
2411.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableAutoRepair, FALSE);
2421.1.1.5Schristos
2431.1.1.5Schristos/*
2441.1.1.5Schristos * Optionally do not install any SSDTs from the RSDT/XSDT during initialization.
2451.1.1.5Schristos * This can be useful for debugging ACPI problems on some machines.
2461.1.1.5Schristos */
2471.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableSsdtTableInstall, FALSE);
2481.1.1.5Schristos
2491.1.1.5Schristos/*
2501.1.1.7Schristos * Optionally enable runtime namespace override.
2511.1.1.7Schristos */
2521.1.1.7SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_RuntimeNamespaceOverride, TRUE);
2531.1.1.7Schristos
2541.1.1.7Schristos/*
2551.1.1.5Schristos * We keep track of the latest version of Windows that has been requested by
2561.1.1.5Schristos * the BIOS. ACPI 5.0.
2571.1.1.5Schristos */
2581.1.1.5SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_OsiData, 0);
2591.1.1.5Schristos
2601.1.1.5Schristos/*
2611.1.1.5Schristos * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning
2621.1.1.5Schristos * that the ACPI hardware is no longer required. A flag in the FADT indicates
2631.1.1.5Schristos * a reduced HW machine, and that flag is duplicated here for convenience.
2641.1.1.5Schristos */
2651.1.1.5SchristosACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_ReducedHardware, FALSE);
2661.1.1.5Schristos
2671.1.1.5Schristos/*
2681.1.1.15Schristos * Maximum timeout for While() loop iterations before forced method abort.
2691.1.1.11Schristos * This mechanism is intended to prevent infinite loops during interpreter
2701.1.1.11Schristos * execution within a host kernel.
2711.1.1.11Schristos */
2721.1.1.15SchristosACPI_INIT_GLOBAL (UINT32,           AcpiGbl_MaxLoopIterations, ACPI_MAX_LOOP_TIMEOUT);
2731.1.1.11Schristos
2741.1.1.11Schristos/*
2751.1.1.16Schristos * Optionally ignore AE_NOT_FOUND errors from named reference package elements
2761.1.1.16Schristos * during DSDT/SSDT table loading. This reduces error "noise" in platforms
2771.1.1.16Schristos * whose firmware is carrying around a bunch of unused package objects that
2781.1.1.16Schristos * refer to non-existent named objects. However, If the AML actually tries to
2791.1.1.16Schristos * use such a package, the unresolved element(s) will be replaced with NULL
2801.1.1.16Schristos * elements.
2811.1.1.16Schristos */
2821.1.1.16SchristosACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_IgnorePackageResolutionErrors, FALSE);
2831.1.1.16Schristos
2841.1.1.16Schristos/*
2851.1.1.5Schristos * This mechanism is used to trace a specified AML method. The method is
2861.1.1.5Schristos * traced each time it is executed.
2871.1.1.5Schristos */
2881.1.1.5SchristosACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceFlags, 0);
2891.1.1.7SchristosACPI_INIT_GLOBAL (const char *,     AcpiGbl_TraceMethodName, NULL);
2901.1.1.7SchristosACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceDbgLevel, ACPI_TRACE_LEVEL_DEFAULT);
2911.1.1.7SchristosACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceDbgLayer, ACPI_TRACE_LAYER_DEFAULT);
2921.1.1.5Schristos
2931.1Sjruoho/*
2941.1.1.5Schristos * Runtime configuration of debug output control masks. We want the debug
2951.1.1.5Schristos * switches statically initialized so they are already set when the debugger
2961.1.1.5Schristos * is entered.
2971.1Sjruoho */
2981.1.1.5Schristos#ifdef ACPI_DEBUG_OUTPUT
2991.1.1.5SchristosACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_DEBUG_DEFAULT);
3001.1.1.5Schristos#else
3011.1.1.5SchristosACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_NORMAL_DEFAULT);
3021.1.1.5Schristos#endif
3031.1.1.5SchristosACPI_INIT_GLOBAL (UINT32,           AcpiDbgLayer, ACPI_COMPONENT_DEFAULT);
3041.1.1.5Schristos
3051.1.1.8Schristos/* Optionally enable timer output with Debug Object output */
3061.1.1.8Schristos
3071.1.1.8SchristosACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisplayDebugTimer, FALSE);
3081.1.1.8Schristos
3091.1.1.5Schristos/*
3101.1.1.12Schristos * Debugger command handshake globals. Host OSes need to access these
3111.1.1.12Schristos * variables to implement their own command handshake mechanism.
3121.1.1.12Schristos */
3131.1.1.12Schristos#ifdef ACPI_DEBUGGER
3141.1.1.12SchristosACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_MethodExecuting, FALSE);
3151.1.1.12SchristosACPI_GLOBAL (char,                  AcpiGbl_DbLineBuf[ACPI_DB_LINE_BUFFER_SIZE]);
3161.1.1.12Schristos#endif
3171.1.1.12Schristos
3181.1.1.12Schristos/*
3191.1.1.5Schristos * Other miscellaneous globals
3201.1.1.5Schristos */
3211.1.1.5SchristosACPI_GLOBAL (ACPI_TABLE_FADT,       AcpiGbl_FADT);
3221.1.1.5SchristosACPI_GLOBAL (UINT32,                AcpiCurrentGpeCount);
3231.1.1.5SchristosACPI_GLOBAL (BOOLEAN,               AcpiGbl_SystemAwakeAndRunning);
3241.1.1.4Schristos
3251.1.1.4Schristos
3261.1.1.5Schristos/*****************************************************************************
3271.1.1.5Schristos *
3281.1.1.5Schristos * ACPICA public interface configuration.
3291.1.1.5Schristos *
3301.1.1.5Schristos * Interfaces that are configured out of the ACPICA build are replaced
3311.1.1.5Schristos * by inlined stubs by default.
3321.1.1.5Schristos *
3331.1.1.5Schristos ****************************************************************************/
3341.1.1.5Schristos
3351.1.1.4Schristos/*
3361.1.1.5Schristos * Hardware-reduced prototypes (default: Not hardware reduced).
3371.1.1.5Schristos *
3381.1.1.5Schristos * All ACPICA hardware-related interfaces that use these macros will be
3391.1.1.5Schristos * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag
3401.1.1.4Schristos * is set to TRUE.
3411.1.1.5Schristos *
3421.1.1.5Schristos * Note: This static build option for reduced hardware is intended to
3431.1.1.5Schristos * reduce ACPICA code size if desired or necessary. However, even if this
3441.1.1.5Schristos * option is not specified, the runtime behavior of ACPICA is dependent
3451.1.1.5Schristos * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set,
3461.1.1.5Schristos * the flag will enable similar behavior -- ACPICA will not attempt
3471.1.1.5Schristos * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.)
3481.1.1.4Schristos */
3491.1.1.4Schristos#if (!ACPI_REDUCED_HARDWARE)
3501.1.1.4Schristos#define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
3511.1.1.5Schristos    ACPI_EXTERNAL_RETURN_STATUS(Prototype)
3521.1.1.4Schristos
3531.1.1.4Schristos#define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
3541.1.1.5Schristos    ACPI_EXTERNAL_RETURN_OK(Prototype)
3551.1.1.4Schristos
3561.1.1.4Schristos#define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
3571.1.1.5Schristos    ACPI_EXTERNAL_RETURN_VOID(Prototype)
3581.1.1.4Schristos
3591.1.1.4Schristos#else
3601.1.1.4Schristos#define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
3611.1.1.4Schristos    static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);}
3621.1.1.4Schristos
3631.1.1.4Schristos#define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
3641.1.1.4Schristos    static ACPI_INLINE Prototype {return(AE_OK);}
3651.1.1.4Schristos
3661.1.1.4Schristos#define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
3671.1.1.4Schristos    static ACPI_INLINE Prototype {return;}
3681.1.1.4Schristos
3691.1.1.4Schristos#endif /* !ACPI_REDUCED_HARDWARE */
3701.1Sjruoho
3711.1Sjruoho
3721.1Sjruoho/*
3731.1.1.5Schristos * Error message prototypes (default: error messages enabled).
3741.1.1.5Schristos *
3751.1.1.5Schristos * All interfaces related to error and warning messages
3761.1.1.5Schristos * will be configured out of the ACPICA build if the
3771.1.1.5Schristos * ACPI_NO_ERROR_MESSAGE flag is defined.
3781.1.1.5Schristos */
3791.1.1.5Schristos#ifndef ACPI_NO_ERROR_MESSAGES
3801.1.1.5Schristos#define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
3811.1.1.5Schristos    Prototype;
3821.1.1.5Schristos
3831.1.1.5Schristos#else
3841.1.1.5Schristos#define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
3851.1.1.5Schristos    static ACPI_INLINE Prototype {return;}
3861.1.1.5Schristos
3871.1.1.5Schristos#endif /* ACPI_NO_ERROR_MESSAGES */
3881.1.1.5Schristos
3891.1.1.5Schristos
3901.1.1.5Schristos/*
3911.1.1.5Schristos * Debugging output prototypes (default: no debug output).
3921.1.1.5Schristos *
3931.1.1.5Schristos * All interfaces related to debug output messages
3941.1.1.5Schristos * will be configured out of the ACPICA build unless the
3951.1.1.5Schristos * ACPI_DEBUG_OUTPUT flag is defined.
3961.1.1.5Schristos */
3971.1.1.5Schristos#ifdef ACPI_DEBUG_OUTPUT
3981.1.1.5Schristos#define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
3991.1.1.5Schristos    Prototype;
4001.1.1.5Schristos
4011.1.1.5Schristos#else
4021.1.1.5Schristos#define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
4031.1.1.5Schristos    static ACPI_INLINE Prototype {return;}
4041.1.1.5Schristos
4051.1.1.5Schristos#endif /* ACPI_DEBUG_OUTPUT */
4061.1.1.5Schristos
4071.1.1.5Schristos
4081.1.1.5Schristos/*
4091.1.1.5Schristos * Application prototypes
4101.1.1.5Schristos *
4111.1.1.5Schristos * All interfaces used by application will be configured
4121.1.1.5Schristos * out of the ACPICA build unless the ACPI_APPLICATION
4131.1.1.5Schristos * flag is defined.
4141.1.1.5Schristos */
4151.1.1.5Schristos#ifdef ACPI_APPLICATION
4161.1.1.5Schristos#define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
4171.1.1.5Schristos    Prototype;
4181.1.1.5Schristos
4191.1.1.5Schristos#else
4201.1.1.5Schristos#define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
4211.1.1.5Schristos    static ACPI_INLINE Prototype {return;}
4221.1.1.5Schristos
4231.1.1.5Schristos#endif /* ACPI_APPLICATION */
4241.1.1.5Schristos
4251.1.1.5Schristos
4261.1.1.8Schristos/*
4271.1.1.8Schristos * Debugger prototypes
4281.1.1.8Schristos *
4291.1.1.8Schristos * All interfaces used by debugger will be configured
4301.1.1.8Schristos * out of the ACPICA build unless the ACPI_DEBUGGER
4311.1.1.8Schristos * flag is defined.
4321.1.1.8Schristos */
4331.1.1.8Schristos#ifdef ACPI_DEBUGGER
4341.1.1.8Schristos#define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \
4351.1.1.8Schristos    ACPI_EXTERNAL_RETURN_OK(Prototype)
4361.1.1.8Schristos
4371.1.1.8Schristos#define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \
4381.1.1.8Schristos    ACPI_EXTERNAL_RETURN_VOID(Prototype)
4391.1.1.8Schristos
4401.1.1.8Schristos#else
4411.1.1.8Schristos#define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \
4421.1.1.8Schristos    static ACPI_INLINE Prototype {return(AE_OK);}
4431.1.1.8Schristos
4441.1.1.8Schristos#define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \
4451.1.1.8Schristos    static ACPI_INLINE Prototype {return;}
4461.1.1.8Schristos
4471.1.1.8Schristos#endif /* ACPI_DEBUGGER */
4481.1.1.8Schristos
4491.1.1.8Schristos
4501.1.1.5Schristos/*****************************************************************************
4511.1.1.5Schristos *
4521.1.1.5Schristos * ACPICA public interface prototypes
4531.1.1.5Schristos *
4541.1.1.5Schristos ****************************************************************************/
4551.1.1.5Schristos
4561.1.1.5Schristos/*
4571.1.1.2Sjruoho * Initialization
4581.1Sjruoho */
4591.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
4601.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
4611.1SjruohoAcpiInitializeTables (
4621.1Sjruoho    ACPI_TABLE_DESC         *InitialStorage,
4631.1Sjruoho    UINT32                  InitialTableCount,
4641.1.1.5Schristos    BOOLEAN                 AllowResize))
4651.1Sjruoho
4661.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
4671.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
4681.1SjruohoAcpiInitializeSubsystem (
4691.1.1.5Schristos    void))
4701.1Sjruoho
4711.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
4721.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
4731.1SjruohoAcpiEnableSubsystem (
4741.1.1.5Schristos    UINT32                  Flags))
4751.1Sjruoho
4761.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
4771.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
4781.1SjruohoAcpiInitializeObjects (
4791.1.1.5Schristos    UINT32                  Flags))
4801.1Sjruoho
4811.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
4821.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
4831.1SjruohoAcpiTerminate (
4841.1.1.5Schristos    void))
4851.1Sjruoho
4861.1Sjruoho
4871.1.1.2Sjruoho/*
4881.1.1.2Sjruoho * Miscellaneous global interfaces
4891.1.1.2Sjruoho */
4901.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
4911.1SjruohoACPI_STATUS
4921.1SjruohoAcpiEnable (
4931.1.1.4Schristos    void))
4941.1Sjruoho
4951.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
4961.1SjruohoACPI_STATUS
4971.1SjruohoAcpiDisable (
4981.1.1.4Schristos    void))
4991.1Sjruoho
5001.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5011.1SjruohoACPI_STATUS
5021.1.1.2SjruohoAcpiSubsystemStatus (
5031.1.1.5Schristos    void))
5041.1.1.2Sjruoho
5051.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5061.1.1.2SjruohoACPI_STATUS
5071.1SjruohoAcpiGetSystemInfo (
5081.1.1.5Schristos    ACPI_BUFFER             *RetBuffer))
5091.1Sjruoho
5101.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5111.1SjruohoACPI_STATUS
5121.1SjruohoAcpiGetStatistics (
5131.1.1.5Schristos    ACPI_STATISTICS         *Stats))
5141.1Sjruoho
5151.1.1.5SchristosACPI_EXTERNAL_RETURN_PTR (
5161.1Sjruohoconst char *
5171.1SjruohoAcpiFormatException (
5181.1.1.5Schristos    ACPI_STATUS             Exception))
5191.1Sjruoho
5201.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5211.1SjruohoACPI_STATUS
5221.1SjruohoAcpiPurgeCachedObjects (
5231.1.1.5Schristos    void))
5241.1Sjruoho
5251.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5261.1.1.2SjruohoACPI_STATUS
5271.1.1.2SjruohoAcpiInstallInterface (
5281.1.1.5Schristos    ACPI_STRING             InterfaceName))
5291.1.1.2Sjruoho
5301.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5311.1.1.2SjruohoACPI_STATUS
5321.1.1.2SjruohoAcpiRemoveInterface (
5331.1.1.5Schristos    ACPI_STRING             InterfaceName))
5341.1.1.2Sjruoho
5351.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5361.1.1.4SchristosACPI_STATUS
5371.1.1.4SchristosAcpiUpdateInterfaces (
5381.1.1.5Schristos    UINT8                   Action))
5391.1.1.4Schristos
5401.1.1.5SchristosACPI_EXTERNAL_RETURN_UINT32 (
5411.1.1.4SchristosUINT32
5421.1.1.4SchristosAcpiCheckAddressRange (
5431.1.1.4Schristos    ACPI_ADR_SPACE_TYPE     SpaceId,
5441.1.1.4Schristos    ACPI_PHYSICAL_ADDRESS   Address,
5451.1.1.4Schristos    ACPI_SIZE               Length,
5461.1.1.5Schristos    BOOLEAN                 Warn))
5471.1.1.4Schristos
5481.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5491.1.1.4SchristosACPI_STATUS
5501.1.1.4SchristosAcpiDecodePldBuffer (
5511.1.1.4Schristos    UINT8                   *InBuffer,
5521.1.1.4Schristos    ACPI_SIZE               Length,
5531.1.1.5Schristos    ACPI_PLD_INFO           **ReturnBuffer))
5541.1.1.4Schristos
5551.1Sjruoho
5561.1Sjruoho/*
5571.1.1.4Schristos * ACPI table load/unload interfaces
5581.1Sjruoho */
5591.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5601.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
5611.1.1.5SchristosAcpiInstallTable (
5621.1.1.5Schristos    ACPI_PHYSICAL_ADDRESS   Address,
5631.1.1.5Schristos    BOOLEAN                 Physical))
5641.1.1.5Schristos
5651.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5661.1.1.4SchristosACPI_STATUS
5671.1.1.4SchristosAcpiLoadTable (
5681.1.1.5Schristos    ACPI_TABLE_HEADER       *Table))
5691.1.1.4Schristos
5701.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5711.1.1.4SchristosACPI_STATUS
5721.1.1.4SchristosAcpiUnloadParentTable (
5731.1.1.5Schristos    ACPI_HANDLE             Object))
5741.1.1.4Schristos
5751.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5761.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
5771.1.1.4SchristosAcpiLoadTables (
5781.1.1.5Schristos    void))
5791.1Sjruoho
5801.1Sjruoho
5811.1Sjruoho/*
5821.1Sjruoho * ACPI table manipulation interfaces
5831.1Sjruoho */
5841.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5851.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
5861.1SjruohoAcpiReallocateRootTable (
5871.1.1.5Schristos    void))
5881.1Sjruoho
5891.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5901.1.1.11SchristosACPI_STATUS ACPI_INIT_FUNCTION
5911.1SjruohoAcpiFindRootPointer (
5921.1.1.6Schristos    ACPI_PHYSICAL_ADDRESS   *RsdpAddress))
5931.1Sjruoho
5941.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
5951.1SjruohoACPI_STATUS
5961.1SjruohoAcpiGetTableHeader (
5971.1Sjruoho    ACPI_STRING             Signature,
5981.1Sjruoho    UINT32                  Instance,
5991.1.1.5Schristos    ACPI_TABLE_HEADER       *OutTableHeader))
6001.1Sjruoho
6011.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6021.1SjruohoACPI_STATUS
6031.1SjruohoAcpiGetTable (
6041.1Sjruoho    ACPI_STRING             Signature,
6051.1Sjruoho    UINT32                  Instance,
6061.1.1.5Schristos    ACPI_TABLE_HEADER       **OutTable))
6071.1Sjruoho
6081.1.1.12SchristosACPI_EXTERNAL_RETURN_VOID (
6091.1.1.12Schristosvoid
6101.1.1.12SchristosAcpiPutTable (
6111.1.1.12Schristos    ACPI_TABLE_HEADER       *Table))
6121.1.1.12Schristos
6131.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6141.1SjruohoACPI_STATUS
6151.1SjruohoAcpiGetTableByIndex (
6161.1Sjruoho    UINT32                  TableIndex,
6171.1.1.5Schristos    ACPI_TABLE_HEADER       **OutTable))
6181.1Sjruoho
6191.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6201.1SjruohoACPI_STATUS
6211.1SjruohoAcpiInstallTableHandler (
6221.1Sjruoho    ACPI_TABLE_HANDLER      Handler,
6231.1.1.5Schristos    void                    *Context))
6241.1Sjruoho
6251.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6261.1SjruohoACPI_STATUS
6271.1SjruohoAcpiRemoveTableHandler (
6281.1.1.5Schristos    ACPI_TABLE_HANDLER      Handler))
6291.1Sjruoho
6301.1Sjruoho
6311.1Sjruoho/*
6321.1Sjruoho * Namespace and name interfaces
6331.1Sjruoho */
6341.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6351.1SjruohoACPI_STATUS
6361.1SjruohoAcpiWalkNamespace (
6371.1Sjruoho    ACPI_OBJECT_TYPE        Type,
6381.1Sjruoho    ACPI_HANDLE             StartObject,
6391.1Sjruoho    UINT32                  MaxDepth,
6401.1.1.4Schristos    ACPI_WALK_CALLBACK      DescendingCallback,
6411.1.1.4Schristos    ACPI_WALK_CALLBACK      AscendingCallback,
6421.1Sjruoho    void                    *Context,
6431.1.1.5Schristos    void                    **ReturnValue))
6441.1Sjruoho
6451.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6461.1SjruohoACPI_STATUS
6471.1SjruohoAcpiGetDevices (
6481.1Sjruoho    char                    *HID,
6491.1Sjruoho    ACPI_WALK_CALLBACK      UserFunction,
6501.1Sjruoho    void                    *Context,
6511.1.1.5Schristos    void                    **ReturnValue))
6521.1Sjruoho
6531.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6541.1SjruohoACPI_STATUS
6551.1SjruohoAcpiGetName (
6561.1Sjruoho    ACPI_HANDLE             Object,
6571.1Sjruoho    UINT32                  NameType,
6581.1.1.5Schristos    ACPI_BUFFER             *RetPathPtr))
6591.1Sjruoho
6601.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6611.1SjruohoACPI_STATUS
6621.1SjruohoAcpiGetHandle (
6631.1Sjruoho    ACPI_HANDLE             Parent,
6641.1Sjruoho    ACPI_STRING             Pathname,
6651.1.1.5Schristos    ACPI_HANDLE             *RetHandle))
6661.1Sjruoho
6671.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6681.1SjruohoACPI_STATUS
6691.1SjruohoAcpiAttachData (
6701.1Sjruoho    ACPI_HANDLE             Object,
6711.1Sjruoho    ACPI_OBJECT_HANDLER     Handler,
6721.1.1.5Schristos    void                    *Data))
6731.1Sjruoho
6741.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6751.1SjruohoACPI_STATUS
6761.1SjruohoAcpiDetachData (
6771.1Sjruoho    ACPI_HANDLE             Object,
6781.1.1.5Schristos    ACPI_OBJECT_HANDLER     Handler))
6791.1Sjruoho
6801.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6811.1SjruohoACPI_STATUS
6821.1SjruohoAcpiGetData (
6831.1Sjruoho    ACPI_HANDLE             Object,
6841.1Sjruoho    ACPI_OBJECT_HANDLER     Handler,
6851.1.1.5Schristos    void                    **Data))
6861.1Sjruoho
6871.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
6881.1SjruohoACPI_STATUS
6891.1SjruohoAcpiDebugTrace (
6901.1.1.7Schristos    const char              *Name,
6911.1Sjruoho    UINT32                  DebugLevel,
6921.1Sjruoho    UINT32                  DebugLayer,
6931.1.1.5Schristos    UINT32                  Flags))
6941.1Sjruoho
6951.1Sjruoho
6961.1Sjruoho/*
6971.1Sjruoho * Object manipulation and enumeration
6981.1Sjruoho */
6991.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7001.1SjruohoACPI_STATUS
7011.1SjruohoAcpiEvaluateObject (
7021.1Sjruoho    ACPI_HANDLE             Object,
7031.1Sjruoho    ACPI_STRING             Pathname,
7041.1Sjruoho    ACPI_OBJECT_LIST        *ParameterObjects,
7051.1.1.5Schristos    ACPI_BUFFER             *ReturnObjectBuffer))
7061.1Sjruoho
7071.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7081.1SjruohoACPI_STATUS
7091.1SjruohoAcpiEvaluateObjectTyped (
7101.1Sjruoho    ACPI_HANDLE             Object,
7111.1Sjruoho    ACPI_STRING             Pathname,
7121.1Sjruoho    ACPI_OBJECT_LIST        *ExternalParams,
7131.1Sjruoho    ACPI_BUFFER             *ReturnBuffer,
7141.1.1.5Schristos    ACPI_OBJECT_TYPE        ReturnType))
7151.1Sjruoho
7161.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7171.1SjruohoACPI_STATUS
7181.1SjruohoAcpiGetObjectInfo (
7191.1Sjruoho    ACPI_HANDLE             Object,
7201.1.1.5Schristos    ACPI_DEVICE_INFO        **ReturnBuffer))
7211.1Sjruoho
7221.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7231.1SjruohoACPI_STATUS
7241.1SjruohoAcpiInstallMethod (
7251.1.1.5Schristos    UINT8                   *Buffer))
7261.1Sjruoho
7271.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7281.1SjruohoACPI_STATUS
7291.1SjruohoAcpiGetNextObject (
7301.1Sjruoho    ACPI_OBJECT_TYPE        Type,
7311.1Sjruoho    ACPI_HANDLE             Parent,
7321.1Sjruoho    ACPI_HANDLE             Child,
7331.1.1.5Schristos    ACPI_HANDLE             *OutHandle))
7341.1Sjruoho
7351.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7361.1SjruohoACPI_STATUS
7371.1SjruohoAcpiGetType (
7381.1Sjruoho    ACPI_HANDLE             Object,
7391.1.1.5Schristos    ACPI_OBJECT_TYPE        *OutType))
7401.1Sjruoho
7411.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7421.1SjruohoACPI_STATUS
7431.1SjruohoAcpiGetParent (
7441.1Sjruoho    ACPI_HANDLE             Object,
7451.1.1.5Schristos    ACPI_HANDLE             *OutHandle))
7461.1Sjruoho
7471.1Sjruoho
7481.1Sjruoho/*
7491.1Sjruoho * Handler interfaces
7501.1Sjruoho */
7511.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
7521.1SjruohoACPI_STATUS
7531.1SjruohoAcpiInstallInitializationHandler (
7541.1Sjruoho    ACPI_INIT_HANDLER       Handler,
7551.1.1.5Schristos    UINT32                  Function))
7561.1Sjruoho
7571.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7581.1.1.4SchristosACPI_STATUS
7591.1.1.4SchristosAcpiInstallSciHandler (
7601.1.1.4Schristos    ACPI_SCI_HANDLER        Address,
7611.1.1.4Schristos    void                    *Context))
7621.1.1.4Schristos
7631.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7641.1.1.4SchristosACPI_STATUS
7651.1.1.4SchristosAcpiRemoveSciHandler (
7661.1.1.4Schristos    ACPI_SCI_HANDLER        Address))
7671.1.1.4Schristos
7681.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7691.1SjruohoACPI_STATUS
7701.1.1.2SjruohoAcpiInstallGlobalEventHandler (
7711.1.1.2Sjruoho    ACPI_GBL_EVENT_HANDLER  Handler,
7721.1.1.4Schristos    void                    *Context))
7731.1.1.2Sjruoho
7741.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7751.1.1.2SjruohoACPI_STATUS
7761.1SjruohoAcpiInstallFixedEventHandler (
7771.1Sjruoho    UINT32                  AcpiEvent,
7781.1Sjruoho    ACPI_EVENT_HANDLER      Handler,
7791.1.1.4Schristos    void                    *Context))
7801.1Sjruoho
7811.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7821.1SjruohoACPI_STATUS
7831.1SjruohoAcpiRemoveFixedEventHandler (
7841.1Sjruoho    UINT32                  AcpiEvent,
7851.1.1.4Schristos    ACPI_EVENT_HANDLER      Handler))
7861.1Sjruoho
7871.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7881.1SjruohoACPI_STATUS
7891.1.1.2SjruohoAcpiInstallGpeHandler (
7901.1.1.2Sjruoho    ACPI_HANDLE             GpeDevice,
7911.1.1.2Sjruoho    UINT32                  GpeNumber,
7921.1.1.2Sjruoho    UINT32                  Type,
7931.1.1.2Sjruoho    ACPI_GPE_HANDLER        Address,
7941.1.1.4Schristos    void                    *Context))
7951.1.1.2Sjruoho
7961.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
7971.1.1.2SjruohoACPI_STATUS
7981.1.1.6SchristosAcpiInstallGpeRawHandler (
7991.1.1.6Schristos    ACPI_HANDLE             GpeDevice,
8001.1.1.6Schristos    UINT32                  GpeNumber,
8011.1.1.6Schristos    UINT32                  Type,
8021.1.1.6Schristos    ACPI_GPE_HANDLER        Address,
8031.1.1.6Schristos    void                    *Context))
8041.1.1.6Schristos
8051.1.1.6SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
8061.1.1.6SchristosACPI_STATUS
8071.1.1.2SjruohoAcpiRemoveGpeHandler (
8081.1.1.2Sjruoho    ACPI_HANDLE             GpeDevice,
8091.1.1.2Sjruoho    UINT32                  GpeNumber,
8101.1.1.4Schristos    ACPI_GPE_HANDLER        Address))
8111.1.1.2Sjruoho
8121.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8131.1.1.2SjruohoACPI_STATUS
8141.1SjruohoAcpiInstallNotifyHandler (
8151.1Sjruoho    ACPI_HANDLE             Device,
8161.1Sjruoho    UINT32                  HandlerType,
8171.1Sjruoho    ACPI_NOTIFY_HANDLER     Handler,
8181.1.1.5Schristos    void                    *Context))
8191.1Sjruoho
8201.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8211.1SjruohoACPI_STATUS
8221.1SjruohoAcpiRemoveNotifyHandler (
8231.1Sjruoho    ACPI_HANDLE             Device,
8241.1Sjruoho    UINT32                  HandlerType,
8251.1.1.5Schristos    ACPI_NOTIFY_HANDLER     Handler))
8261.1Sjruoho
8271.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8281.1SjruohoACPI_STATUS
8291.1SjruohoAcpiInstallAddressSpaceHandler (
8301.1Sjruoho    ACPI_HANDLE             Device,
8311.1Sjruoho    ACPI_ADR_SPACE_TYPE     SpaceId,
8321.1Sjruoho    ACPI_ADR_SPACE_HANDLER  Handler,
8331.1Sjruoho    ACPI_ADR_SPACE_SETUP    Setup,
8341.1.1.5Schristos    void                    *Context))
8351.1Sjruoho
8361.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8371.1SjruohoACPI_STATUS
8381.1SjruohoAcpiRemoveAddressSpaceHandler (
8391.1Sjruoho    ACPI_HANDLE             Device,
8401.1Sjruoho    ACPI_ADR_SPACE_TYPE     SpaceId,
8411.1.1.5Schristos    ACPI_ADR_SPACE_HANDLER  Handler))
8421.1Sjruoho
8431.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8441.1SjruohoACPI_STATUS
8451.1SjruohoAcpiInstallExceptionHandler (
8461.1.1.5Schristos    ACPI_EXCEPTION_HANDLER  Handler))
8471.1Sjruoho
8481.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8491.1.1.2SjruohoACPI_STATUS
8501.1.1.2SjruohoAcpiInstallInterfaceHandler (
8511.1.1.5Schristos    ACPI_INTERFACE_HANDLER  Handler))
8521.1.1.2Sjruoho
8531.1Sjruoho
8541.1Sjruoho/*
8551.1.1.2Sjruoho * Global Lock interfaces
8561.1Sjruoho */
8571.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
8581.1SjruohoACPI_STATUS
8591.1SjruohoAcpiAcquireGlobalLock (
8601.1Sjruoho    UINT16                  Timeout,
8611.1.1.4Schristos    UINT32                  *Handle))
8621.1Sjruoho
8631.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
8641.1SjruohoACPI_STATUS
8651.1SjruohoAcpiReleaseGlobalLock (
8661.1.1.4Schristos    UINT32                  Handle))
8671.1.1.4Schristos
8681.1.1.4Schristos
8691.1.1.4Schristos/*
8701.1.1.4Schristos * Interfaces to AML mutex objects
8711.1.1.4Schristos */
8721.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8731.1.1.4SchristosACPI_STATUS
8741.1.1.4SchristosAcpiAcquireMutex (
8751.1.1.4Schristos    ACPI_HANDLE             Handle,
8761.1.1.4Schristos    ACPI_STRING             Pathname,
8771.1.1.5Schristos    UINT16                  Timeout))
8781.1.1.4Schristos
8791.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
8801.1.1.4SchristosACPI_STATUS
8811.1.1.4SchristosAcpiReleaseMutex (
8821.1.1.4Schristos    ACPI_HANDLE             Handle,
8831.1.1.5Schristos    ACPI_STRING             Pathname))
8841.1Sjruoho
8851.1.1.2Sjruoho
8861.1.1.2Sjruoho/*
8871.1.1.2Sjruoho * Fixed Event interfaces
8881.1.1.2Sjruoho */
8891.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
8901.1SjruohoACPI_STATUS
8911.1SjruohoAcpiEnableEvent (
8921.1Sjruoho    UINT32                  Event,
8931.1.1.4Schristos    UINT32                  Flags))
8941.1Sjruoho
8951.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
8961.1SjruohoACPI_STATUS
8971.1SjruohoAcpiDisableEvent (
8981.1Sjruoho    UINT32                  Event,
8991.1.1.4Schristos    UINT32                  Flags))
9001.1Sjruoho
9011.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9021.1SjruohoACPI_STATUS
9031.1SjruohoAcpiClearEvent (
9041.1.1.4Schristos    UINT32                  Event))
9051.1Sjruoho
9061.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9071.1SjruohoACPI_STATUS
9081.1SjruohoAcpiGetEventStatus (
9091.1Sjruoho    UINT32                  Event,
9101.1.1.4Schristos    ACPI_EVENT_STATUS       *EventStatus))
9111.1Sjruoho
9121.1Sjruoho
9131.1Sjruoho/*
9141.1.1.2Sjruoho * General Purpose Event (GPE) Interfaces
9151.1Sjruoho */
9161.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9171.1SjruohoACPI_STATUS
9181.1.1.2SjruohoAcpiUpdateAllGpes (
9191.1.1.4Schristos    void))
9201.1Sjruoho
9211.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9221.1SjruohoACPI_STATUS
9231.1SjruohoAcpiEnableGpe (
9241.1Sjruoho    ACPI_HANDLE             GpeDevice,
9251.1.1.4Schristos    UINT32                  GpeNumber))
9261.1Sjruoho
9271.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9281.1SjruohoACPI_STATUS
9291.1SjruohoAcpiDisableGpe (
9301.1Sjruoho    ACPI_HANDLE             GpeDevice,
9311.1.1.4Schristos    UINT32                  GpeNumber))
9321.1Sjruoho
9331.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9341.1SjruohoACPI_STATUS
9351.1SjruohoAcpiClearGpe (
9361.1Sjruoho    ACPI_HANDLE             GpeDevice,
9371.1.1.4Schristos    UINT32                  GpeNumber))
9381.1Sjruoho
9391.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9401.1SjruohoACPI_STATUS
9411.1.1.2SjruohoAcpiSetGpe (
9421.1.1.2Sjruoho    ACPI_HANDLE             GpeDevice,
9431.1.1.2Sjruoho    UINT32                  GpeNumber,
9441.1.1.4Schristos    UINT8                   Action))
9451.1.1.2Sjruoho
9461.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9471.1.1.2SjruohoACPI_STATUS
9481.1.1.2SjruohoAcpiFinishGpe (
9491.1.1.2Sjruoho    ACPI_HANDLE             GpeDevice,
9501.1.1.4Schristos    UINT32                  GpeNumber))
9511.1.1.2Sjruoho
9521.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9531.1.1.2SjruohoACPI_STATUS
9541.1.1.11SchristosAcpiMaskGpe (
9551.1.1.11Schristos    ACPI_HANDLE             GpeDevice,
9561.1.1.11Schristos    UINT32                  GpeNumber,
9571.1.1.11Schristos    BOOLEAN                 IsMasked))
9581.1.1.11Schristos
9591.1.1.11SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9601.1.1.11SchristosACPI_STATUS
9611.1.1.5SchristosAcpiMarkGpeForWake (
9621.1.1.5Schristos    ACPI_HANDLE             GpeDevice,
9631.1.1.5Schristos    UINT32                  GpeNumber))
9641.1.1.5Schristos
9651.1.1.5SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9661.1.1.5SchristosACPI_STATUS
9671.1.1.2SjruohoAcpiSetupGpeForWake (
9681.1.1.2Sjruoho    ACPI_HANDLE             ParentDevice,
9691.1.1.2Sjruoho    ACPI_HANDLE             GpeDevice,
9701.1.1.4Schristos    UINT32                  GpeNumber))
9711.1.1.2Sjruoho
9721.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9731.1.1.2SjruohoACPI_STATUS
9741.1.1.2SjruohoAcpiSetGpeWakeMask (
9751.1.1.2Sjruoho    ACPI_HANDLE             GpeDevice,
9761.1.1.2Sjruoho    UINT32                  GpeNumber,
9771.1.1.4Schristos    UINT8                   Action))
9781.1.1.2Sjruoho
9791.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9801.1.1.2SjruohoACPI_STATUS
9811.1SjruohoAcpiGetGpeStatus (
9821.1Sjruoho    ACPI_HANDLE             GpeDevice,
9831.1Sjruoho    UINT32                  GpeNumber,
9841.1.1.4Schristos    ACPI_EVENT_STATUS       *EventStatus))
9851.1Sjruoho
9861.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9871.1SjruohoACPI_STATUS
9881.1SjruohoAcpiDisableAllGpes (
9891.1.1.4Schristos    void))
9901.1Sjruoho
9911.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9921.1SjruohoACPI_STATUS
9931.1SjruohoAcpiEnableAllRuntimeGpes (
9941.1.1.4Schristos    void))
9951.1Sjruoho
9961.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
9971.1SjruohoACPI_STATUS
9981.1.1.6SchristosAcpiEnableAllWakeupGpes (
9991.1.1.6Schristos    void))
10001.1.1.6Schristos
10011.1.1.6SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
10021.1.1.6SchristosACPI_STATUS
10031.1SjruohoAcpiGetGpeDevice (
10041.1Sjruoho    UINT32                  GpeIndex,
10051.1.1.4Schristos    ACPI_HANDLE             *GpeDevice))
10061.1Sjruoho
10071.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
10081.1SjruohoACPI_STATUS
10091.1SjruohoAcpiInstallGpeBlock (
10101.1Sjruoho    ACPI_HANDLE             GpeDevice,
10111.1Sjruoho    ACPI_GENERIC_ADDRESS    *GpeBlockAddress,
10121.1Sjruoho    UINT32                  RegisterCount,
10131.1.1.4Schristos    UINT32                  InterruptNumber))
10141.1Sjruoho
10151.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
10161.1SjruohoACPI_STATUS
10171.1SjruohoAcpiRemoveGpeBlock (
10181.1.1.4Schristos    ACPI_HANDLE             GpeDevice))
10191.1Sjruoho
10201.1Sjruoho
10211.1Sjruoho/*
10221.1Sjruoho * Resource interfaces
10231.1Sjruoho */
10241.1Sjruohotypedef
10251.1SjruohoACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
10261.1Sjruoho    ACPI_RESOURCE           *Resource,
10271.1Sjruoho    void                    *Context);
10281.1Sjruoho
10291.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10301.1SjruohoACPI_STATUS
10311.1SjruohoAcpiGetVendorResource (
10321.1Sjruoho    ACPI_HANDLE             Device,
10331.1Sjruoho    char                    *Name,
10341.1Sjruoho    ACPI_VENDOR_UUID        *Uuid,
10351.1.1.5Schristos    ACPI_BUFFER             *RetBuffer))
10361.1Sjruoho
10371.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10381.1SjruohoACPI_STATUS
10391.1SjruohoAcpiGetCurrentResources (
10401.1Sjruoho    ACPI_HANDLE             Device,
10411.1.1.5Schristos    ACPI_BUFFER             *RetBuffer))
10421.1Sjruoho
10431.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10441.1SjruohoACPI_STATUS
10451.1SjruohoAcpiGetPossibleResources (
10461.1Sjruoho    ACPI_HANDLE             Device,
10471.1.1.5Schristos    ACPI_BUFFER             *RetBuffer))
10481.1Sjruoho
10491.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10501.1SjruohoACPI_STATUS
10511.1.1.4SchristosAcpiGetEventResources (
10521.1.1.4Schristos    ACPI_HANDLE             DeviceHandle,
10531.1.1.5Schristos    ACPI_BUFFER             *RetBuffer))
10541.1.1.4Schristos
10551.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10561.1.1.4SchristosACPI_STATUS
10571.1.1.4SchristosAcpiWalkResourceBuffer (
10581.1.1.4Schristos    ACPI_BUFFER                 *Buffer,
10591.1.1.4Schristos    ACPI_WALK_RESOURCE_CALLBACK UserFunction,
10601.1.1.5Schristos    void                        *Context))
10611.1.1.4Schristos
10621.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10631.1.1.4SchristosACPI_STATUS
10641.1SjruohoAcpiWalkResources (
10651.1Sjruoho    ACPI_HANDLE                 Device,
10661.1Sjruoho    char                        *Name,
10671.1Sjruoho    ACPI_WALK_RESOURCE_CALLBACK UserFunction,
10681.1.1.5Schristos    void                        *Context))
10691.1Sjruoho
10701.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10711.1SjruohoACPI_STATUS
10721.1SjruohoAcpiSetCurrentResources (
10731.1Sjruoho    ACPI_HANDLE             Device,
10741.1.1.5Schristos    ACPI_BUFFER             *InBuffer))
10751.1Sjruoho
10761.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10771.1SjruohoACPI_STATUS
10781.1SjruohoAcpiGetIrqRoutingTable (
10791.1Sjruoho    ACPI_HANDLE             Device,
10801.1.1.5Schristos    ACPI_BUFFER             *RetBuffer))
10811.1Sjruoho
10821.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10831.1SjruohoACPI_STATUS
10841.1SjruohoAcpiResourceToAddress64 (
10851.1Sjruoho    ACPI_RESOURCE           *Resource,
10861.1.1.5Schristos    ACPI_RESOURCE_ADDRESS64 *Out))
10871.1Sjruoho
10881.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
10891.1.1.4SchristosACPI_STATUS
10901.1.1.4SchristosAcpiBufferToResource (
10911.1.1.4Schristos    UINT8                   *AmlBuffer,
10921.1.1.4Schristos    UINT16                  AmlBufferLength,
10931.1.1.5Schristos    ACPI_RESOURCE           **ResourcePtr))
10941.1.1.4Schristos
10951.1Sjruoho
10961.1Sjruoho/*
10971.1Sjruoho * Hardware (ACPI device) interfaces
10981.1Sjruoho */
10991.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11001.1SjruohoACPI_STATUS
11011.1SjruohoAcpiReset (
11021.1.1.5Schristos    void))
11031.1Sjruoho
11041.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11051.1SjruohoACPI_STATUS
11061.1SjruohoAcpiRead (
11071.1Sjruoho    UINT64                  *Value,
11081.1.1.5Schristos    ACPI_GENERIC_ADDRESS    *Reg))
11091.1Sjruoho
11101.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11111.1SjruohoACPI_STATUS
11121.1SjruohoAcpiWrite (
11131.1Sjruoho    UINT64                  Value,
11141.1.1.5Schristos    ACPI_GENERIC_ADDRESS    *Reg))
11151.1Sjruoho
11161.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11171.1SjruohoACPI_STATUS
11181.1SjruohoAcpiReadBitRegister (
11191.1Sjruoho    UINT32                  RegisterId,
11201.1.1.4Schristos    UINT32                  *ReturnValue))
11211.1Sjruoho
11221.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11231.1SjruohoACPI_STATUS
11241.1SjruohoAcpiWriteBitRegister (
11251.1Sjruoho    UINT32                  RegisterId,
11261.1.1.4Schristos    UINT32                  Value))
11271.1Sjruoho
11281.1.1.4Schristos
11291.1.1.4Schristos/*
11301.1.1.4Schristos * Sleep/Wake interfaces
11311.1.1.4Schristos */
11321.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11331.1SjruohoACPI_STATUS
11341.1SjruohoAcpiGetSleepTypeData (
11351.1Sjruoho    UINT8                   SleepState,
11361.1Sjruoho    UINT8                   *Slp_TypA,
11371.1.1.5Schristos    UINT8                   *Slp_TypB))
11381.1Sjruoho
11391.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11401.1SjruohoACPI_STATUS
11411.1SjruohoAcpiEnterSleepStatePrep (
11421.1.1.5Schristos    UINT8                   SleepState))
11431.1Sjruoho
11441.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11451.1SjruohoACPI_STATUS
11461.1SjruohoAcpiEnterSleepState (
11471.1.1.5Schristos    UINT8                   SleepState))
11481.1Sjruoho
11491.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11501.1SjruohoACPI_STATUS
11511.1SjruohoAcpiEnterSleepStateS4bios (
11521.1.1.4Schristos    void))
11531.1.1.4Schristos
11541.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11551.1.1.4SchristosACPI_STATUS
11561.1.1.4SchristosAcpiLeaveSleepStatePrep (
11571.1.1.5Schristos    UINT8                   SleepState))
11581.1Sjruoho
11591.1.1.5SchristosACPI_EXTERNAL_RETURN_STATUS (
11601.1SjruohoACPI_STATUS
11611.1SjruohoAcpiLeaveSleepState (
11621.1.1.5Schristos    UINT8                   SleepState))
11631.1.1.4Schristos
11641.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11651.1SjruohoACPI_STATUS
11661.1SjruohoAcpiSetFirmwareWakingVector (
11671.1.1.7Schristos    ACPI_PHYSICAL_ADDRESS   PhysicalAddress,
11681.1.1.7Schristos    ACPI_PHYSICAL_ADDRESS   PhysicalAddress64))
11691.1Sjruoho
11701.1Sjruoho
11711.1Sjruoho/*
11721.1.1.4Schristos * ACPI Timer interfaces
11731.1.1.4Schristos */
11741.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11751.1.1.4SchristosACPI_STATUS
11761.1.1.4SchristosAcpiGetTimerResolution (
11771.1.1.4Schristos    UINT32                  *Resolution))
11781.1.1.4Schristos
11791.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11801.1.1.4SchristosACPI_STATUS
11811.1.1.4SchristosAcpiGetTimer (
11821.1.1.4Schristos    UINT32                  *Ticks))
11831.1.1.4Schristos
11841.1.1.4SchristosACPI_HW_DEPENDENT_RETURN_STATUS (
11851.1.1.4SchristosACPI_STATUS
11861.1.1.4SchristosAcpiGetTimerDuration (
11871.1.1.4Schristos    UINT32                  StartTicks,
11881.1.1.4Schristos    UINT32                  EndTicks,
11891.1.1.4Schristos    UINT32                  *TimeElapsed))
11901.1.1.4Schristos
11911.1.1.4Schristos
11921.1.1.4Schristos/*
11931.1Sjruoho * Error/Warning output
11941.1Sjruoho */
11951.1.1.5SchristosACPI_MSG_DEPENDENT_RETURN_VOID (
11961.1.1.4SchristosACPI_PRINTF_LIKE(3)
11971.1Sjruohovoid ACPI_INTERNAL_VAR_XFACE
11981.1SjruohoAcpiError (
11991.1Sjruoho    const char              *ModuleName,
12001.1Sjruoho    UINT32                  LineNumber,
12011.1Sjruoho    const char              *Format,
12021.1.1.5Schristos    ...))
12031.1Sjruoho
12041.1.1.5SchristosACPI_MSG_DEPENDENT_RETURN_VOID (
12051.1.1.4SchristosACPI_PRINTF_LIKE(4)
12061.1Sjruohovoid  ACPI_INTERNAL_VAR_XFACE
12071.1SjruohoAcpiException (
12081.1Sjruoho    const char              *ModuleName,
12091.1Sjruoho    UINT32                  LineNumber,
12101.1Sjruoho    ACPI_STATUS             Status,
12111.1Sjruoho    const char              *Format,
12121.1.1.5Schristos    ...))
12131.1Sjruoho
12141.1.1.5SchristosACPI_MSG_DEPENDENT_RETURN_VOID (
12151.1.1.4SchristosACPI_PRINTF_LIKE(3)
12161.1Sjruohovoid ACPI_INTERNAL_VAR_XFACE
12171.1SjruohoAcpiWarning (
12181.1Sjruoho    const char              *ModuleName,
12191.1Sjruoho    UINT32                  LineNumber,
12201.1Sjruoho    const char              *Format,
12211.1.1.5Schristos    ...))
12221.1Sjruoho
12231.1.1.5SchristosACPI_MSG_DEPENDENT_RETURN_VOID (
12241.1.1.9SchristosACPI_PRINTF_LIKE(1)
12251.1Sjruohovoid ACPI_INTERNAL_VAR_XFACE
12261.1SjruohoAcpiInfo (
12271.1Sjruoho    const char              *Format,
12281.1.1.5Schristos    ...))
12291.1.1.4Schristos
12301.1.1.5SchristosACPI_MSG_DEPENDENT_RETURN_VOID (
12311.1.1.4SchristosACPI_PRINTF_LIKE(3)
12321.1.1.4Schristosvoid ACPI_INTERNAL_VAR_XFACE
12331.1.1.4SchristosAcpiBiosError (
12341.1.1.4Schristos    const char              *ModuleName,
12351.1.1.4Schristos    UINT32                  LineNumber,
12361.1.1.4Schristos    const char              *Format,
12371.1.1.5Schristos    ...))
12381.1.1.4Schristos
12391.1.1.5SchristosACPI_MSG_DEPENDENT_RETURN_VOID (
12401.1.1.4SchristosACPI_PRINTF_LIKE(3)
12411.1.1.4Schristosvoid ACPI_INTERNAL_VAR_XFACE
12421.1.1.4SchristosAcpiBiosWarning (
12431.1.1.4Schristos    const char              *ModuleName,
12441.1.1.4Schristos    UINT32                  LineNumber,
12451.1.1.4Schristos    const char              *Format,
12461.1.1.5Schristos    ...))
12471.1Sjruoho
12481.1Sjruoho
12491.1Sjruoho/*
12501.1Sjruoho * Debug output
12511.1Sjruoho */
12521.1.1.5SchristosACPI_DBG_DEPENDENT_RETURN_VOID (
12531.1.1.4SchristosACPI_PRINTF_LIKE(6)
12541.1Sjruohovoid ACPI_INTERNAL_VAR_XFACE
12551.1SjruohoAcpiDebugPrint (
12561.1Sjruoho    UINT32                  RequestedDebugLevel,
12571.1Sjruoho    UINT32                  LineNumber,
12581.1Sjruoho    const char              *FunctionName,
12591.1Sjruoho    const char              *ModuleName,
12601.1Sjruoho    UINT32                  ComponentId,
12611.1Sjruoho    const char              *Format,
12621.1.1.5Schristos    ...))
12631.1Sjruoho
12641.1.1.5SchristosACPI_DBG_DEPENDENT_RETURN_VOID (
12651.1.1.4SchristosACPI_PRINTF_LIKE(6)
12661.1Sjruohovoid ACPI_INTERNAL_VAR_XFACE
12671.1SjruohoAcpiDebugPrintRaw (
12681.1Sjruoho    UINT32                  RequestedDebugLevel,
12691.1Sjruoho    UINT32                  LineNumber,
12701.1Sjruoho    const char              *FunctionName,
12711.1Sjruoho    const char              *ModuleName,
12721.1Sjruoho    UINT32                  ComponentId,
12731.1Sjruoho    const char              *Format,
12741.1.1.5Schristos    ...))
12751.1.1.5Schristos
12761.1.1.7SchristosACPI_DBG_DEPENDENT_RETURN_VOID (
12771.1.1.7Schristosvoid
12781.1.1.7SchristosAcpiTracePoint (
12791.1.1.7Schristos    ACPI_TRACE_EVENT_TYPE   Type,
12801.1.1.7Schristos    BOOLEAN                 Begin,
12811.1.1.7Schristos    UINT8                   *Aml,
12821.1.1.7Schristos    char                    *Pathname))
12831.1.1.7Schristos
12841.1.1.8SchristosACPI_STATUS
12851.1.1.8SchristosAcpiInitializeDebugger (
12861.1.1.8Schristos    void);
12871.1.1.8Schristos
12881.1.1.8Schristosvoid
12891.1.1.8SchristosAcpiTerminateDebugger (
12901.1.1.8Schristos    void);
12911.1.1.8Schristos
12921.1.1.8Schristosvoid
12931.1.1.12SchristosAcpiRunDebugger (
12941.1.1.12Schristos    char                    *BatchBuffer);
12951.1.1.12Schristos
12961.1.1.12Schristosvoid
12971.1.1.8SchristosAcpiSetDebuggerThreadId (
12981.1.1.8Schristos    ACPI_THREAD_ID          ThreadId);
12991.1.1.8Schristos
13001.1Sjruoho#endif /* __ACXFACE_H__ */
1301