acnamesp.h (26f3cdf0) acnamesp.h (7b1019a6)
1/******************************************************************************
2 *
3 * Name: acnamesp.h - Namespace subcomponent prototypes and defines
4 *
5 *****************************************************************************/
6
7/*
1/******************************************************************************
2 *
3 * Name: acnamesp.h - Namespace subcomponent prototypes and defines
4 *
5 *****************************************************************************/
6
7/*
8 * Copyright (C) 2000 - 2011, Intel Corp.
8 * Copyright (C) 2000 - 2016, 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.

--- 45 unchanged lines hidden (view full) ---

62#define ACPI_NS_NO_UPSEARCH 0
63#define ACPI_NS_SEARCH_PARENT 0x01
64#define ACPI_NS_DONT_OPEN_SCOPE 0x02
65#define ACPI_NS_NO_PEER_SEARCH 0x04
66#define ACPI_NS_ERROR_IF_FOUND 0x08
67#define ACPI_NS_PREFIX_IS_SCOPE 0x10
68#define ACPI_NS_EXTERNAL 0x20
69#define ACPI_NS_TEMPORARY 0x40
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.

--- 45 unchanged lines hidden (view full) ---

62#define ACPI_NS_NO_UPSEARCH 0
63#define ACPI_NS_SEARCH_PARENT 0x01
64#define ACPI_NS_DONT_OPEN_SCOPE 0x02
65#define ACPI_NS_NO_PEER_SEARCH 0x04
66#define ACPI_NS_ERROR_IF_FOUND 0x08
67#define ACPI_NS_PREFIX_IS_SCOPE 0x10
68#define ACPI_NS_EXTERNAL 0x20
69#define ACPI_NS_TEMPORARY 0x40
70#define ACPI_NS_OVERRIDE_IF_FOUND 0x80
70
71/* Flags for AcpiNsWalkNamespace */
72
73#define ACPI_NS_WALK_NO_UNLOCK 0
74#define ACPI_NS_WALK_UNLOCK 0x01
75#define ACPI_NS_WALK_TEMP_NODES 0x02
76
77/* Object is not a package element */
78
79#define ACPI_NOT_PACKAGE_ELEMENT ACPI_UINT32_MAX
71
72/* Flags for AcpiNsWalkNamespace */
73
74#define ACPI_NS_WALK_NO_UNLOCK 0
75#define ACPI_NS_WALK_UNLOCK 0x01
76#define ACPI_NS_WALK_TEMP_NODES 0x02
77
78/* Object is not a package element */
79
80#define ACPI_NOT_PACKAGE_ELEMENT ACPI_UINT32_MAX
81#define ACPI_ALL_PACKAGE_ELEMENTS (ACPI_UINT32_MAX-1)
80
81/* Always emit warning message, not dependent on node flags */
82
83#define ACPI_WARN_ALWAYS 0
84
85
86/*
87 * nsinit - Namespace initialization
88 */
89ACPI_STATUS
90AcpiNsInitializeObjects (
91 void);
92
93ACPI_STATUS
94AcpiNsInitializeDevices (
82
83/* Always emit warning message, not dependent on node flags */
84
85#define ACPI_WARN_ALWAYS 0
86
87
88/*
89 * nsinit - Namespace initialization
90 */
91ACPI_STATUS
92AcpiNsInitializeObjects (
93 void);
94
95ACPI_STATUS
96AcpiNsInitializeDevices (
95 void);
97 UINT32 Flags);
96
97
98/*
99 * nsload - Namespace loading
100 */
101ACPI_STATUS
102AcpiNsLoadNamespace (
103 void);

--- 8 unchanged lines hidden (view full) ---

112 * nswalk - walk the namespace
113 */
114ACPI_STATUS
115AcpiNsWalkNamespace (
116 ACPI_OBJECT_TYPE Type,
117 ACPI_HANDLE StartObject,
118 UINT32 MaxDepth,
119 UINT32 Flags,
98
99
100/*
101 * nsload - Namespace loading
102 */
103ACPI_STATUS
104AcpiNsLoadNamespace (
105 void);

--- 8 unchanged lines hidden (view full) ---

114 * nswalk - walk the namespace
115 */
116ACPI_STATUS
117AcpiNsWalkNamespace (
118 ACPI_OBJECT_TYPE Type,
119 ACPI_HANDLE StartObject,
120 UINT32 MaxDepth,
121 UINT32 Flags,
120 ACPI_WALK_CALLBACK PreOrderVisit,
121 ACPI_WALK_CALLBACK PostOrderVisit,
122 ACPI_WALK_CALLBACK DescendingCallback,
123 ACPI_WALK_CALLBACK AscendingCallback,
122 void *Context,
123 void **ReturnValue);
124
125ACPI_NAMESPACE_NODE *
126AcpiNsGetNextNode (
127 ACPI_NAMESPACE_NODE *Parent,
128 ACPI_NAMESPACE_NODE *Child);
129

--- 69 unchanged lines hidden (view full) ---

199
200int
201AcpiNsCompareNames (
202 char *Name1,
203 char *Name2);
204
205
206/*
124 void *Context,
125 void **ReturnValue);
126
127ACPI_NAMESPACE_NODE *
128AcpiNsGetNextNode (
129 ACPI_NAMESPACE_NODE *Parent,
130 ACPI_NAMESPACE_NODE *Child);
131

--- 69 unchanged lines hidden (view full) ---

201
202int
203AcpiNsCompareNames (
204 char *Name1,
205 char *Name2);
206
207
208/*
209 * nsconvert - Dynamic object conversion routines
210 */
211ACPI_STATUS
212AcpiNsConvertToInteger (
213 ACPI_OPERAND_OBJECT *OriginalObject,
214 ACPI_OPERAND_OBJECT **ReturnObject);
215
216ACPI_STATUS
217AcpiNsConvertToString (
218 ACPI_OPERAND_OBJECT *OriginalObject,
219 ACPI_OPERAND_OBJECT **ReturnObject);
220
221ACPI_STATUS
222AcpiNsConvertToBuffer (
223 ACPI_OPERAND_OBJECT *OriginalObject,
224 ACPI_OPERAND_OBJECT **ReturnObject);
225
226ACPI_STATUS
227AcpiNsConvertToUnicode (
228 ACPI_NAMESPACE_NODE *Scope,
229 ACPI_OPERAND_OBJECT *OriginalObject,
230 ACPI_OPERAND_OBJECT **ReturnObject);
231
232ACPI_STATUS
233AcpiNsConvertToResource (
234 ACPI_NAMESPACE_NODE *Scope,
235 ACPI_OPERAND_OBJECT *OriginalObject,
236 ACPI_OPERAND_OBJECT **ReturnObject);
237
238ACPI_STATUS
239AcpiNsConvertToReference (
240 ACPI_NAMESPACE_NODE *Scope,
241 ACPI_OPERAND_OBJECT *OriginalObject,
242 ACPI_OPERAND_OBJECT **ReturnObject);
243
244
245/*
207 * nsdump - Namespace dump/print utilities
208 */
209void
210AcpiNsDumpTables (
211 ACPI_HANDLE SearchBase,
212 UINT32 MaxDepth);
213
214void
215AcpiNsDumpEntry (
216 ACPI_HANDLE Handle,
217 UINT32 DebugLevel);
218
219void
220AcpiNsDumpPathname (
221 ACPI_HANDLE Handle,
246 * nsdump - Namespace dump/print utilities
247 */
248void
249AcpiNsDumpTables (
250 ACPI_HANDLE SearchBase,
251 UINT32 MaxDepth);
252
253void
254AcpiNsDumpEntry (
255 ACPI_HANDLE Handle,
256 UINT32 DebugLevel);
257
258void
259AcpiNsDumpPathname (
260 ACPI_HANDLE Handle,
222 char *Msg,
261 const char *Msg,
223 UINT32 Level,
224 UINT32 Component);
225
226void
227AcpiNsPrintPathname (
228 UINT32 NumSegments,
262 UINT32 Level,
263 UINT32 Component);
264
265void
266AcpiNsPrintPathname (
267 UINT32 NumSegments,
229 char *Pathname);
268 const char *Pathname);
230
231ACPI_STATUS
232AcpiNsDumpOneObject (
233 ACPI_HANDLE ObjHandle,
234 UINT32 Level,
235 void *Context,
236 void **ReturnValue);
237
238void
239AcpiNsDumpObjects (
240 ACPI_OBJECT_TYPE Type,
241 UINT8 DisplayType,
242 UINT32 MaxDepth,
243 ACPI_OWNER_ID OwnerId,
244 ACPI_HANDLE StartHandle);
245
269
270ACPI_STATUS
271AcpiNsDumpOneObject (
272 ACPI_HANDLE ObjHandle,
273 UINT32 Level,
274 void *Context,
275 void **ReturnValue);
276
277void
278AcpiNsDumpObjects (
279 ACPI_OBJECT_TYPE Type,
280 UINT8 DisplayType,
281 UINT32 MaxDepth,
282 ACPI_OWNER_ID OwnerId,
283 ACPI_HANDLE StartHandle);
284
285void
286AcpiNsDumpObjectPaths (
287 ACPI_OBJECT_TYPE Type,
288 UINT8 DisplayType,
289 UINT32 MaxDepth,
290 ACPI_OWNER_ID OwnerId,
291 ACPI_HANDLE StartHandle);
246
292
293
247/*
248 * nseval - Namespace evaluation functions
249 */
250ACPI_STATUS
251AcpiNsEvaluate (
252 ACPI_EVALUATE_INFO *Info);
253
254void
255AcpiNsExecModuleCodeList (
256 void);
257
258
259/*
294/*
295 * nseval - Namespace evaluation functions
296 */
297ACPI_STATUS
298AcpiNsEvaluate (
299 ACPI_EVALUATE_INFO *Info);
300
301void
302AcpiNsExecModuleCodeList (
303 void);
304
305
306/*
260 * nspredef - Support for predefined/reserved names
307 * nsarguments - Argument count/type checking for predefined/reserved names
261 */
308 */
262ACPI_STATUS
263AcpiNsCheckPredefinedNames (
264 ACPI_NAMESPACE_NODE *Node,
265 UINT32 UserParamCount,
266 ACPI_STATUS ReturnStatus,
267 ACPI_OPERAND_OBJECT **ReturnObject);
268
269const ACPI_PREDEFINED_INFO *
270AcpiNsCheckForPredefinedName (
271 ACPI_NAMESPACE_NODE *Node);
272
273void
309void
274AcpiNsCheckParameterCount (
310AcpiNsCheckArgumentCount (
275 char *Pathname,
276 ACPI_NAMESPACE_NODE *Node,
277 UINT32 UserParamCount,
278 const ACPI_PREDEFINED_INFO *Info);
279
311 char *Pathname,
312 ACPI_NAMESPACE_NODE *Node,
313 UINT32 UserParamCount,
314 const ACPI_PREDEFINED_INFO *Info);
315
316void
317AcpiNsCheckAcpiCompliance (
318 char *Pathname,
319 ACPI_NAMESPACE_NODE *Node,
320 const ACPI_PREDEFINED_INFO *Predefined);
280
321
322void
323AcpiNsCheckArgumentTypes (
324 ACPI_EVALUATE_INFO *Info);
325
326
281/*
327/*
328 * nspredef - Return value checking for predefined/reserved names
329 */
330ACPI_STATUS
331AcpiNsCheckReturnValue (
332 ACPI_NAMESPACE_NODE *Node,
333 ACPI_EVALUATE_INFO *Info,
334 UINT32 UserParamCount,
335 ACPI_STATUS ReturnStatus,
336 ACPI_OPERAND_OBJECT **ReturnObject);
337
338ACPI_STATUS
339AcpiNsCheckObjectType (
340 ACPI_EVALUATE_INFO *Info,
341 ACPI_OPERAND_OBJECT **ReturnObjectPtr,
342 UINT32 ExpectedBtypes,
343 UINT32 PackageIndex);
344
345
346/*
347 * nsprepkg - Validation of predefined name packages
348 */
349ACPI_STATUS
350AcpiNsCheckPackage (
351 ACPI_EVALUATE_INFO *Info,
352 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
353
354
355/*
282 * nsnames - Name and Scope manipulation
283 */
284UINT32
285AcpiNsOpensScope (
286 ACPI_OBJECT_TYPE Type);
287
356 * nsnames - Name and Scope manipulation
357 */
358UINT32
359AcpiNsOpensScope (
360 ACPI_OBJECT_TYPE Type);
361
288ACPI_STATUS
289AcpiNsBuildExternalPath (
290 ACPI_NAMESPACE_NODE *Node,
291 ACPI_SIZE Size,
292 char *NameBuffer);
293
294char *
295AcpiNsGetExternalPathname (
296 ACPI_NAMESPACE_NODE *Node);
297
362char *
363AcpiNsGetExternalPathname (
364 ACPI_NAMESPACE_NODE *Node);
365
366UINT32
367AcpiNsBuildNormalizedPath (
368 ACPI_NAMESPACE_NODE *Node,
369 char *FullPath,
370 UINT32 PathSize,
371 BOOLEAN NoTrailing);
372
298char *
373char *
374AcpiNsGetNormalizedPathname (
375 ACPI_NAMESPACE_NODE *Node,
376 BOOLEAN NoTrailing);
377
378char *
299AcpiNsNameOfCurrentScope (
300 ACPI_WALK_STATE *WalkState);
301
302ACPI_STATUS
303AcpiNsHandleToPathname (
304 ACPI_HANDLE TargetHandle,
379AcpiNsNameOfCurrentScope (
380 ACPI_WALK_STATE *WalkState);
381
382ACPI_STATUS
383AcpiNsHandleToPathname (
384 ACPI_HANDLE TargetHandle,
305 ACPI_BUFFER *Buffer);
385 ACPI_BUFFER *Buffer,
386 BOOLEAN NoTrailing);
306
307BOOLEAN
308AcpiNsPatternMatch (
309 ACPI_NAMESPACE_NODE *ObjNode,
310 char *SearchFor);
311
312ACPI_STATUS
313AcpiNsGetNode (

--- 42 unchanged lines hidden (view full) ---

356 void **Data);
357
358
359/*
360 * nsrepair - General return object repair for all
361 * predefined methods/objects
362 */
363ACPI_STATUS
387
388BOOLEAN
389AcpiNsPatternMatch (
390 ACPI_NAMESPACE_NODE *ObjNode,
391 char *SearchFor);
392
393ACPI_STATUS
394AcpiNsGetNode (

--- 42 unchanged lines hidden (view full) ---

437 void **Data);
438
439
440/*
441 * nsrepair - General return object repair for all
442 * predefined methods/objects
443 */
444ACPI_STATUS
364AcpiNsRepairObject (
365 ACPI_PREDEFINED_DATA *Data,
445AcpiNsSimpleRepair (
446 ACPI_EVALUATE_INFO *Info,
366 UINT32 ExpectedBtypes,
367 UINT32 PackageIndex,
368 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
369
370ACPI_STATUS
447 UINT32 ExpectedBtypes,
448 UINT32 PackageIndex,
449 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
450
451ACPI_STATUS
371AcpiNsRepairPackageList (
372 ACPI_PREDEFINED_DATA *Data,
452AcpiNsWrapWithPackage (
453 ACPI_EVALUATE_INFO *Info,
454 ACPI_OPERAND_OBJECT *OriginalObject,
373 ACPI_OPERAND_OBJECT **ObjDescPtr);
374
375ACPI_STATUS
376AcpiNsRepairNullElement (
455 ACPI_OPERAND_OBJECT **ObjDescPtr);
456
457ACPI_STATUS
458AcpiNsRepairNullElement (
377 ACPI_PREDEFINED_DATA *Data,
459 ACPI_EVALUATE_INFO *Info,
378 UINT32 ExpectedBtypes,
379 UINT32 PackageIndex,
380 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
381
382void
383AcpiNsRemoveNullElements (
460 UINT32 ExpectedBtypes,
461 UINT32 PackageIndex,
462 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
463
464void
465AcpiNsRemoveNullElements (
384 ACPI_PREDEFINED_DATA *Data,
466 ACPI_EVALUATE_INFO *Info,
385 UINT8 PackageType,
386 ACPI_OPERAND_OBJECT *ObjDesc);
387
388
389/*
390 * nsrepair2 - Return object repair for specific
391 * predefined methods/objects
392 */
393ACPI_STATUS
394AcpiNsComplexRepairs (
467 UINT8 PackageType,
468 ACPI_OPERAND_OBJECT *ObjDesc);
469
470
471/*
472 * nsrepair2 - Return object repair for specific
473 * predefined methods/objects
474 */
475ACPI_STATUS
476AcpiNsComplexRepairs (
395 ACPI_PREDEFINED_DATA *Data,
477 ACPI_EVALUATE_INFO *Info,
396 ACPI_NAMESPACE_NODE *Node,
397 ACPI_STATUS ValidateStatus,
398 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
399
400
401/*
402 * nssearch - Namespace searching and entry
403 */

--- 20 unchanged lines hidden (view full) ---

424 ACPI_NAMESPACE_NODE *ParentNode,
425 ACPI_NAMESPACE_NODE *Node,
426 ACPI_OBJECT_TYPE Type);
427
428
429/*
430 * nsutils - Utility functions
431 */
478 ACPI_NAMESPACE_NODE *Node,
479 ACPI_STATUS ValidateStatus,
480 ACPI_OPERAND_OBJECT **ReturnObjectPtr);
481
482
483/*
484 * nssearch - Namespace searching and entry
485 */

--- 20 unchanged lines hidden (view full) ---

506 ACPI_NAMESPACE_NODE *ParentNode,
507 ACPI_NAMESPACE_NODE *Node,
508 ACPI_OBJECT_TYPE Type);
509
510
511/*
512 * nsutils - Utility functions
513 */
432BOOLEAN
433AcpiNsValidRootPrefix (
434 char Prefix);
435
436ACPI_OBJECT_TYPE
437AcpiNsGetType (
438 ACPI_NAMESPACE_NODE *Node);
439
440UINT32
441AcpiNsLocal (
442 ACPI_OBJECT_TYPE Type);
443

--- 34 unchanged lines hidden ---
514ACPI_OBJECT_TYPE
515AcpiNsGetType (
516 ACPI_NAMESPACE_NODE *Node);
517
518UINT32
519AcpiNsLocal (
520 ACPI_OBJECT_TYPE Type);
521

--- 34 unchanged lines hidden ---