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