xref: /freebsd/sys/contrib/dev/acpica/include/acpixf.h (revision 8438a7a80a3c537ec86b2e17720cc9e1957d9651)
1a9f12690SJung-uk Kim /******************************************************************************
2a9f12690SJung-uk Kim  *
3a9f12690SJung-uk Kim  * Name: acpixf.h - External interfaces to the ACPI subsystem
4a9f12690SJung-uk Kim  *
5a9f12690SJung-uk Kim  *****************************************************************************/
6a9f12690SJung-uk Kim 
70d84335fSJung-uk Kim /******************************************************************************
80d84335fSJung-uk Kim  *
90d84335fSJung-uk Kim  * 1. Copyright Notice
100d84335fSJung-uk Kim  *
1132ac4016SJung-uk Kim  * Some or all of this work - Copyright (c) 1999 - 2018, Intel Corp.
12a9f12690SJung-uk Kim  * All rights reserved.
13a9f12690SJung-uk Kim  *
140d84335fSJung-uk Kim  * 2. License
150d84335fSJung-uk Kim  *
160d84335fSJung-uk Kim  * 2.1. This is your license from Intel Corp. under its intellectual property
170d84335fSJung-uk Kim  * rights. You may have additional license terms from the party that provided
180d84335fSJung-uk Kim  * you this software, covering your right to use that party's intellectual
190d84335fSJung-uk Kim  * property rights.
200d84335fSJung-uk Kim  *
210d84335fSJung-uk Kim  * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
220d84335fSJung-uk Kim  * copy of the source code appearing in this file ("Covered Code") an
230d84335fSJung-uk Kim  * irrevocable, perpetual, worldwide license under Intel's copyrights in the
240d84335fSJung-uk Kim  * base code distributed originally by Intel ("Original Intel Code") to copy,
250d84335fSJung-uk Kim  * make derivatives, distribute, use and display any portion of the Covered
260d84335fSJung-uk Kim  * Code in any form, with the right to sublicense such rights; and
270d84335fSJung-uk Kim  *
280d84335fSJung-uk Kim  * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
290d84335fSJung-uk Kim  * license (with the right to sublicense), under only those claims of Intel
300d84335fSJung-uk Kim  * patents that are infringed by the Original Intel Code, to make, use, sell,
310d84335fSJung-uk Kim  * offer to sell, and import the Covered Code and derivative works thereof
320d84335fSJung-uk Kim  * solely to the minimum extent necessary to exercise the above copyright
330d84335fSJung-uk Kim  * license, and in no event shall the patent license extend to any additions
340d84335fSJung-uk Kim  * to or modifications of the Original Intel Code. No other license or right
350d84335fSJung-uk Kim  * is granted directly or by implication, estoppel or otherwise;
360d84335fSJung-uk Kim  *
370d84335fSJung-uk Kim  * The above copyright and patent license is granted only if the following
380d84335fSJung-uk Kim  * conditions are met:
390d84335fSJung-uk Kim  *
400d84335fSJung-uk Kim  * 3. Conditions
410d84335fSJung-uk Kim  *
420d84335fSJung-uk Kim  * 3.1. Redistribution of Source with Rights to Further Distribute Source.
430d84335fSJung-uk Kim  * Redistribution of source code of any substantial portion of the Covered
440d84335fSJung-uk Kim  * Code or modification with rights to further distribute source must include
450d84335fSJung-uk Kim  * the above Copyright Notice, the above License, this list of Conditions,
460d84335fSJung-uk Kim  * and the following Disclaimer and Export Compliance provision. In addition,
470d84335fSJung-uk Kim  * Licensee must cause all Covered Code to which Licensee contributes to
480d84335fSJung-uk Kim  * contain a file documenting the changes Licensee made to create that Covered
490d84335fSJung-uk Kim  * Code and the date of any change. Licensee must include in that file the
500d84335fSJung-uk Kim  * documentation of any changes made by any predecessor Licensee. Licensee
510d84335fSJung-uk Kim  * must include a prominent statement that the modification is derived,
520d84335fSJung-uk Kim  * directly or indirectly, from Original Intel Code.
530d84335fSJung-uk Kim  *
540d84335fSJung-uk Kim  * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
550d84335fSJung-uk Kim  * Redistribution of source code of any substantial portion of the Covered
560d84335fSJung-uk Kim  * Code or modification without rights to further distribute source must
570d84335fSJung-uk Kim  * include the following Disclaimer and Export Compliance provision in the
580d84335fSJung-uk Kim  * documentation and/or other materials provided with distribution. In
590d84335fSJung-uk Kim  * addition, Licensee may not authorize further sublicense of source of any
600d84335fSJung-uk Kim  * portion of the Covered Code, and must include terms to the effect that the
610d84335fSJung-uk Kim  * license from Licensee to its licensee is limited to the intellectual
620d84335fSJung-uk Kim  * property embodied in the software Licensee provides to its licensee, and
630d84335fSJung-uk Kim  * not to intellectual property embodied in modifications its licensee may
640d84335fSJung-uk Kim  * make.
650d84335fSJung-uk Kim  *
660d84335fSJung-uk Kim  * 3.3. Redistribution of Executable. Redistribution in executable form of any
670d84335fSJung-uk Kim  * substantial portion of the Covered Code or modification must reproduce the
680d84335fSJung-uk Kim  * above Copyright Notice, and the following Disclaimer and Export Compliance
690d84335fSJung-uk Kim  * provision in the documentation and/or other materials provided with the
700d84335fSJung-uk Kim  * distribution.
710d84335fSJung-uk Kim  *
720d84335fSJung-uk Kim  * 3.4. Intel retains all right, title, and interest in and to the Original
730d84335fSJung-uk Kim  * Intel Code.
740d84335fSJung-uk Kim  *
750d84335fSJung-uk Kim  * 3.5. Neither the name Intel nor any other trademark owned or controlled by
760d84335fSJung-uk Kim  * Intel shall be used in advertising or otherwise to promote the sale, use or
770d84335fSJung-uk Kim  * other dealings in products derived from or relating to the Covered Code
780d84335fSJung-uk Kim  * without prior written authorization from Intel.
790d84335fSJung-uk Kim  *
800d84335fSJung-uk Kim  * 4. Disclaimer and Export Compliance
810d84335fSJung-uk Kim  *
820d84335fSJung-uk Kim  * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
830d84335fSJung-uk Kim  * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
840d84335fSJung-uk Kim  * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
850d84335fSJung-uk Kim  * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
860d84335fSJung-uk Kim  * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
870d84335fSJung-uk Kim  * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
880d84335fSJung-uk Kim  * PARTICULAR PURPOSE.
890d84335fSJung-uk Kim  *
900d84335fSJung-uk Kim  * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
910d84335fSJung-uk Kim  * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
920d84335fSJung-uk Kim  * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
930d84335fSJung-uk Kim  * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
940d84335fSJung-uk Kim  * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
950d84335fSJung-uk Kim  * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
960d84335fSJung-uk Kim  * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
970d84335fSJung-uk Kim  * LIMITED REMEDY.
980d84335fSJung-uk Kim  *
990d84335fSJung-uk Kim  * 4.3. Licensee shall not export, either directly or indirectly, any of this
1000d84335fSJung-uk Kim  * software or system incorporating such software without first obtaining any
1010d84335fSJung-uk Kim  * required license or other approval from the U. S. Department of Commerce or
1020d84335fSJung-uk Kim  * any other agency or department of the United States Government. In the
1030d84335fSJung-uk Kim  * event Licensee exports any such software from the United States or
1040d84335fSJung-uk Kim  * re-exports any such software from a foreign destination, Licensee shall
1050d84335fSJung-uk Kim  * ensure that the distribution and export/re-export of the software is in
1060d84335fSJung-uk Kim  * compliance with all laws, regulations, orders, or other restrictions of the
1070d84335fSJung-uk Kim  * U.S. Export Administration Regulations. Licensee agrees that neither it nor
1080d84335fSJung-uk Kim  * any of its subsidiaries will export/re-export any technical data, process,
1090d84335fSJung-uk Kim  * software, or service, directly or indirectly, to any country for which the
1100d84335fSJung-uk Kim  * United States government or any agency thereof requires an export license,
1110d84335fSJung-uk Kim  * other governmental approval, or letter of assurance, without first obtaining
1120d84335fSJung-uk Kim  * such license, approval or letter.
1130d84335fSJung-uk Kim  *
1140d84335fSJung-uk Kim  *****************************************************************************
1150d84335fSJung-uk Kim  *
1160d84335fSJung-uk Kim  * Alternatively, you may choose to be licensed under the terms of the
1170d84335fSJung-uk Kim  * following license:
1180d84335fSJung-uk Kim  *
119d244b227SJung-uk Kim  * Redistribution and use in source and binary forms, with or without
120d244b227SJung-uk Kim  * modification, are permitted provided that the following conditions
121d244b227SJung-uk Kim  * are met:
122d244b227SJung-uk Kim  * 1. Redistributions of source code must retain the above copyright
123d244b227SJung-uk Kim  *    notice, this list of conditions, and the following disclaimer,
124d244b227SJung-uk Kim  *    without modification.
125d244b227SJung-uk Kim  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
126d244b227SJung-uk Kim  *    substantially similar to the "NO WARRANTY" disclaimer below
127d244b227SJung-uk Kim  *    ("Disclaimer") and any redistribution must be conditioned upon
128d244b227SJung-uk Kim  *    including a substantially similar Disclaimer requirement for further
129d244b227SJung-uk Kim  *    binary redistribution.
130d244b227SJung-uk Kim  * 3. Neither the names of the above-listed copyright holders nor the names
131d244b227SJung-uk Kim  *    of any contributors may be used to endorse or promote products derived
132d244b227SJung-uk Kim  *    from this software without specific prior written permission.
133a9f12690SJung-uk Kim  *
1340d84335fSJung-uk Kim  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1350d84335fSJung-uk Kim  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1360d84335fSJung-uk Kim  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
1370d84335fSJung-uk Kim  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
1380d84335fSJung-uk Kim  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
1390d84335fSJung-uk Kim  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
1400d84335fSJung-uk Kim  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
1410d84335fSJung-uk Kim  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
1420d84335fSJung-uk Kim  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
1430d84335fSJung-uk Kim  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
1440d84335fSJung-uk Kim  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1450d84335fSJung-uk Kim  *
1460d84335fSJung-uk Kim  * Alternatively, you may choose to be licensed under the terms of the
147d244b227SJung-uk Kim  * GNU General Public License ("GPL") version 2 as published by the Free
148d244b227SJung-uk Kim  * Software Foundation.
149a9f12690SJung-uk Kim  *
1500d84335fSJung-uk Kim  *****************************************************************************/
151a9f12690SJung-uk Kim 
152a9f12690SJung-uk Kim #ifndef __ACXFACE_H__
153a9f12690SJung-uk Kim #define __ACXFACE_H__
154a9f12690SJung-uk Kim 
155a9f12690SJung-uk Kim /* Current ACPICA subsystem version in YYYYMMDD format */
156a9f12690SJung-uk Kim 
157*8438a7a8SJung-uk Kim #define ACPI_CA_VERSION                 0x20180313
158a9f12690SJung-uk Kim 
159a159c266SJung-uk Kim #include <contrib/dev/acpica/include/acconfig.h>
160ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/include/actypes.h>
161ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/include/actbl.h>
1621df130f1SJung-uk Kim #include <contrib/dev/acpica/include/acbuffer.h>
163a9f12690SJung-uk Kim 
164313a0c13SJung-uk Kim 
165313a0c13SJung-uk Kim /*****************************************************************************
166313a0c13SJung-uk Kim  *
167313a0c13SJung-uk Kim  * Macros used for ACPICA globals and configuration
168313a0c13SJung-uk Kim  *
169313a0c13SJung-uk Kim  ****************************************************************************/
170313a0c13SJung-uk Kim 
171a9f12690SJung-uk Kim /*
172313a0c13SJung-uk Kim  * Ensure that global variables are defined and initialized only once.
173313a0c13SJung-uk Kim  *
174313a0c13SJung-uk Kim  * The use of these macros allows for a single list of globals (here)
175313a0c13SJung-uk Kim  * in order to simplify maintenance of the code.
176a9f12690SJung-uk Kim  */
177313a0c13SJung-uk Kim #ifdef DEFINE_ACPI_GLOBALS
178313a0c13SJung-uk Kim #define ACPI_GLOBAL(type,name) \
179313a0c13SJung-uk Kim     extern type name; \
180313a0c13SJung-uk Kim     type name
181a9f12690SJung-uk Kim 
182313a0c13SJung-uk Kim #define ACPI_INIT_GLOBAL(type,name,value) \
183313a0c13SJung-uk Kim     type name=value
184a9f12690SJung-uk Kim 
185313a0c13SJung-uk Kim #else
186313a0c13SJung-uk Kim #ifndef ACPI_GLOBAL
187313a0c13SJung-uk Kim #define ACPI_GLOBAL(type,name) \
188313a0c13SJung-uk Kim     extern type name
189313a0c13SJung-uk Kim #endif
190a9f12690SJung-uk Kim 
191313a0c13SJung-uk Kim #ifndef ACPI_INIT_GLOBAL
192313a0c13SJung-uk Kim #define ACPI_INIT_GLOBAL(type,name,value) \
193313a0c13SJung-uk Kim     extern type name
194313a0c13SJung-uk Kim #endif
195313a0c13SJung-uk Kim #endif
196a9f12690SJung-uk Kim 
197a9f12690SJung-uk Kim /*
198313a0c13SJung-uk Kim  * These macros configure the various ACPICA interfaces. They are
199313a0c13SJung-uk Kim  * useful for generating stub inline functions for features that are
200313a0c13SJung-uk Kim  * configured out of the current kernel or ACPICA application.
201313a0c13SJung-uk Kim  */
202313a0c13SJung-uk Kim #ifndef ACPI_EXTERNAL_RETURN_STATUS
203313a0c13SJung-uk Kim #define ACPI_EXTERNAL_RETURN_STATUS(Prototype) \
204313a0c13SJung-uk Kim     Prototype;
205313a0c13SJung-uk Kim #endif
206313a0c13SJung-uk Kim 
207313a0c13SJung-uk Kim #ifndef ACPI_EXTERNAL_RETURN_OK
208313a0c13SJung-uk Kim #define ACPI_EXTERNAL_RETURN_OK(Prototype) \
209313a0c13SJung-uk Kim     Prototype;
210313a0c13SJung-uk Kim #endif
211313a0c13SJung-uk Kim 
212313a0c13SJung-uk Kim #ifndef ACPI_EXTERNAL_RETURN_VOID
213313a0c13SJung-uk Kim #define ACPI_EXTERNAL_RETURN_VOID(Prototype) \
214313a0c13SJung-uk Kim     Prototype;
215313a0c13SJung-uk Kim #endif
216313a0c13SJung-uk Kim 
217313a0c13SJung-uk Kim #ifndef ACPI_EXTERNAL_RETURN_UINT32
218313a0c13SJung-uk Kim #define ACPI_EXTERNAL_RETURN_UINT32(Prototype) \
219313a0c13SJung-uk Kim     Prototype;
220313a0c13SJung-uk Kim #endif
221313a0c13SJung-uk Kim 
222313a0c13SJung-uk Kim #ifndef ACPI_EXTERNAL_RETURN_PTR
223313a0c13SJung-uk Kim #define ACPI_EXTERNAL_RETURN_PTR(Prototype) \
224313a0c13SJung-uk Kim     Prototype;
225313a0c13SJung-uk Kim #endif
226313a0c13SJung-uk Kim 
227313a0c13SJung-uk Kim 
228313a0c13SJung-uk Kim /*****************************************************************************
229313a0c13SJung-uk Kim  *
230313a0c13SJung-uk Kim  * Public globals and runtime configuration options
231313a0c13SJung-uk Kim  *
232313a0c13SJung-uk Kim  ****************************************************************************/
233313a0c13SJung-uk Kim 
234313a0c13SJung-uk Kim /*
235313a0c13SJung-uk Kim  * Enable "slack mode" of the AML interpreter?  Default is FALSE, and the
236313a0c13SJung-uk Kim  * interpreter strictly follows the ACPI specification. Setting to TRUE
237313a0c13SJung-uk Kim  * allows the interpreter to ignore certain errors and/or bad AML constructs.
238313a0c13SJung-uk Kim  *
239313a0c13SJung-uk Kim  * Currently, these features are enabled by this flag:
240313a0c13SJung-uk Kim  *
241313a0c13SJung-uk Kim  * 1) Allow "implicit return" of last value in a control method
242313a0c13SJung-uk Kim  * 2) Allow access beyond the end of an operation region
243313a0c13SJung-uk Kim  * 3) Allow access to uninitialized locals/args (auto-init to integer 0)
244313a0c13SJung-uk Kim  * 4) Allow ANY object type to be a source operand for the Store() operator
245313a0c13SJung-uk Kim  * 5) Allow unresolved references (invalid target name) in package objects
246313a0c13SJung-uk Kim  * 6) Enable warning messages for behavior that is not ACPI spec compliant
247313a0c13SJung-uk Kim  */
248313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableInterpreterSlack, FALSE);
249313a0c13SJung-uk Kim 
250313a0c13SJung-uk Kim /*
251313a0c13SJung-uk Kim  * Automatically serialize all methods that create named objects? Default
252313a0c13SJung-uk Kim  * is TRUE, meaning that all NonSerialized methods are scanned once at
253313a0c13SJung-uk Kim  * table load time to determine those that create named objects. Methods
254313a0c13SJung-uk Kim  * that create named objects are marked Serialized in order to prevent
255313a0c13SJung-uk Kim  * possible run-time problems if they are entered by more than one thread.
256313a0c13SJung-uk Kim  */
257313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_AutoSerializeMethods, TRUE);
258313a0c13SJung-uk Kim 
259313a0c13SJung-uk Kim /*
260313a0c13SJung-uk Kim  * Create the predefined _OSI method in the namespace? Default is TRUE
261313a0c13SJung-uk Kim  * because ACPICA is fully compatible with other ACPI implementations.
262313a0c13SJung-uk Kim  * Changing this will revert ACPICA (and machine ASL) to pre-OSI behavior.
263313a0c13SJung-uk Kim  */
264313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CreateOsiMethod, TRUE);
265313a0c13SJung-uk Kim 
266313a0c13SJung-uk Kim /*
267313a0c13SJung-uk Kim  * Optionally use default values for the ACPI register widths. Set this to
268313a0c13SJung-uk Kim  * TRUE to use the defaults, if an FADT contains incorrect widths/lengths.
269313a0c13SJung-uk Kim  */
270313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_UseDefaultRegisterWidths, TRUE);
271313a0c13SJung-uk Kim 
272313a0c13SJung-uk Kim /*
2735f9b24faSJung-uk Kim  * Whether or not to validate (map) an entire table to verify
2745f9b24faSJung-uk Kim  * checksum/duplication in early stage before install. Set this to TRUE to
2755f9b24faSJung-uk Kim  * allow early table validation before install it to the table manager.
2765f9b24faSJung-uk Kim  * Note that enabling this option causes errors to happen in some OSPMs
2775f9b24faSJung-uk Kim  * during early initialization stages. Default behavior is to allow such
2785f9b24faSJung-uk Kim  * validation.
279313a0c13SJung-uk Kim  */
2805f9b24faSJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableTableValidation, TRUE);
281313a0c13SJung-uk Kim 
282313a0c13SJung-uk Kim /*
283313a0c13SJung-uk Kim  * Optionally enable output from the AML Debug Object.
284313a0c13SJung-uk Kim  */
285313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_EnableAmlDebugObject, FALSE);
286313a0c13SJung-uk Kim 
287313a0c13SJung-uk Kim /*
288313a0c13SJung-uk Kim  * Optionally copy the entire DSDT to local memory (instead of simply
289313a0c13SJung-uk Kim  * mapping it.) There are some BIOSs that corrupt or replace the original
290313a0c13SJung-uk Kim  * DSDT, creating the need for this option. Default is FALSE, do not copy
291313a0c13SJung-uk Kim  * the DSDT.
292313a0c13SJung-uk Kim  */
293313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_CopyDsdtLocally, FALSE);
294313a0c13SJung-uk Kim 
295313a0c13SJung-uk Kim /*
296313a0c13SJung-uk Kim  * Optionally ignore an XSDT if present and use the RSDT instead.
297313a0c13SJung-uk Kim  * Although the ACPI specification requires that an XSDT be used instead
298313a0c13SJung-uk Kim  * of the RSDT, the XSDT has been found to be corrupt or ill-formed on
299313a0c13SJung-uk Kim  * some machines. Default behavior is to use the XSDT if present.
300313a0c13SJung-uk Kim  */
301313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DoNotUseXsdt, FALSE);
302313a0c13SJung-uk Kim 
303313a0c13SJung-uk Kim /*
304f8146b88SJung-uk Kim  * Optionally support group module level code.
305ff879b07SJung-uk Kim  * NOTE, this is essentially obsolete and will be removed soon
306ff879b07SJung-uk Kim  * (01/2018).
307f8146b88SJung-uk Kim  */
308f8146b88SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_GroupModuleLevelCode, FALSE);
309f8146b88SJung-uk Kim 
310f8146b88SJung-uk Kim /*
311*8438a7a8SJung-uk Kim  * Optionally support module level code by parsing an entire table as
312*8438a7a8SJung-uk Kim  * a method as it is loaded. Default is TRUE.
313ff879b07SJung-uk Kim  * NOTE, this is essentially obsolete and will be removed soon
314ff879b07SJung-uk Kim  * (01/2018).
315493deb39SJung-uk Kim  */
316*8438a7a8SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_ExecuteTablesAsMethods, TRUE);
317493deb39SJung-uk Kim 
318493deb39SJung-uk Kim /*
319313a0c13SJung-uk Kim  * Optionally use 32-bit FADT addresses if and when there is a conflict
320313a0c13SJung-uk Kim  * (address mismatch) between the 32-bit and 64-bit versions of the
321313a0c13SJung-uk Kim  * address. Although ACPICA adheres to the ACPI specification which
322313a0c13SJung-uk Kim  * requires the use of the corresponding 64-bit address if it is non-zero,
323313a0c13SJung-uk Kim  * some machines have been found to have a corrupted non-zero 64-bit
324313a0c13SJung-uk Kim  * address. Default is FALSE, do not favor the 32-bit addresses.
325313a0c13SJung-uk Kim  */
326313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFadtAddresses, FALSE);
327313a0c13SJung-uk Kim 
328313a0c13SJung-uk Kim /*
3295ef50723SJung-uk Kim  * Optionally use 32-bit FACS table addresses.
3305ef50723SJung-uk Kim  * It is reported that some platforms fail to resume from system suspending
3315ef50723SJung-uk Kim  * if 64-bit FACS table address is selected:
3325ef50723SJung-uk Kim  * https://bugzilla.kernel.org/show_bug.cgi?id=74021
3335ef50723SJung-uk Kim  * Default is TRUE, favor the 32-bit addresses.
3345ef50723SJung-uk Kim  */
3355ef50723SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_Use32BitFacsAddresses, TRUE);
3365ef50723SJung-uk Kim 
3375ef50723SJung-uk Kim /*
338313a0c13SJung-uk Kim  * Optionally truncate I/O addresses to 16 bits. Provides compatibility
339313a0c13SJung-uk Kim  * with other ACPI implementations. NOTE: During ACPICA initialization,
340313a0c13SJung-uk Kim  * this value is set to TRUE if any Windows OSI strings have been
341313a0c13SJung-uk Kim  * requested by the BIOS.
342313a0c13SJung-uk Kim  */
343313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_TruncateIoAddresses, FALSE);
344313a0c13SJung-uk Kim 
345313a0c13SJung-uk Kim /*
346313a0c13SJung-uk Kim  * Disable runtime checking and repair of values returned by control methods.
347313a0c13SJung-uk Kim  * Use only if the repair is causing a problem on a particular machine.
348313a0c13SJung-uk Kim  */
349313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableAutoRepair, FALSE);
350313a0c13SJung-uk Kim 
351313a0c13SJung-uk Kim /*
352313a0c13SJung-uk Kim  * Optionally do not install any SSDTs from the RSDT/XSDT during initialization.
353313a0c13SJung-uk Kim  * This can be useful for debugging ACPI problems on some machines.
354313a0c13SJung-uk Kim  */
355313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisableSsdtTableInstall, FALSE);
356313a0c13SJung-uk Kim 
357313a0c13SJung-uk Kim /*
3585ef50723SJung-uk Kim  * Optionally enable runtime namespace override.
3595ef50723SJung-uk Kim  */
3605ef50723SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_RuntimeNamespaceOverride, TRUE);
3615ef50723SJung-uk Kim 
3625ef50723SJung-uk Kim /*
363313a0c13SJung-uk Kim  * We keep track of the latest version of Windows that has been requested by
364313a0c13SJung-uk Kim  * the BIOS. ACPI 5.0.
365313a0c13SJung-uk Kim  */
366313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_OsiData, 0);
367313a0c13SJung-uk Kim 
368313a0c13SJung-uk Kim /*
369313a0c13SJung-uk Kim  * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning
370313a0c13SJung-uk Kim  * that the ACPI hardware is no longer required. A flag in the FADT indicates
371313a0c13SJung-uk Kim  * a reduced HW machine, and that flag is duplicated here for convenience.
372313a0c13SJung-uk Kim  */
373313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_ReducedHardware, FALSE);
374313a0c13SJung-uk Kim 
375313a0c13SJung-uk Kim /*
37667d9aa44SJung-uk Kim  * Maximum timeout for While() loop iterations before forced method abort.
377493deb39SJung-uk Kim  * This mechanism is intended to prevent infinite loops during interpreter
378493deb39SJung-uk Kim  * execution within a host kernel.
379493deb39SJung-uk Kim  */
38067d9aa44SJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_MaxLoopIterations, ACPI_MAX_LOOP_TIMEOUT);
381493deb39SJung-uk Kim 
382493deb39SJung-uk Kim /*
383*8438a7a8SJung-uk Kim  * Optionally ignore AE_NOT_FOUND errors from named reference package elements
384*8438a7a8SJung-uk Kim  * during DSDT/SSDT table loading. This reduces error "noise" in platforms
385*8438a7a8SJung-uk Kim  * whose firmware is carrying around a bunch of unused package objects that
386*8438a7a8SJung-uk Kim  * refer to non-existent named objects. However, If the AML actually tries to
387*8438a7a8SJung-uk Kim  * use such a package, the unresolved element(s) will be replaced with NULL
388*8438a7a8SJung-uk Kim  * elements.
389*8438a7a8SJung-uk Kim  */
390*8438a7a8SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_IgnorePackageResolutionErrors, FALSE);
391*8438a7a8SJung-uk Kim 
392*8438a7a8SJung-uk Kim /*
393313a0c13SJung-uk Kim  * This mechanism is used to trace a specified AML method. The method is
394313a0c13SJung-uk Kim  * traced each time it is executed.
395313a0c13SJung-uk Kim  */
396313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceFlags, 0);
397fe0f0bbbSJung-uk Kim ACPI_INIT_GLOBAL (const char *,     AcpiGbl_TraceMethodName, NULL);
398fe0f0bbbSJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceDbgLevel, ACPI_TRACE_LEVEL_DEFAULT);
399fe0f0bbbSJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiGbl_TraceDbgLayer, ACPI_TRACE_LAYER_DEFAULT);
400313a0c13SJung-uk Kim 
401313a0c13SJung-uk Kim /*
402313a0c13SJung-uk Kim  * Runtime configuration of debug output control masks. We want the debug
403313a0c13SJung-uk Kim  * switches statically initialized so they are already set when the debugger
404313a0c13SJung-uk Kim  * is entered.
405313a0c13SJung-uk Kim  */
406313a0c13SJung-uk Kim #ifdef ACPI_DEBUG_OUTPUT
407313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_DEBUG_DEFAULT);
408313a0c13SJung-uk Kim #else
409313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLevel, ACPI_NORMAL_DEFAULT);
410313a0c13SJung-uk Kim #endif
411313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT32,           AcpiDbgLayer, ACPI_COMPONENT_DEFAULT);
412313a0c13SJung-uk Kim 
413f8146b88SJung-uk Kim /* Optionally enable timer output with Debug Object output */
414f8146b88SJung-uk Kim 
415f8146b88SJung-uk Kim ACPI_INIT_GLOBAL (UINT8,            AcpiGbl_DisplayDebugTimer, FALSE);
416f8146b88SJung-uk Kim 
417313a0c13SJung-uk Kim /*
41828482948SJung-uk Kim  * Debugger command handshake globals. Host OSes need to access these
41928482948SJung-uk Kim  * variables to implement their own command handshake mechanism.
42028482948SJung-uk Kim  */
42128482948SJung-uk Kim #ifdef ACPI_DEBUGGER
42228482948SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN,          AcpiGbl_MethodExecuting, FALSE);
42328482948SJung-uk Kim ACPI_GLOBAL (char,                  AcpiGbl_DbLineBuf[ACPI_DB_LINE_BUFFER_SIZE]);
42428482948SJung-uk Kim #endif
42528482948SJung-uk Kim 
42628482948SJung-uk Kim /*
427313a0c13SJung-uk Kim  * Other miscellaneous globals
428313a0c13SJung-uk Kim  */
429313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_TABLE_FADT,       AcpiGbl_FADT);
430313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32,                AcpiCurrentGpeCount);
431313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN,               AcpiGbl_SystemAwakeAndRunning);
432313a0c13SJung-uk Kim 
433313a0c13SJung-uk Kim 
434313a0c13SJung-uk Kim /*****************************************************************************
435313a0c13SJung-uk Kim  *
436313a0c13SJung-uk Kim  * ACPICA public interface configuration.
437313a0c13SJung-uk Kim  *
438313a0c13SJung-uk Kim  * Interfaces that are configured out of the ACPICA build are replaced
439313a0c13SJung-uk Kim  * by inlined stubs by default.
440313a0c13SJung-uk Kim  *
441313a0c13SJung-uk Kim  ****************************************************************************/
442313a0c13SJung-uk Kim 
443313a0c13SJung-uk Kim /*
444313a0c13SJung-uk Kim  * Hardware-reduced prototypes (default: Not hardware reduced).
445313a0c13SJung-uk Kim  *
446313a0c13SJung-uk Kim  * All ACPICA hardware-related interfaces that use these macros will be
447313a0c13SJung-uk Kim  * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag
448a159c266SJung-uk Kim  * is set to TRUE.
449313a0c13SJung-uk Kim  *
450313a0c13SJung-uk Kim  * Note: This static build option for reduced hardware is intended to
451313a0c13SJung-uk Kim  * reduce ACPICA code size if desired or necessary. However, even if this
452313a0c13SJung-uk Kim  * option is not specified, the runtime behavior of ACPICA is dependent
453313a0c13SJung-uk Kim  * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set,
454313a0c13SJung-uk Kim  * the flag will enable similar behavior -- ACPICA will not attempt
455313a0c13SJung-uk Kim  * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.)
456a159c266SJung-uk Kim  */
457a159c266SJung-uk Kim #if (!ACPI_REDUCED_HARDWARE)
458a159c266SJung-uk Kim #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
459313a0c13SJung-uk Kim     ACPI_EXTERNAL_RETURN_STATUS(Prototype)
460a159c266SJung-uk Kim 
461a159c266SJung-uk Kim #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
462313a0c13SJung-uk Kim     ACPI_EXTERNAL_RETURN_OK(Prototype)
463a159c266SJung-uk Kim 
464a159c266SJung-uk Kim #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
465313a0c13SJung-uk Kim     ACPI_EXTERNAL_RETURN_VOID(Prototype)
466a159c266SJung-uk Kim 
467a159c266SJung-uk Kim #else
468a159c266SJung-uk Kim #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
469a159c266SJung-uk Kim     static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);}
470a159c266SJung-uk Kim 
471a159c266SJung-uk Kim #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
472a159c266SJung-uk Kim     static ACPI_INLINE Prototype {return(AE_OK);}
473a159c266SJung-uk Kim 
474a159c266SJung-uk Kim #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
475313a0c13SJung-uk Kim     static ACPI_INLINE Prototype {return;}
476a159c266SJung-uk Kim 
477a159c266SJung-uk Kim #endif /* !ACPI_REDUCED_HARDWARE */
478a159c266SJung-uk Kim 
479a159c266SJung-uk Kim 
480a159c266SJung-uk Kim /*
481313a0c13SJung-uk Kim  * Error message prototypes (default: error messages enabled).
482313a0c13SJung-uk Kim  *
483313a0c13SJung-uk Kim  * All interfaces related to error and warning messages
484313a0c13SJung-uk Kim  * will be configured out of the ACPICA build if the
485313a0c13SJung-uk Kim  * ACPI_NO_ERROR_MESSAGE flag is defined.
486313a0c13SJung-uk Kim  */
487313a0c13SJung-uk Kim #ifndef ACPI_NO_ERROR_MESSAGES
488313a0c13SJung-uk Kim #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
489313a0c13SJung-uk Kim     Prototype;
490313a0c13SJung-uk Kim 
491313a0c13SJung-uk Kim #else
492313a0c13SJung-uk Kim #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \
493313a0c13SJung-uk Kim     static ACPI_INLINE Prototype {return;}
494313a0c13SJung-uk Kim 
495313a0c13SJung-uk Kim #endif /* ACPI_NO_ERROR_MESSAGES */
496313a0c13SJung-uk Kim 
497313a0c13SJung-uk Kim 
498313a0c13SJung-uk Kim /*
499313a0c13SJung-uk Kim  * Debugging output prototypes (default: no debug output).
500313a0c13SJung-uk Kim  *
501313a0c13SJung-uk Kim  * All interfaces related to debug output messages
502313a0c13SJung-uk Kim  * will be configured out of the ACPICA build unless the
503313a0c13SJung-uk Kim  * ACPI_DEBUG_OUTPUT flag is defined.
504313a0c13SJung-uk Kim  */
505313a0c13SJung-uk Kim #ifdef ACPI_DEBUG_OUTPUT
506313a0c13SJung-uk Kim #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
507313a0c13SJung-uk Kim     Prototype;
508313a0c13SJung-uk Kim 
509313a0c13SJung-uk Kim #else
510313a0c13SJung-uk Kim #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \
511313a0c13SJung-uk Kim     static ACPI_INLINE Prototype {return;}
512313a0c13SJung-uk Kim 
513313a0c13SJung-uk Kim #endif /* ACPI_DEBUG_OUTPUT */
514313a0c13SJung-uk Kim 
515313a0c13SJung-uk Kim 
516313a0c13SJung-uk Kim /*
517313a0c13SJung-uk Kim  * Application prototypes
518313a0c13SJung-uk Kim  *
519313a0c13SJung-uk Kim  * All interfaces used by application will be configured
520313a0c13SJung-uk Kim  * out of the ACPICA build unless the ACPI_APPLICATION
521313a0c13SJung-uk Kim  * flag is defined.
522313a0c13SJung-uk Kim  */
523313a0c13SJung-uk Kim #ifdef ACPI_APPLICATION
524313a0c13SJung-uk Kim #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
525313a0c13SJung-uk Kim     Prototype;
526313a0c13SJung-uk Kim 
527313a0c13SJung-uk Kim #else
528313a0c13SJung-uk Kim #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \
529313a0c13SJung-uk Kim     static ACPI_INLINE Prototype {return;}
530313a0c13SJung-uk Kim 
531313a0c13SJung-uk Kim #endif /* ACPI_APPLICATION */
532313a0c13SJung-uk Kim 
533313a0c13SJung-uk Kim 
534f8146b88SJung-uk Kim /*
535f8146b88SJung-uk Kim  * Debugger prototypes
536f8146b88SJung-uk Kim  *
537f8146b88SJung-uk Kim  * All interfaces used by debugger will be configured
538f8146b88SJung-uk Kim  * out of the ACPICA build unless the ACPI_DEBUGGER
539f8146b88SJung-uk Kim  * flag is defined.
540f8146b88SJung-uk Kim  */
541f8146b88SJung-uk Kim #ifdef ACPI_DEBUGGER
542f8146b88SJung-uk Kim #define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \
543f8146b88SJung-uk Kim     ACPI_EXTERNAL_RETURN_OK(Prototype)
544f8146b88SJung-uk Kim 
545f8146b88SJung-uk Kim #define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \
546f8146b88SJung-uk Kim     ACPI_EXTERNAL_RETURN_VOID(Prototype)
547f8146b88SJung-uk Kim 
548f8146b88SJung-uk Kim #else
549f8146b88SJung-uk Kim #define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \
550f8146b88SJung-uk Kim     static ACPI_INLINE Prototype {return(AE_OK);}
551f8146b88SJung-uk Kim 
552f8146b88SJung-uk Kim #define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \
553f8146b88SJung-uk Kim     static ACPI_INLINE Prototype {return;}
554f8146b88SJung-uk Kim 
555f8146b88SJung-uk Kim #endif /* ACPI_DEBUGGER */
556f8146b88SJung-uk Kim 
557f8146b88SJung-uk Kim 
558313a0c13SJung-uk Kim /*****************************************************************************
559313a0c13SJung-uk Kim  *
560313a0c13SJung-uk Kim  * ACPICA public interface prototypes
561313a0c13SJung-uk Kim  *
562313a0c13SJung-uk Kim  ****************************************************************************/
563313a0c13SJung-uk Kim 
564313a0c13SJung-uk Kim /*
5655a77b11bSJung-uk Kim  * Initialization
566a9f12690SJung-uk Kim  */
567313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
568493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
569a9f12690SJung-uk Kim AcpiInitializeTables (
570a9f12690SJung-uk Kim     ACPI_TABLE_DESC         *InitialStorage,
571a9f12690SJung-uk Kim     UINT32                  InitialTableCount,
572313a0c13SJung-uk Kim     BOOLEAN                 AllowResize))
573a9f12690SJung-uk Kim 
574313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
575493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
576a9f12690SJung-uk Kim AcpiInitializeSubsystem (
577313a0c13SJung-uk Kim     void))
578a9f12690SJung-uk Kim 
579313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
580493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
581a9f12690SJung-uk Kim AcpiEnableSubsystem (
582313a0c13SJung-uk Kim     UINT32                  Flags))
583a9f12690SJung-uk Kim 
584313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
585493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
586a9f12690SJung-uk Kim AcpiInitializeObjects (
587313a0c13SJung-uk Kim     UINT32                  Flags))
588a9f12690SJung-uk Kim 
589313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
590493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
591a9f12690SJung-uk Kim AcpiTerminate (
592313a0c13SJung-uk Kim     void))
593a9f12690SJung-uk Kim 
594a9f12690SJung-uk Kim 
5955a77b11bSJung-uk Kim /*
5965a77b11bSJung-uk Kim  * Miscellaneous global interfaces
5975a77b11bSJung-uk Kim  */
598a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
599a9f12690SJung-uk Kim ACPI_STATUS
600a9f12690SJung-uk Kim AcpiEnable (
601a159c266SJung-uk Kim     void))
602a9f12690SJung-uk Kim 
603a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
604a9f12690SJung-uk Kim ACPI_STATUS
605a9f12690SJung-uk Kim AcpiDisable (
606a159c266SJung-uk Kim     void))
607a9f12690SJung-uk Kim 
608313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
609a9f12690SJung-uk Kim ACPI_STATUS
6105a77b11bSJung-uk Kim AcpiSubsystemStatus (
611313a0c13SJung-uk Kim     void))
6125a77b11bSJung-uk Kim 
613313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
6145a77b11bSJung-uk Kim ACPI_STATUS
615a9f12690SJung-uk Kim AcpiGetSystemInfo (
616313a0c13SJung-uk Kim     ACPI_BUFFER             *RetBuffer))
617a9f12690SJung-uk Kim 
618313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
619a9f12690SJung-uk Kim ACPI_STATUS
620a9f12690SJung-uk Kim AcpiGetStatistics (
621313a0c13SJung-uk Kim     ACPI_STATISTICS         *Stats))
622a9f12690SJung-uk Kim 
623313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_PTR (
624a9f12690SJung-uk Kim const char *
625a9f12690SJung-uk Kim AcpiFormatException (
626313a0c13SJung-uk Kim     ACPI_STATUS             Exception))
627a9f12690SJung-uk Kim 
628313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
629a9f12690SJung-uk Kim ACPI_STATUS
630a9f12690SJung-uk Kim AcpiPurgeCachedObjects (
631313a0c13SJung-uk Kim     void))
632a9f12690SJung-uk Kim 
633313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
634709fac06SJung-uk Kim ACPI_STATUS
635709fac06SJung-uk Kim AcpiInstallInterface (
636313a0c13SJung-uk Kim     ACPI_STRING             InterfaceName))
637709fac06SJung-uk Kim 
638313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
639709fac06SJung-uk Kim ACPI_STATUS
640709fac06SJung-uk Kim AcpiRemoveInterface (
641313a0c13SJung-uk Kim     ACPI_STRING             InterfaceName))
642a9f12690SJung-uk Kim 
643313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
644bf6fac21SJung-uk Kim ACPI_STATUS
645bf6fac21SJung-uk Kim AcpiUpdateInterfaces (
646313a0c13SJung-uk Kim     UINT8                   Action))
647bf6fac21SJung-uk Kim 
648313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_UINT32 (
649ec3fc72fSJung-uk Kim UINT32
650ec3fc72fSJung-uk Kim AcpiCheckAddressRange (
651ec3fc72fSJung-uk Kim     ACPI_ADR_SPACE_TYPE     SpaceId,
652ec3fc72fSJung-uk Kim     ACPI_PHYSICAL_ADDRESS   Address,
653ec3fc72fSJung-uk Kim     ACPI_SIZE               Length,
654313a0c13SJung-uk Kim     BOOLEAN                 Warn))
655ec3fc72fSJung-uk Kim 
656313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
6571df130f1SJung-uk Kim ACPI_STATUS
6581df130f1SJung-uk Kim AcpiDecodePldBuffer (
6591df130f1SJung-uk Kim     UINT8                   *InBuffer,
6601df130f1SJung-uk Kim     ACPI_SIZE               Length,
661313a0c13SJung-uk Kim     ACPI_PLD_INFO           **ReturnBuffer))
662a9f12690SJung-uk Kim 
663a9f12690SJung-uk Kim 
664a9f12690SJung-uk Kim /*
665e8241eabSJung-uk Kim  * ACPI table load/unload interfaces
666e8241eabSJung-uk Kim  */
667313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
668493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
669313a0c13SJung-uk Kim AcpiInstallTable (
670313a0c13SJung-uk Kim     ACPI_PHYSICAL_ADDRESS   Address,
671313a0c13SJung-uk Kim     BOOLEAN                 Physical))
672313a0c13SJung-uk Kim 
673313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
674e8241eabSJung-uk Kim ACPI_STATUS
675e8241eabSJung-uk Kim AcpiLoadTable (
676313a0c13SJung-uk Kim     ACPI_TABLE_HEADER       *Table))
677e8241eabSJung-uk Kim 
678313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
679e8241eabSJung-uk Kim ACPI_STATUS
680e8241eabSJung-uk Kim AcpiUnloadParentTable (
681313a0c13SJung-uk Kim     ACPI_HANDLE             Object))
682e8241eabSJung-uk Kim 
683313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
684493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
685e8241eabSJung-uk Kim AcpiLoadTables (
686313a0c13SJung-uk Kim     void))
687e8241eabSJung-uk Kim 
688e8241eabSJung-uk Kim 
689e8241eabSJung-uk Kim /*
690a9f12690SJung-uk Kim  * ACPI table manipulation interfaces
691a9f12690SJung-uk Kim  */
692313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
693493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
694a9f12690SJung-uk Kim AcpiReallocateRootTable (
695313a0c13SJung-uk Kim     void))
696a9f12690SJung-uk Kim 
697313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
698493deb39SJung-uk Kim ACPI_STATUS ACPI_INIT_FUNCTION
699a9f12690SJung-uk Kim AcpiFindRootPointer (
7007cf3e94aSJung-uk Kim     ACPI_PHYSICAL_ADDRESS   *RsdpAddress))
701a9f12690SJung-uk Kim 
702313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
703a9f12690SJung-uk Kim ACPI_STATUS
704a9f12690SJung-uk Kim AcpiGetTableHeader (
705a9f12690SJung-uk Kim     ACPI_STRING             Signature,
706a9f12690SJung-uk Kim     UINT32                  Instance,
707313a0c13SJung-uk Kim     ACPI_TABLE_HEADER       *OutTableHeader))
708a9f12690SJung-uk Kim 
709313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
710a9f12690SJung-uk Kim ACPI_STATUS
711a9f12690SJung-uk Kim AcpiGetTable (
712a9f12690SJung-uk Kim     ACPI_STRING             Signature,
713a9f12690SJung-uk Kim     UINT32                  Instance,
714313a0c13SJung-uk Kim     ACPI_TABLE_HEADER       **OutTable))
715a9f12690SJung-uk Kim 
7161cc50d6bSJung-uk Kim ACPI_EXTERNAL_RETURN_VOID (
7171cc50d6bSJung-uk Kim void
7181cc50d6bSJung-uk Kim AcpiPutTable (
7191cc50d6bSJung-uk Kim     ACPI_TABLE_HEADER       *Table))
7201cc50d6bSJung-uk Kim 
721313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
722a9f12690SJung-uk Kim ACPI_STATUS
723a9f12690SJung-uk Kim AcpiGetTableByIndex (
724a9f12690SJung-uk Kim     UINT32                  TableIndex,
725313a0c13SJung-uk Kim     ACPI_TABLE_HEADER       **OutTable))
726a9f12690SJung-uk Kim 
727313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
728a9f12690SJung-uk Kim ACPI_STATUS
729a9f12690SJung-uk Kim AcpiInstallTableHandler (
730a9f12690SJung-uk Kim     ACPI_TABLE_HANDLER      Handler,
731313a0c13SJung-uk Kim     void                    *Context))
732a9f12690SJung-uk Kim 
733313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
734a9f12690SJung-uk Kim ACPI_STATUS
735a9f12690SJung-uk Kim AcpiRemoveTableHandler (
736313a0c13SJung-uk Kim     ACPI_TABLE_HANDLER      Handler))
737a9f12690SJung-uk Kim 
738a9f12690SJung-uk Kim 
739a9f12690SJung-uk Kim /*
740a9f12690SJung-uk Kim  * Namespace and name interfaces
741a9f12690SJung-uk Kim  */
742313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
743a9f12690SJung-uk Kim ACPI_STATUS
744a9f12690SJung-uk Kim AcpiWalkNamespace (
745a9f12690SJung-uk Kim     ACPI_OBJECT_TYPE        Type,
746a9f12690SJung-uk Kim     ACPI_HANDLE             StartObject,
747a9f12690SJung-uk Kim     UINT32                  MaxDepth,
748bf6fac21SJung-uk Kim     ACPI_WALK_CALLBACK      DescendingCallback,
749bf6fac21SJung-uk Kim     ACPI_WALK_CALLBACK      AscendingCallback,
750a9f12690SJung-uk Kim     void                    *Context,
751313a0c13SJung-uk Kim     void                    **ReturnValue))
752a9f12690SJung-uk Kim 
753313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
754a9f12690SJung-uk Kim ACPI_STATUS
755a9f12690SJung-uk Kim AcpiGetDevices (
756a9f12690SJung-uk Kim     char                    *HID,
757a9f12690SJung-uk Kim     ACPI_WALK_CALLBACK      UserFunction,
758a9f12690SJung-uk Kim     void                    *Context,
759313a0c13SJung-uk Kim     void                    **ReturnValue))
760a9f12690SJung-uk Kim 
761313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
762a9f12690SJung-uk Kim ACPI_STATUS
763a9f12690SJung-uk Kim AcpiGetName (
7643f5e024cSJung-uk Kim     ACPI_HANDLE             Object,
765a9f12690SJung-uk Kim     UINT32                  NameType,
766313a0c13SJung-uk Kim     ACPI_BUFFER             *RetPathPtr))
767a9f12690SJung-uk Kim 
768313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
769a9f12690SJung-uk Kim ACPI_STATUS
770a9f12690SJung-uk Kim AcpiGetHandle (
771a9f12690SJung-uk Kim     ACPI_HANDLE             Parent,
772a9f12690SJung-uk Kim     ACPI_STRING             Pathname,
773313a0c13SJung-uk Kim     ACPI_HANDLE             *RetHandle))
774a9f12690SJung-uk Kim 
775313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
776a9f12690SJung-uk Kim ACPI_STATUS
777a9f12690SJung-uk Kim AcpiAttachData (
7783f5e024cSJung-uk Kim     ACPI_HANDLE             Object,
779a9f12690SJung-uk Kim     ACPI_OBJECT_HANDLER     Handler,
780313a0c13SJung-uk Kim     void                    *Data))
781a9f12690SJung-uk Kim 
782313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
783a9f12690SJung-uk Kim ACPI_STATUS
784a9f12690SJung-uk Kim AcpiDetachData (
7853f5e024cSJung-uk Kim     ACPI_HANDLE             Object,
786313a0c13SJung-uk Kim     ACPI_OBJECT_HANDLER     Handler))
787a9f12690SJung-uk Kim 
788313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
789a9f12690SJung-uk Kim ACPI_STATUS
790a9f12690SJung-uk Kim AcpiGetData (
7913f5e024cSJung-uk Kim     ACPI_HANDLE             Object,
792a9f12690SJung-uk Kim     ACPI_OBJECT_HANDLER     Handler,
793313a0c13SJung-uk Kim     void                    **Data))
794a9f12690SJung-uk Kim 
795313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
796a9f12690SJung-uk Kim ACPI_STATUS
797a9f12690SJung-uk Kim AcpiDebugTrace (
798fe0f0bbbSJung-uk Kim     const char              *Name,
799a9f12690SJung-uk Kim     UINT32                  DebugLevel,
800a9f12690SJung-uk Kim     UINT32                  DebugLayer,
801313a0c13SJung-uk Kim     UINT32                  Flags))
802a9f12690SJung-uk Kim 
803a9f12690SJung-uk Kim 
804a9f12690SJung-uk Kim /*
805a9f12690SJung-uk Kim  * Object manipulation and enumeration
806a9f12690SJung-uk Kim  */
807313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
808a9f12690SJung-uk Kim ACPI_STATUS
809a9f12690SJung-uk Kim AcpiEvaluateObject (
810a9f12690SJung-uk Kim     ACPI_HANDLE             Object,
811a9f12690SJung-uk Kim     ACPI_STRING             Pathname,
812a9f12690SJung-uk Kim     ACPI_OBJECT_LIST        *ParameterObjects,
813313a0c13SJung-uk Kim     ACPI_BUFFER             *ReturnObjectBuffer))
814a9f12690SJung-uk Kim 
815313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
816a9f12690SJung-uk Kim ACPI_STATUS
817a9f12690SJung-uk Kim AcpiEvaluateObjectTyped (
818a9f12690SJung-uk Kim     ACPI_HANDLE             Object,
819a9f12690SJung-uk Kim     ACPI_STRING             Pathname,
820a9f12690SJung-uk Kim     ACPI_OBJECT_LIST        *ExternalParams,
821a9f12690SJung-uk Kim     ACPI_BUFFER             *ReturnBuffer,
822313a0c13SJung-uk Kim     ACPI_OBJECT_TYPE        ReturnType))
823a9f12690SJung-uk Kim 
824313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
825a9f12690SJung-uk Kim ACPI_STATUS
826a9f12690SJung-uk Kim AcpiGetObjectInfo (
8273f5e024cSJung-uk Kim     ACPI_HANDLE             Object,
828313a0c13SJung-uk Kim     ACPI_DEVICE_INFO        **ReturnBuffer))
829a9f12690SJung-uk Kim 
830313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
831a9f12690SJung-uk Kim ACPI_STATUS
832a9f12690SJung-uk Kim AcpiInstallMethod (
833313a0c13SJung-uk Kim     UINT8                   *Buffer))
834a9f12690SJung-uk Kim 
835313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
836a9f12690SJung-uk Kim ACPI_STATUS
837a9f12690SJung-uk Kim AcpiGetNextObject (
838a9f12690SJung-uk Kim     ACPI_OBJECT_TYPE        Type,
839a9f12690SJung-uk Kim     ACPI_HANDLE             Parent,
840a9f12690SJung-uk Kim     ACPI_HANDLE             Child,
841313a0c13SJung-uk Kim     ACPI_HANDLE             *OutHandle))
842a9f12690SJung-uk Kim 
843313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
844a9f12690SJung-uk Kim ACPI_STATUS
845a9f12690SJung-uk Kim AcpiGetType (
846a9f12690SJung-uk Kim     ACPI_HANDLE             Object,
847313a0c13SJung-uk Kim     ACPI_OBJECT_TYPE        *OutType))
848a9f12690SJung-uk Kim 
849313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
850a9f12690SJung-uk Kim ACPI_STATUS
851a9f12690SJung-uk Kim AcpiGetParent (
852a9f12690SJung-uk Kim     ACPI_HANDLE             Object,
853313a0c13SJung-uk Kim     ACPI_HANDLE             *OutHandle))
854a9f12690SJung-uk Kim 
855a9f12690SJung-uk Kim 
856a9f12690SJung-uk Kim /*
857a9f12690SJung-uk Kim  * Handler interfaces
858a9f12690SJung-uk Kim  */
859313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
860a9f12690SJung-uk Kim ACPI_STATUS
861a9f12690SJung-uk Kim AcpiInstallInitializationHandler (
862a9f12690SJung-uk Kim     ACPI_INIT_HANDLER       Handler,
863313a0c13SJung-uk Kim     UINT32                  Function))
864a9f12690SJung-uk Kim 
865a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
866a9f12690SJung-uk Kim ACPI_STATUS
86779c6d946SJung-uk Kim AcpiInstallSciHandler (
86879c6d946SJung-uk Kim     ACPI_SCI_HANDLER        Address,
86979c6d946SJung-uk Kim     void                    *Context))
87079c6d946SJung-uk Kim 
87179c6d946SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
87279c6d946SJung-uk Kim ACPI_STATUS
87379c6d946SJung-uk Kim AcpiRemoveSciHandler (
87479c6d946SJung-uk Kim     ACPI_SCI_HANDLER        Address))
87579c6d946SJung-uk Kim 
87679c6d946SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
87779c6d946SJung-uk Kim ACPI_STATUS
8785a77b11bSJung-uk Kim AcpiInstallGlobalEventHandler (
8795a77b11bSJung-uk Kim     ACPI_GBL_EVENT_HANDLER  Handler,
880a159c266SJung-uk Kim     void                    *Context))
8815a77b11bSJung-uk Kim 
882a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
8835a77b11bSJung-uk Kim ACPI_STATUS
884a9f12690SJung-uk Kim AcpiInstallFixedEventHandler (
885a9f12690SJung-uk Kim     UINT32                  AcpiEvent,
886a9f12690SJung-uk Kim     ACPI_EVENT_HANDLER      Handler,
887a159c266SJung-uk Kim     void                    *Context))
888a9f12690SJung-uk Kim 
889a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
890a9f12690SJung-uk Kim ACPI_STATUS
891a9f12690SJung-uk Kim AcpiRemoveFixedEventHandler (
892a9f12690SJung-uk Kim     UINT32                  AcpiEvent,
893a159c266SJung-uk Kim     ACPI_EVENT_HANDLER      Handler))
894a9f12690SJung-uk Kim 
895a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
896a9f12690SJung-uk Kim ACPI_STATUS
8975a77b11bSJung-uk Kim AcpiInstallGpeHandler (
8985a77b11bSJung-uk Kim     ACPI_HANDLE             GpeDevice,
8995a77b11bSJung-uk Kim     UINT32                  GpeNumber,
9005a77b11bSJung-uk Kim     UINT32                  Type,
9015a77b11bSJung-uk Kim     ACPI_GPE_HANDLER        Address,
902a159c266SJung-uk Kim     void                    *Context))
9035a77b11bSJung-uk Kim 
904a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
9055a77b11bSJung-uk Kim ACPI_STATUS
9061c0e1b6dSJung-uk Kim AcpiInstallGpeRawHandler (
9071c0e1b6dSJung-uk Kim     ACPI_HANDLE             GpeDevice,
9081c0e1b6dSJung-uk Kim     UINT32                  GpeNumber,
9091c0e1b6dSJung-uk Kim     UINT32                  Type,
9101c0e1b6dSJung-uk Kim     ACPI_GPE_HANDLER        Address,
9111c0e1b6dSJung-uk Kim     void                    *Context))
9121c0e1b6dSJung-uk Kim 
9131c0e1b6dSJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
9141c0e1b6dSJung-uk Kim ACPI_STATUS
9155a77b11bSJung-uk Kim AcpiRemoveGpeHandler (
9165a77b11bSJung-uk Kim     ACPI_HANDLE             GpeDevice,
9175a77b11bSJung-uk Kim     UINT32                  GpeNumber,
918a159c266SJung-uk Kim     ACPI_GPE_HANDLER        Address))
9195a77b11bSJung-uk Kim 
920313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
9215a77b11bSJung-uk Kim ACPI_STATUS
922a9f12690SJung-uk Kim AcpiInstallNotifyHandler (
923a9f12690SJung-uk Kim     ACPI_HANDLE             Device,
924a9f12690SJung-uk Kim     UINT32                  HandlerType,
925a9f12690SJung-uk Kim     ACPI_NOTIFY_HANDLER     Handler,
926313a0c13SJung-uk Kim     void                    *Context))
927a9f12690SJung-uk Kim 
928313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
929a9f12690SJung-uk Kim ACPI_STATUS
930a9f12690SJung-uk Kim AcpiRemoveNotifyHandler (
931a9f12690SJung-uk Kim     ACPI_HANDLE             Device,
932a9f12690SJung-uk Kim     UINT32                  HandlerType,
933313a0c13SJung-uk Kim     ACPI_NOTIFY_HANDLER     Handler))
934a9f12690SJung-uk Kim 
935313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
936a9f12690SJung-uk Kim ACPI_STATUS
937a9f12690SJung-uk Kim AcpiInstallAddressSpaceHandler (
938a9f12690SJung-uk Kim     ACPI_HANDLE             Device,
939a9f12690SJung-uk Kim     ACPI_ADR_SPACE_TYPE     SpaceId,
940a9f12690SJung-uk Kim     ACPI_ADR_SPACE_HANDLER  Handler,
941a9f12690SJung-uk Kim     ACPI_ADR_SPACE_SETUP    Setup,
942313a0c13SJung-uk Kim     void                    *Context))
943a9f12690SJung-uk Kim 
944313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
945a9f12690SJung-uk Kim ACPI_STATUS
946a9f12690SJung-uk Kim AcpiRemoveAddressSpaceHandler (
947a9f12690SJung-uk Kim     ACPI_HANDLE             Device,
948a9f12690SJung-uk Kim     ACPI_ADR_SPACE_TYPE     SpaceId,
949313a0c13SJung-uk Kim     ACPI_ADR_SPACE_HANDLER  Handler))
950a9f12690SJung-uk Kim 
951313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
952a9f12690SJung-uk Kim ACPI_STATUS
953a9f12690SJung-uk Kim AcpiInstallExceptionHandler (
954313a0c13SJung-uk Kim     ACPI_EXCEPTION_HANDLER  Handler))
955a9f12690SJung-uk Kim 
956313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
957709fac06SJung-uk Kim ACPI_STATUS
958709fac06SJung-uk Kim AcpiInstallInterfaceHandler (
959313a0c13SJung-uk Kim     ACPI_INTERFACE_HANDLER  Handler))
960709fac06SJung-uk Kim 
961a9f12690SJung-uk Kim 
962a9f12690SJung-uk Kim /*
9635a77b11bSJung-uk Kim  * Global Lock interfaces
964a9f12690SJung-uk Kim  */
965a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
966a9f12690SJung-uk Kim ACPI_STATUS
967a9f12690SJung-uk Kim AcpiAcquireGlobalLock (
968a9f12690SJung-uk Kim     UINT16                  Timeout,
969a159c266SJung-uk Kim     UINT32                  *Handle))
970a9f12690SJung-uk Kim 
971a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
972a9f12690SJung-uk Kim ACPI_STATUS
973a9f12690SJung-uk Kim AcpiReleaseGlobalLock (
974a159c266SJung-uk Kim     UINT32                  Handle))
975a9f12690SJung-uk Kim 
9765a77b11bSJung-uk Kim 
9775a77b11bSJung-uk Kim /*
9783f0275a0SJung-uk Kim  * Interfaces to AML mutex objects
9793f0275a0SJung-uk Kim  */
980313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
9813f0275a0SJung-uk Kim ACPI_STATUS
9823f0275a0SJung-uk Kim AcpiAcquireMutex (
9833f0275a0SJung-uk Kim     ACPI_HANDLE             Handle,
9843f0275a0SJung-uk Kim     ACPI_STRING             Pathname,
985313a0c13SJung-uk Kim     UINT16                  Timeout))
9863f0275a0SJung-uk Kim 
987313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
9883f0275a0SJung-uk Kim ACPI_STATUS
9893f0275a0SJung-uk Kim AcpiReleaseMutex (
9903f0275a0SJung-uk Kim     ACPI_HANDLE             Handle,
991313a0c13SJung-uk Kim     ACPI_STRING             Pathname))
9923f0275a0SJung-uk Kim 
9933f0275a0SJung-uk Kim 
9943f0275a0SJung-uk Kim /*
9955a77b11bSJung-uk Kim  * Fixed Event interfaces
9965a77b11bSJung-uk Kim  */
997a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
998a9f12690SJung-uk Kim ACPI_STATUS
999a9f12690SJung-uk Kim AcpiEnableEvent (
1000a9f12690SJung-uk Kim     UINT32                  Event,
1001a159c266SJung-uk Kim     UINT32                  Flags))
1002a9f12690SJung-uk Kim 
1003a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1004a9f12690SJung-uk Kim ACPI_STATUS
1005a9f12690SJung-uk Kim AcpiDisableEvent (
1006a9f12690SJung-uk Kim     UINT32                  Event,
1007a159c266SJung-uk Kim     UINT32                  Flags))
1008a9f12690SJung-uk Kim 
1009a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1010a9f12690SJung-uk Kim ACPI_STATUS
1011a9f12690SJung-uk Kim AcpiClearEvent (
1012a159c266SJung-uk Kim     UINT32                  Event))
1013a9f12690SJung-uk Kim 
1014a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1015a9f12690SJung-uk Kim ACPI_STATUS
1016a9f12690SJung-uk Kim AcpiGetEventStatus (
1017a9f12690SJung-uk Kim     UINT32                  Event,
1018a159c266SJung-uk Kim     ACPI_EVENT_STATUS       *EventStatus))
1019a9f12690SJung-uk Kim 
1020a9f12690SJung-uk Kim 
1021a9f12690SJung-uk Kim /*
10225a77b11bSJung-uk Kim  * General Purpose Event (GPE) Interfaces
1023a9f12690SJung-uk Kim  */
1024a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1025a9f12690SJung-uk Kim ACPI_STATUS
10265a77b11bSJung-uk Kim AcpiUpdateAllGpes (
1027a159c266SJung-uk Kim     void))
1028a9f12690SJung-uk Kim 
1029a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1030a9f12690SJung-uk Kim ACPI_STATUS
1031a9f12690SJung-uk Kim AcpiEnableGpe (
1032a9f12690SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1033a159c266SJung-uk Kim     UINT32                  GpeNumber))
1034a9f12690SJung-uk Kim 
1035a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1036a9f12690SJung-uk Kim ACPI_STATUS
1037a9f12690SJung-uk Kim AcpiDisableGpe (
1038a9f12690SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1039a159c266SJung-uk Kim     UINT32                  GpeNumber))
1040a9f12690SJung-uk Kim 
1041a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1042a9f12690SJung-uk Kim ACPI_STATUS
1043a9f12690SJung-uk Kim AcpiClearGpe (
1044a9f12690SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1045a159c266SJung-uk Kim     UINT32                  GpeNumber))
1046a9f12690SJung-uk Kim 
1047a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1048a9f12690SJung-uk Kim ACPI_STATUS
10495a77b11bSJung-uk Kim AcpiSetGpe (
10505a77b11bSJung-uk Kim     ACPI_HANDLE             GpeDevice,
10515a77b11bSJung-uk Kim     UINT32                  GpeNumber,
1052a159c266SJung-uk Kim     UINT8                   Action))
10535a77b11bSJung-uk Kim 
1054a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
10555a77b11bSJung-uk Kim ACPI_STATUS
10565a77b11bSJung-uk Kim AcpiFinishGpe (
10575a77b11bSJung-uk Kim     ACPI_HANDLE             GpeDevice,
1058a159c266SJung-uk Kim     UINT32                  GpeNumber))
10595a77b11bSJung-uk Kim 
1060a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
10615a77b11bSJung-uk Kim ACPI_STATUS
1062493deb39SJung-uk Kim AcpiMaskGpe (
1063493deb39SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1064493deb39SJung-uk Kim     UINT32                  GpeNumber,
1065493deb39SJung-uk Kim     BOOLEAN                 IsMasked))
1066493deb39SJung-uk Kim 
1067493deb39SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1068493deb39SJung-uk Kim ACPI_STATUS
1069313a0c13SJung-uk Kim AcpiMarkGpeForWake (
1070313a0c13SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1071313a0c13SJung-uk Kim     UINT32                  GpeNumber))
1072313a0c13SJung-uk Kim 
1073313a0c13SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1074313a0c13SJung-uk Kim ACPI_STATUS
10755a77b11bSJung-uk Kim AcpiSetupGpeForWake (
10765a77b11bSJung-uk Kim     ACPI_HANDLE             ParentDevice,
10775a77b11bSJung-uk Kim     ACPI_HANDLE             GpeDevice,
1078a159c266SJung-uk Kim     UINT32                  GpeNumber))
10795a77b11bSJung-uk Kim 
1080a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
10815a77b11bSJung-uk Kim ACPI_STATUS
10825a77b11bSJung-uk Kim AcpiSetGpeWakeMask (
1083a88e22b7SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1084a88e22b7SJung-uk Kim     UINT32                  GpeNumber,
1085a159c266SJung-uk Kim     UINT8                   Action))
1086a88e22b7SJung-uk Kim 
1087a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1088a88e22b7SJung-uk Kim ACPI_STATUS
1089a9f12690SJung-uk Kim AcpiGetGpeStatus (
1090a9f12690SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1091a9f12690SJung-uk Kim     UINT32                  GpeNumber,
1092a159c266SJung-uk Kim     ACPI_EVENT_STATUS       *EventStatus))
1093a9f12690SJung-uk Kim 
1094a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1095a9f12690SJung-uk Kim ACPI_STATUS
1096a9f12690SJung-uk Kim AcpiDisableAllGpes (
1097a159c266SJung-uk Kim     void))
1098a9f12690SJung-uk Kim 
1099a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1100a9f12690SJung-uk Kim ACPI_STATUS
1101a9f12690SJung-uk Kim AcpiEnableAllRuntimeGpes (
1102a159c266SJung-uk Kim     void))
1103a9f12690SJung-uk Kim 
1104a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1105a9f12690SJung-uk Kim ACPI_STATUS
11061c0e1b6dSJung-uk Kim AcpiEnableAllWakeupGpes (
11071c0e1b6dSJung-uk Kim     void))
11081c0e1b6dSJung-uk Kim 
11091c0e1b6dSJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
11101c0e1b6dSJung-uk Kim ACPI_STATUS
1111a9f12690SJung-uk Kim AcpiGetGpeDevice (
1112a9f12690SJung-uk Kim     UINT32                  GpeIndex,
1113a159c266SJung-uk Kim     ACPI_HANDLE             *GpeDevice))
1114a9f12690SJung-uk Kim 
1115a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1116a9f12690SJung-uk Kim ACPI_STATUS
1117a9f12690SJung-uk Kim AcpiInstallGpeBlock (
1118a9f12690SJung-uk Kim     ACPI_HANDLE             GpeDevice,
1119a9f12690SJung-uk Kim     ACPI_GENERIC_ADDRESS    *GpeBlockAddress,
1120a9f12690SJung-uk Kim     UINT32                  RegisterCount,
1121a159c266SJung-uk Kim     UINT32                  InterruptNumber))
1122a9f12690SJung-uk Kim 
1123a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1124a9f12690SJung-uk Kim ACPI_STATUS
1125a9f12690SJung-uk Kim AcpiRemoveGpeBlock (
1126a159c266SJung-uk Kim     ACPI_HANDLE             GpeDevice))
1127a9f12690SJung-uk Kim 
1128a9f12690SJung-uk Kim 
1129a9f12690SJung-uk Kim /*
1130a9f12690SJung-uk Kim  * Resource interfaces
1131a9f12690SJung-uk Kim  */
1132a9f12690SJung-uk Kim typedef
1133a9f12690SJung-uk Kim ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
1134a9f12690SJung-uk Kim     ACPI_RESOURCE           *Resource,
1135a9f12690SJung-uk Kim     void                    *Context);
1136a9f12690SJung-uk Kim 
1137313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1138a9f12690SJung-uk Kim ACPI_STATUS
1139a9f12690SJung-uk Kim AcpiGetVendorResource (
11403f5e024cSJung-uk Kim     ACPI_HANDLE             Device,
1141a9f12690SJung-uk Kim     char                    *Name,
1142a9f12690SJung-uk Kim     ACPI_VENDOR_UUID        *Uuid,
1143313a0c13SJung-uk Kim     ACPI_BUFFER             *RetBuffer))
1144a9f12690SJung-uk Kim 
1145313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1146a9f12690SJung-uk Kim ACPI_STATUS
1147a9f12690SJung-uk Kim AcpiGetCurrentResources (
11483f5e024cSJung-uk Kim     ACPI_HANDLE             Device,
1149313a0c13SJung-uk Kim     ACPI_BUFFER             *RetBuffer))
1150a9f12690SJung-uk Kim 
1151313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1152a9f12690SJung-uk Kim ACPI_STATUS
1153a9f12690SJung-uk Kim AcpiGetPossibleResources (
11543f5e024cSJung-uk Kim     ACPI_HANDLE             Device,
1155313a0c13SJung-uk Kim     ACPI_BUFFER             *RetBuffer))
1156a9f12690SJung-uk Kim 
1157313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1158a9f12690SJung-uk Kim ACPI_STATUS
11593f0275a0SJung-uk Kim AcpiGetEventResources (
11603f0275a0SJung-uk Kim     ACPI_HANDLE             DeviceHandle,
1161313a0c13SJung-uk Kim     ACPI_BUFFER             *RetBuffer))
11623f0275a0SJung-uk Kim 
1163313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
11643f0275a0SJung-uk Kim ACPI_STATUS
1165efcc2a30SJung-uk Kim AcpiWalkResourceBuffer (
1166efcc2a30SJung-uk Kim     ACPI_BUFFER                 *Buffer,
1167efcc2a30SJung-uk Kim     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
1168313a0c13SJung-uk Kim     void                        *Context))
1169efcc2a30SJung-uk Kim 
1170313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1171efcc2a30SJung-uk Kim ACPI_STATUS
1172a9f12690SJung-uk Kim AcpiWalkResources (
11733f5e024cSJung-uk Kim     ACPI_HANDLE                 Device,
1174a9f12690SJung-uk Kim     char                        *Name,
1175a9f12690SJung-uk Kim     ACPI_WALK_RESOURCE_CALLBACK UserFunction,
1176313a0c13SJung-uk Kim     void                        *Context))
1177a9f12690SJung-uk Kim 
1178313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1179a9f12690SJung-uk Kim ACPI_STATUS
1180a9f12690SJung-uk Kim AcpiSetCurrentResources (
11813f5e024cSJung-uk Kim     ACPI_HANDLE             Device,
1182313a0c13SJung-uk Kim     ACPI_BUFFER             *InBuffer))
1183a9f12690SJung-uk Kim 
1184313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1185a9f12690SJung-uk Kim ACPI_STATUS
1186a9f12690SJung-uk Kim AcpiGetIrqRoutingTable (
11873f5e024cSJung-uk Kim     ACPI_HANDLE             Device,
1188313a0c13SJung-uk Kim     ACPI_BUFFER             *RetBuffer))
1189a9f12690SJung-uk Kim 
1190313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1191a9f12690SJung-uk Kim ACPI_STATUS
1192a9f12690SJung-uk Kim AcpiResourceToAddress64 (
1193a9f12690SJung-uk Kim     ACPI_RESOURCE           *Resource,
1194313a0c13SJung-uk Kim     ACPI_RESOURCE_ADDRESS64 *Out))
1195a9f12690SJung-uk Kim 
1196313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
11973f0275a0SJung-uk Kim ACPI_STATUS
11983f0275a0SJung-uk Kim AcpiBufferToResource (
11993f0275a0SJung-uk Kim     UINT8                   *AmlBuffer,
12003f0275a0SJung-uk Kim     UINT16                  AmlBufferLength,
1201313a0c13SJung-uk Kim     ACPI_RESOURCE           **ResourcePtr))
12023f0275a0SJung-uk Kim 
1203a9f12690SJung-uk Kim 
1204a9f12690SJung-uk Kim /*
1205a9f12690SJung-uk Kim  * Hardware (ACPI device) interfaces
1206a9f12690SJung-uk Kim  */
1207313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1208a9f12690SJung-uk Kim ACPI_STATUS
1209a9f12690SJung-uk Kim AcpiReset (
1210313a0c13SJung-uk Kim     void))
1211a9f12690SJung-uk Kim 
1212313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1213a9f12690SJung-uk Kim ACPI_STATUS
1214a9f12690SJung-uk Kim AcpiRead (
1215d6dd1baeSJung-uk Kim     UINT64                  *Value,
1216313a0c13SJung-uk Kim     ACPI_GENERIC_ADDRESS    *Reg))
1217a9f12690SJung-uk Kim 
1218313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1219a9f12690SJung-uk Kim ACPI_STATUS
1220a9f12690SJung-uk Kim AcpiWrite (
1221d6dd1baeSJung-uk Kim     UINT64                  Value,
1222313a0c13SJung-uk Kim     ACPI_GENERIC_ADDRESS    *Reg))
1223a9f12690SJung-uk Kim 
1224a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1225a9f12690SJung-uk Kim ACPI_STATUS
1226a9f12690SJung-uk Kim AcpiReadBitRegister (
1227a9f12690SJung-uk Kim     UINT32                  RegisterId,
1228a159c266SJung-uk Kim     UINT32                  *ReturnValue))
1229a9f12690SJung-uk Kim 
1230a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1231a9f12690SJung-uk Kim ACPI_STATUS
1232a9f12690SJung-uk Kim AcpiWriteBitRegister (
1233a9f12690SJung-uk Kim     UINT32                  RegisterId,
1234a159c266SJung-uk Kim     UINT32                  Value))
1235a9f12690SJung-uk Kim 
1236a159c266SJung-uk Kim 
1237a159c266SJung-uk Kim /*
1238a159c266SJung-uk Kim  * Sleep/Wake interfaces
1239a159c266SJung-uk Kim  */
1240313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1241a9f12690SJung-uk Kim ACPI_STATUS
1242a9f12690SJung-uk Kim AcpiGetSleepTypeData (
1243a9f12690SJung-uk Kim     UINT8                   SleepState,
1244a9f12690SJung-uk Kim     UINT8                   *Slp_TypA,
1245313a0c13SJung-uk Kim     UINT8                   *Slp_TypB))
1246a9f12690SJung-uk Kim 
1247313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1248a9f12690SJung-uk Kim ACPI_STATUS
1249a9f12690SJung-uk Kim AcpiEnterSleepStatePrep (
1250313a0c13SJung-uk Kim     UINT8                   SleepState))
1251a9f12690SJung-uk Kim 
1252313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1253a9f12690SJung-uk Kim ACPI_STATUS
1254a9f12690SJung-uk Kim AcpiEnterSleepState (
1255313a0c13SJung-uk Kim     UINT8                   SleepState))
1256a9f12690SJung-uk Kim 
1257a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1258a9f12690SJung-uk Kim ACPI_STATUS
1259a9f12690SJung-uk Kim AcpiEnterSleepStateS4bios (
1260a159c266SJung-uk Kim     void))
1261a159c266SJung-uk Kim 
1262313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1263a159c266SJung-uk Kim ACPI_STATUS
1264a159c266SJung-uk Kim AcpiLeaveSleepStatePrep (
1265313a0c13SJung-uk Kim     UINT8                   SleepState))
1266a9f12690SJung-uk Kim 
1267313a0c13SJung-uk Kim ACPI_EXTERNAL_RETURN_STATUS (
1268a9f12690SJung-uk Kim ACPI_STATUS
1269a9f12690SJung-uk Kim AcpiLeaveSleepState (
1270313a0c13SJung-uk Kim     UINT8                   SleepState))
1271a159c266SJung-uk Kim 
1272a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1273a9f12690SJung-uk Kim ACPI_STATUS
1274a9f12690SJung-uk Kim AcpiSetFirmwareWakingVector (
12755ef50723SJung-uk Kim     ACPI_PHYSICAL_ADDRESS   PhysicalAddress,
12765ef50723SJung-uk Kim     ACPI_PHYSICAL_ADDRESS   PhysicalAddress64))
1277a9f12690SJung-uk Kim 
1278a9f12690SJung-uk Kim 
1279a9f12690SJung-uk Kim /*
1280a159c266SJung-uk Kim  * ACPI Timer interfaces
1281a159c266SJung-uk Kim  */
1282a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1283a159c266SJung-uk Kim ACPI_STATUS
1284a159c266SJung-uk Kim AcpiGetTimerResolution (
1285a159c266SJung-uk Kim     UINT32                  *Resolution))
1286a159c266SJung-uk Kim 
1287a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1288a159c266SJung-uk Kim ACPI_STATUS
1289a159c266SJung-uk Kim AcpiGetTimer (
1290a159c266SJung-uk Kim     UINT32                  *Ticks))
1291a159c266SJung-uk Kim 
1292a159c266SJung-uk Kim ACPI_HW_DEPENDENT_RETURN_STATUS (
1293a159c266SJung-uk Kim ACPI_STATUS
1294a159c266SJung-uk Kim AcpiGetTimerDuration (
1295a159c266SJung-uk Kim     UINT32                  StartTicks,
1296a159c266SJung-uk Kim     UINT32                  EndTicks,
1297a159c266SJung-uk Kim     UINT32                  *TimeElapsed))
1298a159c266SJung-uk Kim 
1299a159c266SJung-uk Kim 
1300a159c266SJung-uk Kim /*
1301a9f12690SJung-uk Kim  * Error/Warning output
1302a9f12690SJung-uk Kim  */
1303313a0c13SJung-uk Kim ACPI_MSG_DEPENDENT_RETURN_VOID (
1304313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(3)
1305a9f12690SJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1306a9f12690SJung-uk Kim AcpiError (
1307a9f12690SJung-uk Kim     const char              *ModuleName,
1308a9f12690SJung-uk Kim     UINT32                  LineNumber,
1309a9f12690SJung-uk Kim     const char              *Format,
1310313a0c13SJung-uk Kim     ...))
1311a9f12690SJung-uk Kim 
1312313a0c13SJung-uk Kim ACPI_MSG_DEPENDENT_RETURN_VOID (
1313313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(4)
1314a9f12690SJung-uk Kim void  ACPI_INTERNAL_VAR_XFACE
1315a9f12690SJung-uk Kim AcpiException (
1316a9f12690SJung-uk Kim     const char              *ModuleName,
1317a9f12690SJung-uk Kim     UINT32                  LineNumber,
1318a9f12690SJung-uk Kim     ACPI_STATUS             Status,
1319a9f12690SJung-uk Kim     const char              *Format,
1320313a0c13SJung-uk Kim     ...))
1321a9f12690SJung-uk Kim 
1322313a0c13SJung-uk Kim ACPI_MSG_DEPENDENT_RETURN_VOID (
1323313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(3)
1324a9f12690SJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1325a9f12690SJung-uk Kim AcpiWarning (
1326a9f12690SJung-uk Kim     const char              *ModuleName,
1327a9f12690SJung-uk Kim     UINT32                  LineNumber,
1328a9f12690SJung-uk Kim     const char              *Format,
1329313a0c13SJung-uk Kim     ...))
1330a9f12690SJung-uk Kim 
1331313a0c13SJung-uk Kim ACPI_MSG_DEPENDENT_RETURN_VOID (
1332f8146b88SJung-uk Kim ACPI_PRINTF_LIKE(1)
1333a9f12690SJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1334a9f12690SJung-uk Kim AcpiInfo (
1335a9f12690SJung-uk Kim     const char              *Format,
1336313a0c13SJung-uk Kim     ...))
1337a9f12690SJung-uk Kim 
1338313a0c13SJung-uk Kim ACPI_MSG_DEPENDENT_RETURN_VOID (
1339313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(3)
1340e8241eabSJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1341e8241eabSJung-uk Kim AcpiBiosError (
1342e8241eabSJung-uk Kim     const char              *ModuleName,
1343e8241eabSJung-uk Kim     UINT32                  LineNumber,
1344e8241eabSJung-uk Kim     const char              *Format,
1345313a0c13SJung-uk Kim     ...))
1346e8241eabSJung-uk Kim 
1347313a0c13SJung-uk Kim ACPI_MSG_DEPENDENT_RETURN_VOID (
1348313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(3)
1349e8241eabSJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1350e8241eabSJung-uk Kim AcpiBiosWarning (
1351e8241eabSJung-uk Kim     const char              *ModuleName,
1352e8241eabSJung-uk Kim     UINT32                  LineNumber,
1353e8241eabSJung-uk Kim     const char              *Format,
1354313a0c13SJung-uk Kim     ...))
1355e8241eabSJung-uk Kim 
1356a9f12690SJung-uk Kim 
1357a9f12690SJung-uk Kim /*
1358a9f12690SJung-uk Kim  * Debug output
1359a9f12690SJung-uk Kim  */
1360313a0c13SJung-uk Kim ACPI_DBG_DEPENDENT_RETURN_VOID (
1361313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(6)
1362a9f12690SJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1363a9f12690SJung-uk Kim AcpiDebugPrint (
1364a9f12690SJung-uk Kim     UINT32                  RequestedDebugLevel,
1365a9f12690SJung-uk Kim     UINT32                  LineNumber,
1366a9f12690SJung-uk Kim     const char              *FunctionName,
1367a9f12690SJung-uk Kim     const char              *ModuleName,
1368a9f12690SJung-uk Kim     UINT32                  ComponentId,
1369a9f12690SJung-uk Kim     const char              *Format,
1370313a0c13SJung-uk Kim     ...))
1371a9f12690SJung-uk Kim 
1372313a0c13SJung-uk Kim ACPI_DBG_DEPENDENT_RETURN_VOID (
1373313a0c13SJung-uk Kim ACPI_PRINTF_LIKE(6)
1374a9f12690SJung-uk Kim void ACPI_INTERNAL_VAR_XFACE
1375a9f12690SJung-uk Kim AcpiDebugPrintRaw (
1376a9f12690SJung-uk Kim     UINT32                  RequestedDebugLevel,
1377a9f12690SJung-uk Kim     UINT32                  LineNumber,
1378a9f12690SJung-uk Kim     const char              *FunctionName,
1379a9f12690SJung-uk Kim     const char              *ModuleName,
1380a9f12690SJung-uk Kim     UINT32                  ComponentId,
1381a9f12690SJung-uk Kim     const char              *Format,
1382313a0c13SJung-uk Kim     ...))
1383313a0c13SJung-uk Kim 
1384fe0f0bbbSJung-uk Kim ACPI_DBG_DEPENDENT_RETURN_VOID (
1385fe0f0bbbSJung-uk Kim void
1386fe0f0bbbSJung-uk Kim AcpiTracePoint (
1387fe0f0bbbSJung-uk Kim     ACPI_TRACE_EVENT_TYPE   Type,
1388fe0f0bbbSJung-uk Kim     BOOLEAN                 Begin,
1389fe0f0bbbSJung-uk Kim     UINT8                   *Aml,
1390fe0f0bbbSJung-uk Kim     char                    *Pathname))
1391fe0f0bbbSJung-uk Kim 
139270e6ab8fSJung-uk Kim ACPI_STATUS
139370e6ab8fSJung-uk Kim AcpiInitializeDebugger (
139470e6ab8fSJung-uk Kim     void);
139570e6ab8fSJung-uk Kim 
139670e6ab8fSJung-uk Kim void
139770e6ab8fSJung-uk Kim AcpiTerminateDebugger (
139870e6ab8fSJung-uk Kim     void);
139970e6ab8fSJung-uk Kim 
1400f8146b88SJung-uk Kim void
140128482948SJung-uk Kim AcpiRunDebugger (
140228482948SJung-uk Kim     char                    *BatchBuffer);
140328482948SJung-uk Kim 
140428482948SJung-uk Kim void
1405f8146b88SJung-uk Kim AcpiSetDebuggerThreadId (
1406f8146b88SJung-uk Kim     ACPI_THREAD_ID          ThreadId);
1407f8146b88SJung-uk Kim 
1408a9f12690SJung-uk Kim #endif /* __ACXFACE_H__ */
1409