167754Smsmith/****************************************************************************** 267754Smsmith * 377424Smsmith * Name: acutils.h -- prototypes for the common (subsystem-wide) procedures 467754Smsmith * 567754Smsmith *****************************************************************************/ 667754Smsmith 7217365Sjkim/* 8245582Sjkim * Copyright (C) 2000 - 2013, Intel Corp. 970243Smsmith * All rights reserved. 1067754Smsmith * 11217365Sjkim * Redistribution and use in source and binary forms, with or without 12217365Sjkim * modification, are permitted provided that the following conditions 13217365Sjkim * are met: 14217365Sjkim * 1. Redistributions of source code must retain the above copyright 15217365Sjkim * notice, this list of conditions, and the following disclaimer, 16217365Sjkim * without modification. 17217365Sjkim * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18217365Sjkim * substantially similar to the "NO WARRANTY" disclaimer below 19217365Sjkim * ("Disclaimer") and any redistribution must be conditioned upon 20217365Sjkim * including a substantially similar Disclaimer requirement for further 21217365Sjkim * binary redistribution. 22217365Sjkim * 3. Neither the names of the above-listed copyright holders nor the names 23217365Sjkim * of any contributors may be used to endorse or promote products derived 24217365Sjkim * from this software without specific prior written permission. 2567754Smsmith * 26217365Sjkim * Alternatively, this software may be distributed under the terms of the 27217365Sjkim * GNU General Public License ("GPL") version 2 as published by the Free 28217365Sjkim * Software Foundation. 2967754Smsmith * 30217365Sjkim * NO WARRANTY 31217365Sjkim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32217365Sjkim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33217365Sjkim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34217365Sjkim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35217365Sjkim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36217365Sjkim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37217365Sjkim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38217365Sjkim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39217365Sjkim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40217365Sjkim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41217365Sjkim * POSSIBILITY OF SUCH DAMAGES. 42217365Sjkim */ 4367754Smsmith 4477424Smsmith#ifndef _ACUTILS_H 4577424Smsmith#define _ACUTILS_H 4667754Smsmith 4767754Smsmith 48167802Sjkimextern const UINT8 AcpiGbl_ResourceAmlSizes[]; 49228110Sjkimextern const UINT8 AcpiGbl_ResourceAmlSerialBusSizes[]; 50167802Sjkim 51167802Sjkim/* Strings used by the disassembler and debugger resource dump routines */ 52167802Sjkim 53167802Sjkim#if defined(ACPI_DISASSEMBLER) || defined (ACPI_DEBUGGER) 54167802Sjkim 55167802Sjkimextern const char *AcpiGbl_BmDecode[]; 56167802Sjkimextern const char *AcpiGbl_ConfigDecode[]; 57167802Sjkimextern const char *AcpiGbl_ConsumeDecode[]; 58167802Sjkimextern const char *AcpiGbl_DecDecode[]; 59167802Sjkimextern const char *AcpiGbl_HeDecode[]; 60167802Sjkimextern const char *AcpiGbl_IoDecode[]; 61167802Sjkimextern const char *AcpiGbl_LlDecode[]; 62167802Sjkimextern const char *AcpiGbl_MaxDecode[]; 63167802Sjkimextern const char *AcpiGbl_MemDecode[]; 64167802Sjkimextern const char *AcpiGbl_MinDecode[]; 65167802Sjkimextern const char *AcpiGbl_MtpDecode[]; 66167802Sjkimextern const char *AcpiGbl_RngDecode[]; 67167802Sjkimextern const char *AcpiGbl_RwDecode[]; 68167802Sjkimextern const char *AcpiGbl_ShrDecode[]; 69167802Sjkimextern const char *AcpiGbl_SizDecode[]; 70167802Sjkimextern const char *AcpiGbl_TrsDecode[]; 71167802Sjkimextern const char *AcpiGbl_TtpDecode[]; 72167802Sjkimextern const char *AcpiGbl_TypDecode[]; 73228110Sjkimextern const char *AcpiGbl_PpcDecode[]; 74228110Sjkimextern const char *AcpiGbl_IorDecode[]; 75228110Sjkimextern const char *AcpiGbl_DtsDecode[]; 76228110Sjkimextern const char *AcpiGbl_CtDecode[]; 77228110Sjkimextern const char *AcpiGbl_SbtDecode[]; 78228110Sjkimextern const char *AcpiGbl_AmDecode[]; 79228110Sjkimextern const char *AcpiGbl_SmDecode[]; 80228110Sjkimextern const char *AcpiGbl_WmDecode[]; 81228110Sjkimextern const char *AcpiGbl_CphDecode[]; 82228110Sjkimextern const char *AcpiGbl_CpoDecode[]; 83228110Sjkimextern const char *AcpiGbl_DpDecode[]; 84228110Sjkimextern const char *AcpiGbl_EdDecode[]; 85228110Sjkimextern const char *AcpiGbl_BpbDecode[]; 86228110Sjkimextern const char *AcpiGbl_SbDecode[]; 87228110Sjkimextern const char *AcpiGbl_FcDecode[]; 88228110Sjkimextern const char *AcpiGbl_PtDecode[]; 89167802Sjkim#endif 90167802Sjkim 91250838Sjkim/* 92250838Sjkim * For the iASL compiler case, the output is redirected to stderr so that 93250838Sjkim * any of the various ACPI errors and warnings do not appear in the output 94250838Sjkim * files, for either the compiler or disassembler portions of the tool. 95250838Sjkim */ 96250838Sjkim#ifdef ACPI_ASL_COMPILER 97250838Sjkim 98250838Sjkim#include <stdio.h> 99250838Sjkimextern FILE *AcpiGbl_OutputFile; 100250838Sjkim 101250838Sjkim#define ACPI_MSG_REDIRECT_BEGIN \ 102250838Sjkim FILE *OutputFile = AcpiGbl_OutputFile; \ 103250838Sjkim AcpiOsRedirectOutput (stderr); 104250838Sjkim 105250838Sjkim#define ACPI_MSG_REDIRECT_END \ 106250838Sjkim AcpiOsRedirectOutput (OutputFile); 107250838Sjkim 108250838Sjkim#else 109250838Sjkim/* 110250838Sjkim * non-iASL case - no redirection, nothing to do 111250838Sjkim */ 112250838Sjkim#define ACPI_MSG_REDIRECT_BEGIN 113250838Sjkim#define ACPI_MSG_REDIRECT_END 114250838Sjkim#endif 115250838Sjkim 116250838Sjkim/* 117250838Sjkim * Common error message prefixes 118250838Sjkim */ 119250838Sjkim#define ACPI_MSG_ERROR "ACPI Error: " 120250838Sjkim#define ACPI_MSG_EXCEPTION "ACPI Exception: " 121250838Sjkim#define ACPI_MSG_WARNING "ACPI Warning: " 122250838Sjkim#define ACPI_MSG_INFO "ACPI: " 123250838Sjkim 124250838Sjkim#define ACPI_MSG_BIOS_ERROR "ACPI BIOS Error (bug): " 125250838Sjkim#define ACPI_MSG_BIOS_WARNING "ACPI BIOS Warning (bug): " 126250838Sjkim 127250838Sjkim/* 128250838Sjkim * Common message suffix 129250838Sjkim */ 130250838Sjkim#define ACPI_MSG_SUFFIX \ 131250838Sjkim AcpiOsPrintf (" (%8.8X/%s-%u)\n", ACPI_CA_VERSION, ModuleName, LineNumber) 132250838Sjkim 133250838Sjkim 134167802Sjkim/* Types for Resource descriptor entries */ 135167802Sjkim 136167802Sjkim#define ACPI_INVALID_RESOURCE 0 137167802Sjkim#define ACPI_FIXED_LENGTH 1 138167802Sjkim#define ACPI_VARIABLE_LENGTH 2 139167802Sjkim#define ACPI_SMALL_VARIABLE_LENGTH 3 140167802Sjkim 14173561Smsmithtypedef 142167802SjkimACPI_STATUS (*ACPI_WALK_AML_CALLBACK) ( 143167802Sjkim UINT8 *Aml, 144167802Sjkim UINT32 Length, 145167802Sjkim UINT32 Offset, 146167802Sjkim UINT8 ResourceIndex, 147245582Sjkim void **Context); 148167802Sjkim 149167802Sjkimtypedef 15073561SmsmithACPI_STATUS (*ACPI_PKG_CALLBACK) ( 15173561Smsmith UINT8 ObjectType, 15273561Smsmith ACPI_OPERAND_OBJECT *SourceObject, 15373561Smsmith ACPI_GENERIC_STATE *State, 15473561Smsmith void *Context); 15573561Smsmith 15673561Smsmithtypedef struct acpi_pkg_info 15773561Smsmith{ 15873561Smsmith UINT8 *FreeSpace; 15991116Smsmith ACPI_SIZE Length; 16073561Smsmith UINT32 ObjectSpace; 16173561Smsmith UINT32 NumPackages; 162114237Snjl 16373561Smsmith} ACPI_PKG_INFO; 16473561Smsmith 165249112Sjkim/* Object reference counts */ 166249112Sjkim 16767754Smsmith#define REF_INCREMENT (UINT16) 0 16867754Smsmith#define REF_DECREMENT (UINT16) 1 16967754Smsmith 17077424Smsmith/* AcpiUtDumpBuffer */ 17167754Smsmith 17267754Smsmith#define DB_BYTE_DISPLAY 1 17367754Smsmith#define DB_WORD_DISPLAY 2 17467754Smsmith#define DB_DWORD_DISPLAY 4 17567754Smsmith#define DB_QWORD_DISPLAY 8 17667754Smsmith 17767754Smsmith/* 178151937Sjkim * utglobal - Global data structures and procedures 17967754Smsmith */ 180193267SjkimACPI_STATUS 181151937SjkimAcpiUtInitGlobals ( 18267754Smsmith void); 18367754Smsmith 184102550Siwasaki#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) 18569746Smsmith 186114237Snjlchar * 18777424SmsmithAcpiUtGetMutexName ( 18867754Smsmith UINT32 MutexId); 18967754Smsmith 190193267Sjkimconst char * 191193267SjkimAcpiUtGetNotifyName ( 192193267Sjkim UINT32 NotifyValue); 193193267Sjkim 194100966Siwasaki#endif 195100966Siwasaki 196114237Snjlchar * 19777424SmsmithAcpiUtGetTypeName ( 19891116Smsmith ACPI_OBJECT_TYPE Type); 19967754Smsmith 200114237Snjlchar * 201123315SnjlAcpiUtGetNodeName ( 202123315Snjl void *Object); 203123315Snjl 204123315Snjlchar * 205123315SnjlAcpiUtGetDescriptorName ( 206123315Snjl void *Object); 207123315Snjl 208193267Sjkimconst char * 209193267SjkimAcpiUtGetReferenceName ( 210193267Sjkim ACPI_OPERAND_OBJECT *Object); 211193267Sjkim 212123315Snjlchar * 21399679SiwasakiAcpiUtGetObjectTypeName ( 21499679Siwasaki ACPI_OPERAND_OBJECT *ObjDesc); 21599679Siwasaki 216114237Snjlchar * 21777424SmsmithAcpiUtGetRegionName ( 21869746Smsmith UINT8 SpaceId); 21969746Smsmith 220114237Snjlchar * 22191116SmsmithAcpiUtGetEventName ( 22291116Smsmith UINT32 EventId); 22369746Smsmith 22499679Siwasakichar 22582367SmsmithAcpiUtHexToAsciiChar ( 226202771Sjkim UINT64 Integer, 22782367Smsmith UINT32 Position); 22882367Smsmith 22967754SmsmithBOOLEAN 23077424SmsmithAcpiUtValidObjectType ( 23191116Smsmith ACPI_OBJECT_TYPE Type); 23267754Smsmith 23367754Smsmith 234151937Sjkim/* 235151937Sjkim * utinit - miscellaneous initialization and shutdown 236151937Sjkim */ 237151937SjkimACPI_STATUS 238151937SjkimAcpiUtHardwareInitialize ( 239151937Sjkim void); 24067754Smsmith 241151937Sjkimvoid 242151937SjkimAcpiUtSubsystemShutdown ( 243151937Sjkim void); 244151937Sjkim 245151937Sjkim 24667754Smsmith/* 247151937Sjkim * utclib - Local implementations of C library functions 24867754Smsmith */ 24971867Smsmith#ifndef ACPI_USE_SYSTEM_CLIBRARY 25071867Smsmith 251104470SiwasakiACPI_SIZE 25277424SmsmithAcpiUtStrlen ( 253114237Snjl const char *String); 25467754Smsmith 255114237Snjlchar * 25677424SmsmithAcpiUtStrcpy ( 257114237Snjl char *DstString, 258114237Snjl const char *SrcString); 25967754Smsmith 260114237Snjlchar * 26177424SmsmithAcpiUtStrncpy ( 262114237Snjl char *DstString, 263114237Snjl const char *SrcString, 264104470Siwasaki ACPI_SIZE Count); 26567754Smsmith 26699679Siwasakiint 267138287SmarksAcpiUtMemcmp ( 268138287Smarks const char *Buffer1, 269138287Smarks const char *Buffer2, 270138287Smarks ACPI_SIZE Count); 271138287Smarks 272138287Smarksint 27377424SmsmithAcpiUtStrncmp ( 274114237Snjl const char *String1, 275114237Snjl const char *String2, 276104470Siwasaki ACPI_SIZE Count); 27767754Smsmith 278104470Siwasakiint 27977424SmsmithAcpiUtStrcmp ( 280114237Snjl const char *String1, 281114237Snjl const char *String2); 28267754Smsmith 283114237Snjlchar * 28477424SmsmithAcpiUtStrcat ( 285114237Snjl char *DstString, 286114237Snjl const char *SrcString); 28767754Smsmith 288114237Snjlchar * 28977424SmsmithAcpiUtStrncat ( 290114237Snjl char *DstString, 291114237Snjl const char *SrcString, 292104470Siwasaki ACPI_SIZE Count); 29367754Smsmith 29467754SmsmithUINT32 29577424SmsmithAcpiUtStrtoul ( 296114237Snjl const char *String, 297114237Snjl char **Terminator, 29877424Smsmith UINT32 Base); 29967754Smsmith 300114237Snjlchar * 30177424SmsmithAcpiUtStrstr ( 302114237Snjl char *String1, 303114237Snjl char *String2); 30467754Smsmith 30567754Smsmithvoid * 30677424SmsmithAcpiUtMemcpy ( 30767754Smsmith void *Dest, 30867754Smsmith const void *Src, 309104470Siwasaki ACPI_SIZE Count); 31067754Smsmith 31167754Smsmithvoid * 31277424SmsmithAcpiUtMemset ( 31367754Smsmith void *Dest, 314193267Sjkim UINT8 Value, 315104470Siwasaki ACPI_SIZE Count); 31667754Smsmith 31799679Siwasakiint 31877424SmsmithAcpiUtToUpper ( 31999679Siwasaki int c); 32067754Smsmith 32199679Siwasakiint 32277424SmsmithAcpiUtToLower ( 32399679Siwasaki int c); 32467754Smsmith 32599679Siwasakiextern const UINT8 _acpi_ctype[]; 32699679Siwasaki 32799679Siwasaki#define _ACPI_XA 0x00 /* extra alphabetic - not supported */ 32899679Siwasaki#define _ACPI_XS 0x40 /* extra space */ 32999679Siwasaki#define _ACPI_BB 0x00 /* BEL, BS, etc. - not supported */ 33099679Siwasaki#define _ACPI_CN 0x20 /* CR, FF, HT, NL, VT */ 33199679Siwasaki#define _ACPI_DI 0x04 /* '0'-'9' */ 33299679Siwasaki#define _ACPI_LO 0x02 /* 'a'-'z' */ 33399679Siwasaki#define _ACPI_PU 0x10 /* punctuation */ 33499679Siwasaki#define _ACPI_SP 0x08 /* space */ 33599679Siwasaki#define _ACPI_UP 0x01 /* 'A'-'Z' */ 33699679Siwasaki#define _ACPI_XD 0x80 /* '0'-'9', 'A'-'F', 'a'-'f' */ 33799679Siwasaki 33899679Siwasaki#define ACPI_IS_DIGIT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_DI)) 33999679Siwasaki#define ACPI_IS_SPACE(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_SP)) 34099679Siwasaki#define ACPI_IS_XDIGIT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_XD)) 34199679Siwasaki#define ACPI_IS_UPPER(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_UP)) 34299679Siwasaki#define ACPI_IS_LOWER(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO)) 343100966Siwasaki#define ACPI_IS_PRINT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP | _ACPI_DI | _ACPI_SP | _ACPI_PU)) 344100966Siwasaki#define ACPI_IS_ALPHA(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP)) 34599679Siwasaki 346193267Sjkim#endif /* !ACPI_USE_SYSTEM_CLIBRARY */ 34767754Smsmith 348193267Sjkim#define ACPI_IS_ASCII(c) ((c) < 0x80) 349151937Sjkim 350193267Sjkim 35167754Smsmith/* 352151937Sjkim * utcopy - Object construction and conversion interfaces 35367754Smsmith */ 35467754SmsmithACPI_STATUS 35577424SmsmithAcpiUtBuildSimpleObject( 35667754Smsmith ACPI_OPERAND_OBJECT *Obj, 35767754Smsmith ACPI_OBJECT *UserObj, 35867754Smsmith UINT8 *DataSpace, 35967754Smsmith UINT32 *BufferSpaceUsed); 36067754Smsmith 36167754SmsmithACPI_STATUS 36277424SmsmithAcpiUtBuildPackageObject ( 36367754Smsmith ACPI_OPERAND_OBJECT *Obj, 36467754Smsmith UINT8 *Buffer, 36567754Smsmith UINT32 *SpaceUsed); 36667754Smsmith 36767754SmsmithACPI_STATUS 36877424SmsmithAcpiUtCopyIobjectToEobject ( 36967754Smsmith ACPI_OPERAND_OBJECT *Obj, 37067754Smsmith ACPI_BUFFER *RetBuffer); 37167754Smsmith 37267754SmsmithACPI_STATUS 37377424SmsmithAcpiUtCopyEobjectToIobject ( 37467754Smsmith ACPI_OBJECT *Obj, 37584491Smsmith ACPI_OPERAND_OBJECT **InternalObj); 37667754Smsmith 37767754SmsmithACPI_STATUS 37877424SmsmithAcpiUtCopyISimpleToIsimple ( 37967754Smsmith ACPI_OPERAND_OBJECT *SourceObj, 38067754Smsmith ACPI_OPERAND_OBJECT *DestObj); 38167754Smsmith 38267754SmsmithACPI_STATUS 38391116SmsmithAcpiUtCopyIobjectToIobject ( 38491116Smsmith ACPI_OPERAND_OBJECT *SourceDesc, 38591116Smsmith ACPI_OPERAND_OBJECT **DestDesc, 38691116Smsmith ACPI_WALK_STATE *WalkState); 38791116Smsmith 38891116Smsmith 38967754Smsmith/* 390151937Sjkim * utcreate - Object creation 39167754Smsmith */ 39267754SmsmithACPI_STATUS 39377424SmsmithAcpiUtUpdateObjectReference ( 39467754Smsmith ACPI_OPERAND_OBJECT *Object, 39567754Smsmith UINT16 Action); 39667754Smsmith 39767754Smsmith 39867754Smsmith/* 399151937Sjkim * utdebug - Debug interfaces 40067754Smsmith */ 40183174Smsmithvoid 40283174SmsmithAcpiUtInitStackPtrTrace ( 40367754Smsmith void); 40467754Smsmith 40567754Smsmithvoid 40683174SmsmithAcpiUtTrackStackPtr ( 40783174Smsmith void); 40867754Smsmith 40967754Smsmithvoid 41083174SmsmithAcpiUtTrace ( 41167754Smsmith UINT32 LineNumber, 412151937Sjkim const char *FunctionName, 413193267Sjkim const char *ModuleName, 414151937Sjkim UINT32 ComponentId); 41567754Smsmith 41667754Smsmithvoid 41783174SmsmithAcpiUtTracePtr ( 41867754Smsmith UINT32 LineNumber, 419151937Sjkim const char *FunctionName, 420193267Sjkim const char *ModuleName, 421151937Sjkim UINT32 ComponentId, 42267754Smsmith void *Pointer); 42367754Smsmith 42467754Smsmithvoid 42583174SmsmithAcpiUtTraceU32 ( 42667754Smsmith UINT32 LineNumber, 427151937Sjkim const char *FunctionName, 428193267Sjkim const char *ModuleName, 429151937Sjkim UINT32 ComponentId, 43067754Smsmith UINT32 Integer); 43167754Smsmith 43267754Smsmithvoid 43383174SmsmithAcpiUtTraceStr ( 43467754Smsmith UINT32 LineNumber, 435151937Sjkim const char *FunctionName, 436193267Sjkim const char *ModuleName, 437151937Sjkim UINT32 ComponentId, 438114237Snjl char *String); 43967754Smsmith 44067754Smsmithvoid 44183174SmsmithAcpiUtExit ( 44267754Smsmith UINT32 LineNumber, 443151937Sjkim const char *FunctionName, 444193267Sjkim const char *ModuleName, 445151937Sjkim UINT32 ComponentId); 44667754Smsmith 44767754Smsmithvoid 44883174SmsmithAcpiUtStatusExit ( 44967754Smsmith UINT32 LineNumber, 450151937Sjkim const char *FunctionName, 451193267Sjkim const char *ModuleName, 452151937Sjkim UINT32 ComponentId, 45367754Smsmith ACPI_STATUS Status); 45467754Smsmith 45567754Smsmithvoid 45683174SmsmithAcpiUtValueExit ( 45767754Smsmith UINT32 LineNumber, 458151937Sjkim const char *FunctionName, 459193267Sjkim const char *ModuleName, 460151937Sjkim UINT32 ComponentId, 461202771Sjkim UINT64 Value); 46267754Smsmith 46367754Smsmithvoid 46483174SmsmithAcpiUtPtrExit ( 46567754Smsmith UINT32 LineNumber, 466151937Sjkim const char *FunctionName, 467193267Sjkim const char *ModuleName, 468151937Sjkim UINT32 ComponentId, 46967754Smsmith UINT8 *Ptr); 47067754Smsmith 47167754Smsmithvoid 472241973SjkimAcpiUtDebugDumpBuffer ( 473167802Sjkim UINT8 *Buffer, 474167802Sjkim UINT32 Count, 475167802Sjkim UINT32 Display, 476237412Sjkim UINT32 ComponentId); 47767754Smsmith 47867754Smsmithvoid 479241973SjkimAcpiUtDumpBuffer ( 480167802Sjkim UINT8 *Buffer, 481167802Sjkim UINT32 Count, 482241973Sjkim UINT32 Display, 483241973Sjkim UINT32 Offset); 484167802Sjkim 485167802Sjkimvoid 48683174SmsmithAcpiUtReportError ( 487114237Snjl char *ModuleName, 488167802Sjkim UINT32 LineNumber); 48967754Smsmith 49067754Smsmithvoid 491167802SjkimAcpiUtReportInfo ( 492114237Snjl char *ModuleName, 493167802Sjkim UINT32 LineNumber); 49467754Smsmith 49567754Smsmithvoid 496167802SjkimAcpiUtReportWarning ( 497167802Sjkim char *ModuleName, 498167802Sjkim UINT32 LineNumber); 49967754Smsmith 50067754Smsmith/* 501151937Sjkim * utdelete - Object deletion and reference counts 50267754Smsmith */ 503151937Sjkimvoid 504151937SjkimAcpiUtAddReference ( 505151937Sjkim ACPI_OPERAND_OBJECT *Object); 50667754Smsmith 50767754Smsmithvoid 508151937SjkimAcpiUtRemoveReference ( 50967754Smsmith ACPI_OPERAND_OBJECT *Object); 51067754Smsmith 51167754Smsmithvoid 51277424SmsmithAcpiUtDeleteInternalPackageObject ( 51367754Smsmith ACPI_OPERAND_OBJECT *Object); 51467754Smsmith 51567754Smsmithvoid 51677424SmsmithAcpiUtDeleteInternalSimpleObject ( 51767754Smsmith ACPI_OPERAND_OBJECT *Object); 51867754Smsmith 51999679Siwasakivoid 52077424SmsmithAcpiUtDeleteInternalObjectList ( 52167754Smsmith ACPI_OPERAND_OBJECT **ObjList); 52267754Smsmith 52367754Smsmith 52467754Smsmith/* 525151937Sjkim * uteval - object evaluation 52667754Smsmith */ 52767754SmsmithACPI_STATUS 528114237SnjlAcpiUtEvaluateObject ( 529114237Snjl ACPI_NAMESPACE_NODE *PrefixNode, 530114237Snjl char *Path, 531114237Snjl UINT32 ExpectedReturnBtypes, 532114237Snjl ACPI_OPERAND_OBJECT **ReturnDesc); 533114237Snjl 534114237SnjlACPI_STATUS 53577424SmsmithAcpiUtEvaluateNumericObject ( 536114237Snjl char *ObjectName, 53767754Smsmith ACPI_NAMESPACE_NODE *DeviceNode, 538202771Sjkim UINT64 *Value); 53967754Smsmith 54067754SmsmithACPI_STATUS 541197104SjkimAcpiUtExecute_STA ( 54267754Smsmith ACPI_NAMESPACE_NODE *DeviceNode, 543197104Sjkim UINT32 *StatusFlags); 54467754Smsmith 54567754SmsmithACPI_STATUS 546197104SjkimAcpiUtExecutePowerMethods ( 54787031Smsmith ACPI_NAMESPACE_NODE *DeviceNode, 548197104Sjkim const char **MethodNames, 549197104Sjkim UINT8 MethodCount, 550197104Sjkim UINT8 *OutValues); 55187031Smsmith 552197104Sjkim 553197104Sjkim/* 554197104Sjkim * utids - device ID support 555197104Sjkim */ 55687031SmsmithACPI_STATUS 557197104SjkimAcpiUtExecute_HID ( 55867754Smsmith ACPI_NAMESPACE_NODE *DeviceNode, 559241973Sjkim ACPI_PNP_DEVICE_ID **ReturnId); 56067754Smsmith 56167754SmsmithACPI_STATUS 56277424SmsmithAcpiUtExecute_UID ( 56367754Smsmith ACPI_NAMESPACE_NODE *DeviceNode, 564241973Sjkim ACPI_PNP_DEVICE_ID **ReturnId); 56567754Smsmith 566126372SnjlACPI_STATUS 567241973SjkimAcpiUtExecute_SUB ( 568241973Sjkim ACPI_NAMESPACE_NODE *DeviceNode, 569241973Sjkim ACPI_PNP_DEVICE_ID **ReturnId); 570241973Sjkim 571241973SjkimACPI_STATUS 572197104SjkimAcpiUtExecute_CID ( 573126372Snjl ACPI_NAMESPACE_NODE *DeviceNode, 574241973Sjkim ACPI_PNP_DEVICE_ID_LIST **ReturnCidList); 57567754Smsmith 576197104Sjkim 577193267Sjkim/* 578193267Sjkim * utlock - reader/writer locks 579193267Sjkim */ 580193267SjkimACPI_STATUS 581193267SjkimAcpiUtCreateRwLock ( 582193267Sjkim ACPI_RW_LOCK *Lock); 58367754Smsmith 584193267Sjkimvoid 585193267SjkimAcpiUtDeleteRwLock ( 586193267Sjkim ACPI_RW_LOCK *Lock); 587193267Sjkim 588193267SjkimACPI_STATUS 589193267SjkimAcpiUtAcquireReadLock ( 590193267Sjkim ACPI_RW_LOCK *Lock); 591193267Sjkim 592193267SjkimACPI_STATUS 593193267SjkimAcpiUtReleaseReadLock ( 594193267Sjkim ACPI_RW_LOCK *Lock); 595193267Sjkim 596193267SjkimACPI_STATUS 597193267SjkimAcpiUtAcquireWriteLock ( 598193267Sjkim ACPI_RW_LOCK *Lock); 599193267Sjkim 600193267Sjkimvoid 601193267SjkimAcpiUtReleaseWriteLock ( 602193267Sjkim ACPI_RW_LOCK *Lock); 603193267Sjkim 604193267Sjkim 60567754Smsmith/* 606151937Sjkim * utobject - internal object create/delete/cache routines 60767754Smsmith */ 60883174SmsmithACPI_OPERAND_OBJECT * 60983174SmsmithAcpiUtCreateInternalObjectDbg ( 610193267Sjkim const char *ModuleName, 61183174Smsmith UINT32 LineNumber, 61283174Smsmith UINT32 ComponentId, 61391116Smsmith ACPI_OBJECT_TYPE Type); 61483174Smsmith 61567754Smsmithvoid * 61683174SmsmithAcpiUtAllocateObjectDescDbg ( 617193267Sjkim const char *ModuleName, 61867754Smsmith UINT32 LineNumber, 61967754Smsmith UINT32 ComponentId); 62067754Smsmith 621151937Sjkim#define AcpiUtCreateInternalObject(t) AcpiUtCreateInternalObjectDbg (_AcpiModuleName,__LINE__,_COMPONENT,t) 622151937Sjkim#define AcpiUtAllocateObjectDesc() AcpiUtAllocateObjectDescDbg (_AcpiModuleName,__LINE__,_COMPONENT) 62367754Smsmith 62467754Smsmithvoid 62577424SmsmithAcpiUtDeleteObjectDesc ( 62667754Smsmith ACPI_OPERAND_OBJECT *Object); 62767754Smsmith 62867754SmsmithBOOLEAN 62977424SmsmithAcpiUtValidInternalObject ( 63067754Smsmith void *Object); 63167754Smsmith 632107325SiwasakiACPI_OPERAND_OBJECT * 633193267SjkimAcpiUtCreatePackageObject ( 634193267Sjkim UINT32 Count); 635193267Sjkim 636193267SjkimACPI_OPERAND_OBJECT * 637199337SjkimAcpiUtCreateIntegerObject ( 638199337Sjkim UINT64 Value); 639199337Sjkim 640199337SjkimACPI_OPERAND_OBJECT * 641107325SiwasakiAcpiUtCreateBufferObject ( 642107325Siwasaki ACPI_SIZE BufferSize); 64367754Smsmith 644138287SmarksACPI_OPERAND_OBJECT * 645138287SmarksAcpiUtCreateStringObject ( 646138287Smarks ACPI_SIZE StringSize); 647107325Siwasaki 64867754SmsmithACPI_STATUS 64977424SmsmithAcpiUtGetObjectSize( 65067754Smsmith ACPI_OPERAND_OBJECT *Obj, 65191116Smsmith ACPI_SIZE *ObjLength); 65267754Smsmith 65367754Smsmith 65467754Smsmith/* 655210976Sjkim * utosi - Support for the _OSI predefined control method 656210976Sjkim */ 657210976SjkimACPI_STATUS 658210976SjkimAcpiUtInitializeInterfaces ( 659210976Sjkim void); 660210976Sjkim 661249112SjkimACPI_STATUS 662210976SjkimAcpiUtInterfaceTerminate ( 663210976Sjkim void); 664210976Sjkim 665210976SjkimACPI_STATUS 666210976SjkimAcpiUtInstallInterface ( 667210976Sjkim ACPI_STRING InterfaceName); 668210976Sjkim 669210976SjkimACPI_STATUS 670210976SjkimAcpiUtRemoveInterface ( 671210976Sjkim ACPI_STRING InterfaceName); 672210976Sjkim 673253690SjkimACPI_STATUS 674253690SjkimAcpiUtUpdateInterfaces ( 675253690Sjkim UINT8 Action); 676253690Sjkim 677210976SjkimACPI_INTERFACE_INFO * 678210976SjkimAcpiUtGetInterface ( 679210976Sjkim ACPI_STRING InterfaceName); 680210976Sjkim 681210976SjkimACPI_STATUS 682210976SjkimAcpiUtOsiImplementation ( 683210976Sjkim ACPI_WALK_STATE *WalkState); 684210976Sjkim 685210976Sjkim 686210976Sjkim/* 687249112Sjkim * utpredef - support for predefined names 688249112Sjkim */ 689249112Sjkimconst ACPI_PREDEFINED_INFO * 690249112SjkimAcpiUtGetNextPredefinedMethod ( 691249112Sjkim const ACPI_PREDEFINED_INFO *ThisName); 692249112Sjkim 693249112Sjkimconst ACPI_PREDEFINED_INFO * 694249112SjkimAcpiUtMatchPredefinedMethod ( 695249112Sjkim char *Name); 696249112Sjkim 697249112Sjkimconst ACPI_PREDEFINED_INFO * 698249112SjkimAcpiUtMatchResourceName ( 699249112Sjkim char *Name); 700249112Sjkim 701249112Sjkimvoid 702249112SjkimAcpiUtDisplayPredefinedMethod ( 703249112Sjkim char *Buffer, 704249112Sjkim const ACPI_PREDEFINED_INFO *ThisName, 705249112Sjkim BOOLEAN MultiLine); 706249112Sjkim 707249112Sjkimvoid 708249112SjkimAcpiUtGetExpectedReturnTypes ( 709249112Sjkim char *Buffer, 710249112Sjkim UINT32 ExpectedBtypes); 711249112Sjkim 712249112SjkimUINT32 713249112SjkimAcpiUtGetResourceBitWidth ( 714249112Sjkim char *Buffer, 715249112Sjkim UINT16 Types); 716249112Sjkim 717249112Sjkim 718249112Sjkim/* 719151937Sjkim * utstate - Generic state creation/cache routines 72067754Smsmith */ 72167754Smsmithvoid 72277424SmsmithAcpiUtPushGenericState ( 72367754Smsmith ACPI_GENERIC_STATE **ListHead, 72467754Smsmith ACPI_GENERIC_STATE *State); 72567754Smsmith 72667754SmsmithACPI_GENERIC_STATE * 72777424SmsmithAcpiUtPopGenericState ( 72867754Smsmith ACPI_GENERIC_STATE **ListHead); 72967754Smsmith 73067754Smsmith 73167754SmsmithACPI_GENERIC_STATE * 73277424SmsmithAcpiUtCreateGenericState ( 73367754Smsmith void); 73467754Smsmith 73587031SmsmithACPI_THREAD_STATE * 73687031SmsmithAcpiUtCreateThreadState ( 73787031Smsmith void); 73887031Smsmith 73967754SmsmithACPI_GENERIC_STATE * 74077424SmsmithAcpiUtCreateUpdateState ( 74167754Smsmith ACPI_OPERAND_OBJECT *Object, 74267754Smsmith UINT16 Action); 74367754Smsmith 74473561SmsmithACPI_GENERIC_STATE * 74577424SmsmithAcpiUtCreatePkgState ( 74673561Smsmith void *InternalObject, 74773561Smsmith void *ExternalObject, 74873561Smsmith UINT16 Index); 74973561Smsmith 75067754SmsmithACPI_STATUS 75177424SmsmithAcpiUtCreateUpdateStateAndPush ( 75267754Smsmith ACPI_OPERAND_OBJECT *Object, 75367754Smsmith UINT16 Action, 75467754Smsmith ACPI_GENERIC_STATE **StateList); 75567754Smsmith 75673561SmsmithACPI_STATUS 75777424SmsmithAcpiUtCreatePkgStateAndPush ( 75873561Smsmith void *InternalObject, 75973561Smsmith void *ExternalObject, 76073561Smsmith UINT16 Index, 76173561Smsmith ACPI_GENERIC_STATE **StateList); 76273561Smsmith 76367754SmsmithACPI_GENERIC_STATE * 76477424SmsmithAcpiUtCreateControlState ( 76567754Smsmith void); 76667754Smsmith 76767754Smsmithvoid 76877424SmsmithAcpiUtDeleteGenericState ( 76967754Smsmith ACPI_GENERIC_STATE *State); 77067754Smsmith 77167754Smsmith 77267754Smsmith/* 773151937Sjkim * utmath 77467754Smsmith */ 77584491SmsmithACPI_STATUS 77684491SmsmithAcpiUtDivide ( 777202771Sjkim UINT64 InDividend, 778202771Sjkim UINT64 InDivisor, 779202771Sjkim UINT64 *OutQuotient, 780202771Sjkim UINT64 *OutRemainder); 78184491Smsmith 78284491SmsmithACPI_STATUS 78384491SmsmithAcpiUtShortDivide ( 784202771Sjkim UINT64 InDividend, 78584491Smsmith UINT32 Divisor, 786202771Sjkim UINT64 *OutQuotient, 78784491Smsmith UINT32 *OutRemainder); 78884491Smsmith 789246849Sjkim 790151937Sjkim/* 791151937Sjkim * utmisc 792151937Sjkim */ 793246849Sjkimconst ACPI_EXCEPTION_INFO * 794167802SjkimAcpiUtValidateException ( 795167802Sjkim ACPI_STATUS Status); 796167802Sjkim 797167802SjkimBOOLEAN 798197104SjkimAcpiUtIsPciRootBridge ( 799197104Sjkim char *Id); 800197104Sjkim 801197104SjkimBOOLEAN 802167802SjkimAcpiUtIsAmlTable ( 803167802Sjkim ACPI_TABLE_HEADER *Table); 804167802Sjkim 805151937SjkimACPI_STATUS 806151937SjkimAcpiUtWalkPackageTree ( 807151937Sjkim ACPI_OPERAND_OBJECT *SourceObject, 808151937Sjkim void *TargetObject, 809151937Sjkim ACPI_PKG_CALLBACK WalkCallback, 810151937Sjkim void *Context); 811151937Sjkim 812151937Sjkim 813138287Smarks/* Values for Base above (16=Hex, 10=Decimal) */ 814138287Smarks 815138287Smarks#define ACPI_ANY_BASE 0 816138287Smarks 817151937SjkimUINT32 81899679SiwasakiAcpiUtDwordByteSwap ( 81999679Siwasaki UINT32 Value); 82099679Siwasaki 82199679Siwasakivoid 82299679SiwasakiAcpiUtSetIntegerWidth ( 82399679Siwasaki UINT8 Revision); 82499679Siwasaki 825102550Siwasaki#ifdef ACPI_DEBUG_OUTPUT 82673561Smsmithvoid 82777424SmsmithAcpiUtDisplayInitPathname ( 828114237Snjl UINT8 Type, 829114237Snjl ACPI_NAMESPACE_NODE *ObjHandle, 83073561Smsmith char *Path); 83173561Smsmith#endif 83273561Smsmith 83373561Smsmith 83467754Smsmith/* 835245582Sjkim * utownerid - Support for Table/Method Owner IDs 836245582Sjkim */ 837245582SjkimACPI_STATUS 838245582SjkimAcpiUtAllocateOwnerId ( 839245582Sjkim ACPI_OWNER_ID *OwnerId); 840245582Sjkim 841245582Sjkimvoid 842245582SjkimAcpiUtReleaseOwnerId ( 843245582Sjkim ACPI_OWNER_ID *OwnerId); 844245582Sjkim 845245582Sjkim 846245582Sjkim/* 847167802Sjkim * utresrc 848167802Sjkim */ 849167802SjkimACPI_STATUS 850167802SjkimAcpiUtWalkAmlResources ( 851243347Sjkim ACPI_WALK_STATE *WalkState, 852167802Sjkim UINT8 *Aml, 853167802Sjkim ACPI_SIZE AmlLength, 854167802Sjkim ACPI_WALK_AML_CALLBACK UserFunction, 855245582Sjkim void **Context); 856167802Sjkim 857167802SjkimACPI_STATUS 858167802SjkimAcpiUtValidateResource ( 859243347Sjkim ACPI_WALK_STATE *WalkState, 860167802Sjkim void *Aml, 861167802Sjkim UINT8 *ReturnIndex); 862167802Sjkim 863167802SjkimUINT32 864167802SjkimAcpiUtGetDescriptorLength ( 865167802Sjkim void *Aml); 866167802Sjkim 867167802SjkimUINT16 868167802SjkimAcpiUtGetResourceLength ( 869167802Sjkim void *Aml); 870167802Sjkim 871167802SjkimUINT8 872167802SjkimAcpiUtGetResourceHeaderLength ( 873167802Sjkim void *Aml); 874167802Sjkim 875167802SjkimUINT8 876167802SjkimAcpiUtGetResourceType ( 877167802Sjkim void *Aml); 878167802Sjkim 879167802SjkimACPI_STATUS 880167802SjkimAcpiUtGetResourceEndTag ( 881167802Sjkim ACPI_OPERAND_OBJECT *ObjDesc, 882167802Sjkim UINT8 **EndTag); 883167802Sjkim 884167802Sjkim 885167802Sjkim/* 886245582Sjkim * utstring - String and character utilities 887245582Sjkim */ 888245582Sjkimvoid 889245582SjkimAcpiUtStrupr ( 890245582Sjkim char *SrcString); 891245582Sjkim 892245582Sjkimvoid 893245582SjkimAcpiUtStrlwr ( 894245582Sjkim char *SrcString); 895245582Sjkim 896245582Sjkimint 897245582SjkimAcpiUtStricmp ( 898245582Sjkim char *String1, 899245582Sjkim char *String2); 900245582Sjkim 901245582SjkimACPI_STATUS 902245582SjkimAcpiUtStrtoul64 ( 903245582Sjkim char *String, 904245582Sjkim UINT32 Base, 905245582Sjkim UINT64 *RetInteger); 906245582Sjkim 907245582Sjkimvoid 908245582SjkimAcpiUtPrintString ( 909245582Sjkim char *String, 910252279Sjkim UINT16 MaxLength); 911245582Sjkim 912245582Sjkimvoid 913245582SjkimUtConvertBackslashes ( 914245582Sjkim char *Pathname); 915245582Sjkim 916245582SjkimBOOLEAN 917245582SjkimAcpiUtValidAcpiName ( 918250838Sjkim char *Name); 919245582Sjkim 920245582SjkimBOOLEAN 921245582SjkimAcpiUtValidAcpiChar ( 922245582Sjkim char Character, 923245582Sjkim UINT32 Position); 924245582Sjkim 925245582Sjkimvoid 926245582SjkimAcpiUtRepairName ( 927245582Sjkim char *Name); 928245582Sjkim 929245582Sjkim 930245582Sjkim/* 931151937Sjkim * utmutex - mutex support 93267754Smsmith */ 933151937SjkimACPI_STATUS 934151937SjkimAcpiUtMutexInitialize ( 935151937Sjkim void); 93667754Smsmith 93782367Smsmithvoid 938151937SjkimAcpiUtMutexTerminate ( 939151937Sjkim void); 94082367Smsmith 941151937SjkimACPI_STATUS 942151937SjkimAcpiUtAcquireMutex ( 943151937Sjkim ACPI_MUTEX_HANDLE MutexId); 94482367Smsmith 94591116SmsmithACPI_STATUS 946151937SjkimAcpiUtReleaseMutex ( 947151937Sjkim ACPI_MUTEX_HANDLE MutexId); 948151937Sjkim 949151937Sjkim 950151937Sjkim/* 951151937Sjkim * utalloc - memory allocation and object caching 952151937Sjkim */ 953151937SjkimACPI_STATUS 954151937SjkimAcpiUtCreateCaches ( 955151937Sjkim void); 956151937Sjkim 957151937SjkimACPI_STATUS 958151937SjkimAcpiUtDeleteCaches ( 959151937Sjkim void); 960151937Sjkim 961151937SjkimACPI_STATUS 96291116SmsmithAcpiUtValidateBuffer ( 96391116Smsmith ACPI_BUFFER *Buffer); 96482367Smsmith 96591116SmsmithACPI_STATUS 96691116SmsmithAcpiUtInitializeBuffer ( 96791116Smsmith ACPI_BUFFER *Buffer, 96891116Smsmith ACPI_SIZE RequiredLength); 96982367Smsmith 97082367Smsmithvoid * 97180062SmsmithAcpiUtAllocate ( 97291116Smsmith ACPI_SIZE Size, 97367754Smsmith UINT32 Component, 974193267Sjkim const char *Module, 97567754Smsmith UINT32 Line); 97667754Smsmith 97767754Smsmithvoid * 978167802SjkimAcpiUtAllocateZeroed ( 97991116Smsmith ACPI_SIZE Size, 98067754Smsmith UINT32 Component, 981193267Sjkim const char *Module, 98267754Smsmith UINT32 Line); 98367754Smsmith 98491116Smsmith#ifdef ACPI_DBG_TRACK_ALLOCATIONS 98591116Smsmithvoid * 98691116SmsmithAcpiUtAllocateAndTrack ( 98791116Smsmith ACPI_SIZE Size, 98891116Smsmith UINT32 Component, 989193267Sjkim const char *Module, 99091116Smsmith UINT32 Line); 99191116Smsmith 99291116Smsmithvoid * 993167802SjkimAcpiUtAllocateZeroedAndTrack ( 99491116Smsmith ACPI_SIZE Size, 99591116Smsmith UINT32 Component, 996193267Sjkim const char *Module, 99791116Smsmith UINT32 Line); 99891116Smsmith 99967754Smsmithvoid 100091116SmsmithAcpiUtFreeAndTrack ( 100167754Smsmith void *Address, 100267754Smsmith UINT32 Component, 1003193267Sjkim const char *Module, 100467754Smsmith UINT32 Line); 100599679Siwasaki 100667754Smsmithvoid 100777424SmsmithAcpiUtDumpAllocationInfo ( 100867754Smsmith void); 100967754Smsmith 101067754Smsmithvoid 101184491SmsmithAcpiUtDumpAllocations ( 101267754Smsmith UINT32 Component, 1013193267Sjkim const char *Module); 1014167802Sjkim 1015167802SjkimACPI_STATUS 1016167802SjkimAcpiUtCreateList ( 1017167802Sjkim char *ListName, 1018167802Sjkim UINT16 ObjectSize, 1019167802Sjkim ACPI_MEMORY_LIST **ReturnCache); 1020167802Sjkim 1021212761Sjkim#endif /* ACPI_DBG_TRACK_ALLOCATIONS */ 1022167802Sjkim 1023229989Sjkim/* 1024229989Sjkim * utaddress - address range check 1025229989Sjkim */ 1026229989SjkimACPI_STATUS 1027229989SjkimAcpiUtAddAddressRange ( 1028229989Sjkim ACPI_ADR_SPACE_TYPE SpaceId, 1029229989Sjkim ACPI_PHYSICAL_ADDRESS Address, 1030229989Sjkim UINT32 Length, 1031229989Sjkim ACPI_NAMESPACE_NODE *RegionNode); 103267754Smsmith 1033229989Sjkimvoid 1034229989SjkimAcpiUtRemoveAddressRange ( 1035229989Sjkim ACPI_ADR_SPACE_TYPE SpaceId, 1036229989Sjkim ACPI_NAMESPACE_NODE *RegionNode); 1037229989Sjkim 1038229989SjkimUINT32 1039229989SjkimAcpiUtCheckAddressRange ( 1040229989Sjkim ACPI_ADR_SPACE_TYPE SpaceId, 1041229989Sjkim ACPI_PHYSICAL_ADDRESS Address, 1042229989Sjkim UINT32 Length, 1043229989Sjkim BOOLEAN Warn); 1044229989Sjkim 1045229989Sjkimvoid 1046229989SjkimAcpiUtDeleteAddressLists ( 1047229989Sjkim void); 1048229989Sjkim 1049212761Sjkim/* 1050212761Sjkim * utxferror - various error/warning output functions 1051212761Sjkim */ 1052212761Sjkimvoid ACPI_INTERNAL_VAR_XFACE 1053212761SjkimAcpiUtPredefinedWarning ( 1054212761Sjkim const char *ModuleName, 1055212761Sjkim UINT32 LineNumber, 1056212761Sjkim char *Pathname, 1057212761Sjkim UINT8 NodeFlags, 1058212761Sjkim const char *Format, 1059212761Sjkim ...); 1060212761Sjkim 1061212761Sjkimvoid ACPI_INTERNAL_VAR_XFACE 1062212761SjkimAcpiUtPredefinedInfo ( 1063212761Sjkim const char *ModuleName, 1064212761Sjkim UINT32 LineNumber, 1065212761Sjkim char *Pathname, 1066212761Sjkim UINT8 NodeFlags, 1067212761Sjkim const char *Format, 1068212761Sjkim ...); 1069212761Sjkim 1070249663Sjkimvoid ACPI_INTERNAL_VAR_XFACE 1071249663SjkimAcpiUtPredefinedBiosError ( 1072249663Sjkim const char *ModuleName, 1073249663Sjkim UINT32 LineNumber, 1074249663Sjkim char *Pathname, 1075249663Sjkim UINT8 NodeFlags, 1076249663Sjkim const char *Format, 1077249663Sjkim ...); 1078249663Sjkim 1079212761Sjkimvoid 1080212761SjkimAcpiUtNamespaceError ( 1081212761Sjkim const char *ModuleName, 1082212761Sjkim UINT32 LineNumber, 1083212761Sjkim const char *InternalName, 1084212761Sjkim ACPI_STATUS LookupStatus); 1085212761Sjkim 1086212761Sjkimvoid 1087212761SjkimAcpiUtMethodError ( 1088212761Sjkim const char *ModuleName, 1089212761Sjkim UINT32 LineNumber, 1090212761Sjkim const char *Message, 1091212761Sjkim ACPI_NAMESPACE_NODE *Node, 1092212761Sjkim const char *Path, 1093212761Sjkim ACPI_STATUS LookupStatus); 1094212761Sjkim 109577424Smsmith#endif /* _ACUTILS_H */ 1096