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