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