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