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