1a9f12690SJung-uk Kim /****************************************************************************** 2a9f12690SJung-uk Kim * 3a9f12690SJung-uk Kim * Name: acnamesp.h - Namespace subcomponent prototypes and defines 4a9f12690SJung-uk Kim * 5a9f12690SJung-uk Kim *****************************************************************************/ 6a9f12690SJung-uk Kim 7d244b227SJung-uk Kim /* 8ec3fc72fSJung-uk Kim * Copyright (C) 2000 - 2012, Intel Corp. 9a9f12690SJung-uk Kim * All rights reserved. 10a9f12690SJung-uk Kim * 11d244b227SJung-uk Kim * Redistribution and use in source and binary forms, with or without 12d244b227SJung-uk Kim * modification, are permitted provided that the following conditions 13d244b227SJung-uk Kim * are met: 14d244b227SJung-uk Kim * 1. Redistributions of source code must retain the above copyright 15d244b227SJung-uk Kim * notice, this list of conditions, and the following disclaimer, 16d244b227SJung-uk Kim * without modification. 17d244b227SJung-uk Kim * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18d244b227SJung-uk Kim * substantially similar to the "NO WARRANTY" disclaimer below 19d244b227SJung-uk Kim * ("Disclaimer") and any redistribution must be conditioned upon 20d244b227SJung-uk Kim * including a substantially similar Disclaimer requirement for further 21d244b227SJung-uk Kim * binary redistribution. 22d244b227SJung-uk Kim * 3. Neither the names of the above-listed copyright holders nor the names 23d244b227SJung-uk Kim * of any contributors may be used to endorse or promote products derived 24d244b227SJung-uk Kim * from this software without specific prior written permission. 25a9f12690SJung-uk Kim * 26d244b227SJung-uk Kim * Alternatively, this software may be distributed under the terms of the 27d244b227SJung-uk Kim * GNU General Public License ("GPL") version 2 as published by the Free 28d244b227SJung-uk Kim * Software Foundation. 29a9f12690SJung-uk Kim * 30d244b227SJung-uk Kim * NO WARRANTY 31d244b227SJung-uk Kim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32d244b227SJung-uk Kim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33d244b227SJung-uk Kim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34d244b227SJung-uk Kim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35d244b227SJung-uk Kim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36d244b227SJung-uk Kim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37d244b227SJung-uk Kim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38d244b227SJung-uk Kim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39d244b227SJung-uk Kim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40d244b227SJung-uk Kim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41d244b227SJung-uk Kim * POSSIBILITY OF SUCH DAMAGES. 42d244b227SJung-uk Kim */ 43a9f12690SJung-uk Kim 44a9f12690SJung-uk Kim #ifndef __ACNAMESP_H__ 45a9f12690SJung-uk Kim #define __ACNAMESP_H__ 46a9f12690SJung-uk Kim 47a9f12690SJung-uk Kim 48a9f12690SJung-uk Kim /* To search the entire name space, pass this as SearchBase */ 49a9f12690SJung-uk Kim 50a9f12690SJung-uk Kim #define ACPI_NS_ALL ((ACPI_HANDLE)0) 51a9f12690SJung-uk Kim 52a9f12690SJung-uk Kim /* 53a9f12690SJung-uk Kim * Elements of AcpiNsProperties are bit significant 54a9f12690SJung-uk Kim * and should be one-to-one with values of ACPI_OBJECT_TYPE 55a9f12690SJung-uk Kim */ 56a9f12690SJung-uk Kim #define ACPI_NS_NORMAL 0 57a9f12690SJung-uk Kim #define ACPI_NS_NEWSCOPE 1 /* a definition of this type opens a name scope */ 58a9f12690SJung-uk Kim #define ACPI_NS_LOCAL 2 /* suppress search of enclosing scopes */ 59a9f12690SJung-uk Kim 60a9f12690SJung-uk Kim /* Flags for AcpiNsLookup, AcpiNsSearchAndEnter */ 61a9f12690SJung-uk Kim 62a9f12690SJung-uk Kim #define ACPI_NS_NO_UPSEARCH 0 63a9f12690SJung-uk Kim #define ACPI_NS_SEARCH_PARENT 0x01 64a9f12690SJung-uk Kim #define ACPI_NS_DONT_OPEN_SCOPE 0x02 65a9f12690SJung-uk Kim #define ACPI_NS_NO_PEER_SEARCH 0x04 66a9f12690SJung-uk Kim #define ACPI_NS_ERROR_IF_FOUND 0x08 67a9f12690SJung-uk Kim #define ACPI_NS_PREFIX_IS_SCOPE 0x10 68a9f12690SJung-uk Kim #define ACPI_NS_EXTERNAL 0x20 69a9f12690SJung-uk Kim #define ACPI_NS_TEMPORARY 0x40 70a9f12690SJung-uk Kim 71a9f12690SJung-uk Kim /* Flags for AcpiNsWalkNamespace */ 72a9f12690SJung-uk Kim 73a9f12690SJung-uk Kim #define ACPI_NS_WALK_NO_UNLOCK 0 74a9f12690SJung-uk Kim #define ACPI_NS_WALK_UNLOCK 0x01 75a9f12690SJung-uk Kim #define ACPI_NS_WALK_TEMP_NODES 0x02 76a9f12690SJung-uk Kim 77d6dd1baeSJung-uk Kim /* Object is not a package element */ 78d6dd1baeSJung-uk Kim 79d6dd1baeSJung-uk Kim #define ACPI_NOT_PACKAGE_ELEMENT ACPI_UINT32_MAX 80d6dd1baeSJung-uk Kim 81d6dd1baeSJung-uk Kim /* Always emit warning message, not dependent on node flags */ 82d6dd1baeSJung-uk Kim 83d6dd1baeSJung-uk Kim #define ACPI_WARN_ALWAYS 0 84d6dd1baeSJung-uk Kim 85a9f12690SJung-uk Kim 86a9f12690SJung-uk Kim /* 87a9f12690SJung-uk Kim * nsinit - Namespace initialization 88a9f12690SJung-uk Kim */ 89a9f12690SJung-uk Kim ACPI_STATUS 90a9f12690SJung-uk Kim AcpiNsInitializeObjects ( 91a9f12690SJung-uk Kim void); 92a9f12690SJung-uk Kim 93a9f12690SJung-uk Kim ACPI_STATUS 94a9f12690SJung-uk Kim AcpiNsInitializeDevices ( 95a9f12690SJung-uk Kim void); 96a9f12690SJung-uk Kim 97a9f12690SJung-uk Kim 98a9f12690SJung-uk Kim /* 99a9f12690SJung-uk Kim * nsload - Namespace loading 100a9f12690SJung-uk Kim */ 101a9f12690SJung-uk Kim ACPI_STATUS 102a9f12690SJung-uk Kim AcpiNsLoadNamespace ( 103a9f12690SJung-uk Kim void); 104a9f12690SJung-uk Kim 105a9f12690SJung-uk Kim ACPI_STATUS 106a9f12690SJung-uk Kim AcpiNsLoadTable ( 107a9f12690SJung-uk Kim UINT32 TableIndex, 108a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 109a9f12690SJung-uk Kim 110a9f12690SJung-uk Kim 111a9f12690SJung-uk Kim /* 112a9f12690SJung-uk Kim * nswalk - walk the namespace 113a9f12690SJung-uk Kim */ 114a9f12690SJung-uk Kim ACPI_STATUS 115a9f12690SJung-uk Kim AcpiNsWalkNamespace ( 116a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type, 117a9f12690SJung-uk Kim ACPI_HANDLE StartObject, 118a9f12690SJung-uk Kim UINT32 MaxDepth, 119a9f12690SJung-uk Kim UINT32 Flags, 1202272d050SJung-uk Kim ACPI_WALK_CALLBACK PreOrderVisit, 1212272d050SJung-uk Kim ACPI_WALK_CALLBACK PostOrderVisit, 122a9f12690SJung-uk Kim void *Context, 123a9f12690SJung-uk Kim void **ReturnValue); 124a9f12690SJung-uk Kim 125a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE * 126a9f12690SJung-uk Kim AcpiNsGetNextNode ( 127a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Parent, 128a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Child); 129a9f12690SJung-uk Kim 130a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE * 131a9f12690SJung-uk Kim AcpiNsGetNextNodeTyped ( 132a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type, 133a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Parent, 134a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Child); 135a9f12690SJung-uk Kim 136a9f12690SJung-uk Kim /* 137a9f12690SJung-uk Kim * nsparse - table parsing 138a9f12690SJung-uk Kim */ 139a9f12690SJung-uk Kim ACPI_STATUS 140a9f12690SJung-uk Kim AcpiNsParseTable ( 141a9f12690SJung-uk Kim UINT32 TableIndex, 142a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *StartNode); 143a9f12690SJung-uk Kim 144a9f12690SJung-uk Kim ACPI_STATUS 145a9f12690SJung-uk Kim AcpiNsOneCompleteParse ( 146a9f12690SJung-uk Kim UINT32 PassNumber, 147a9f12690SJung-uk Kim UINT32 TableIndex, 148a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *StartNode); 149a9f12690SJung-uk Kim 150a9f12690SJung-uk Kim 151a9f12690SJung-uk Kim /* 152a9f12690SJung-uk Kim * nsaccess - Top-level namespace access 153a9f12690SJung-uk Kim */ 154a9f12690SJung-uk Kim ACPI_STATUS 155a9f12690SJung-uk Kim AcpiNsRootInitialize ( 156a9f12690SJung-uk Kim void); 157a9f12690SJung-uk Kim 158a9f12690SJung-uk Kim ACPI_STATUS 159a9f12690SJung-uk Kim AcpiNsLookup ( 160a9f12690SJung-uk Kim ACPI_GENERIC_STATE *ScopeInfo, 161a9f12690SJung-uk Kim char *Name, 162a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type, 163a9f12690SJung-uk Kim ACPI_INTERPRETER_MODE InterpreterMode, 164a9f12690SJung-uk Kim UINT32 Flags, 165a9f12690SJung-uk Kim ACPI_WALK_STATE *WalkState, 166a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE **RetNode); 167a9f12690SJung-uk Kim 168a9f12690SJung-uk Kim 169a9f12690SJung-uk Kim /* 170a9f12690SJung-uk Kim * nsalloc - Named object allocation/deallocation 171a9f12690SJung-uk Kim */ 172a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE * 173a9f12690SJung-uk Kim AcpiNsCreateNode ( 174a9f12690SJung-uk Kim UINT32 Name); 175a9f12690SJung-uk Kim 176a9f12690SJung-uk Kim void 177a9f12690SJung-uk Kim AcpiNsDeleteNode ( 178a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 179a9f12690SJung-uk Kim 180a9f12690SJung-uk Kim void 181d6dd1baeSJung-uk Kim AcpiNsRemoveNode ( 182d6dd1baeSJung-uk Kim ACPI_NAMESPACE_NODE *Node); 183d6dd1baeSJung-uk Kim 184d6dd1baeSJung-uk Kim void 185a9f12690SJung-uk Kim AcpiNsDeleteNamespaceSubtree ( 186a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *ParentHandle); 187a9f12690SJung-uk Kim 188a9f12690SJung-uk Kim void 189a9f12690SJung-uk Kim AcpiNsDeleteNamespaceByOwner ( 190a9f12690SJung-uk Kim ACPI_OWNER_ID OwnerId); 191a9f12690SJung-uk Kim 192a9f12690SJung-uk Kim void 193a9f12690SJung-uk Kim AcpiNsDetachObject ( 194a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 195a9f12690SJung-uk Kim 196a9f12690SJung-uk Kim void 197a9f12690SJung-uk Kim AcpiNsDeleteChildren ( 198a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Parent); 199a9f12690SJung-uk Kim 200a9f12690SJung-uk Kim int 201a9f12690SJung-uk Kim AcpiNsCompareNames ( 202a9f12690SJung-uk Kim char *Name1, 203a9f12690SJung-uk Kim char *Name2); 204a9f12690SJung-uk Kim 205a9f12690SJung-uk Kim 206a9f12690SJung-uk Kim /* 207a9f12690SJung-uk Kim * nsdump - Namespace dump/print utilities 208a9f12690SJung-uk Kim */ 209a9f12690SJung-uk Kim void 210a9f12690SJung-uk Kim AcpiNsDumpTables ( 211a9f12690SJung-uk Kim ACPI_HANDLE SearchBase, 212a9f12690SJung-uk Kim UINT32 MaxDepth); 213a9f12690SJung-uk Kim 214a9f12690SJung-uk Kim void 215a9f12690SJung-uk Kim AcpiNsDumpEntry ( 216a9f12690SJung-uk Kim ACPI_HANDLE Handle, 217a9f12690SJung-uk Kim UINT32 DebugLevel); 218a9f12690SJung-uk Kim 219a9f12690SJung-uk Kim void 220a9f12690SJung-uk Kim AcpiNsDumpPathname ( 221a9f12690SJung-uk Kim ACPI_HANDLE Handle, 222a9f12690SJung-uk Kim char *Msg, 223a9f12690SJung-uk Kim UINT32 Level, 224a9f12690SJung-uk Kim UINT32 Component); 225a9f12690SJung-uk Kim 226a9f12690SJung-uk Kim void 227a9f12690SJung-uk Kim AcpiNsPrintPathname ( 228a9f12690SJung-uk Kim UINT32 NumSegments, 229a9f12690SJung-uk Kim char *Pathname); 230a9f12690SJung-uk Kim 231a9f12690SJung-uk Kim ACPI_STATUS 232a9f12690SJung-uk Kim AcpiNsDumpOneObject ( 233a9f12690SJung-uk Kim ACPI_HANDLE ObjHandle, 234a9f12690SJung-uk Kim UINT32 Level, 235a9f12690SJung-uk Kim void *Context, 236a9f12690SJung-uk Kim void **ReturnValue); 237a9f12690SJung-uk Kim 238a9f12690SJung-uk Kim void 239a9f12690SJung-uk Kim AcpiNsDumpObjects ( 240a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type, 241a9f12690SJung-uk Kim UINT8 DisplayType, 242a9f12690SJung-uk Kim UINT32 MaxDepth, 243a9f12690SJung-uk Kim ACPI_OWNER_ID OwnerId, 244a9f12690SJung-uk Kim ACPI_HANDLE StartHandle); 245a9f12690SJung-uk Kim 246a9f12690SJung-uk Kim 247a9f12690SJung-uk Kim /* 248a9f12690SJung-uk Kim * nseval - Namespace evaluation functions 249a9f12690SJung-uk Kim */ 250a9f12690SJung-uk Kim ACPI_STATUS 251a9f12690SJung-uk Kim AcpiNsEvaluate ( 252a9f12690SJung-uk Kim ACPI_EVALUATE_INFO *Info); 253a9f12690SJung-uk Kim 254d6dd1baeSJung-uk Kim void 255d6dd1baeSJung-uk Kim AcpiNsExecModuleCodeList ( 256d6dd1baeSJung-uk Kim void); 257d6dd1baeSJung-uk Kim 258a9f12690SJung-uk Kim 259a9f12690SJung-uk Kim /* 260a9f12690SJung-uk Kim * nspredef - Support for predefined/reserved names 261a9f12690SJung-uk Kim */ 262a9f12690SJung-uk Kim ACPI_STATUS 263a9f12690SJung-uk Kim AcpiNsCheckPredefinedNames ( 264a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 265a9f12690SJung-uk Kim UINT32 UserParamCount, 266a9f12690SJung-uk Kim ACPI_STATUS ReturnStatus, 267a9f12690SJung-uk Kim ACPI_OPERAND_OBJECT **ReturnObject); 268a9f12690SJung-uk Kim 269a9f12690SJung-uk Kim const ACPI_PREDEFINED_INFO * 270a9f12690SJung-uk Kim AcpiNsCheckForPredefinedName ( 271a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 272a9f12690SJung-uk Kim 273a9f12690SJung-uk Kim void 274a9f12690SJung-uk Kim AcpiNsCheckParameterCount ( 275a9f12690SJung-uk Kim char *Pathname, 276a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 277a9f12690SJung-uk Kim UINT32 UserParamCount, 278a9f12690SJung-uk Kim const ACPI_PREDEFINED_INFO *Info); 279a9f12690SJung-uk Kim 280a9f12690SJung-uk Kim 281a9f12690SJung-uk Kim /* 282a9f12690SJung-uk Kim * nsnames - Name and Scope manipulation 283a9f12690SJung-uk Kim */ 284a9f12690SJung-uk Kim UINT32 285a9f12690SJung-uk Kim AcpiNsOpensScope ( 286a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type); 287a9f12690SJung-uk Kim 288a9f12690SJung-uk Kim ACPI_STATUS 289a9f12690SJung-uk Kim AcpiNsBuildExternalPath ( 290a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 291a9f12690SJung-uk Kim ACPI_SIZE Size, 292a9f12690SJung-uk Kim char *NameBuffer); 293a9f12690SJung-uk Kim 294a9f12690SJung-uk Kim char * 295a9f12690SJung-uk Kim AcpiNsGetExternalPathname ( 296a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 297a9f12690SJung-uk Kim 298a9f12690SJung-uk Kim char * 299a9f12690SJung-uk Kim AcpiNsNameOfCurrentScope ( 300a9f12690SJung-uk Kim ACPI_WALK_STATE *WalkState); 301a9f12690SJung-uk Kim 302a9f12690SJung-uk Kim ACPI_STATUS 303a9f12690SJung-uk Kim AcpiNsHandleToPathname ( 304a9f12690SJung-uk Kim ACPI_HANDLE TargetHandle, 305a9f12690SJung-uk Kim ACPI_BUFFER *Buffer); 306a9f12690SJung-uk Kim 307a9f12690SJung-uk Kim BOOLEAN 308a9f12690SJung-uk Kim AcpiNsPatternMatch ( 309a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *ObjNode, 310a9f12690SJung-uk Kim char *SearchFor); 311a9f12690SJung-uk Kim 312a9f12690SJung-uk Kim ACPI_STATUS 313a9f12690SJung-uk Kim AcpiNsGetNode ( 314a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *PrefixNode, 315a9f12690SJung-uk Kim const char *ExternalPathname, 316a9f12690SJung-uk Kim UINT32 Flags, 317a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE **OutNode); 318a9f12690SJung-uk Kim 319a9f12690SJung-uk Kim ACPI_SIZE 320a9f12690SJung-uk Kim AcpiNsGetPathnameLength ( 321a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 322a9f12690SJung-uk Kim 323a9f12690SJung-uk Kim 324a9f12690SJung-uk Kim /* 325a9f12690SJung-uk Kim * nsobject - Object management for namespace nodes 326a9f12690SJung-uk Kim */ 327a9f12690SJung-uk Kim ACPI_STATUS 328a9f12690SJung-uk Kim AcpiNsAttachObject ( 329a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 330a9f12690SJung-uk Kim ACPI_OPERAND_OBJECT *Object, 331a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type); 332a9f12690SJung-uk Kim 333a9f12690SJung-uk Kim ACPI_OPERAND_OBJECT * 334a9f12690SJung-uk Kim AcpiNsGetAttachedObject ( 335a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 336a9f12690SJung-uk Kim 337a9f12690SJung-uk Kim ACPI_OPERAND_OBJECT * 338a9f12690SJung-uk Kim AcpiNsGetSecondaryObject ( 339a9f12690SJung-uk Kim ACPI_OPERAND_OBJECT *ObjDesc); 340a9f12690SJung-uk Kim 341a9f12690SJung-uk Kim ACPI_STATUS 342a9f12690SJung-uk Kim AcpiNsAttachData ( 343a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 344a9f12690SJung-uk Kim ACPI_OBJECT_HANDLER Handler, 345a9f12690SJung-uk Kim void *Data); 346a9f12690SJung-uk Kim 347a9f12690SJung-uk Kim ACPI_STATUS 348a9f12690SJung-uk Kim AcpiNsDetachData ( 349a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 350a9f12690SJung-uk Kim ACPI_OBJECT_HANDLER Handler); 351a9f12690SJung-uk Kim 352a9f12690SJung-uk Kim ACPI_STATUS 353a9f12690SJung-uk Kim AcpiNsGetAttachedData ( 354a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 355a9f12690SJung-uk Kim ACPI_OBJECT_HANDLER Handler, 356a9f12690SJung-uk Kim void **Data); 357a9f12690SJung-uk Kim 358a9f12690SJung-uk Kim 359a9f12690SJung-uk Kim /* 3602272d050SJung-uk Kim * nsrepair - General return object repair for all 3612272d050SJung-uk Kim * predefined methods/objects 362d6dd1baeSJung-uk Kim */ 363d6dd1baeSJung-uk Kim ACPI_STATUS 364d6dd1baeSJung-uk Kim AcpiNsRepairObject ( 365d6dd1baeSJung-uk Kim ACPI_PREDEFINED_DATA *Data, 366d6dd1baeSJung-uk Kim UINT32 ExpectedBtypes, 367d6dd1baeSJung-uk Kim UINT32 PackageIndex, 368d6dd1baeSJung-uk Kim ACPI_OPERAND_OBJECT **ReturnObjectPtr); 369d6dd1baeSJung-uk Kim 370d6dd1baeSJung-uk Kim ACPI_STATUS 371*3f8d720fSJung-uk Kim AcpiNsWrapWithPackage ( 372d6dd1baeSJung-uk Kim ACPI_PREDEFINED_DATA *Data, 373*3f8d720fSJung-uk Kim ACPI_OPERAND_OBJECT *OriginalObject, 374d6dd1baeSJung-uk Kim ACPI_OPERAND_OBJECT **ObjDescPtr); 375d6dd1baeSJung-uk Kim 3769a179dd8SJung-uk Kim ACPI_STATUS 3779a179dd8SJung-uk Kim AcpiNsRepairNullElement ( 3789a179dd8SJung-uk Kim ACPI_PREDEFINED_DATA *Data, 3799a179dd8SJung-uk Kim UINT32 ExpectedBtypes, 3809a179dd8SJung-uk Kim UINT32 PackageIndex, 3819a179dd8SJung-uk Kim ACPI_OPERAND_OBJECT **ReturnObjectPtr); 3829a179dd8SJung-uk Kim 3839a179dd8SJung-uk Kim void 3849a179dd8SJung-uk Kim AcpiNsRemoveNullElements ( 3859a179dd8SJung-uk Kim ACPI_PREDEFINED_DATA *Data, 3869a179dd8SJung-uk Kim UINT8 PackageType, 3879a179dd8SJung-uk Kim ACPI_OPERAND_OBJECT *ObjDesc); 3889a179dd8SJung-uk Kim 389d6dd1baeSJung-uk Kim 390d6dd1baeSJung-uk Kim /* 3912272d050SJung-uk Kim * nsrepair2 - Return object repair for specific 3922272d050SJung-uk Kim * predefined methods/objects 3932272d050SJung-uk Kim */ 3942272d050SJung-uk Kim ACPI_STATUS 3952272d050SJung-uk Kim AcpiNsComplexRepairs ( 3962272d050SJung-uk Kim ACPI_PREDEFINED_DATA *Data, 3972272d050SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 3982272d050SJung-uk Kim ACPI_STATUS ValidateStatus, 3992272d050SJung-uk Kim ACPI_OPERAND_OBJECT **ReturnObjectPtr); 4002272d050SJung-uk Kim 4012272d050SJung-uk Kim 4022272d050SJung-uk Kim /* 403a9f12690SJung-uk Kim * nssearch - Namespace searching and entry 404a9f12690SJung-uk Kim */ 405a9f12690SJung-uk Kim ACPI_STATUS 406a9f12690SJung-uk Kim AcpiNsSearchAndEnter ( 407a9f12690SJung-uk Kim UINT32 EntryName, 408a9f12690SJung-uk Kim ACPI_WALK_STATE *WalkState, 409a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 410a9f12690SJung-uk Kim ACPI_INTERPRETER_MODE InterpreterMode, 411a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type, 412a9f12690SJung-uk Kim UINT32 Flags, 413a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE **RetNode); 414a9f12690SJung-uk Kim 415a9f12690SJung-uk Kim ACPI_STATUS 416a9f12690SJung-uk Kim AcpiNsSearchOneScope ( 417a9f12690SJung-uk Kim UINT32 EntryName, 418a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 419a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type, 420a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE **RetNode); 421a9f12690SJung-uk Kim 422a9f12690SJung-uk Kim void 423a9f12690SJung-uk Kim AcpiNsInstallNode ( 424a9f12690SJung-uk Kim ACPI_WALK_STATE *WalkState, 425a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *ParentNode, 426a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 427a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type); 428a9f12690SJung-uk Kim 429a9f12690SJung-uk Kim 430a9f12690SJung-uk Kim /* 431a9f12690SJung-uk Kim * nsutils - Utility functions 432a9f12690SJung-uk Kim */ 433a9f12690SJung-uk Kim BOOLEAN 434a9f12690SJung-uk Kim AcpiNsValidRootPrefix ( 435a9f12690SJung-uk Kim char Prefix); 436a9f12690SJung-uk Kim 437a9f12690SJung-uk Kim ACPI_OBJECT_TYPE 438a9f12690SJung-uk Kim AcpiNsGetType ( 439a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node); 440a9f12690SJung-uk Kim 441a9f12690SJung-uk Kim UINT32 442a9f12690SJung-uk Kim AcpiNsLocal ( 443a9f12690SJung-uk Kim ACPI_OBJECT_TYPE Type); 444a9f12690SJung-uk Kim 445a9f12690SJung-uk Kim void 446a9f12690SJung-uk Kim AcpiNsPrintNodePathname ( 447a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE *Node, 448a9f12690SJung-uk Kim const char *Msg); 449a9f12690SJung-uk Kim 450a9f12690SJung-uk Kim ACPI_STATUS 451a9f12690SJung-uk Kim AcpiNsBuildInternalName ( 452a9f12690SJung-uk Kim ACPI_NAMESTRING_INFO *Info); 453a9f12690SJung-uk Kim 454a9f12690SJung-uk Kim void 455a9f12690SJung-uk Kim AcpiNsGetInternalNameLength ( 456a9f12690SJung-uk Kim ACPI_NAMESTRING_INFO *Info); 457a9f12690SJung-uk Kim 458a9f12690SJung-uk Kim ACPI_STATUS 459a9f12690SJung-uk Kim AcpiNsInternalizeName ( 460a9f12690SJung-uk Kim const char *DottedName, 461a9f12690SJung-uk Kim char **ConvertedName); 462a9f12690SJung-uk Kim 463a9f12690SJung-uk Kim ACPI_STATUS 464a9f12690SJung-uk Kim AcpiNsExternalizeName ( 465a9f12690SJung-uk Kim UINT32 InternalNameLength, 466a9f12690SJung-uk Kim const char *InternalName, 467a9f12690SJung-uk Kim UINT32 *ConvertedNameLength, 468a9f12690SJung-uk Kim char **ConvertedName); 469a9f12690SJung-uk Kim 470a9f12690SJung-uk Kim ACPI_NAMESPACE_NODE * 471572c8255SJung-uk Kim AcpiNsValidateHandle ( 472a9f12690SJung-uk Kim ACPI_HANDLE Handle); 473a9f12690SJung-uk Kim 474a9f12690SJung-uk Kim void 475a9f12690SJung-uk Kim AcpiNsTerminate ( 476a9f12690SJung-uk Kim void); 477a9f12690SJung-uk Kim 478a9f12690SJung-uk Kim #endif /* __ACNAMESP_H__ */ 479