1 /****************************************************************************** 2 * 3 * Name: acpixf.h - External interfaces to the ACPI subsystem 4 * 5 *****************************************************************************/ 6 7 /* 8 * Copyright (C) 2000 - 2013, 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 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 44 45 #ifndef __ACXFACE_H__ 46 #define __ACXFACE_H__ 47 48 /* Current ACPICA subsystem version in YYYYMMDD format */ 49 50 #define ACPI_CA_VERSION 0x20130823 51 52 #include <contrib/dev/acpica/include/acconfig.h> 53 #include <contrib/dev/acpica/include/actypes.h> 54 #include <contrib/dev/acpica/include/actbl.h> 55 #include <contrib/dev/acpica/include/acbuffer.h> 56 57 /* 58 * Globals that are publically available 59 */ 60 extern UINT32 AcpiCurrentGpeCount; 61 extern ACPI_TABLE_FADT AcpiGbl_FADT; 62 extern BOOLEAN AcpiGbl_SystemAwakeAndRunning; 63 extern BOOLEAN AcpiGbl_ReducedHardware; /* ACPI 5.0 */ 64 extern UINT8 AcpiGbl_OsiData; 65 66 /* Runtime configuration of debug print levels */ 67 68 extern UINT32 AcpiDbgLevel; 69 extern UINT32 AcpiDbgLayer; 70 71 /* ACPICA runtime options */ 72 73 extern UINT8 AcpiGbl_EnableInterpreterSlack; 74 extern UINT8 AcpiGbl_AllMethodsSerialized; 75 extern UINT8 AcpiGbl_CreateOsiMethod; 76 extern UINT8 AcpiGbl_UseDefaultRegisterWidths; 77 extern ACPI_NAME AcpiGbl_TraceMethodName; 78 extern UINT32 AcpiGbl_TraceFlags; 79 extern UINT8 AcpiGbl_EnableAmlDebugObject; 80 extern UINT8 AcpiGbl_CopyDsdtLocally; 81 extern UINT8 AcpiGbl_TruncateIoAddresses; 82 extern UINT8 AcpiGbl_DisableAutoRepair; 83 extern UINT8 AcpiGbl_DisableSsdtTableLoad; 84 85 86 /* 87 * Hardware-reduced prototypes. All interfaces that use these macros will 88 * be configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag 89 * is set to TRUE. 90 */ 91 #if (!ACPI_REDUCED_HARDWARE) 92 #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \ 93 Prototype; 94 95 #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \ 96 Prototype; 97 98 #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \ 99 Prototype; 100 101 #else 102 #define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \ 103 static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);} 104 105 #define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \ 106 static ACPI_INLINE Prototype {return(AE_OK);} 107 108 #define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \ 109 static ACPI_INLINE Prototype {} 110 111 #endif /* !ACPI_REDUCED_HARDWARE */ 112 113 114 /* 115 * Initialization 116 */ 117 ACPI_STATUS 118 AcpiInitializeTables ( 119 ACPI_TABLE_DESC *InitialStorage, 120 UINT32 InitialTableCount, 121 BOOLEAN AllowResize); 122 123 ACPI_STATUS 124 AcpiInitializeSubsystem ( 125 void); 126 127 ACPI_STATUS 128 AcpiEnableSubsystem ( 129 UINT32 Flags); 130 131 ACPI_STATUS 132 AcpiInitializeObjects ( 133 UINT32 Flags); 134 135 ACPI_STATUS 136 AcpiTerminate ( 137 void); 138 139 140 /* 141 * Miscellaneous global interfaces 142 */ 143 ACPI_HW_DEPENDENT_RETURN_STATUS ( 144 ACPI_STATUS 145 AcpiEnable ( 146 void)) 147 148 ACPI_HW_DEPENDENT_RETURN_STATUS ( 149 ACPI_STATUS 150 AcpiDisable ( 151 void)) 152 153 ACPI_STATUS 154 AcpiSubsystemStatus ( 155 void); 156 157 ACPI_STATUS 158 AcpiGetSystemInfo ( 159 ACPI_BUFFER *RetBuffer); 160 161 ACPI_STATUS 162 AcpiGetStatistics ( 163 ACPI_STATISTICS *Stats); 164 165 const char * 166 AcpiFormatException ( 167 ACPI_STATUS Exception); 168 169 ACPI_STATUS 170 AcpiPurgeCachedObjects ( 171 void); 172 173 ACPI_STATUS 174 AcpiInstallInterface ( 175 ACPI_STRING InterfaceName); 176 177 ACPI_STATUS 178 AcpiRemoveInterface ( 179 ACPI_STRING InterfaceName); 180 181 ACPI_STATUS 182 AcpiUpdateInterfaces ( 183 UINT8 Action); 184 185 UINT32 186 AcpiCheckAddressRange ( 187 ACPI_ADR_SPACE_TYPE SpaceId, 188 ACPI_PHYSICAL_ADDRESS Address, 189 ACPI_SIZE Length, 190 BOOLEAN Warn); 191 192 ACPI_STATUS 193 AcpiDecodePldBuffer ( 194 UINT8 *InBuffer, 195 ACPI_SIZE Length, 196 ACPI_PLD_INFO **ReturnBuffer); 197 198 /* 199 * ACPI Memory management 200 */ 201 void * 202 AcpiAllocate ( 203 UINT32 Size); 204 205 void * 206 AcpiCallocate ( 207 UINT32 Size); 208 209 void 210 AcpiFree ( 211 void *Address); 212 213 214 /* 215 * ACPI table load/unload interfaces 216 */ 217 ACPI_STATUS 218 AcpiLoadTable ( 219 ACPI_TABLE_HEADER *Table); 220 221 ACPI_STATUS 222 AcpiUnloadParentTable ( 223 ACPI_HANDLE Object); 224 225 ACPI_STATUS 226 AcpiLoadTables ( 227 void); 228 229 230 /* 231 * ACPI table manipulation interfaces 232 */ 233 ACPI_STATUS 234 AcpiReallocateRootTable ( 235 void); 236 237 ACPI_STATUS 238 AcpiFindRootPointer ( 239 ACPI_SIZE *RsdpAddress); 240 241 ACPI_STATUS 242 AcpiGetTableHeader ( 243 ACPI_STRING Signature, 244 UINT32 Instance, 245 ACPI_TABLE_HEADER *OutTableHeader); 246 247 ACPI_STATUS 248 AcpiGetTable ( 249 ACPI_STRING Signature, 250 UINT32 Instance, 251 ACPI_TABLE_HEADER **OutTable); 252 253 ACPI_STATUS 254 AcpiGetTableByIndex ( 255 UINT32 TableIndex, 256 ACPI_TABLE_HEADER **OutTable); 257 258 ACPI_STATUS 259 AcpiInstallTableHandler ( 260 ACPI_TABLE_HANDLER Handler, 261 void *Context); 262 263 ACPI_STATUS 264 AcpiRemoveTableHandler ( 265 ACPI_TABLE_HANDLER Handler); 266 267 268 /* 269 * Namespace and name interfaces 270 */ 271 ACPI_STATUS 272 AcpiWalkNamespace ( 273 ACPI_OBJECT_TYPE Type, 274 ACPI_HANDLE StartObject, 275 UINT32 MaxDepth, 276 ACPI_WALK_CALLBACK DescendingCallback, 277 ACPI_WALK_CALLBACK AscendingCallback, 278 void *Context, 279 void **ReturnValue); 280 281 ACPI_STATUS 282 AcpiGetDevices ( 283 char *HID, 284 ACPI_WALK_CALLBACK UserFunction, 285 void *Context, 286 void **ReturnValue); 287 288 ACPI_STATUS 289 AcpiGetName ( 290 ACPI_HANDLE Object, 291 UINT32 NameType, 292 ACPI_BUFFER *RetPathPtr); 293 294 ACPI_STATUS 295 AcpiGetHandle ( 296 ACPI_HANDLE Parent, 297 ACPI_STRING Pathname, 298 ACPI_HANDLE *RetHandle); 299 300 ACPI_STATUS 301 AcpiAttachData ( 302 ACPI_HANDLE Object, 303 ACPI_OBJECT_HANDLER Handler, 304 void *Data); 305 306 ACPI_STATUS 307 AcpiDetachData ( 308 ACPI_HANDLE Object, 309 ACPI_OBJECT_HANDLER Handler); 310 311 ACPI_STATUS 312 AcpiGetData ( 313 ACPI_HANDLE Object, 314 ACPI_OBJECT_HANDLER Handler, 315 void **Data); 316 317 ACPI_STATUS 318 AcpiDebugTrace ( 319 char *Name, 320 UINT32 DebugLevel, 321 UINT32 DebugLayer, 322 UINT32 Flags); 323 324 325 /* 326 * Object manipulation and enumeration 327 */ 328 ACPI_STATUS 329 AcpiEvaluateObject ( 330 ACPI_HANDLE Object, 331 ACPI_STRING Pathname, 332 ACPI_OBJECT_LIST *ParameterObjects, 333 ACPI_BUFFER *ReturnObjectBuffer); 334 335 ACPI_STATUS 336 AcpiEvaluateObjectTyped ( 337 ACPI_HANDLE Object, 338 ACPI_STRING Pathname, 339 ACPI_OBJECT_LIST *ExternalParams, 340 ACPI_BUFFER *ReturnBuffer, 341 ACPI_OBJECT_TYPE ReturnType); 342 343 ACPI_STATUS 344 AcpiGetObjectInfo ( 345 ACPI_HANDLE Object, 346 ACPI_DEVICE_INFO **ReturnBuffer); 347 348 ACPI_STATUS 349 AcpiInstallMethod ( 350 UINT8 *Buffer); 351 352 ACPI_STATUS 353 AcpiGetNextObject ( 354 ACPI_OBJECT_TYPE Type, 355 ACPI_HANDLE Parent, 356 ACPI_HANDLE Child, 357 ACPI_HANDLE *OutHandle); 358 359 ACPI_STATUS 360 AcpiGetType ( 361 ACPI_HANDLE Object, 362 ACPI_OBJECT_TYPE *OutType); 363 364 ACPI_STATUS 365 AcpiGetParent ( 366 ACPI_HANDLE Object, 367 ACPI_HANDLE *OutHandle); 368 369 370 /* 371 * Handler interfaces 372 */ 373 ACPI_STATUS 374 AcpiInstallInitializationHandler ( 375 ACPI_INIT_HANDLER Handler, 376 UINT32 Function); 377 378 ACPI_HW_DEPENDENT_RETURN_STATUS ( 379 ACPI_STATUS 380 AcpiInstallSciHandler ( 381 ACPI_SCI_HANDLER Address, 382 void *Context)) 383 384 ACPI_HW_DEPENDENT_RETURN_STATUS ( 385 ACPI_STATUS 386 AcpiRemoveSciHandler ( 387 ACPI_SCI_HANDLER Address)) 388 389 ACPI_HW_DEPENDENT_RETURN_STATUS ( 390 ACPI_STATUS 391 AcpiInstallGlobalEventHandler ( 392 ACPI_GBL_EVENT_HANDLER Handler, 393 void *Context)) 394 395 ACPI_HW_DEPENDENT_RETURN_STATUS ( 396 ACPI_STATUS 397 AcpiInstallFixedEventHandler ( 398 UINT32 AcpiEvent, 399 ACPI_EVENT_HANDLER Handler, 400 void *Context)) 401 402 ACPI_HW_DEPENDENT_RETURN_STATUS ( 403 ACPI_STATUS 404 AcpiRemoveFixedEventHandler ( 405 UINT32 AcpiEvent, 406 ACPI_EVENT_HANDLER Handler)) 407 408 ACPI_HW_DEPENDENT_RETURN_STATUS ( 409 ACPI_STATUS 410 AcpiInstallGpeHandler ( 411 ACPI_HANDLE GpeDevice, 412 UINT32 GpeNumber, 413 UINT32 Type, 414 ACPI_GPE_HANDLER Address, 415 void *Context)) 416 417 ACPI_HW_DEPENDENT_RETURN_STATUS ( 418 ACPI_STATUS 419 AcpiRemoveGpeHandler ( 420 ACPI_HANDLE GpeDevice, 421 UINT32 GpeNumber, 422 ACPI_GPE_HANDLER Address)) 423 424 ACPI_STATUS 425 AcpiInstallNotifyHandler ( 426 ACPI_HANDLE Device, 427 UINT32 HandlerType, 428 ACPI_NOTIFY_HANDLER Handler, 429 void *Context); 430 431 ACPI_STATUS 432 AcpiRemoveNotifyHandler ( 433 ACPI_HANDLE Device, 434 UINT32 HandlerType, 435 ACPI_NOTIFY_HANDLER Handler); 436 437 ACPI_STATUS 438 AcpiInstallAddressSpaceHandler ( 439 ACPI_HANDLE Device, 440 ACPI_ADR_SPACE_TYPE SpaceId, 441 ACPI_ADR_SPACE_HANDLER Handler, 442 ACPI_ADR_SPACE_SETUP Setup, 443 void *Context); 444 445 ACPI_STATUS 446 AcpiRemoveAddressSpaceHandler ( 447 ACPI_HANDLE Device, 448 ACPI_ADR_SPACE_TYPE SpaceId, 449 ACPI_ADR_SPACE_HANDLER Handler); 450 451 ACPI_STATUS 452 AcpiInstallExceptionHandler ( 453 ACPI_EXCEPTION_HANDLER Handler); 454 455 ACPI_STATUS 456 AcpiInstallInterfaceHandler ( 457 ACPI_INTERFACE_HANDLER Handler); 458 459 460 /* 461 * Global Lock interfaces 462 */ 463 ACPI_HW_DEPENDENT_RETURN_STATUS ( 464 ACPI_STATUS 465 AcpiAcquireGlobalLock ( 466 UINT16 Timeout, 467 UINT32 *Handle)) 468 469 ACPI_HW_DEPENDENT_RETURN_STATUS ( 470 ACPI_STATUS 471 AcpiReleaseGlobalLock ( 472 UINT32 Handle)) 473 474 475 /* 476 * Interfaces to AML mutex objects 477 */ 478 ACPI_STATUS 479 AcpiAcquireMutex ( 480 ACPI_HANDLE Handle, 481 ACPI_STRING Pathname, 482 UINT16 Timeout); 483 484 ACPI_STATUS 485 AcpiReleaseMutex ( 486 ACPI_HANDLE Handle, 487 ACPI_STRING Pathname); 488 489 490 /* 491 * Fixed Event interfaces 492 */ 493 ACPI_HW_DEPENDENT_RETURN_STATUS ( 494 ACPI_STATUS 495 AcpiEnableEvent ( 496 UINT32 Event, 497 UINT32 Flags)) 498 499 ACPI_HW_DEPENDENT_RETURN_STATUS ( 500 ACPI_STATUS 501 AcpiDisableEvent ( 502 UINT32 Event, 503 UINT32 Flags)) 504 505 ACPI_HW_DEPENDENT_RETURN_STATUS ( 506 ACPI_STATUS 507 AcpiClearEvent ( 508 UINT32 Event)) 509 510 ACPI_HW_DEPENDENT_RETURN_STATUS ( 511 ACPI_STATUS 512 AcpiGetEventStatus ( 513 UINT32 Event, 514 ACPI_EVENT_STATUS *EventStatus)) 515 516 517 /* 518 * General Purpose Event (GPE) Interfaces 519 */ 520 ACPI_HW_DEPENDENT_RETURN_STATUS ( 521 ACPI_STATUS 522 AcpiUpdateAllGpes ( 523 void)) 524 525 ACPI_HW_DEPENDENT_RETURN_STATUS ( 526 ACPI_STATUS 527 AcpiEnableGpe ( 528 ACPI_HANDLE GpeDevice, 529 UINT32 GpeNumber)) 530 531 ACPI_HW_DEPENDENT_RETURN_STATUS ( 532 ACPI_STATUS 533 AcpiDisableGpe ( 534 ACPI_HANDLE GpeDevice, 535 UINT32 GpeNumber)) 536 537 ACPI_HW_DEPENDENT_RETURN_STATUS ( 538 ACPI_STATUS 539 AcpiClearGpe ( 540 ACPI_HANDLE GpeDevice, 541 UINT32 GpeNumber)) 542 543 ACPI_HW_DEPENDENT_RETURN_STATUS ( 544 ACPI_STATUS 545 AcpiSetGpe ( 546 ACPI_HANDLE GpeDevice, 547 UINT32 GpeNumber, 548 UINT8 Action)) 549 550 ACPI_HW_DEPENDENT_RETURN_STATUS ( 551 ACPI_STATUS 552 AcpiFinishGpe ( 553 ACPI_HANDLE GpeDevice, 554 UINT32 GpeNumber)) 555 556 ACPI_HW_DEPENDENT_RETURN_STATUS ( 557 ACPI_STATUS 558 AcpiSetupGpeForWake ( 559 ACPI_HANDLE ParentDevice, 560 ACPI_HANDLE GpeDevice, 561 UINT32 GpeNumber)) 562 563 ACPI_HW_DEPENDENT_RETURN_STATUS ( 564 ACPI_STATUS 565 AcpiSetGpeWakeMask ( 566 ACPI_HANDLE GpeDevice, 567 UINT32 GpeNumber, 568 UINT8 Action)) 569 570 ACPI_HW_DEPENDENT_RETURN_STATUS ( 571 ACPI_STATUS 572 AcpiGetGpeStatus ( 573 ACPI_HANDLE GpeDevice, 574 UINT32 GpeNumber, 575 ACPI_EVENT_STATUS *EventStatus)) 576 577 ACPI_HW_DEPENDENT_RETURN_STATUS ( 578 ACPI_STATUS 579 AcpiDisableAllGpes ( 580 void)) 581 582 ACPI_HW_DEPENDENT_RETURN_STATUS ( 583 ACPI_STATUS 584 AcpiEnableAllRuntimeGpes ( 585 void)) 586 587 ACPI_HW_DEPENDENT_RETURN_STATUS ( 588 ACPI_STATUS 589 AcpiGetGpeDevice ( 590 UINT32 GpeIndex, 591 ACPI_HANDLE *GpeDevice)) 592 593 ACPI_HW_DEPENDENT_RETURN_STATUS ( 594 ACPI_STATUS 595 AcpiInstallGpeBlock ( 596 ACPI_HANDLE GpeDevice, 597 ACPI_GENERIC_ADDRESS *GpeBlockAddress, 598 UINT32 RegisterCount, 599 UINT32 InterruptNumber)) 600 601 ACPI_HW_DEPENDENT_RETURN_STATUS ( 602 ACPI_STATUS 603 AcpiRemoveGpeBlock ( 604 ACPI_HANDLE GpeDevice)) 605 606 607 /* 608 * Resource interfaces 609 */ 610 typedef 611 ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) ( 612 ACPI_RESOURCE *Resource, 613 void *Context); 614 615 ACPI_STATUS 616 AcpiGetVendorResource ( 617 ACPI_HANDLE Device, 618 char *Name, 619 ACPI_VENDOR_UUID *Uuid, 620 ACPI_BUFFER *RetBuffer); 621 622 ACPI_STATUS 623 AcpiGetCurrentResources ( 624 ACPI_HANDLE Device, 625 ACPI_BUFFER *RetBuffer); 626 627 ACPI_STATUS 628 AcpiGetPossibleResources ( 629 ACPI_HANDLE Device, 630 ACPI_BUFFER *RetBuffer); 631 632 ACPI_STATUS 633 AcpiGetEventResources ( 634 ACPI_HANDLE DeviceHandle, 635 ACPI_BUFFER *RetBuffer); 636 637 ACPI_STATUS 638 AcpiWalkResourceBuffer ( 639 ACPI_BUFFER *Buffer, 640 ACPI_WALK_RESOURCE_CALLBACK UserFunction, 641 void *Context); 642 643 ACPI_STATUS 644 AcpiWalkResources ( 645 ACPI_HANDLE Device, 646 char *Name, 647 ACPI_WALK_RESOURCE_CALLBACK UserFunction, 648 void *Context); 649 650 ACPI_STATUS 651 AcpiSetCurrentResources ( 652 ACPI_HANDLE Device, 653 ACPI_BUFFER *InBuffer); 654 655 ACPI_STATUS 656 AcpiGetIrqRoutingTable ( 657 ACPI_HANDLE Device, 658 ACPI_BUFFER *RetBuffer); 659 660 ACPI_STATUS 661 AcpiResourceToAddress64 ( 662 ACPI_RESOURCE *Resource, 663 ACPI_RESOURCE_ADDRESS64 *Out); 664 665 ACPI_STATUS 666 AcpiBufferToResource ( 667 UINT8 *AmlBuffer, 668 UINT16 AmlBufferLength, 669 ACPI_RESOURCE **ResourcePtr); 670 671 672 /* 673 * Hardware (ACPI device) interfaces 674 */ 675 ACPI_STATUS 676 AcpiReset ( 677 void); 678 679 ACPI_STATUS 680 AcpiRead ( 681 UINT64 *Value, 682 ACPI_GENERIC_ADDRESS *Reg); 683 684 ACPI_STATUS 685 AcpiWrite ( 686 UINT64 Value, 687 ACPI_GENERIC_ADDRESS *Reg); 688 689 ACPI_HW_DEPENDENT_RETURN_STATUS ( 690 ACPI_STATUS 691 AcpiReadBitRegister ( 692 UINT32 RegisterId, 693 UINT32 *ReturnValue)) 694 695 ACPI_HW_DEPENDENT_RETURN_STATUS ( 696 ACPI_STATUS 697 AcpiWriteBitRegister ( 698 UINT32 RegisterId, 699 UINT32 Value)) 700 701 702 /* 703 * Sleep/Wake interfaces 704 */ 705 ACPI_STATUS 706 AcpiGetSleepTypeData ( 707 UINT8 SleepState, 708 UINT8 *Slp_TypA, 709 UINT8 *Slp_TypB); 710 711 ACPI_STATUS 712 AcpiEnterSleepStatePrep ( 713 UINT8 SleepState); 714 715 ACPI_STATUS 716 AcpiEnterSleepState ( 717 UINT8 SleepState); 718 719 ACPI_HW_DEPENDENT_RETURN_STATUS ( 720 ACPI_STATUS 721 AcpiEnterSleepStateS4bios ( 722 void)) 723 724 ACPI_STATUS 725 AcpiLeaveSleepStatePrep ( 726 UINT8 SleepState); 727 728 ACPI_STATUS 729 AcpiLeaveSleepState ( 730 UINT8 SleepState); 731 732 ACPI_HW_DEPENDENT_RETURN_STATUS ( 733 ACPI_STATUS 734 AcpiSetFirmwareWakingVector ( 735 UINT32 PhysicalAddress)) 736 737 #if ACPI_MACHINE_WIDTH == 64 738 ACPI_HW_DEPENDENT_RETURN_STATUS ( 739 ACPI_STATUS 740 AcpiSetFirmwareWakingVector64 ( 741 UINT64 PhysicalAddress)) 742 #endif 743 744 745 /* 746 * ACPI Timer interfaces 747 */ 748 ACPI_HW_DEPENDENT_RETURN_STATUS ( 749 ACPI_STATUS 750 AcpiGetTimerResolution ( 751 UINT32 *Resolution)) 752 753 ACPI_HW_DEPENDENT_RETURN_STATUS ( 754 ACPI_STATUS 755 AcpiGetTimer ( 756 UINT32 *Ticks)) 757 758 ACPI_HW_DEPENDENT_RETURN_STATUS ( 759 ACPI_STATUS 760 AcpiGetTimerDuration ( 761 UINT32 StartTicks, 762 UINT32 EndTicks, 763 UINT32 *TimeElapsed)) 764 765 766 /* 767 * Error/Warning output 768 */ 769 void ACPI_INTERNAL_VAR_XFACE 770 AcpiError ( 771 const char *ModuleName, 772 UINT32 LineNumber, 773 const char *Format, 774 ...) ACPI_PRINTF_LIKE(3); 775 776 void ACPI_INTERNAL_VAR_XFACE 777 AcpiException ( 778 const char *ModuleName, 779 UINT32 LineNumber, 780 ACPI_STATUS Status, 781 const char *Format, 782 ...) ACPI_PRINTF_LIKE(4); 783 784 void ACPI_INTERNAL_VAR_XFACE 785 AcpiWarning ( 786 const char *ModuleName, 787 UINT32 LineNumber, 788 const char *Format, 789 ...) ACPI_PRINTF_LIKE(3); 790 791 void ACPI_INTERNAL_VAR_XFACE 792 AcpiInfo ( 793 const char *ModuleName, 794 UINT32 LineNumber, 795 const char *Format, 796 ...) ACPI_PRINTF_LIKE(3); 797 798 void ACPI_INTERNAL_VAR_XFACE 799 AcpiBiosError ( 800 const char *ModuleName, 801 UINT32 LineNumber, 802 const char *Format, 803 ...) ACPI_PRINTF_LIKE(3); 804 805 void ACPI_INTERNAL_VAR_XFACE 806 AcpiBiosWarning ( 807 const char *ModuleName, 808 UINT32 LineNumber, 809 const char *Format, 810 ...) ACPI_PRINTF_LIKE(3); 811 812 813 /* 814 * Debug output 815 */ 816 #ifdef ACPI_DEBUG_OUTPUT 817 818 void ACPI_INTERNAL_VAR_XFACE 819 AcpiDebugPrint ( 820 UINT32 RequestedDebugLevel, 821 UINT32 LineNumber, 822 const char *FunctionName, 823 const char *ModuleName, 824 UINT32 ComponentId, 825 const char *Format, 826 ...) ACPI_PRINTF_LIKE(6); 827 828 void ACPI_INTERNAL_VAR_XFACE 829 AcpiDebugPrintRaw ( 830 UINT32 RequestedDebugLevel, 831 UINT32 LineNumber, 832 const char *FunctionName, 833 const char *ModuleName, 834 UINT32 ComponentId, 835 const char *Format, 836 ...) ACPI_PRINTF_LIKE(6); 837 #endif 838 839 #endif /* __ACXFACE_H__ */ 840