acpixf.h revision 7b1019a6d29ccb7999dc76cba3dde1c627e8e609
03831d35f7499c87d51205817c93e9a8d42c4baestevel/******************************************************************************
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Name: acpixf.h - External interfaces to the ACPI subsystem
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel *****************************************************************************/
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Copyright (C) 2000 - 2016, Intel Corp.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * All rights reserved.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Redistribution and use in source and binary forms, with or without
03831d35f7499c87d51205817c93e9a8d42c4baestevel * modification, are permitted provided that the following conditions
03831d35f7499c87d51205817c93e9a8d42c4baestevel * are met:
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 1. Redistributions of source code must retain the above copyright
03831d35f7499c87d51205817c93e9a8d42c4baestevel * notice, this list of conditions, and the following disclaimer,
03831d35f7499c87d51205817c93e9a8d42c4baestevel * without modification.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 2. Redistributions in binary form must reproduce at minimum a disclaimer
03831d35f7499c87d51205817c93e9a8d42c4baestevel * substantially similar to the "NO WARRANTY" disclaimer below
03831d35f7499c87d51205817c93e9a8d42c4baestevel * ("Disclaimer") and any redistribution must be conditioned upon
03831d35f7499c87d51205817c93e9a8d42c4baestevel * including a substantially similar Disclaimer requirement for further
03831d35f7499c87d51205817c93e9a8d42c4baestevel * binary redistribution.
087113e1a972d4b6246cf32a83c330968117b93emb * 3. Neither the names of the above-listed copyright holders nor the names
03831d35f7499c87d51205817c93e9a8d42c4baestevel * of any contributors may be used to endorse or promote products derived
03831d35f7499c87d51205817c93e9a8d42c4baestevel * from this software without specific prior written permission.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Alternatively, this software may be distributed under the terms of the
03831d35f7499c87d51205817c93e9a8d42c4baestevel * GNU General Public License ("GPL") version 2 as published by the Free
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Software Foundation.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * NO WARRANTY
03831d35f7499c87d51205817c93e9a8d42c4baestevel * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
03831d35f7499c87d51205817c93e9a8d42c4baestevel * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
03831d35f7499c87d51205817c93e9a8d42c4baestevel * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
03831d35f7499c87d51205817c93e9a8d42c4baestevel * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
03831d35f7499c87d51205817c93e9a8d42c4baestevel * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
03831d35f7499c87d51205817c93e9a8d42c4baestevel * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
03831d35f7499c87d51205817c93e9a8d42c4baestevel * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
03831d35f7499c87d51205817c93e9a8d42c4baestevel * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
03831d35f7499c87d51205817c93e9a8d42c4baestevel * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
03831d35f7499c87d51205817c93e9a8d42c4baestevel * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
03831d35f7499c87d51205817c93e9a8d42c4baestevel * POSSIBILITY OF SUCH DAMAGES.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifndef __ACXFACE_H__
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define __ACXFACE_H__
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/* Current ACPICA subsystem version in YYYYMMDD format */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_CA_VERSION 0x20160527
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#include "acconfig.h"
03831d35f7499c87d51205817c93e9a8d42c4baestevel#include "actypes.h"
03831d35f7499c87d51205817c93e9a8d42c4baestevel#include "actbl.h"
03831d35f7499c87d51205817c93e9a8d42c4baestevel#include "acbuffer.h"
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick/*****************************************************************************
4496171313bed39e96f21bc2f9faf2868e267ae3girish *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Macros used for ACPICA globals and configuration
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel ****************************************************************************/
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Ensure that global variables are defined and initialized only once.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * The use of these macros allows for a single list of globals (here)
03831d35f7499c87d51205817c93e9a8d42c4baestevel * in order to simplify maintenance of the code.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifdef DEFINE_ACPI_GLOBALS
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_GLOBAL(type,name) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel extern type name; \
03831d35f7499c87d51205817c93e9a8d42c4baestevel type name
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_INIT_GLOBAL(type,name,value) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel type name=value
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#else
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifndef ACPI_GLOBAL
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_GLOBAL(type,name) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel extern type name
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifndef ACPI_INIT_GLOBAL
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_INIT_GLOBAL(type,name,value) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel extern type name
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * These macros configure the various ACPICA interfaces. They are
e95892231f152151fa2f18b4dbadf9b76d952297mb * useful for generating stub inline functions for features that are
03831d35f7499c87d51205817c93e9a8d42c4baestevel * configured out of the current kernel or ACPICA application.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifndef ACPI_EXTERNAL_RETURN_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_EXTERNAL_RETURN_STATUS(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel Prototype;
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifndef ACPI_EXTERNAL_RETURN_OK
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_EXTERNAL_RETURN_OK(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel Prototype;
e95892231f152151fa2f18b4dbadf9b76d952297mb#endif
e95892231f152151fa2f18b4dbadf9b76d952297mb
e95892231f152151fa2f18b4dbadf9b76d952297mb#ifndef ACPI_EXTERNAL_RETURN_VOID
e95892231f152151fa2f18b4dbadf9b76d952297mb#define ACPI_EXTERNAL_RETURN_VOID(Prototype) \
e95892231f152151fa2f18b4dbadf9b76d952297mb Prototype;
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif
03831d35f7499c87d51205817c93e9a8d42c4baestevel
e95892231f152151fa2f18b4dbadf9b76d952297mb#ifndef ACPI_EXTERNAL_RETURN_UINT32
e95892231f152151fa2f18b4dbadf9b76d952297mb#define ACPI_EXTERNAL_RETURN_UINT32(Prototype) \
e95892231f152151fa2f18b4dbadf9b76d952297mb Prototype;
e95892231f152151fa2f18b4dbadf9b76d952297mb#endif
e95892231f152151fa2f18b4dbadf9b76d952297mb
e95892231f152151fa2f18b4dbadf9b76d952297mb#ifndef ACPI_EXTERNAL_RETURN_PTR
e95892231f152151fa2f18b4dbadf9b76d952297mb#define ACPI_EXTERNAL_RETURN_PTR(Prototype) \
e95892231f152151fa2f18b4dbadf9b76d952297mb Prototype;
e95892231f152151fa2f18b4dbadf9b76d952297mb#endif
e95892231f152151fa2f18b4dbadf9b76d952297mb
e95892231f152151fa2f18b4dbadf9b76d952297mb
e95892231f152151fa2f18b4dbadf9b76d952297mb/*****************************************************************************
e95892231f152151fa2f18b4dbadf9b76d952297mb *
e95892231f152151fa2f18b4dbadf9b76d952297mb * Public globals and runtime configuration options
e95892231f152151fa2f18b4dbadf9b76d952297mb *
e95892231f152151fa2f18b4dbadf9b76d952297mb ****************************************************************************/
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Enable "slack mode" of the AML interpreter? Default is FALSE, and the
03831d35f7499c87d51205817c93e9a8d42c4baestevel * interpreter strictly follows the ACPI specification. Setting to TRUE
03831d35f7499c87d51205817c93e9a8d42c4baestevel * allows the interpreter to ignore certain errors and/or bad AML constructs.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Currently, these features are enabled by this flag:
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 1) Allow "implicit return" of last value in a control method
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 2) Allow access beyond the end of an operation region
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 3) Allow access to uninitialized locals/args (auto-init to integer 0)
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 4) Allow ANY object type to be a source operand for the Store() operator
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 5) Allow unresolved references (invalid target name) in package objects
03831d35f7499c87d51205817c93e9a8d42c4baestevel * 6) Enable warning messages for behavior that is not ACPI spec compliant
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_EnableInterpreterSlack, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Automatically serialize all methods that create named objects? Default
03831d35f7499c87d51205817c93e9a8d42c4baestevel * is TRUE, meaning that all NonSerialized methods are scanned once at
03831d35f7499c87d51205817c93e9a8d42c4baestevel * table load time to determine those that create named objects. Methods
03831d35f7499c87d51205817c93e9a8d42c4baestevel * that create named objects are marked Serialized in order to prevent
03831d35f7499c87d51205817c93e9a8d42c4baestevel * possible run-time problems if they are entered by more than one thread.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_AutoSerializeMethods, TRUE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Create the predefined _OSI method in the namespace? Default is TRUE
03831d35f7499c87d51205817c93e9a8d42c4baestevel * because ACPICA is fully compatible with other ACPI implementations.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Changing this will revert ACPICA (and machine ASL) to pre-OSI behavior.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_CreateOsiMethod, TRUE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally use default values for the ACPI register widths. Set this to
03831d35f7499c87d51205817c93e9a8d42c4baestevel * TRUE to use the defaults, if an FADT contains incorrect widths/lengths.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_UseDefaultRegisterWidths, TRUE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Whether or not to verify the table checksum before installation. Set
03831d35f7499c87d51205817c93e9a8d42c4baestevel * this to TRUE to verify the table checksum before install it to the table
03831d35f7499c87d51205817c93e9a8d42c4baestevel * manager. Note that enabling this option causes errors to happen in some
03831d35f7499c87d51205817c93e9a8d42c4baestevel * OSPMs during early initialization stages. Default behavior is to do such
03831d35f7499c87d51205817c93e9a8d42c4baestevel * verification.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_VerifyTableChecksum, TRUE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally enable output from the AML Debug Object.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_EnableAmlDebugObject, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally copy the entire DSDT to local memory (instead of simply
03831d35f7499c87d51205817c93e9a8d42c4baestevel * mapping it.) There are some BIOSs that corrupt or replace the original
03831d35f7499c87d51205817c93e9a8d42c4baestevel * DSDT, creating the need for this option. Default is FALSE, do not copy
e95892231f152151fa2f18b4dbadf9b76d952297mb * the DSDT.
e95892231f152151fa2f18b4dbadf9b76d952297mb */
e95892231f152151fa2f18b4dbadf9b76d952297mbACPI_INIT_GLOBAL (UINT8, AcpiGbl_CopyDsdtLocally, FALSE);
e95892231f152151fa2f18b4dbadf9b76d952297mb
e95892231f152151fa2f18b4dbadf9b76d952297mb/*
e95892231f152151fa2f18b4dbadf9b76d952297mb * Optionally ignore an XSDT if present and use the RSDT instead.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Although the ACPI specification requires that an XSDT be used instead
03831d35f7499c87d51205817c93e9a8d42c4baestevel * of the RSDT, the XSDT has been found to be corrupt or ill-formed on
03831d35f7499c87d51205817c93e9a8d42c4baestevel * some machines. Default behavior is to use the XSDT if present.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_DoNotUseXsdt, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally support group module level code.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_GroupModuleLevelCode, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally use 32-bit FADT addresses if and when there is a conflict
03831d35f7499c87d51205817c93e9a8d42c4baestevel * (address mismatch) between the 32-bit and 64-bit versions of the
03831d35f7499c87d51205817c93e9a8d42c4baestevel * address. Although ACPICA adheres to the ACPI specification which
e95892231f152151fa2f18b4dbadf9b76d952297mb * requires the use of the corresponding 64-bit address if it is non-zero,
03831d35f7499c87d51205817c93e9a8d42c4baestevel * some machines have been found to have a corrupted non-zero 64-bit
03831d35f7499c87d51205817c93e9a8d42c4baestevel * address. Default is FALSE, do not favor the 32-bit addresses.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_Use32BitFadtAddresses, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally use 32-bit FACS table addresses.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * It is reported that some platforms fail to resume from system suspending
03831d35f7499c87d51205817c93e9a8d42c4baestevel * if 64-bit FACS table address is selected:
03831d35f7499c87d51205817c93e9a8d42c4baestevel * https://bugzilla.kernel.org/show_bug.cgi?id=74021
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Default is TRUE, favor the 32-bit addresses.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_Use32BitFacsAddresses, TRUE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally truncate I/O addresses to 16 bits. Provides compatibility
03831d35f7499c87d51205817c93e9a8d42c4baestevel * with other ACPI implementations. NOTE: During ACPICA initialization,
03831d35f7499c87d51205817c93e9a8d42c4baestevel * this value is set to TRUE if any Windows OSI strings have been
03831d35f7499c87d51205817c93e9a8d42c4baestevel * requested by the BIOS.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_TruncateIoAddresses, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Disable runtime checking and repair of values returned by control methods.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Use only if the repair is causing a problem on a particular machine.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_DisableAutoRepair, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally do not install any SSDTs from the RSDT/XSDT during initialization.
03831d35f7499c87d51205817c93e9a8d42c4baestevel * This can be useful for debugging ACPI problems on some machines.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_DisableSsdtTableInstall, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Optionally enable runtime namespace override.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_RuntimeNamespaceOverride, TRUE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * We keep track of the latest version of Windows that has been requested by
03831d35f7499c87d51205817c93e9a8d42c4baestevel * the BIOS. ACPI 5.0.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_OsiData, 0);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning
03831d35f7499c87d51205817c93e9a8d42c4baestevel * that the ACPI hardware is no longer required. A flag in the FADT indicates
03831d35f7499c87d51205817c93e9a8d42c4baestevel * a reduced HW machine, and that flag is duplicated here for convenience.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_ReducedHardware, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * This mechanism is used to trace a specified AML method. The method is
03831d35f7499c87d51205817c93e9a8d42c4baestevel * traced each time it is executed.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT32, AcpiGbl_TraceFlags, 0);
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (const char *, AcpiGbl_TraceMethodName, NULL);
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT32, AcpiGbl_TraceDbgLevel, ACPI_TRACE_LEVEL_DEFAULT);
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT32, AcpiGbl_TraceDbgLayer, ACPI_TRACE_LAYER_DEFAULT);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Runtime configuration of debug output control masks. We want the debug
03831d35f7499c87d51205817c93e9a8d42c4baestevel * switches statically initialized so they are already set when the debugger
03831d35f7499c87d51205817c93e9a8d42c4baestevel * is entered.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifdef ACPI_DEBUG_OUTPUT
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT32, AcpiDbgLevel, ACPI_DEBUG_DEFAULT);
03831d35f7499c87d51205817c93e9a8d42c4baestevel#else
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT32, AcpiDbgLevel, ACPI_NORMAL_DEFAULT);
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT32, AcpiDbgLayer, ACPI_COMPONENT_DEFAULT);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/* Optionally enable timer output with Debug Object output */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_INIT_GLOBAL (UINT8, AcpiGbl_DisplayDebugTimer, FALSE);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
867ad6ccd534f8cc8a833f2a852036a33af5d522jesusm/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Other miscellaneous globals
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_GLOBAL (ACPI_TABLE_FADT, AcpiGbl_FADT);
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_GLOBAL (UINT32, AcpiCurrentGpeCount);
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_GLOBAL (BOOLEAN, AcpiGbl_SystemAwakeAndRunning);
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
867ad6ccd534f8cc8a833f2a852036a33af5d522jesusm/*****************************************************************************
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * ACPICA public interface configuration.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Interfaces that are configured out of the ACPICA build are replaced
03831d35f7499c87d51205817c93e9a8d42c4baestevel * by inlined stubs by default.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel ****************************************************************************/
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Hardware-reduced prototypes (default: Not hardware reduced).
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * All ACPICA hardware-related interfaces that use these macros will be
03831d35f7499c87d51205817c93e9a8d42c4baestevel * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag
03831d35f7499c87d51205817c93e9a8d42c4baestevel * is set to TRUE.
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Note: This static build option for reduced hardware is intended to
03831d35f7499c87d51205817c93e9a8d42c4baestevel * reduce ACPICA code size if desired or necessary. However, even if this
867ad6ccd534f8cc8a833f2a852036a33af5d522jesusm * option is not specified, the runtime behavior of ACPICA is dependent
03831d35f7499c87d51205817c93e9a8d42c4baestevel * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set,
03831d35f7499c87d51205817c93e9a8d42c4baestevel * the flag will enable similar behavior -- ACPICA will not attempt
03831d35f7499c87d51205817c93e9a8d42c4baestevel * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.)
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel#if (!ACPI_REDUCED_HARDWARE)
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_EXTERNAL_RETURN_STATUS(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_EXTERNAL_RETURN_OK(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_EXTERNAL_RETURN_VOID(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#else
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
867ad6ccd534f8cc8a833f2a852036a33af5d522jesusm static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);}
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel static ACPI_INLINE Prototype {return(AE_OK);}
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel static ACPI_INLINE Prototype {return;}
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif /* !ACPI_REDUCED_HARDWARE */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Error message prototypes (default: error messages enabled).
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz * All interfaces related to error and warning messages
077f2dab07dda71c691d93b8e183876d7eb912a8zx * will be configured out of the ACPICA build if the
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz * ACPI_NO_ERROR_MESSAGE flag is defined.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz#ifndef ACPI_NO_ERROR_MESSAGES
e95892231f152151fa2f18b4dbadf9b76d952297mb#define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz Prototype;
03831d35f7499c87d51205817c93e9a8d42c4baestevel
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz#else
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel static ACPI_INLINE Prototype {return;}
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz#endif /* ACPI_NO_ERROR_MESSAGES */
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick/*
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick * Debugging output prototypes (default: no debug output).
4496171313bed39e96f21bc2f9faf2868e267ae3girish *
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz * All interfaces related to debug output messages
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz * will be configured out of the ACPICA build unless the
87c478a5395a3af1176f469bdeaf2ce044e4ae1azx * ACPI_DEBUG_OUTPUT flag is defined.
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz */
4496171313bed39e96f21bc2f9faf2868e267ae3girish#ifdef ACPI_DEBUG_OUTPUT
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz#define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel Prototype;
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#else
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif /* ACPI_DEBUG_OUTPUT */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Application prototypes
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * All interfaces used by application will be configured
03831d35f7499c87d51205817c93e9a8d42c4baestevel * out of the ACPICA build unless the ACPI_APPLICATION
03831d35f7499c87d51205817c93e9a8d42c4baestevel * flag is defined.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifdef ACPI_APPLICATION
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel Prototype;
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#else
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif /* ACPI_APPLICATION */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Debugger prototypes
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * All interfaces used by debugger will be configured
03831d35f7499c87d51205817c93e9a8d42c4baestevel * out of the ACPICA build unless the ACPI_DEBUGGER
03831d35f7499c87d51205817c93e9a8d42c4baestevel * flag is defined.
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevel#ifdef ACPI_DEBUGGER
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_EXTERNAL_RETURN_OK(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_EXTERNAL_RETURN_VOID(Prototype)
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#else
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel static ACPI_INLINE Prototype {return(AE_OK);}
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \
03831d35f7499c87d51205817c93e9a8d42c4baestevel static ACPI_INLINE Prototype {return;}
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel#endif /* ACPI_DEBUGGER */
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*****************************************************************************
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel * ACPICA public interface prototypes
03831d35f7499c87d51205817c93e9a8d42c4baestevel *
03831d35f7499c87d51205817c93e9a8d42c4baestevel ****************************************************************************/
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Initialization
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiInitializeTables (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_TABLE_DESC *InitialStorage,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 InitialTableCount,
03831d35f7499c87d51205817c93e9a8d42c4baestevel BOOLEAN AllowResize))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiInitializeSubsystem (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiEnableSubsystem (
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 Flags))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiInitializeObjects (
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 Flags))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiTerminate (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Miscellaneous global interfaces
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_HW_DEPENDENT_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiEnable (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_HW_DEPENDENT_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiDisable (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiSubsystemStatus (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetSystemInfo (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_BUFFER *RetBuffer))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetStatistics (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STATISTICS *Stats))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_PTR (
03831d35f7499c87d51205817c93e9a8d42c4baestevelconst char *
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiFormatException (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STATUS Exception))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiPurgeCachedObjects (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiInstallInterface (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING InterfaceName))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiRemoveInterface (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING InterfaceName))
087113e1a972d4b6246cf32a83c330968117b93emb
087113e1a972d4b6246cf32a83c330968117b93embACPI_EXTERNAL_RETURN_STATUS (
087113e1a972d4b6246cf32a83c330968117b93embACPI_STATUS
087113e1a972d4b6246cf32a83c330968117b93embAcpiUpdateInterfaces (
087113e1a972d4b6246cf32a83c330968117b93emb UINT8 Action))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_UINT32 (
03831d35f7499c87d51205817c93e9a8d42c4baestevelUINT32
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiCheckAddressRange (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_ADR_SPACE_TYPE SpaceId,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_PHYSICAL_ADDRESS Address,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_SIZE Length,
03831d35f7499c87d51205817c93e9a8d42c4baestevel BOOLEAN Warn))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiDecodePldBuffer (
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT8 *InBuffer,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_SIZE Length,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_PLD_INFO **ReturnBuffer))
4496171313bed39e96f21bc2f9faf2868e267ae3girish
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz * ACPI table load/unload interfaces
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzAcpiInstallTable (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz ACPI_PHYSICAL_ADDRESS Address,
03831d35f7499c87d51205817c93e9a8d42c4baestevel BOOLEAN Physical))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzACPI_STATUS
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzAcpiLoadTable (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_TABLE_HEADER *Table))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzACPI_STATUS
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzAcpiUnloadParentTable (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
4496171313bed39e96f21bc2f9faf2868e267ae3girishACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiLoadTables (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * ACPI table manipulation interfaces
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiReallocateRootTable (
03831d35f7499c87d51205817c93e9a8d42c4baestevel void))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiFindRootPointer (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_PHYSICAL_ADDRESS *RsdpAddress))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetTableHeader (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING Signature,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 Instance,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_TABLE_HEADER *OutTableHeader))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetTable (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING Signature,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 Instance,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_TABLE_HEADER **OutTable))
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovickACPI_EXTERNAL_RETURN_STATUS (
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovickACPI_STATUS
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovickAcpiGetTableByIndex (
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick UINT32 TableIndex,
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick ACPI_TABLE_HEADER **OutTable))
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovick
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovickACPI_EXTERNAL_RETURN_STATUS (
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovickACPI_STATUS
9ef7884d729f1f09cb82e5c2f57d12cb9f4c1feeanovickAcpiInstallTableHandler (
4496171313bed39e96f21bc2f9faf2868e267ae3girish ACPI_TABLE_HANDLER Handler,
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz void *Context))
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz
4496171313bed39e96f21bc2f9faf2868e267ae3girishACPI_EXTERNAL_RETURN_STATUS (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzACPI_STATUS
87c478a5395a3af1176f469bdeaf2ce044e4ae1azxAcpiRemoveTableHandler (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz ACPI_TABLE_HANDLER Handler))
4496171313bed39e96f21bc2f9faf2868e267ae3girish
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz
4496171313bed39e96f21bc2f9faf2868e267ae3girish/*
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz * Namespace and name interfaces
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiWalkNamespace (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_TYPE Type,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE StartObject,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 MaxDepth,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_WALK_CALLBACK DescendingCallback,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_WALK_CALLBACK AscendingCallback,
03831d35f7499c87d51205817c93e9a8d42c4baestevel void *Context,
03831d35f7499c87d51205817c93e9a8d42c4baestevel void **ReturnValue))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetDevices (
03831d35f7499c87d51205817c93e9a8d42c4baestevel char *HID,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_WALK_CALLBACK UserFunction,
03831d35f7499c87d51205817c93e9a8d42c4baestevel void *Context,
03831d35f7499c87d51205817c93e9a8d42c4baestevel void **ReturnValue))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetName (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 NameType,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_BUFFER *RetPathPtr))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetHandle (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Parent,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING Pathname,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE *RetHandle))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiAttachData (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_HANDLER Handler,
03831d35f7499c87d51205817c93e9a8d42c4baestevel void *Data))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiDetachData (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_HANDLER Handler))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetData (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_HANDLER Handler,
03831d35f7499c87d51205817c93e9a8d42c4baestevel void **Data))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiDebugTrace (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutz const char *Name,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 DebugLevel,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 DebugLayer,
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT32 Flags))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Object manipulation and enumeration
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiEvaluateObject (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING Pathname,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_LIST *ParameterObjects,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_BUFFER *ReturnObjectBuffer))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiEvaluateObjectTyped (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_STRING Pathname,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_LIST *ExternalParams,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_BUFFER *ReturnBuffer,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_TYPE ReturnType))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetObjectInfo (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_DEVICE_INFO **ReturnBuffer))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiInstallMethod (
03831d35f7499c87d51205817c93e9a8d42c4baestevel UINT8 *Buffer))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzACPI_EXTERNAL_RETURN_STATUS (
483dd6e55fa4bc3c78c87ed8c23cabd45fceceabarutzACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetNextObject (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_TYPE Type,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Parent,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Child,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE *OutHandle))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetType (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_OBJECT_TYPE *OutType))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiGetParent (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE Object,
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_HANDLE *OutHandle))
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel
03831d35f7499c87d51205817c93e9a8d42c4baestevel/*
03831d35f7499c87d51205817c93e9a8d42c4baestevel * Handler interfaces
03831d35f7499c87d51205817c93e9a8d42c4baestevel */
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_EXTERNAL_RETURN_STATUS (
03831d35f7499c87d51205817c93e9a8d42c4baestevelACPI_STATUS
03831d35f7499c87d51205817c93e9a8d42c4baestevelAcpiInstallInitializationHandler (
03831d35f7499c87d51205817c93e9a8d42c4baestevel ACPI_INIT_HANDLER Handler,
UINT32 Function))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiInstallSciHandler (
ACPI_SCI_HANDLER Address,
void *Context))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiRemoveSciHandler (
ACPI_SCI_HANDLER Address))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiInstallGlobalEventHandler (
ACPI_GBL_EVENT_HANDLER Handler,
void *Context))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiInstallFixedEventHandler (
UINT32 AcpiEvent,
ACPI_EVENT_HANDLER Handler,
void *Context))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiRemoveFixedEventHandler (
UINT32 AcpiEvent,
ACPI_EVENT_HANDLER Handler))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiInstallGpeHandler (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber,
UINT32 Type,
ACPI_GPE_HANDLER Address,
void *Context))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiInstallGpeRawHandler (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber,
UINT32 Type,
ACPI_GPE_HANDLER Address,
void *Context))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiRemoveGpeHandler (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber,
ACPI_GPE_HANDLER Address))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiInstallNotifyHandler (
ACPI_HANDLE Device,
UINT32 HandlerType,
ACPI_NOTIFY_HANDLER Handler,
void *Context))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiRemoveNotifyHandler (
ACPI_HANDLE Device,
UINT32 HandlerType,
ACPI_NOTIFY_HANDLER Handler))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiInstallAddressSpaceHandler (
ACPI_HANDLE Device,
ACPI_ADR_SPACE_TYPE SpaceId,
ACPI_ADR_SPACE_HANDLER Handler,
ACPI_ADR_SPACE_SETUP Setup,
void *Context))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiRemoveAddressSpaceHandler (
ACPI_HANDLE Device,
ACPI_ADR_SPACE_TYPE SpaceId,
ACPI_ADR_SPACE_HANDLER Handler))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiInstallExceptionHandler (
ACPI_EXCEPTION_HANDLER Handler))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiInstallInterfaceHandler (
ACPI_INTERFACE_HANDLER Handler))
/*
* Global Lock interfaces
*/
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiAcquireGlobalLock (
UINT16 Timeout,
UINT32 *Handle))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiReleaseGlobalLock (
UINT32 Handle))
/*
* Interfaces to AML mutex objects
*/
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiAcquireMutex (
ACPI_HANDLE Handle,
ACPI_STRING Pathname,
UINT16 Timeout))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiReleaseMutex (
ACPI_HANDLE Handle,
ACPI_STRING Pathname))
/*
* Fixed Event interfaces
*/
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiEnableEvent (
UINT32 Event,
UINT32 Flags))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiDisableEvent (
UINT32 Event,
UINT32 Flags))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiClearEvent (
UINT32 Event))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiGetEventStatus (
UINT32 Event,
ACPI_EVENT_STATUS *EventStatus))
/*
* General Purpose Event (GPE) Interfaces
*/
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiUpdateAllGpes (
void))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiEnableGpe (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiDisableGpe (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiClearGpe (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiSetGpe (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber,
UINT8 Action))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiFinishGpe (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiMarkGpeForWake (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiSetupGpeForWake (
ACPI_HANDLE ParentDevice,
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiSetGpeWakeMask (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber,
UINT8 Action))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiGetGpeStatus (
ACPI_HANDLE GpeDevice,
UINT32 GpeNumber,
ACPI_EVENT_STATUS *EventStatus))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiDisableAllGpes (
void))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiEnableAllRuntimeGpes (
void))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiEnableAllWakeupGpes (
void))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiGetGpeDevice (
UINT32 GpeIndex,
ACPI_HANDLE *GpeDevice))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiInstallGpeBlock (
ACPI_HANDLE GpeDevice,
ACPI_GENERIC_ADDRESS *GpeBlockAddress,
UINT32 RegisterCount,
UINT32 InterruptNumber))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiRemoveGpeBlock (
ACPI_HANDLE GpeDevice))
/*
* Resource interfaces
*/
typedef
ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
ACPI_RESOURCE *Resource,
void *Context);
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetVendorResource (
ACPI_HANDLE Device,
char *Name,
ACPI_VENDOR_UUID *Uuid,
ACPI_BUFFER *RetBuffer))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetCurrentResources (
ACPI_HANDLE Device,
ACPI_BUFFER *RetBuffer))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetPossibleResources (
ACPI_HANDLE Device,
ACPI_BUFFER *RetBuffer))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetEventResources (
ACPI_HANDLE DeviceHandle,
ACPI_BUFFER *RetBuffer))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiWalkResourceBuffer (
ACPI_BUFFER *Buffer,
ACPI_WALK_RESOURCE_CALLBACK UserFunction,
void *Context))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiWalkResources (
ACPI_HANDLE Device,
char *Name,
ACPI_WALK_RESOURCE_CALLBACK UserFunction,
void *Context))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiSetCurrentResources (
ACPI_HANDLE Device,
ACPI_BUFFER *InBuffer))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetIrqRoutingTable (
ACPI_HANDLE Device,
ACPI_BUFFER *RetBuffer))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiResourceToAddress64 (
ACPI_RESOURCE *Resource,
ACPI_RESOURCE_ADDRESS64 *Out))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiBufferToResource (
UINT8 *AmlBuffer,
UINT16 AmlBufferLength,
ACPI_RESOURCE **ResourcePtr))
/*
* Hardware (ACPI device) interfaces
*/
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiReset (
void))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiRead (
UINT64 *Value,
ACPI_GENERIC_ADDRESS *Reg))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiWrite (
UINT64 Value,
ACPI_GENERIC_ADDRESS *Reg))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiReadBitRegister (
UINT32 RegisterId,
UINT32 *ReturnValue))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiWriteBitRegister (
UINT32 RegisterId,
UINT32 Value))
/*
* Sleep/Wake interfaces
*/
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetSleepTypeData (
UINT8 SleepState,
UINT8 *Slp_TypA,
UINT8 *Slp_TypB))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiEnterSleepStatePrep (
UINT8 SleepState))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiEnterSleepState (
UINT8 SleepState))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiEnterSleepStateS4bios (
void))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiLeaveSleepStatePrep (
UINT8 SleepState))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiLeaveSleepState (
UINT8 SleepState))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiSetFirmwareWakingVector (
ACPI_PHYSICAL_ADDRESS PhysicalAddress,
ACPI_PHYSICAL_ADDRESS PhysicalAddress64))
/*
* ACPI Timer interfaces
*/
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiGetTimerResolution (
UINT32 *Resolution))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiGetTimer (
UINT32 *Ticks))
ACPI_HW_DEPENDENT_RETURN_STATUS (
ACPI_STATUS
AcpiGetTimerDuration (
UINT32 StartTicks,
UINT32 EndTicks,
UINT32 *TimeElapsed))
/*
* Error/Warning output
*/
ACPI_MSG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(3)
void ACPI_INTERNAL_VAR_XFACE
AcpiError (
const char *ModuleName,
UINT32 LineNumber,
const char *Format,
...))
ACPI_MSG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(4)
void ACPI_INTERNAL_VAR_XFACE
AcpiException (
const char *ModuleName,
UINT32 LineNumber,
ACPI_STATUS Status,
const char *Format,
...))
ACPI_MSG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(3)
void ACPI_INTERNAL_VAR_XFACE
AcpiWarning (
const char *ModuleName,
UINT32 LineNumber,
const char *Format,
...))
ACPI_MSG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(1)
void ACPI_INTERNAL_VAR_XFACE
AcpiInfo (
const char *Format,
...))
ACPI_MSG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(3)
void ACPI_INTERNAL_VAR_XFACE
AcpiBiosError (
const char *ModuleName,
UINT32 LineNumber,
const char *Format,
...))
ACPI_MSG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(3)
void ACPI_INTERNAL_VAR_XFACE
AcpiBiosWarning (
const char *ModuleName,
UINT32 LineNumber,
const char *Format,
...))
/*
* Debug output
*/
ACPI_DBG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(6)
void ACPI_INTERNAL_VAR_XFACE
AcpiDebugPrint (
UINT32 RequestedDebugLevel,
UINT32 LineNumber,
const char *FunctionName,
const char *ModuleName,
UINT32 ComponentId,
const char *Format,
...))
ACPI_DBG_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(6)
void ACPI_INTERNAL_VAR_XFACE
AcpiDebugPrintRaw (
UINT32 RequestedDebugLevel,
UINT32 LineNumber,
const char *FunctionName,
const char *ModuleName,
UINT32 ComponentId,
const char *Format,
...))
ACPI_DBG_DEPENDENT_RETURN_VOID (
void
AcpiTracePoint (
ACPI_TRACE_EVENT_TYPE Type,
BOOLEAN Begin,
UINT8 *Aml,
char *Pathname))
ACPI_APP_DEPENDENT_RETURN_VOID (
ACPI_PRINTF_LIKE(1)
void ACPI_INTERNAL_VAR_XFACE
AcpiLogError (
const char *Format,
...))
ACPI_STATUS
AcpiInitializeDebugger (
void);
void
AcpiTerminateDebugger (
void);
void
AcpiSetDebuggerThreadId (
ACPI_THREAD_ID ThreadId);
#endif /* __ACXFACE_H__ */