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