Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /****************************************************************************** |
2 | * | |
3 | * Name: acpixf.h - External interfaces to the ACPI subsystem | |
4 | * | |
5 | *****************************************************************************/ | |
6 | ||
7 | /* | |
82a80941 | 8 | * Copyright (C) 2000 - 2015, Intel Corp. |
1da177e4 LT |
9 | * All rights reserved. |
10 | * | |
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 | */ | |
43 | ||
1da177e4 LT |
44 | #ifndef __ACXFACE_H__ |
45 | #define __ACXFACE_H__ | |
46 | ||
50df4d8b BM |
47 | /* Current ACPICA subsystem version in YYYYMMDD format */ |
48 | ||
1aebaa02 | 49 | #define ACPI_CA_VERSION 0x20150515 |
50df4d8b | 50 | |
a1ce3928 DH |
51 | #include <acpi/acconfig.h> |
52 | #include <acpi/actypes.h> | |
53 | #include <acpi/actbl.h> | |
d8dc91b7 | 54 | #include <acpi/acbuffer.h> |
1da177e4 | 55 | |
1011080d BM |
56 | /***************************************************************************** |
57 | * | |
58 | * Macros used for ACPICA globals and configuration | |
59 | * | |
60 | ****************************************************************************/ | |
61 | ||
50df4d8b | 62 | /* |
1011080d | 63 | * Ensure that global variables are defined and initialized only once. |
3035ff70 | 64 | * |
1011080d BM |
65 | * The use of these macros allows for a single list of globals (here) |
66 | * in order to simplify maintenance of the code. | |
50df4d8b | 67 | */ |
3035ff70 LZ |
68 | #ifdef DEFINE_ACPI_GLOBALS |
69 | #define ACPI_GLOBAL(type,name) \ | |
70 | extern type name; \ | |
71 | type name | |
3e8214e5 | 72 | |
3035ff70 LZ |
73 | #define ACPI_INIT_GLOBAL(type,name,value) \ |
74 | type name=value | |
3e8214e5 | 75 | |
3035ff70 LZ |
76 | #else |
77 | #ifndef ACPI_GLOBAL | |
78 | #define ACPI_GLOBAL(type,name) \ | |
79 | extern type name | |
80 | #endif | |
3e8214e5 | 81 | |
3035ff70 LZ |
82 | #ifndef ACPI_INIT_GLOBAL |
83 | #define ACPI_INIT_GLOBAL(type,name,value) \ | |
84 | extern type name | |
85 | #endif | |
86 | #endif | |
50df4d8b | 87 | |
33620c54 | 88 | /* |
1011080d BM |
89 | * These macros configure the various ACPICA interfaces. They are |
90 | * useful for generating stub inline functions for features that are | |
91 | * configured out of the current kernel or ACPICA application. | |
33620c54 | 92 | */ |
8b9c1152 LZ |
93 | #ifndef ACPI_EXTERNAL_RETURN_STATUS |
94 | #define ACPI_EXTERNAL_RETURN_STATUS(prototype) \ | |
33620c54 | 95 | prototype; |
8b9c1152 | 96 | #endif |
33620c54 | 97 | |
8b9c1152 LZ |
98 | #ifndef ACPI_EXTERNAL_RETURN_OK |
99 | #define ACPI_EXTERNAL_RETURN_OK(prototype) \ | |
33620c54 | 100 | prototype; |
8b9c1152 | 101 | #endif |
33620c54 | 102 | |
8b9c1152 LZ |
103 | #ifndef ACPI_EXTERNAL_RETURN_VOID |
104 | #define ACPI_EXTERNAL_RETURN_VOID(prototype) \ | |
33620c54 | 105 | prototype; |
8b9c1152 | 106 | #endif |
33620c54 | 107 | |
8b9c1152 LZ |
108 | #ifndef ACPI_EXTERNAL_RETURN_UINT32 |
109 | #define ACPI_EXTERNAL_RETURN_UINT32(prototype) \ | |
110 | prototype; | |
111 | #endif | |
33620c54 | 112 | |
8b9c1152 LZ |
113 | #ifndef ACPI_EXTERNAL_RETURN_PTR |
114 | #define ACPI_EXTERNAL_RETURN_PTR(prototype) \ | |
115 | prototype; | |
116 | #endif | |
33620c54 | 117 | |
3035ff70 LZ |
118 | /***************************************************************************** |
119 | * | |
1011080d | 120 | * Public globals and runtime configuration options |
3035ff70 LZ |
121 | * |
122 | ****************************************************************************/ | |
33620c54 | 123 | |
44f6c012 | 124 | /* |
1011080d | 125 | * Enable "slack mode" of the AML interpreter? Default is FALSE, and the |
3035ff70 LZ |
126 | * interpreter strictly follows the ACPI specification. Setting to TRUE |
127 | * allows the interpreter to ignore certain errors and/or bad AML constructs. | |
128 | * | |
129 | * Currently, these features are enabled by this flag: | |
130 | * | |
131 | * 1) Allow "implicit return" of last value in a control method | |
132 | * 2) Allow access beyond the end of an operation region | |
133 | * 3) Allow access to uninitialized locals/args (auto-init to integer 0) | |
134 | * 4) Allow ANY object type to be a source operand for the Store() operator | |
135 | * 5) Allow unresolved references (invalid target name) in package objects | |
136 | * 6) Enable warning messages for behavior that is not ACPI spec compliant | |
1da177e4 | 137 | */ |
3035ff70 | 138 | ACPI_INIT_GLOBAL(u8, acpi_gbl_enable_interpreter_slack, FALSE); |
1da177e4 | 139 | |
3035ff70 LZ |
140 | /* |
141 | * Automatically serialize all methods that create named objects? Default | |
142 | * is TRUE, meaning that all non_serialized methods are scanned once at | |
143 | * table load time to determine those that create named objects. Methods | |
144 | * that create named objects are marked Serialized in order to prevent | |
145 | * possible run-time problems if they are entered by more than one thread. | |
146 | */ | |
147 | ACPI_INIT_GLOBAL(u8, acpi_gbl_auto_serialize_methods, TRUE); | |
1da177e4 | 148 | |
75c8044f | 149 | /* |
3035ff70 LZ |
150 | * Create the predefined _OSI method in the namespace? Default is TRUE |
151 | * because ACPICA is fully compatible with other ACPI implementations. | |
152 | * Changing this will revert ACPICA (and machine ASL) to pre-OSI behavior. | |
75c8044f | 153 | */ |
3035ff70 | 154 | ACPI_INIT_GLOBAL(u8, acpi_gbl_create_osi_method, TRUE); |
1da177e4 | 155 | |
3035ff70 LZ |
156 | /* |
157 | * Optionally use default values for the ACPI register widths. Set this to | |
158 | * TRUE to use the defaults, if an FADT contains incorrect widths/lengths. | |
159 | */ | |
160 | ACPI_INIT_GLOBAL(u8, acpi_gbl_use_default_register_widths, TRUE); | |
1da177e4 | 161 | |
47d68c7f LZ |
162 | /* |
163 | * Whether or not to verify the table checksum before installation. Set | |
164 | * this to TRUE to verify the table checksum before install it to the table | |
165 | * manager. Note that enabling this option causes errors to happen in some | |
166 | * OSPMs during early initialization stages. Default behavior is to do such | |
167 | * verification. | |
168 | */ | |
169 | ACPI_INIT_GLOBAL(u8, acpi_gbl_verify_table_checksum, TRUE); | |
170 | ||
3035ff70 LZ |
171 | /* |
172 | * Optionally enable output from the AML Debug Object. | |
173 | */ | |
174 | ACPI_INIT_GLOBAL(u8, acpi_gbl_enable_aml_debug_object, FALSE); | |
9187a415 | 175 | |
3035ff70 LZ |
176 | /* |
177 | * Optionally copy the entire DSDT to local memory (instead of simply | |
178 | * mapping it.) There are some BIOSs that corrupt or replace the original | |
179 | * DSDT, creating the need for this option. Default is FALSE, do not copy | |
180 | * the DSDT. | |
181 | */ | |
182 | ACPI_INIT_GLOBAL(u8, acpi_gbl_copy_dsdt_locally, FALSE); | |
1da177e4 | 183 | |
3035ff70 LZ |
184 | /* |
185 | * Optionally ignore an XSDT if present and use the RSDT instead. | |
186 | * Although the ACPI specification requires that an XSDT be used instead | |
187 | * of the RSDT, the XSDT has been found to be corrupt or ill-formed on | |
188 | * some machines. Default behavior is to use the XSDT if present. | |
189 | */ | |
190 | ACPI_INIT_GLOBAL(u8, acpi_gbl_do_not_use_xsdt, FALSE); | |
1da177e4 | 191 | |
3035ff70 LZ |
192 | /* |
193 | * Optionally use 32-bit FADT addresses if and when there is a conflict | |
194 | * (address mismatch) between the 32-bit and 64-bit versions of the | |
195 | * address. Although ACPICA adheres to the ACPI specification which | |
196 | * requires the use of the corresponding 64-bit address if it is non-zero, | |
197 | * some machines have been found to have a corrupted non-zero 64-bit | |
c9b77a40 | 198 | * address. Default is TRUE, favor the 32-bit addresses. |
3035ff70 | 199 | */ |
c9b77a40 | 200 | ACPI_INIT_GLOBAL(u8, acpi_gbl_use32_bit_fadt_addresses, TRUE); |
b0ed7a91 | 201 | |
c04e1fb4 LZ |
202 | /* |
203 | * Optionally use 32-bit FACS table addresses. | |
204 | * It is reported that some platforms fail to resume from system suspending | |
205 | * if 64-bit FACS table address is selected: | |
206 | * https://bugzilla.kernel.org/show_bug.cgi?id=74021 | |
207 | * Default is TRUE, favor the 32-bit addresses. | |
208 | */ | |
209 | ACPI_INIT_GLOBAL(u8, acpi_gbl_use32_bit_facs_addresses, TRUE); | |
210 | ||
3035ff70 LZ |
211 | /* |
212 | * Optionally truncate I/O addresses to 16 bits. Provides compatibility | |
213 | * with other ACPI implementations. NOTE: During ACPICA initialization, | |
214 | * this value is set to TRUE if any Windows OSI strings have been | |
215 | * requested by the BIOS. | |
216 | */ | |
217 | ACPI_INIT_GLOBAL(u8, acpi_gbl_truncate_io_addresses, FALSE); | |
b0ed7a91 | 218 | |
3035ff70 LZ |
219 | /* |
220 | * Disable runtime checking and repair of values returned by control methods. | |
221 | * Use only if the repair is causing a problem on a particular machine. | |
222 | */ | |
223 | ACPI_INIT_GLOBAL(u8, acpi_gbl_disable_auto_repair, FALSE); | |
2cf9f5bc | 224 | |
3035ff70 LZ |
225 | /* |
226 | * Optionally do not install any SSDTs from the RSDT/XSDT during initialization. | |
227 | * This can be useful for debugging ACPI problems on some machines. | |
228 | */ | |
229 | ACPI_INIT_GLOBAL(u8, acpi_gbl_disable_ssdt_table_install, FALSE); | |
f654c0fe | 230 | |
3035ff70 LZ |
231 | /* |
232 | * We keep track of the latest version of Windows that has been requested by | |
fea79bc0 | 233 | * the BIOS. ACPI 5.0. |
3035ff70 LZ |
234 | */ |
235 | ACPI_INIT_GLOBAL(u8, acpi_gbl_osi_data, 0); | |
be030a57 | 236 | |
1da177e4 | 237 | /* |
3a2f3a33 LZ |
238 | * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning |
239 | * that the ACPI hardware is no longer required. A flag in the FADT indicates | |
240 | * a reduced HW machine, and that flag is duplicated here for convenience. | |
1da177e4 | 241 | */ |
3a2f3a33 | 242 | ACPI_INIT_GLOBAL(u8, acpi_gbl_reduced_hardware, FALSE); |
f3d2e786 | 243 | |
3a2f3a33 LZ |
244 | /* |
245 | * This mechanism is used to trace a specified AML method. The method is | |
246 | * traced each time it is executed. | |
247 | */ | |
248 | ACPI_INIT_GLOBAL(u32, acpi_gbl_trace_flags, 0); | |
249 | ACPI_INIT_GLOBAL(acpi_name, acpi_gbl_trace_method_name, 0); | |
1da177e4 | 250 | |
3a2f3a33 LZ |
251 | /* |
252 | * Runtime configuration of debug output control masks. We want the debug | |
253 | * switches statically initialized so they are already set when the debugger | |
254 | * is entered. | |
255 | */ | |
256 | ACPI_INIT_GLOBAL(u32, acpi_dbg_level, ACPI_DEBUG_DEFAULT); | |
257 | ACPI_INIT_GLOBAL(u32, acpi_dbg_layer, 0); | |
1da177e4 | 258 | |
f60d8181 | 259 | /* |
1011080d | 260 | * Other miscellaneous globals |
f60d8181 | 261 | */ |
3a2f3a33 | 262 | ACPI_GLOBAL(struct acpi_table_fadt, acpi_gbl_FADT); |
1011080d | 263 | ACPI_GLOBAL(u32, acpi_current_gpe_count); |
3a2f3a33 | 264 | ACPI_GLOBAL(u8, acpi_gbl_system_awake_and_running); |
f60d8181 | 265 | |
1011080d BM |
266 | /***************************************************************************** |
267 | * | |
268 | * ACPICA public interface configuration. | |
269 | * | |
270 | * Interfaces that are configured out of the ACPICA build are replaced | |
271 | * by inlined stubs by default. | |
272 | * | |
273 | ****************************************************************************/ | |
1da177e4 | 274 | |
33620c54 | 275 | /* |
1011080d BM |
276 | * Hardware-reduced prototypes (default: Not hardware reduced). |
277 | * | |
278 | * All ACPICA hardware-related interfaces that use these macros will be | |
279 | * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag | |
33620c54 | 280 | * is set to TRUE. |
1011080d BM |
281 | * |
282 | * Note: This static build option for reduced hardware is intended to | |
283 | * reduce ACPICA code size if desired or necessary. However, even if this | |
284 | * option is not specified, the runtime behavior of ACPICA is dependent | |
285 | * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set, | |
286 | * the flag will enable similar behavior -- ACPICA will not attempt | |
287 | * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.) | |
33620c54 BM |
288 | */ |
289 | #if (!ACPI_REDUCED_HARDWARE) | |
290 | #define ACPI_HW_DEPENDENT_RETURN_STATUS(prototype) \ | |
8b9c1152 | 291 | ACPI_EXTERNAL_RETURN_STATUS(prototype) |
1da177e4 | 292 | |
33620c54 | 293 | #define ACPI_HW_DEPENDENT_RETURN_OK(prototype) \ |
8b9c1152 | 294 | ACPI_EXTERNAL_RETURN_OK(prototype) |
1da177e4 | 295 | |
33620c54 | 296 | #define ACPI_HW_DEPENDENT_RETURN_VOID(prototype) \ |
8b9c1152 | 297 | ACPI_EXTERNAL_RETURN_VOID(prototype) |
cd27d79f | 298 | |
33620c54 BM |
299 | #else |
300 | #define ACPI_HW_DEPENDENT_RETURN_STATUS(prototype) \ | |
301 | static ACPI_INLINE prototype {return(AE_NOT_CONFIGURED);} | |
1da177e4 | 302 | |
33620c54 BM |
303 | #define ACPI_HW_DEPENDENT_RETURN_OK(prototype) \ |
304 | static ACPI_INLINE prototype {return(AE_OK);} | |
1da177e4 | 305 | |
33620c54 | 306 | #define ACPI_HW_DEPENDENT_RETURN_VOID(prototype) \ |
c26f3c90 | 307 | static ACPI_INLINE prototype {return;} |
3e08e2d2 | 308 | |
33620c54 | 309 | #endif /* !ACPI_REDUCED_HARDWARE */ |
3e08e2d2 | 310 | |
1da177e4 | 311 | /* |
1011080d BM |
312 | * Error message prototypes (default: error messages enabled). |
313 | * | |
314 | * All interfaces related to error and warning messages | |
315 | * will be configured out of the ACPICA build if the | |
316 | * ACPI_NO_ERROR_MESSAGE flag is defined. | |
1da177e4 | 317 | */ |
407e22af LZ |
318 | #ifndef ACPI_NO_ERROR_MESSAGES |
319 | #define ACPI_MSG_DEPENDENT_RETURN_VOID(prototype) \ | |
320 | prototype; | |
1da177e4 | 321 | |
407e22af LZ |
322 | #else |
323 | #define ACPI_MSG_DEPENDENT_RETURN_VOID(prototype) \ | |
324 | static ACPI_INLINE prototype {return;} | |
1da177e4 | 325 | |
407e22af | 326 | #endif /* ACPI_NO_ERROR_MESSAGES */ |
1da177e4 | 327 | |
1ce28c32 | 328 | /* |
1011080d BM |
329 | * Debugging output prototypes (default: no debug output). |
330 | * | |
331 | * All interfaces related to debug output messages | |
332 | * will be configured out of the ACPICA build unless the | |
333 | * ACPI_DEBUG_OUTPUT flag is defined. | |
1ce28c32 LZ |
334 | */ |
335 | #ifdef ACPI_DEBUG_OUTPUT | |
336 | #define ACPI_DBG_DEPENDENT_RETURN_VOID(prototype) \ | |
337 | prototype; | |
1da177e4 | 338 | |
1ce28c32 LZ |
339 | #else |
340 | #define ACPI_DBG_DEPENDENT_RETURN_VOID(prototype) \ | |
341 | static ACPI_INLINE prototype {return;} | |
1da177e4 | 342 | |
1ce28c32 | 343 | #endif /* ACPI_DEBUG_OUTPUT */ |
1da177e4 | 344 | |
2e70da4c LZ |
345 | /* |
346 | * Application prototypes | |
347 | * | |
348 | * All interfaces used by application will be configured | |
349 | * out of the ACPICA build unless the ACPI_APPLICATION | |
350 | * flag is defined. | |
351 | */ | |
352 | #ifdef ACPI_APPLICATION | |
353 | #define ACPI_APP_DEPENDENT_RETURN_VOID(prototype) \ | |
354 | prototype; | |
355 | ||
356 | #else | |
357 | #define ACPI_APP_DEPENDENT_RETURN_VOID(prototype) \ | |
358 | static ACPI_INLINE prototype {return;} | |
359 | ||
360 | #endif /* ACPI_APPLICATION */ | |
361 | ||
1011080d BM |
362 | /***************************************************************************** |
363 | * | |
364 | * ACPICA public interface prototypes | |
365 | * | |
366 | ****************************************************************************/ | |
7c2e1771 | 367 | |
44f6c012 | 368 | /* |
75c8044f | 369 | * Initialization |
1da177e4 | 370 | */ |
8b9c1152 LZ |
371 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init |
372 | acpi_initialize_tables(struct acpi_table_desc | |
373 | *initial_storage, | |
374 | u32 initial_table_count, | |
375 | u8 allow_resize)) | |
376 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init acpi_initialize_subsystem(void)) | |
1da177e4 | 377 | |
8b9c1152 | 378 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init acpi_enable_subsystem(u32 flags)) |
1da177e4 | 379 | |
8b9c1152 LZ |
380 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init |
381 | acpi_initialize_objects(u32 flags)) | |
382 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init acpi_terminate(void)) | |
50eca3eb | 383 | |
1da177e4 | 384 | /* |
75c8044f | 385 | * Miscellaneous global interfaces |
1da177e4 | 386 | */ |
33620c54 BM |
387 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable(void)) |
388 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_disable(void)) | |
739dcbb9 | 389 | #ifdef ACPI_FUTURE_USAGE |
8b9c1152 | 390 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_subsystem_status(void)) |
739dcbb9 | 391 | #endif |
1da177e4 | 392 | |
1da177e4 | 393 | #ifdef ACPI_FUTURE_USAGE |
8b9c1152 LZ |
394 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
395 | acpi_get_system_info(struct acpi_buffer | |
396 | *ret_buffer)) | |
1da177e4 | 397 | #endif |
8b9c1152 LZ |
398 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
399 | acpi_get_statistics(struct acpi_statistics *stats)) | |
400 | ACPI_EXTERNAL_RETURN_PTR(const char | |
401 | *acpi_format_exception(acpi_status exception)) | |
402 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_purge_cached_objects(void)) | |
403 | ||
404 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
405 | acpi_install_interface(acpi_string interface_name)) | |
406 | ||
407 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
408 | acpi_remove_interface(acpi_string interface_name)) | |
409 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_update_interfaces(u8 action)) | |
410 | ||
411 | ACPI_EXTERNAL_RETURN_UINT32(u32 | |
412 | acpi_check_address_range(acpi_adr_space_type | |
413 | space_id, | |
414 | acpi_physical_address | |
415 | address, acpi_size length, | |
416 | u8 warn)) | |
417 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
418 | acpi_decode_pld_buffer(u8 *in_buffer, | |
419 | acpi_size length, | |
420 | struct acpi_pld_info | |
421 | **return_buffer)) | |
1da177e4 | 422 | |
1da177e4 | 423 | /* |
f60d8181 | 424 | * ACPI table load/unload interfaces |
1da177e4 | 425 | */ |
8b9c1152 LZ |
426 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init |
427 | acpi_install_table(acpi_physical_address address, | |
428 | u8 physical)) | |
1da177e4 | 429 | |
8b9c1152 LZ |
430 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
431 | acpi_load_table(struct acpi_table_header *table)) | |
b2f7ddcf | 432 | |
8b9c1152 LZ |
433 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
434 | acpi_unload_parent_table(acpi_handle object)) | |
435 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init acpi_load_tables(void)) | |
1da177e4 | 436 | |
f60d8181 BM |
437 | /* |
438 | * ACPI table manipulation interfaces | |
439 | */ | |
8b9c1152 LZ |
440 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init acpi_reallocate_root_table(void)) |
441 | ||
442 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status __init | |
f254e3c5 LZ |
443 | acpi_find_root_pointer(acpi_physical_address * |
444 | rsdp_address)) | |
8b9c1152 | 445 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
f254e3c5 LZ |
446 | acpi_get_table_header(acpi_string signature, |
447 | u32 instance, | |
448 | struct acpi_table_header | |
449 | *out_table_header)) | |
8b9c1152 LZ |
450 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
451 | acpi_get_table(acpi_string signature, u32 instance, | |
452 | struct acpi_table_header | |
453 | **out_table)) | |
454 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
455 | acpi_get_table_by_index(u32 table_index, | |
456 | struct acpi_table_header | |
457 | **out_table)) | |
458 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
459 | acpi_install_table_handler(acpi_table_handler | |
460 | handler, void *context)) | |
461 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
462 | acpi_remove_table_handler(acpi_table_handler | |
463 | handler)) | |
1da177e4 | 464 | |
1da177e4 LT |
465 | /* |
466 | * Namespace and name interfaces | |
467 | */ | |
8b9c1152 LZ |
468 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
469 | acpi_walk_namespace(acpi_object_type type, | |
470 | acpi_handle start_object, | |
471 | u32 max_depth, | |
472 | acpi_walk_callback | |
473 | descending_callback, | |
474 | acpi_walk_callback | |
475 | ascending_callback, | |
476 | void *context, | |
477 | void **return_value)) | |
478 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
479 | acpi_get_devices(const char *HID, | |
480 | acpi_walk_callback user_function, | |
481 | void *context, | |
482 | void **return_value)) | |
483 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
484 | acpi_get_name(acpi_handle object, u32 name_type, | |
485 | struct acpi_buffer *ret_path_ptr)) | |
486 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
487 | acpi_get_handle(acpi_handle parent, | |
488 | acpi_string pathname, | |
489 | acpi_handle * ret_handle)) | |
490 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
491 | acpi_attach_data(acpi_handle object, | |
492 | acpi_object_handler handler, | |
493 | void *data)) | |
494 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
495 | acpi_detach_data(acpi_handle object, | |
496 | acpi_object_handler handler)) | |
497 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
498 | acpi_get_data(acpi_handle object, | |
499 | acpi_object_handler handler, | |
500 | void **data)) | |
501 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
502 | acpi_debug_trace(char *name, u32 debug_level, | |
503 | u32 debug_layer, u32 flags)) | |
0f0fe1a0 | 504 | |
1da177e4 LT |
505 | /* |
506 | * Object manipulation and enumeration | |
507 | */ | |
8b9c1152 LZ |
508 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
509 | acpi_evaluate_object(acpi_handle object, | |
510 | acpi_string pathname, | |
511 | struct acpi_object_list | |
512 | *parameter_objects, | |
513 | struct acpi_buffer | |
514 | *return_object_buffer)) | |
515 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
516 | acpi_evaluate_object_typed(acpi_handle object, | |
517 | acpi_string pathname, | |
518 | struct acpi_object_list | |
519 | *external_params, | |
520 | struct acpi_buffer | |
521 | *return_buffer, | |
522 | acpi_object_type | |
523 | return_type)) | |
524 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
525 | acpi_get_object_info(acpi_handle object, | |
526 | struct acpi_device_info | |
527 | **return_buffer)) | |
528 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_install_method(u8 *buffer)) | |
529 | ||
530 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
531 | acpi_get_next_object(acpi_object_type type, | |
532 | acpi_handle parent, | |
533 | acpi_handle child, | |
534 | acpi_handle * out_handle)) | |
535 | ||
536 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
537 | acpi_get_type(acpi_handle object, | |
538 | acpi_object_type * out_type)) | |
539 | ||
540 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
541 | acpi_get_parent(acpi_handle object, | |
542 | acpi_handle * out_handle)) | |
1da177e4 LT |
543 | |
544 | /* | |
ecfbbc7b | 545 | * Handler interfaces |
1da177e4 | 546 | */ |
8b9c1152 LZ |
547 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
548 | acpi_install_initialization_handler | |
549 | (acpi_init_handler handler, u32 function)) | |
33620c54 | 550 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
8b9c1152 LZ |
551 | acpi_install_sci_handler(acpi_sci_handler |
552 | address, | |
553 | void *context)) | |
a2fd4b4b LZ |
554 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
555 | acpi_remove_sci_handler(acpi_sci_handler | |
556 | address)) | |
557 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
558 | acpi_install_global_event_handler | |
559 | (acpi_gbl_event_handler handler, | |
560 | void *context)) | |
33620c54 BM |
561 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
562 | acpi_install_fixed_event_handler(u32 | |
563 | acpi_event, | |
564 | acpi_event_handler | |
565 | handler, | |
566 | void | |
567 | *context)) | |
568 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
569 | acpi_remove_fixed_event_handler(u32 acpi_event, | |
570 | acpi_event_handler | |
571 | handler)) | |
572 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
573 | acpi_install_gpe_handler(acpi_handle | |
574 | gpe_device, | |
575 | u32 gpe_number, | |
576 | u32 type, | |
577 | acpi_gpe_handler | |
578 | address, | |
579 | void *context)) | |
0d0988af LZ |
580 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
581 | acpi_install_gpe_raw_handler(acpi_handle | |
582 | gpe_device, | |
583 | u32 gpe_number, | |
584 | u32 type, | |
585 | acpi_gpe_handler | |
586 | address, | |
587 | void *context)) | |
33620c54 BM |
588 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
589 | acpi_remove_gpe_handler(acpi_handle gpe_device, | |
590 | u32 gpe_number, | |
591 | acpi_gpe_handler | |
592 | address)) | |
8b9c1152 LZ |
593 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
594 | acpi_install_notify_handler(acpi_handle device, | |
595 | u32 handler_type, | |
596 | acpi_notify_handler | |
597 | handler, | |
598 | void *context)) | |
599 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
600 | acpi_remove_notify_handler(acpi_handle device, | |
601 | u32 handler_type, | |
602 | acpi_notify_handler | |
603 | handler)) | |
604 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
605 | acpi_install_address_space_handler(acpi_handle | |
606 | device, | |
607 | acpi_adr_space_type | |
608 | space_id, | |
609 | acpi_adr_space_handler | |
610 | handler, | |
611 | acpi_adr_space_setup | |
612 | setup, | |
613 | void *context)) | |
614 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
615 | acpi_remove_address_space_handler(acpi_handle | |
616 | device, | |
617 | acpi_adr_space_type | |
618 | space_id, | |
619 | acpi_adr_space_handler | |
620 | handler)) | |
1da177e4 | 621 | #ifdef ACPI_FUTURE_USAGE |
8b9c1152 LZ |
622 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
623 | acpi_install_exception_handler | |
624 | (acpi_exception_handler handler)) | |
1da177e4 | 625 | #endif |
8b9c1152 LZ |
626 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
627 | acpi_install_interface_handler | |
628 | (acpi_interface_handler handler)) | |
b0ed7a91 | 629 | |
1da177e4 | 630 | /* |
ffef6827 | 631 | * Global Lock interfaces |
1da177e4 | 632 | */ |
33620c54 BM |
633 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
634 | acpi_acquire_global_lock(u16 timeout, | |
635 | u32 *handle)) | |
cd27d79f | 636 | |
33620c54 BM |
637 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
638 | acpi_release_global_lock(u32 handle)) | |
1da177e4 | 639 | |
ffef6827 LM |
640 | /* |
641 | * Interfaces to AML mutex objects | |
642 | */ | |
8b9c1152 LZ |
643 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
644 | acpi_acquire_mutex(acpi_handle handle, | |
645 | acpi_string pathname, | |
646 | u16 timeout)) | |
ffef6827 | 647 | |
8b9c1152 LZ |
648 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
649 | acpi_release_mutex(acpi_handle handle, | |
650 | acpi_string pathname)) | |
ffef6827 LM |
651 | |
652 | /* | |
653 | * Fixed Event interfaces | |
654 | */ | |
33620c54 BM |
655 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
656 | acpi_enable_event(u32 event, u32 flags)) | |
1da177e4 | 657 | |
33620c54 BM |
658 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
659 | acpi_disable_event(u32 event, u32 flags)) | |
33620c54 | 660 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_clear_event(u32 event)) |
1da177e4 | 661 | |
33620c54 BM |
662 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
663 | acpi_get_event_status(u32 event, | |
664 | acpi_event_status | |
665 | *event_status)) | |
cd27d79f | 666 | |
08ac07b8 | 667 | /* |
ffef6827 | 668 | * General Purpose Event (GPE) Interfaces |
08ac07b8 | 669 | */ |
33620c54 BM |
670 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_update_all_gpes(void)) |
671 | ||
672 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
673 | acpi_enable_gpe(acpi_handle gpe_device, | |
674 | u32 gpe_number)) | |
675 | ||
676 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
677 | acpi_disable_gpe(acpi_handle gpe_device, | |
678 | u32 gpe_number)) | |
679 | ||
680 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
681 | acpi_clear_gpe(acpi_handle gpe_device, | |
682 | u32 gpe_number)) | |
683 | ||
684 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
685 | acpi_set_gpe(acpi_handle gpe_device, | |
686 | u32 gpe_number, u8 action)) | |
687 | ||
688 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
689 | acpi_finish_gpe(acpi_handle gpe_device, | |
690 | u32 gpe_number)) | |
691 | ||
c12f07d1 RW |
692 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
693 | acpi_mark_gpe_for_wake(acpi_handle gpe_device, | |
694 | u32 gpe_number)) | |
695 | ||
33620c54 BM |
696 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
697 | acpi_setup_gpe_for_wake(acpi_handle | |
698 | parent_device, | |
699 | acpi_handle gpe_device, | |
700 | u32 gpe_number)) | |
701 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
702 | acpi_set_gpe_wake_mask(acpi_handle gpe_device, | |
703 | u32 gpe_number, | |
704 | u8 action)) | |
705 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
706 | acpi_get_gpe_status(acpi_handle gpe_device, | |
707 | u32 gpe_number, | |
708 | acpi_event_status | |
709 | *event_status)) | |
33620c54 | 710 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_disable_all_gpes(void)) |
33620c54 | 711 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable_all_runtime_gpes(void)) |
e0fa975d | 712 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable_all_wakeup_gpes(void)) |
33620c54 BM |
713 | |
714 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
715 | acpi_get_gpe_device(u32 gpe_index, | |
716 | acpi_handle * gpe_device)) | |
717 | ||
718 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
719 | acpi_install_gpe_block(acpi_handle gpe_device, | |
720 | struct | |
721 | acpi_generic_address | |
722 | *gpe_block_address, | |
723 | u32 register_count, | |
724 | u32 interrupt_number)) | |
725 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
726 | acpi_remove_gpe_block(acpi_handle gpe_device)) | |
a2100801 | 727 | |
1da177e4 LT |
728 | /* |
729 | * Resource interfaces | |
730 | */ | |
1da177e4 | 731 | typedef |
61686124 | 732 | acpi_status(*acpi_walk_resource_callback) (struct acpi_resource * resource, |
4be44fcd | 733 | void *context); |
1da177e4 | 734 | |
8b9c1152 LZ |
735 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
736 | acpi_get_vendor_resource(acpi_handle device, | |
737 | char *name, | |
738 | struct acpi_vendor_uuid | |
739 | *uuid, | |
740 | struct acpi_buffer | |
741 | *ret_buffer)) | |
742 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
743 | acpi_get_current_resources(acpi_handle device, | |
744 | struct acpi_buffer | |
745 | *ret_buffer)) | |
1da177e4 | 746 | #ifdef ACPI_FUTURE_USAGE |
8b9c1152 LZ |
747 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
748 | acpi_get_possible_resources(acpi_handle device, | |
749 | struct acpi_buffer | |
750 | *ret_buffer)) | |
1da177e4 | 751 | #endif |
8b9c1152 LZ |
752 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
753 | acpi_get_event_resources(acpi_handle device_handle, | |
754 | struct acpi_buffer | |
755 | *ret_buffer)) | |
756 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
757 | acpi_walk_resource_buffer(struct acpi_buffer | |
758 | *buffer, | |
759 | acpi_walk_resource_callback | |
760 | user_function, | |
761 | void *context)) | |
762 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
763 | acpi_walk_resources(acpi_handle device, char *name, | |
764 | acpi_walk_resource_callback | |
765 | user_function, void *context)) | |
766 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
767 | acpi_set_current_resources(acpi_handle device, | |
768 | struct acpi_buffer | |
769 | *in_buffer)) | |
770 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
771 | acpi_get_irq_routing_table(acpi_handle device, | |
772 | struct acpi_buffer | |
773 | *ret_buffer)) | |
774 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
775 | acpi_resource_to_address64(struct acpi_resource | |
776 | *resource, | |
777 | struct | |
778 | acpi_resource_address64 | |
779 | *out)) | |
780 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status | |
781 | acpi_buffer_to_resource(u8 *aml_buffer, | |
782 | u16 aml_buffer_length, | |
783 | struct acpi_resource | |
784 | **resource_ptr)) | |
0e243178 | 785 | |
1da177e4 LT |
786 | /* |
787 | * Hardware (ACPI device) interfaces | |
788 | */ | |
8b9c1152 | 789 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_reset(void)) |
d3fd902d | 790 | |
8b9c1152 LZ |
791 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
792 | acpi_read(u64 *value, | |
793 | struct acpi_generic_address *reg)) | |
739dcbb9 | 794 | |
8b9c1152 LZ |
795 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
796 | acpi_write(u64 value, | |
797 | struct acpi_generic_address *reg)) | |
739dcbb9 | 798 | |
33620c54 BM |
799 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
800 | acpi_read_bit_register(u32 register_id, | |
801 | u32 *return_value)) | |
1da177e4 | 802 | |
33620c54 BM |
803 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
804 | acpi_write_bit_register(u32 register_id, | |
805 | u32 value)) | |
1da177e4 | 806 | |
33620c54 BM |
807 | /* |
808 | * Sleep/Wake interfaces | |
809 | */ | |
8b9c1152 LZ |
810 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
811 | acpi_get_sleep_type_data(u8 sleep_state, | |
812 | u8 *slp_typ_a, | |
813 | u8 *slp_typ_b)) | |
1da177e4 | 814 | |
8b9c1152 LZ |
815 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
816 | acpi_enter_sleep_state_prep(u8 sleep_state)) | |
817 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_enter_sleep_state(u8 sleep_state)) | |
1da177e4 | 818 | |
40bce100 | 819 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enter_sleep_state_s4bios(void)) |
1da177e4 | 820 | |
8b9c1152 LZ |
821 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
822 | acpi_leave_sleep_state_prep(u8 sleep_state)) | |
823 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status acpi_leave_sleep_state(u8 sleep_state)) | |
1da177e4 | 824 | |
739dcbb9 | 825 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
aca2a5d3 LZ |
826 | acpi_set_firmware_waking_vectors |
827 | (acpi_physical_address physical_address, | |
828 | acpi_physical_address physical_address64)) | |
829 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
830 | acpi_set_firmware_waking_vector(u32 | |
831 | physical_address)) | |
739dcbb9 LZ |
832 | #if ACPI_MACHINE_WIDTH == 64 |
833 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status | |
834 | acpi_set_firmware_waking_vector64(u64 | |
835 | physical_address)) | |
836 | #endif | |
d08310fe BM |
837 | /* |
838 | * ACPI Timer interfaces | |
839 | */ | |
840 | #ifdef ACPI_FUTURE_USAGE | |
33620c54 BM |
841 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
842 | acpi_get_timer_resolution(u32 *resolution)) | |
33620c54 | 843 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_get_timer(u32 *ticks)) |
d08310fe | 844 | |
33620c54 BM |
845 | ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status |
846 | acpi_get_timer_duration(u32 start_ticks, | |
847 | u32 end_ticks, | |
848 | u32 *time_elapsed)) | |
d08310fe BM |
849 | #endif /* ACPI_FUTURE_USAGE */ |
850 | ||
50df4d8b | 851 | /* |
b74be611 | 852 | * Error/Warning output |
50df4d8b | 853 | */ |
407e22af LZ |
854 | ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3) |
855 | void ACPI_INTERNAL_VAR_XFACE | |
856 | acpi_error(const char *module_name, | |
857 | u32 line_number, | |
858 | const char *format, ...)) | |
859 | ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(4) | |
860 | void ACPI_INTERNAL_VAR_XFACE | |
861 | acpi_exception(const char *module_name, | |
862 | u32 line_number, | |
863 | acpi_status status, | |
864 | const char *format, ...)) | |
865 | ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3) | |
866 | void ACPI_INTERNAL_VAR_XFACE | |
867 | acpi_warning(const char *module_name, | |
868 | u32 line_number, | |
869 | const char *format, ...)) | |
870 | ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3) | |
871 | void ACPI_INTERNAL_VAR_XFACE | |
872 | acpi_info(const char *module_name, | |
873 | u32 line_number, | |
874 | const char *format, ...)) | |
875 | ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3) | |
876 | void ACPI_INTERNAL_VAR_XFACE | |
877 | acpi_bios_error(const char *module_name, | |
878 | u32 line_number, | |
879 | const char *format, ...)) | |
880 | ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3) | |
881 | void ACPI_INTERNAL_VAR_XFACE | |
882 | acpi_bios_warning(const char *module_name, | |
883 | u32 line_number, | |
884 | const char *format, ...)) | |
62cdd141 | 885 | |
b74be611 BM |
886 | /* |
887 | * Debug output | |
888 | */ | |
1ce28c32 LZ |
889 | ACPI_DBG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(6) |
890 | void ACPI_INTERNAL_VAR_XFACE | |
891 | acpi_debug_print(u32 requested_debug_level, | |
892 | u32 line_number, | |
893 | const char *function_name, | |
894 | const char *module_name, | |
895 | u32 component_id, | |
896 | const char *format, ...)) | |
897 | ACPI_DBG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(6) | |
898 | void ACPI_INTERNAL_VAR_XFACE | |
899 | acpi_debug_print_raw(u32 requested_debug_level, | |
900 | u32 line_number, | |
901 | const char *function_name, | |
902 | const char *module_name, | |
903 | u32 component_id, | |
904 | const char *format, ...)) | |
2e70da4c LZ |
905 | ACPI_APP_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(1) |
906 | void ACPI_INTERNAL_VAR_XFACE | |
907 | acpi_log_error(const char *format, ...)) | |
50df4d8b | 908 | |
0dedb3c4 LZ |
909 | /* |
910 | * Divergences | |
911 | */ | |
a8278efd LZ |
912 | ACPI_GLOBAL(u8, acpi_gbl_permanent_mmap); |
913 | ||
a8278efd LZ |
914 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
915 | acpi_get_table_with_size(acpi_string signature, | |
916 | u32 instance, | |
917 | struct acpi_table_header | |
918 | **out_table, | |
919 | acpi_size *tbl_size)) | |
0dedb3c4 | 920 | |
a8278efd LZ |
921 | ACPI_EXTERNAL_RETURN_STATUS(acpi_status |
922 | acpi_get_data_full(acpi_handle object, | |
923 | acpi_object_handler handler, | |
924 | void **data, | |
925 | void (*callback)(void *))) | |
50df4d8b | 926 | |
4be44fcd | 927 | #endif /* __ACXFACE_H__ */ |