1 /****************************************************************************** 2 * 3 * Name: acpixf.h - External interfaces to the ACPI subsystem 4 * 5 *****************************************************************************/ 6 7 /* 8 * Copyright (C) 2000 - 2022, Intel Corp. 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 MERCHANTABILITY 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 44 #ifndef __ACXFACE_H__ 45 #define __ACXFACE_H__ 46 47 /* Current ACPICA subsystem version in YYYYMMDD format */ 48 49 #define ACPI_CA_VERSION 0x20221020 50 51 #include "acconfig.h" 52 #include "actypes.h" 53 #include "actbl.h" 54 #include "acbuffer.h" 55 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 validate (map) an entire table to verify 166 * checksum/duplication in early stage before install. Set this to TRUE to 167 * allow early table validation before install it to the table manager. 168 * Note that enabling this option causes errors to happen in some OSPMs 169 * during early initialization stages. Default behavior is to allow such 170 * validation. 171 */ 172 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_EnableTableValidation, TRUE); 173 174 /* 175 * Optionally enable output from the AML Debug Object. 176 */ 177 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_EnableAmlDebugObject, FALSE); 178 179 /* 180 * Optionally copy the entire DSDT to local memory (instead of simply 181 * mapping it.) There are some BIOSs that corrupt or replace the original 182 * DSDT, creating the need for this option. Default is FALSE, do not copy 183 * the DSDT. 184 */ 185 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_CopyDsdtLocally, FALSE); 186 187 /* 188 * Optionally ignore an XSDT if present and use the RSDT instead. 189 * Although the ACPI specification requires that an XSDT be used instead 190 * of the RSDT, the XSDT has been found to be corrupt or ill-formed on 191 * some machines. Default behavior is to use the XSDT if present. 192 */ 193 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_DoNotUseXsdt, FALSE); 194 195 /* 196 * Optionally use 32-bit FADT addresses if and when there is a conflict 197 * (address mismatch) between the 32-bit and 64-bit versions of the 198 * address. Although ACPICA adheres to the ACPI specification which 199 * requires the use of the corresponding 64-bit address if it is non-zero, 200 * some machines have been found to have a corrupted non-zero 64-bit 201 * address. Default is FALSE, do not favor the 32-bit addresses. 202 */ 203 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_Use32BitFadtAddresses, FALSE); 204 205 /* 206 * Optionally use 32-bit FACS table addresses. 207 * It is reported that some platforms fail to resume from system suspending 208 * if 64-bit FACS table address is selected: 209 * https://bugzilla.kernel.org/show_bug.cgi?id=74021 210 * Default is TRUE, favor the 32-bit addresses. 211 */ 212 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_Use32BitFacsAddresses, TRUE); 213 214 /* 215 * Optionally truncate I/O addresses to 16 bits. Provides compatibility 216 * with other ACPI implementations. NOTE: During ACPICA initialization, 217 * this value is set to TRUE if any Windows OSI strings have been 218 * requested by the BIOS. 219 */ 220 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_TruncateIoAddresses, FALSE); 221 222 /* 223 * Disable runtime checking and repair of values returned by control methods. 224 * Use only if the repair is causing a problem on a particular machine. 225 */ 226 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_DisableAutoRepair, FALSE); 227 228 /* 229 * Optionally do not install any SSDTs from the RSDT/XSDT during initialization. 230 * This can be useful for debugging ACPI problems on some machines. 231 */ 232 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_DisableSsdtTableInstall, FALSE); 233 234 /* 235 * Optionally enable runtime namespace override. 236 */ 237 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_RuntimeNamespaceOverride, TRUE); 238 239 /* 240 * We keep track of the latest version of Windows that has been requested by 241 * the BIOS. ACPI 5.0. 242 */ 243 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_OsiData, 0); 244 245 /* 246 * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning 247 * that the ACPI hardware is no longer required. A flag in the FADT indicates 248 * a reduced HW machine, and that flag is duplicated here for convenience. 249 */ 250 ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_ReducedHardware, FALSE); 251 252 /* 253 * Maximum timeout for While() loop iterations before forced method abort. 254 * This mechanism is intended to prevent infinite loops during interpreter 255 * execution within a host kernel. 256 */ 257 ACPI_INIT_GLOBAL (UINT32, AcpiGbl_MaxLoopIterations, ACPI_MAX_LOOP_TIMEOUT); 258 259 /* 260 * Optionally ignore AE_NOT_FOUND errors from named reference package elements 261 * during DSDT/SSDT table loading. This reduces error "noise" in platforms 262 * whose firmware is carrying around a bunch of unused package objects that 263 * refer to non-existent named objects. However, If the AML actually tries to 264 * use such a package, the unresolved element(s) will be replaced with NULL 265 * elements. 266 */ 267 ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_IgnorePackageResolutionErrors, FALSE); 268 269 /* 270 * This mechanism is used to trace a specified AML method. The method is 271 * traced each time it is executed. 272 */ 273 ACPI_INIT_GLOBAL (UINT32, AcpiGbl_TraceFlags, 0); 274 ACPI_INIT_GLOBAL (const char *, AcpiGbl_TraceMethodName, NULL); 275 ACPI_INIT_GLOBAL (UINT32, AcpiGbl_TraceDbgLevel, ACPI_TRACE_LEVEL_DEFAULT); 276 ACPI_INIT_GLOBAL (UINT32, AcpiGbl_TraceDbgLayer, ACPI_TRACE_LAYER_DEFAULT); 277 278 /* 279 * Runtime configuration of debug output control masks. We want the debug 280 * switches statically initialized so they are already set when the debugger 281 * is entered. 282 */ 283 #ifdef ACPI_DEBUG_OUTPUT 284 ACPI_INIT_GLOBAL (UINT32, AcpiDbgLevel, ACPI_DEBUG_DEFAULT); 285 #else 286 ACPI_INIT_GLOBAL (UINT32, AcpiDbgLevel, ACPI_NORMAL_DEFAULT); 287 #endif 288 ACPI_INIT_GLOBAL (UINT32, AcpiDbgLayer, ACPI_COMPONENT_DEFAULT); 289 290 /* Optionally enable timer output with Debug Object output */ 291 292 ACPI_INIT_GLOBAL (UINT8, AcpiGbl_DisplayDebugTimer, FALSE); 293 294 /* 295 * Debugger command handshake globals. Host OSes need to access these 296 * variables to implement their own command handshake mechanism. 297 */ 298 #ifdef ACPI_DEBUGGER 299 ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_MethodExecuting, FALSE); 300 ACPI_GLOBAL (char, AcpiGbl_DbLineBuf[ACPI_DB_LINE_BUFFER_SIZE]); 301 #endif 302 303 /* 304 * Other miscellaneous globals 305 */ 306 ACPI_GLOBAL (ACPI_TABLE_FADT, AcpiGbl_FADT); 307 ACPI_GLOBAL (UINT32, AcpiCurrentGpeCount); 308 ACPI_GLOBAL (BOOLEAN, AcpiGbl_SystemAwakeAndRunning); 309 310 311 /***************************************************************************** 312 * 313 * ACPICA public interface configuration. 314 * 315 * Interfaces that are configured out of the ACPICA build are replaced 316 * by inlined stubs by default. 317 * 318 ****************************************************************************/ 319 320 /* 321 * Hardware-reduced prototypes (default: Not hardware reduced). 322 * 323 * All ACPICA hardware-related interfaces that use these macros will be 324 * configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag 325 * is set to TRUE. 326 * 327 * Note: This static build option for reduced hardware is intended to 328 * reduce ACPICA code size if desired or necessary. However, even if this 329 * option is not specified, the runtime behavior of ACPICA is dependent 330 * on the actual FADT reduced hardware flag (HW_REDUCED_ACPI). If set, 331 * the flag will enable similar behavior -- ACPICA will not attempt 332 * to access any ACPI-relate hardware (SCI, GPEs, Fixed Events, etc.) 333 */ 334 #if (!ACPI_REDUCED_HARDWARE) 335 #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \ 336 ACPI_EXTERNAL_RETURN_STATUS(Prototype) 337 338 #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \ 339 ACPI_EXTERNAL_RETURN_OK(Prototype) 340 341 #define ACPI_HW_DEPENDENT_RETURN_UINT32(prototype) \ 342 ACPI_EXTERNAL_RETURN_UINT32(prototype) 343 344 #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \ 345 ACPI_EXTERNAL_RETURN_VOID(Prototype) 346 347 #else 348 #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \ 349 static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);} 350 351 #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \ 352 static ACPI_INLINE Prototype {return(AE_OK);} 353 354 #define ACPI_HW_DEPENDENT_RETURN_UINT32(prototype) \ 355 static ACPI_INLINE prototype {return(0);} 356 357 #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \ 358 static ACPI_INLINE Prototype {return;} 359 360 #endif /* !ACPI_REDUCED_HARDWARE */ 361 362 363 /* 364 * Error message prototypes (default: error messages enabled). 365 * 366 * All interfaces related to error and warning messages 367 * will be configured out of the ACPICA build if the 368 * ACPI_NO_ERROR_MESSAGE flag is defined. 369 */ 370 #ifndef ACPI_NO_ERROR_MESSAGES 371 #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \ 372 Prototype; 373 374 #else 375 #define ACPI_MSG_DEPENDENT_RETURN_VOID(Prototype) \ 376 static ACPI_INLINE Prototype {return;} 377 378 #endif /* ACPI_NO_ERROR_MESSAGES */ 379 380 381 /* 382 * Debugging output prototypes (default: no debug output). 383 * 384 * All interfaces related to debug output messages 385 * will be configured out of the ACPICA build unless the 386 * ACPI_DEBUG_OUTPUT flag is defined. 387 */ 388 #ifdef ACPI_DEBUG_OUTPUT 389 #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \ 390 Prototype; 391 392 #else 393 #define ACPI_DBG_DEPENDENT_RETURN_VOID(Prototype) \ 394 static ACPI_INLINE Prototype {return;} 395 396 #endif /* ACPI_DEBUG_OUTPUT */ 397 398 399 /* 400 * Application prototypes 401 * 402 * All interfaces used by application will be configured 403 * out of the ACPICA build unless the ACPI_APPLICATION 404 * flag is defined. 405 */ 406 #ifdef ACPI_APPLICATION 407 #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \ 408 Prototype; 409 410 #else 411 #define ACPI_APP_DEPENDENT_RETURN_VOID(Prototype) \ 412 static ACPI_INLINE Prototype {return;} 413 414 #endif /* ACPI_APPLICATION */ 415 416 417 /* 418 * Debugger prototypes 419 * 420 * All interfaces used by debugger will be configured 421 * out of the ACPICA build unless the ACPI_DEBUGGER 422 * flag is defined. 423 */ 424 #ifdef ACPI_DEBUGGER 425 #define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \ 426 ACPI_EXTERNAL_RETURN_OK(Prototype) 427 428 #define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \ 429 ACPI_EXTERNAL_RETURN_VOID(Prototype) 430 431 #else 432 #define ACPI_DBR_DEPENDENT_RETURN_OK(Prototype) \ 433 static ACPI_INLINE Prototype {return(AE_OK);} 434 435 #define ACPI_DBR_DEPENDENT_RETURN_VOID(Prototype) \ 436 static ACPI_INLINE Prototype {return;} 437 438 #endif /* ACPI_DEBUGGER */ 439 440 441 /***************************************************************************** 442 * 443 * ACPICA public interface prototypes 444 * 445 ****************************************************************************/ 446 447 /* 448 * Initialization 449 */ 450 ACPI_EXTERNAL_RETURN_STATUS ( 451 ACPI_STATUS ACPI_INIT_FUNCTION 452 AcpiInitializeTables ( 453 ACPI_TABLE_DESC *InitialStorage, 454 UINT32 InitialTableCount, 455 BOOLEAN AllowResize)) 456 457 ACPI_EXTERNAL_RETURN_STATUS ( 458 ACPI_STATUS ACPI_INIT_FUNCTION 459 AcpiInitializeSubsystem ( 460 void)) 461 462 ACPI_EXTERNAL_RETURN_STATUS ( 463 ACPI_STATUS ACPI_INIT_FUNCTION 464 AcpiEnableSubsystem ( 465 UINT32 Flags)) 466 467 ACPI_EXTERNAL_RETURN_STATUS ( 468 ACPI_STATUS ACPI_INIT_FUNCTION 469 AcpiInitializeObjects ( 470 UINT32 Flags)) 471 472 ACPI_EXTERNAL_RETURN_STATUS ( 473 ACPI_STATUS ACPI_INIT_FUNCTION 474 AcpiTerminate ( 475 void)) 476 477 478 /* 479 * Miscellaneous global interfaces 480 */ 481 ACPI_HW_DEPENDENT_RETURN_STATUS ( 482 ACPI_STATUS 483 AcpiEnable ( 484 void)) 485 486 ACPI_HW_DEPENDENT_RETURN_STATUS ( 487 ACPI_STATUS 488 AcpiDisable ( 489 void)) 490 491 ACPI_EXTERNAL_RETURN_STATUS ( 492 ACPI_STATUS 493 AcpiSubsystemStatus ( 494 void)) 495 496 ACPI_EXTERNAL_RETURN_STATUS ( 497 ACPI_STATUS 498 AcpiGetSystemInfo ( 499 ACPI_BUFFER *RetBuffer)) 500 501 ACPI_EXTERNAL_RETURN_STATUS ( 502 ACPI_STATUS 503 AcpiGetStatistics ( 504 ACPI_STATISTICS *Stats)) 505 506 ACPI_EXTERNAL_RETURN_PTR ( 507 const char * 508 AcpiFormatException ( 509 ACPI_STATUS Exception)) 510 511 ACPI_EXTERNAL_RETURN_STATUS ( 512 ACPI_STATUS 513 AcpiPurgeCachedObjects ( 514 void)) 515 516 ACPI_EXTERNAL_RETURN_STATUS ( 517 ACPI_STATUS 518 AcpiInstallInterface ( 519 ACPI_STRING InterfaceName)) 520 521 ACPI_EXTERNAL_RETURN_STATUS ( 522 ACPI_STATUS 523 AcpiRemoveInterface ( 524 ACPI_STRING InterfaceName)) 525 526 ACPI_EXTERNAL_RETURN_STATUS ( 527 ACPI_STATUS 528 AcpiUpdateInterfaces ( 529 UINT8 Action)) 530 531 ACPI_EXTERNAL_RETURN_UINT32 ( 532 UINT32 533 AcpiCheckAddressRange ( 534 ACPI_ADR_SPACE_TYPE SpaceId, 535 ACPI_PHYSICAL_ADDRESS Address, 536 ACPI_SIZE Length, 537 BOOLEAN Warn)) 538 539 ACPI_EXTERNAL_RETURN_STATUS ( 540 ACPI_STATUS 541 AcpiDecodePldBuffer ( 542 UINT8 *InBuffer, 543 ACPI_SIZE Length, 544 ACPI_PLD_INFO **ReturnBuffer)) 545 546 547 /* 548 * ACPI table load/unload interfaces 549 */ 550 ACPI_EXTERNAL_RETURN_STATUS ( 551 ACPI_STATUS ACPI_INIT_FUNCTION 552 AcpiInstallTable ( 553 ACPI_TABLE_HEADER *Table)) 554 555 ACPI_EXTERNAL_RETURN_STATUS ( 556 ACPI_STATUS ACPI_INIT_FUNCTION 557 AcpiInstallPhysicalTable ( 558 ACPI_PHYSICAL_ADDRESS Address)) 559 560 ACPI_EXTERNAL_RETURN_STATUS ( 561 ACPI_STATUS 562 AcpiLoadTable ( 563 ACPI_TABLE_HEADER *Table, 564 UINT32 *TableIdx)) 565 566 ACPI_EXTERNAL_RETURN_STATUS ( 567 ACPI_STATUS 568 AcpiUnloadTable ( 569 UINT32 TableIndex)) 570 571 ACPI_EXTERNAL_RETURN_STATUS ( 572 ACPI_STATUS 573 AcpiUnloadParentTable ( 574 ACPI_HANDLE Object)) 575 576 ACPI_EXTERNAL_RETURN_STATUS ( 577 ACPI_STATUS ACPI_INIT_FUNCTION 578 AcpiLoadTables ( 579 void)) 580 581 582 /* 583 * ACPI table manipulation interfaces 584 */ 585 ACPI_EXTERNAL_RETURN_STATUS ( 586 ACPI_STATUS ACPI_INIT_FUNCTION 587 AcpiReallocateRootTable ( 588 void)) 589 590 ACPI_EXTERNAL_RETURN_STATUS ( 591 ACPI_STATUS ACPI_INIT_FUNCTION 592 AcpiFindRootPointer ( 593 ACPI_PHYSICAL_ADDRESS *RsdpAddress)) 594 595 ACPI_EXTERNAL_RETURN_STATUS ( 596 ACPI_STATUS 597 AcpiGetTableHeader ( 598 ACPI_STRING Signature, 599 UINT32 Instance, 600 ACPI_TABLE_HEADER *OutTableHeader)) 601 602 ACPI_EXTERNAL_RETURN_STATUS ( 603 ACPI_STATUS 604 AcpiGetTable ( 605 ACPI_STRING Signature, 606 UINT32 Instance, 607 ACPI_TABLE_HEADER **OutTable)) 608 609 ACPI_EXTERNAL_RETURN_VOID ( 610 void 611 AcpiPutTable ( 612 ACPI_TABLE_HEADER *Table)) 613 614 ACPI_EXTERNAL_RETURN_STATUS ( 615 ACPI_STATUS 616 AcpiGetTableByIndex ( 617 UINT32 TableIndex, 618 ACPI_TABLE_HEADER **OutTable)) 619 620 ACPI_EXTERNAL_RETURN_STATUS ( 621 ACPI_STATUS 622 AcpiInstallTableHandler ( 623 ACPI_TABLE_HANDLER Handler, 624 void *Context)) 625 626 ACPI_EXTERNAL_RETURN_STATUS ( 627 ACPI_STATUS 628 AcpiRemoveTableHandler ( 629 ACPI_TABLE_HANDLER Handler)) 630 631 632 /* 633 * Namespace and name interfaces 634 */ 635 ACPI_EXTERNAL_RETURN_STATUS ( 636 ACPI_STATUS 637 AcpiWalkNamespace ( 638 ACPI_OBJECT_TYPE Type, 639 ACPI_HANDLE StartObject, 640 UINT32 MaxDepth, 641 ACPI_WALK_CALLBACK DescendingCallback, 642 ACPI_WALK_CALLBACK AscendingCallback, 643 void *Context, 644 void **ReturnValue)) 645 646 ACPI_EXTERNAL_RETURN_STATUS ( 647 ACPI_STATUS 648 AcpiGetDevices ( 649 char *HID, 650 ACPI_WALK_CALLBACK UserFunction, 651 void *Context, 652 void **ReturnValue)) 653 654 ACPI_EXTERNAL_RETURN_STATUS ( 655 ACPI_STATUS 656 AcpiGetName ( 657 ACPI_HANDLE Object, 658 UINT32 NameType, 659 ACPI_BUFFER *RetPathPtr)) 660 661 ACPI_EXTERNAL_RETURN_STATUS ( 662 ACPI_STATUS 663 AcpiGetHandle ( 664 ACPI_HANDLE Parent, 665 ACPI_STRING Pathname, 666 ACPI_HANDLE *RetHandle)) 667 668 ACPI_EXTERNAL_RETURN_STATUS ( 669 ACPI_STATUS 670 AcpiAttachData ( 671 ACPI_HANDLE Object, 672 ACPI_OBJECT_HANDLER Handler, 673 void *Data)) 674 675 ACPI_EXTERNAL_RETURN_STATUS ( 676 ACPI_STATUS 677 AcpiDetachData ( 678 ACPI_HANDLE Object, 679 ACPI_OBJECT_HANDLER Handler)) 680 681 ACPI_EXTERNAL_RETURN_STATUS ( 682 ACPI_STATUS 683 AcpiGetData ( 684 ACPI_HANDLE Object, 685 ACPI_OBJECT_HANDLER Handler, 686 void **Data)) 687 688 ACPI_EXTERNAL_RETURN_STATUS ( 689 ACPI_STATUS 690 AcpiDebugTrace ( 691 const char *Name, 692 UINT32 DebugLevel, 693 UINT32 DebugLayer, 694 UINT32 Flags)) 695 696 697 /* 698 * Object manipulation and enumeration 699 */ 700 ACPI_EXTERNAL_RETURN_STATUS ( 701 ACPI_STATUS 702 AcpiEvaluateObject ( 703 ACPI_HANDLE Object, 704 ACPI_STRING Pathname, 705 ACPI_OBJECT_LIST *ParameterObjects, 706 ACPI_BUFFER *ReturnObjectBuffer)) 707 708 ACPI_EXTERNAL_RETURN_STATUS ( 709 ACPI_STATUS 710 AcpiEvaluateObjectTyped ( 711 ACPI_HANDLE Object, 712 ACPI_STRING Pathname, 713 ACPI_OBJECT_LIST *ExternalParams, 714 ACPI_BUFFER *ReturnBuffer, 715 ACPI_OBJECT_TYPE ReturnType)) 716 717 ACPI_EXTERNAL_RETURN_STATUS ( 718 ACPI_STATUS 719 AcpiGetObjectInfo ( 720 ACPI_HANDLE Object, 721 ACPI_DEVICE_INFO **ReturnBuffer)) 722 723 ACPI_EXTERNAL_RETURN_STATUS ( 724 ACPI_STATUS 725 AcpiInstallMethod ( 726 UINT8 *Buffer)) 727 728 ACPI_EXTERNAL_RETURN_STATUS ( 729 ACPI_STATUS 730 AcpiGetNextObject ( 731 ACPI_OBJECT_TYPE Type, 732 ACPI_HANDLE Parent, 733 ACPI_HANDLE Child, 734 ACPI_HANDLE *OutHandle)) 735 736 ACPI_EXTERNAL_RETURN_STATUS ( 737 ACPI_STATUS 738 AcpiGetType ( 739 ACPI_HANDLE Object, 740 ACPI_OBJECT_TYPE *OutType)) 741 742 ACPI_EXTERNAL_RETURN_STATUS ( 743 ACPI_STATUS 744 AcpiGetParent ( 745 ACPI_HANDLE Object, 746 ACPI_HANDLE *OutHandle)) 747 748 749 /* 750 * Handler interfaces 751 */ 752 ACPI_EXTERNAL_RETURN_STATUS ( 753 ACPI_STATUS 754 AcpiInstallInitializationHandler ( 755 ACPI_INIT_HANDLER Handler, 756 UINT32 Function)) 757 758 ACPI_HW_DEPENDENT_RETURN_STATUS ( 759 ACPI_STATUS 760 AcpiInstallSciHandler ( 761 ACPI_SCI_HANDLER Address, 762 void *Context)) 763 764 ACPI_HW_DEPENDENT_RETURN_STATUS ( 765 ACPI_STATUS 766 AcpiRemoveSciHandler ( 767 ACPI_SCI_HANDLER Address)) 768 769 ACPI_HW_DEPENDENT_RETURN_STATUS ( 770 ACPI_STATUS 771 AcpiInstallGlobalEventHandler ( 772 ACPI_GBL_EVENT_HANDLER Handler, 773 void *Context)) 774 775 ACPI_HW_DEPENDENT_RETURN_STATUS ( 776 ACPI_STATUS 777 AcpiInstallFixedEventHandler ( 778 UINT32 AcpiEvent, 779 ACPI_EVENT_HANDLER Handler, 780 void *Context)) 781 782 ACPI_HW_DEPENDENT_RETURN_STATUS ( 783 ACPI_STATUS 784 AcpiRemoveFixedEventHandler ( 785 UINT32 AcpiEvent, 786 ACPI_EVENT_HANDLER Handler)) 787 788 ACPI_HW_DEPENDENT_RETURN_STATUS ( 789 ACPI_STATUS 790 AcpiInstallGpeHandler ( 791 ACPI_HANDLE GpeDevice, 792 UINT32 GpeNumber, 793 UINT32 Type, 794 ACPI_GPE_HANDLER Address, 795 void *Context)) 796 797 ACPI_HW_DEPENDENT_RETURN_STATUS ( 798 ACPI_STATUS 799 AcpiInstallGpeRawHandler ( 800 ACPI_HANDLE GpeDevice, 801 UINT32 GpeNumber, 802 UINT32 Type, 803 ACPI_GPE_HANDLER Address, 804 void *Context)) 805 806 ACPI_HW_DEPENDENT_RETURN_STATUS ( 807 ACPI_STATUS 808 AcpiRemoveGpeHandler ( 809 ACPI_HANDLE GpeDevice, 810 UINT32 GpeNumber, 811 ACPI_GPE_HANDLER Address)) 812 813 ACPI_EXTERNAL_RETURN_STATUS ( 814 ACPI_STATUS 815 AcpiInstallNotifyHandler ( 816 ACPI_HANDLE Device, 817 UINT32 HandlerType, 818 ACPI_NOTIFY_HANDLER Handler, 819 void *Context)) 820 821 ACPI_EXTERNAL_RETURN_STATUS ( 822 ACPI_STATUS 823 AcpiRemoveNotifyHandler ( 824 ACPI_HANDLE Device, 825 UINT32 HandlerType, 826 ACPI_NOTIFY_HANDLER Handler)) 827 828 ACPI_EXTERNAL_RETURN_STATUS ( 829 ACPI_STATUS 830 AcpiInstallAddressSpaceHandler ( 831 ACPI_HANDLE Device, 832 ACPI_ADR_SPACE_TYPE SpaceId, 833 ACPI_ADR_SPACE_HANDLER Handler, 834 ACPI_ADR_SPACE_SETUP Setup, 835 void *Context)) 836 837 ACPI_EXTERNAL_RETURN_STATUS ( 838 ACPI_STATUS 839 AcpiRemoveAddressSpaceHandler ( 840 ACPI_HANDLE Device, 841 ACPI_ADR_SPACE_TYPE SpaceId, 842 ACPI_ADR_SPACE_HANDLER Handler)) 843 844 ACPI_EXTERNAL_RETURN_STATUS ( 845 ACPI_STATUS 846 AcpiInstallExceptionHandler ( 847 ACPI_EXCEPTION_HANDLER Handler)) 848 849 ACPI_EXTERNAL_RETURN_STATUS ( 850 ACPI_STATUS 851 AcpiInstallInterfaceHandler ( 852 ACPI_INTERFACE_HANDLER Handler)) 853 854 855 /* 856 * Global Lock interfaces 857 */ 858 ACPI_HW_DEPENDENT_RETURN_STATUS ( 859 ACPI_STATUS 860 AcpiAcquireGlobalLock ( 861 UINT16 Timeout, 862 UINT32 *Handle)) 863 864 ACPI_HW_DEPENDENT_RETURN_STATUS ( 865 ACPI_STATUS 866 AcpiReleaseGlobalLock ( 867 UINT32 Handle)) 868 869 870 /* 871 * Interfaces to AML mutex objects 872 */ 873 ACPI_EXTERNAL_RETURN_STATUS ( 874 ACPI_STATUS 875 AcpiAcquireMutex ( 876 ACPI_HANDLE Handle, 877 ACPI_STRING Pathname, 878 UINT16 Timeout)) 879 880 ACPI_EXTERNAL_RETURN_STATUS ( 881 ACPI_STATUS 882 AcpiReleaseMutex ( 883 ACPI_HANDLE Handle, 884 ACPI_STRING Pathname)) 885 886 887 /* 888 * Fixed Event interfaces 889 */ 890 ACPI_HW_DEPENDENT_RETURN_STATUS ( 891 ACPI_STATUS 892 AcpiEnableEvent ( 893 UINT32 Event, 894 UINT32 Flags)) 895 896 ACPI_HW_DEPENDENT_RETURN_STATUS ( 897 ACPI_STATUS 898 AcpiDisableEvent ( 899 UINT32 Event, 900 UINT32 Flags)) 901 902 ACPI_HW_DEPENDENT_RETURN_STATUS ( 903 ACPI_STATUS 904 AcpiClearEvent ( 905 UINT32 Event)) 906 907 ACPI_HW_DEPENDENT_RETURN_STATUS ( 908 ACPI_STATUS 909 AcpiGetEventStatus ( 910 UINT32 Event, 911 ACPI_EVENT_STATUS *EventStatus)) 912 913 914 /* 915 * General Purpose Event (GPE) Interfaces 916 */ 917 ACPI_HW_DEPENDENT_RETURN_STATUS ( 918 ACPI_STATUS 919 AcpiUpdateAllGpes ( 920 void)) 921 922 ACPI_HW_DEPENDENT_RETURN_STATUS ( 923 ACPI_STATUS 924 AcpiEnableGpe ( 925 ACPI_HANDLE GpeDevice, 926 UINT32 GpeNumber)) 927 928 ACPI_HW_DEPENDENT_RETURN_STATUS ( 929 ACPI_STATUS 930 AcpiDisableGpe ( 931 ACPI_HANDLE GpeDevice, 932 UINT32 GpeNumber)) 933 934 ACPI_HW_DEPENDENT_RETURN_STATUS ( 935 ACPI_STATUS 936 AcpiClearGpe ( 937 ACPI_HANDLE GpeDevice, 938 UINT32 GpeNumber)) 939 940 ACPI_HW_DEPENDENT_RETURN_STATUS ( 941 ACPI_STATUS 942 AcpiSetGpe ( 943 ACPI_HANDLE GpeDevice, 944 UINT32 GpeNumber, 945 UINT8 Action)) 946 947 ACPI_HW_DEPENDENT_RETURN_STATUS ( 948 ACPI_STATUS 949 AcpiFinishGpe ( 950 ACPI_HANDLE GpeDevice, 951 UINT32 GpeNumber)) 952 953 ACPI_HW_DEPENDENT_RETURN_STATUS ( 954 ACPI_STATUS 955 AcpiMaskGpe ( 956 ACPI_HANDLE GpeDevice, 957 UINT32 GpeNumber, 958 BOOLEAN IsMasked)) 959 960 ACPI_HW_DEPENDENT_RETURN_STATUS ( 961 ACPI_STATUS 962 AcpiMarkGpeForWake ( 963 ACPI_HANDLE GpeDevice, 964 UINT32 GpeNumber)) 965 966 ACPI_HW_DEPENDENT_RETURN_STATUS ( 967 ACPI_STATUS 968 AcpiSetupGpeForWake ( 969 ACPI_HANDLE ParentDevice, 970 ACPI_HANDLE GpeDevice, 971 UINT32 GpeNumber)) 972 973 ACPI_HW_DEPENDENT_RETURN_STATUS ( 974 ACPI_STATUS 975 AcpiSetGpeWakeMask ( 976 ACPI_HANDLE GpeDevice, 977 UINT32 GpeNumber, 978 UINT8 Action)) 979 980 ACPI_HW_DEPENDENT_RETURN_STATUS ( 981 ACPI_STATUS 982 AcpiGetGpeStatus ( 983 ACPI_HANDLE GpeDevice, 984 UINT32 GpeNumber, 985 ACPI_EVENT_STATUS *EventStatus)) 986 987 ACPI_HW_DEPENDENT_RETURN_UINT32 ( 988 UINT32 989 AcpiDispatchGpe ( 990 ACPI_HANDLE GpeDevice, 991 UINT32 GpeNumber)) 992 993 ACPI_HW_DEPENDENT_RETURN_STATUS ( 994 ACPI_STATUS 995 AcpiDisableAllGpes ( 996 void)) 997 998 ACPI_HW_DEPENDENT_RETURN_STATUS ( 999 ACPI_STATUS 1000 AcpiEnableAllRuntimeGpes ( 1001 void)) 1002 1003 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1004 ACPI_STATUS 1005 AcpiEnableAllWakeupGpes ( 1006 void)) 1007 1008 ACPI_HW_DEPENDENT_RETURN_UINT32 ( 1009 UINT32 AcpiAnyGpeStatusSet ( 1010 void)) 1011 1012 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1013 ACPI_STATUS 1014 AcpiGetGpeDevice ( 1015 UINT32 GpeIndex, 1016 ACPI_HANDLE *GpeDevice)) 1017 1018 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1019 ACPI_STATUS 1020 AcpiInstallGpeBlock ( 1021 ACPI_HANDLE GpeDevice, 1022 ACPI_GENERIC_ADDRESS *GpeBlockAddress, 1023 UINT32 RegisterCount, 1024 UINT32 InterruptNumber)) 1025 1026 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1027 ACPI_STATUS 1028 AcpiRemoveGpeBlock ( 1029 ACPI_HANDLE GpeDevice)) 1030 1031 1032 /* 1033 * Resource interfaces 1034 */ 1035 typedef 1036 ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) ( 1037 ACPI_RESOURCE *Resource, 1038 void *Context); 1039 1040 ACPI_EXTERNAL_RETURN_STATUS ( 1041 ACPI_STATUS 1042 AcpiGetVendorResource ( 1043 ACPI_HANDLE Device, 1044 char *Name, 1045 ACPI_VENDOR_UUID *Uuid, 1046 ACPI_BUFFER *RetBuffer)) 1047 1048 ACPI_EXTERNAL_RETURN_STATUS ( 1049 ACPI_STATUS 1050 AcpiGetCurrentResources ( 1051 ACPI_HANDLE Device, 1052 ACPI_BUFFER *RetBuffer)) 1053 1054 ACPI_EXTERNAL_RETURN_STATUS ( 1055 ACPI_STATUS 1056 AcpiGetPossibleResources ( 1057 ACPI_HANDLE Device, 1058 ACPI_BUFFER *RetBuffer)) 1059 1060 ACPI_EXTERNAL_RETURN_STATUS ( 1061 ACPI_STATUS 1062 AcpiGetEventResources ( 1063 ACPI_HANDLE DeviceHandle, 1064 ACPI_BUFFER *RetBuffer)) 1065 1066 ACPI_EXTERNAL_RETURN_STATUS ( 1067 ACPI_STATUS 1068 AcpiWalkResourceBuffer ( 1069 ACPI_BUFFER *Buffer, 1070 ACPI_WALK_RESOURCE_CALLBACK UserFunction, 1071 void *Context)) 1072 1073 ACPI_EXTERNAL_RETURN_STATUS ( 1074 ACPI_STATUS 1075 AcpiWalkResources ( 1076 ACPI_HANDLE Device, 1077 char *Name, 1078 ACPI_WALK_RESOURCE_CALLBACK UserFunction, 1079 void *Context)) 1080 1081 ACPI_EXTERNAL_RETURN_STATUS ( 1082 ACPI_STATUS 1083 AcpiSetCurrentResources ( 1084 ACPI_HANDLE Device, 1085 ACPI_BUFFER *InBuffer)) 1086 1087 ACPI_EXTERNAL_RETURN_STATUS ( 1088 ACPI_STATUS 1089 AcpiGetIrqRoutingTable ( 1090 ACPI_HANDLE Device, 1091 ACPI_BUFFER *RetBuffer)) 1092 1093 ACPI_EXTERNAL_RETURN_STATUS ( 1094 ACPI_STATUS 1095 AcpiResourceToAddress64 ( 1096 ACPI_RESOURCE *Resource, 1097 ACPI_RESOURCE_ADDRESS64 *Out)) 1098 1099 ACPI_EXTERNAL_RETURN_STATUS ( 1100 ACPI_STATUS 1101 AcpiBufferToResource ( 1102 UINT8 *AmlBuffer, 1103 UINT16 AmlBufferLength, 1104 ACPI_RESOURCE **ResourcePtr)) 1105 1106 1107 /* 1108 * Hardware (ACPI device) interfaces 1109 */ 1110 ACPI_EXTERNAL_RETURN_STATUS ( 1111 ACPI_STATUS 1112 AcpiReset ( 1113 void)) 1114 1115 ACPI_EXTERNAL_RETURN_STATUS ( 1116 ACPI_STATUS 1117 AcpiRead ( 1118 UINT64 *Value, 1119 ACPI_GENERIC_ADDRESS *Reg)) 1120 1121 ACPI_EXTERNAL_RETURN_STATUS ( 1122 ACPI_STATUS 1123 AcpiWrite ( 1124 UINT64 Value, 1125 ACPI_GENERIC_ADDRESS *Reg)) 1126 1127 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1128 ACPI_STATUS 1129 AcpiReadBitRegister ( 1130 UINT32 RegisterId, 1131 UINT32 *ReturnValue)) 1132 1133 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1134 ACPI_STATUS 1135 AcpiWriteBitRegister ( 1136 UINT32 RegisterId, 1137 UINT32 Value)) 1138 1139 1140 /* 1141 * Sleep/Wake interfaces 1142 */ 1143 ACPI_EXTERNAL_RETURN_STATUS ( 1144 ACPI_STATUS 1145 AcpiGetSleepTypeData ( 1146 UINT8 SleepState, 1147 UINT8 *Slp_TypA, 1148 UINT8 *Slp_TypB)) 1149 1150 ACPI_EXTERNAL_RETURN_STATUS ( 1151 ACPI_STATUS 1152 AcpiEnterSleepStatePrep ( 1153 UINT8 SleepState)) 1154 1155 ACPI_EXTERNAL_RETURN_STATUS ( 1156 ACPI_STATUS 1157 AcpiEnterSleepState ( 1158 UINT8 SleepState)) 1159 1160 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1161 ACPI_STATUS 1162 AcpiEnterSleepStateS4bios ( 1163 void)) 1164 1165 ACPI_EXTERNAL_RETURN_STATUS ( 1166 ACPI_STATUS 1167 AcpiLeaveSleepStatePrep ( 1168 UINT8 SleepState)) 1169 1170 ACPI_EXTERNAL_RETURN_STATUS ( 1171 ACPI_STATUS 1172 AcpiLeaveSleepState ( 1173 UINT8 SleepState)) 1174 1175 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1176 ACPI_STATUS 1177 AcpiSetFirmwareWakingVector ( 1178 ACPI_PHYSICAL_ADDRESS PhysicalAddress, 1179 ACPI_PHYSICAL_ADDRESS PhysicalAddress64)) 1180 1181 1182 /* 1183 * ACPI Timer interfaces 1184 */ 1185 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1186 ACPI_STATUS 1187 AcpiGetTimerResolution ( 1188 UINT32 *Resolution)) 1189 1190 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1191 ACPI_STATUS 1192 AcpiGetTimer ( 1193 UINT32 *Ticks)) 1194 1195 ACPI_HW_DEPENDENT_RETURN_STATUS ( 1196 ACPI_STATUS 1197 AcpiGetTimerDuration ( 1198 UINT32 StartTicks, 1199 UINT32 EndTicks, 1200 UINT32 *TimeElapsed)) 1201 1202 1203 /* 1204 * Error/Warning output 1205 */ 1206 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1207 ACPI_PRINTF_LIKE(3) 1208 void ACPI_INTERNAL_VAR_XFACE 1209 AcpiError ( 1210 const char *ModuleName, 1211 UINT32 LineNumber, 1212 const char *Format, 1213 ...)) 1214 1215 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1216 ACPI_PRINTF_LIKE(4) 1217 void ACPI_INTERNAL_VAR_XFACE 1218 AcpiException ( 1219 const char *ModuleName, 1220 UINT32 LineNumber, 1221 ACPI_STATUS Status, 1222 const char *Format, 1223 ...)) 1224 1225 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1226 ACPI_PRINTF_LIKE(3) 1227 void ACPI_INTERNAL_VAR_XFACE 1228 AcpiWarning ( 1229 const char *ModuleName, 1230 UINT32 LineNumber, 1231 const char *Format, 1232 ...)) 1233 1234 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1235 ACPI_PRINTF_LIKE(1) 1236 void ACPI_INTERNAL_VAR_XFACE 1237 AcpiInfo ( 1238 const char *Format, 1239 ...)) 1240 1241 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1242 ACPI_PRINTF_LIKE(3) 1243 void ACPI_INTERNAL_VAR_XFACE 1244 AcpiBiosError ( 1245 const char *ModuleName, 1246 UINT32 LineNumber, 1247 const char *Format, 1248 ...)) 1249 1250 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1251 ACPI_PRINTF_LIKE(4) 1252 void ACPI_INTERNAL_VAR_XFACE 1253 AcpiBiosException ( 1254 const char *ModuleName, 1255 UINT32 LineNumber, 1256 ACPI_STATUS Status, 1257 const char *Format, 1258 ...)) 1259 1260 ACPI_MSG_DEPENDENT_RETURN_VOID ( 1261 ACPI_PRINTF_LIKE(3) 1262 void ACPI_INTERNAL_VAR_XFACE 1263 AcpiBiosWarning ( 1264 const char *ModuleName, 1265 UINT32 LineNumber, 1266 const char *Format, 1267 ...)) 1268 1269 1270 /* 1271 * Debug output 1272 */ 1273 ACPI_DBG_DEPENDENT_RETURN_VOID ( 1274 ACPI_PRINTF_LIKE(6) 1275 void ACPI_INTERNAL_VAR_XFACE 1276 AcpiDebugPrint ( 1277 UINT32 RequestedDebugLevel, 1278 UINT32 LineNumber, 1279 const char *FunctionName, 1280 const char *ModuleName, 1281 UINT32 ComponentId, 1282 const char *Format, 1283 ...)) 1284 1285 ACPI_DBG_DEPENDENT_RETURN_VOID ( 1286 ACPI_PRINTF_LIKE(6) 1287 void ACPI_INTERNAL_VAR_XFACE 1288 AcpiDebugPrintRaw ( 1289 UINT32 RequestedDebugLevel, 1290 UINT32 LineNumber, 1291 const char *FunctionName, 1292 const char *ModuleName, 1293 UINT32 ComponentId, 1294 const char *Format, 1295 ...)) 1296 1297 ACPI_DBG_DEPENDENT_RETURN_VOID ( 1298 void 1299 AcpiTracePoint ( 1300 ACPI_TRACE_EVENT_TYPE Type, 1301 BOOLEAN Begin, 1302 UINT8 *Aml, 1303 char *Pathname)) 1304 1305 ACPI_STATUS 1306 AcpiInitializeDebugger ( 1307 void); 1308 1309 void 1310 AcpiTerminateDebugger ( 1311 void); 1312 1313 void 1314 AcpiRunDebugger ( 1315 char *BatchBuffer); 1316 1317 void 1318 AcpiSetDebuggerThreadId ( 1319 ACPI_THREAD_ID ThreadId); 1320 1321 #endif /* __ACXFACE_H__ */ 1322