ReactOS  0.4.14-dev-317-g96040ec
dswload.c File Reference
#include "acpi.h"
#include "accommon.h"
#include "acparser.h"
#include "amlcode.h"
#include "acdispat.h"
#include "acinterp.h"
#include "acnamesp.h"
Include dependency graph for dswload.c:

Go to the source code of this file.

Macros

#define _COMPONENT   ACPI_DISPATCHER
 

Functions

ACPI_STATUS AcpiDsInitCallbacks (ACPI_WALK_STATE *WalkState, UINT32 PassNumber)
 
ACPI_STATUS AcpiDsLoad1BeginOp (ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT **OutOp)
 
ACPI_STATUS AcpiDsLoad1EndOp (ACPI_WALK_STATE *WalkState)
 

Macro Definition Documentation

◆ _COMPONENT

#define _COMPONENT   ACPI_DISPATCHER

Definition at line 56 of file dswload.c.

Function Documentation

◆ AcpiDsInitCallbacks()

ACPI_STATUS AcpiDsInitCallbacks ( ACPI_WALK_STATE WalkState,
UINT32  PassNumber 
)

Definition at line 74 of file dswload.c.

77 {
78 
79  switch (PassNumber)
80  {
81  case 0:
82 
83  /* Parse only - caller will setup callbacks */
84 
85  WalkState->ParseFlags = ACPI_PARSE_LOAD_PASS1 |
88  WalkState->DescendingCallback = NULL;
89  WalkState->AscendingCallback = NULL;
90  break;
91 
92  case 1:
93 
94  /* Load pass 1 */
95 
96  WalkState->ParseFlags = ACPI_PARSE_LOAD_PASS1 |
100  break;
101 
102  case 2:
103 
104  /* Load pass 2 */
105 
106  WalkState->ParseFlags = ACPI_PARSE_LOAD_PASS1 |
109  WalkState->AscendingCallback = AcpiDsLoad2EndOp;
110  break;
111 
112  case 3:
113 
114  /* Execution pass */
115 
116  WalkState->ParseFlags |= ACPI_PARSE_EXECUTE |
119  WalkState->AscendingCallback = AcpiDsExecEndOp;
120  break;
121 
122  default:
123 
124  return (AE_BAD_PARAMETER);
125  }
126 
127  return (AE_OK);
128 }
ACPI_STATUS AcpiDsLoad2BeginOp(ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT **OutOp)
Definition: dswload2.c:71
#define AE_BAD_PARAMETER
Definition: acexcep.h:151
ACPI_STATUS AcpiDsLoad1BeginOp(ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT **OutOp)
Definition: dswload.c:145
UINT32 ParseFlags
Definition: acstruct.h:95
#define ACPI_PARSE_EXECUTE
Definition: acparser.h:61
ACPI_PARSE_UPWARDS AscendingCallback
Definition: acstruct.h:129
smooth NULL
Definition: ftsmooth.c:416
ACPI_STATUS AcpiDsLoad1EndOp(ACPI_WALK_STATE *WalkState)
Definition: dswload.c:444
ACPI_STATUS AcpiDsLoad2EndOp(ACPI_WALK_STATE *WalkState)
Definition: dswload2.c:415
#define ACPI_PARSE_LOAD_PASS1
Definition: acparser.h:59
ACPI_STATUS AcpiDsExecBeginOp(ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT **OutOp)
Definition: dswexec.c:232
#define ACPI_PARSE_DISASSEMBLE
Definition: acparser.h:65
ACPI_PARSE_DOWNWARDS DescendingCallback
Definition: acstruct.h:128
ACPI_STATUS AcpiDsExecEndOp(ACPI_WALK_STATE *WalkState)
Definition: dswexec.c:390
#define AE_OK
Definition: acexcep.h:97
#define ACPI_PARSE_DELETE_TREE
Definition: acparser.h:55

Referenced by AcpiDsInitAmlWalk().

◆ AcpiDsLoad1BeginOp()

ACPI_STATUS AcpiDsLoad1BeginOp ( ACPI_WALK_STATE WalkState,
ACPI_PARSE_OBJECT **  OutOp 
)

Definition at line 145 of file dswload.c.

148 {
149  ACPI_PARSE_OBJECT *Op;
153  char *Path;
154  UINT32 Flags;
155 
156 
157  ACPI_FUNCTION_TRACE_PTR (DsLoad1BeginOp, WalkState->Op);
158 
159 
160  Op = WalkState->Op;
161  ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "Op=%p State=%p\n", Op, WalkState));
162 
163  /* We are only interested in opcodes that have an associated name */
164 
165  if (Op)
166  {
167  if (!(WalkState->OpInfo->Flags & AML_NAMED))
168  {
169  *OutOp = Op;
171  }
172 
173  /* Check if this object has already been installed in the namespace */
174 
175  if (Op->Common.Node)
176  {
177  *OutOp = Op;
179  }
180  }
181 
182  Path = AcpiPsGetNextNamestring (&WalkState->ParserState);
183 
184  /* Map the raw opcode into an internal object type */
185 
186  ObjectType = WalkState->OpInfo->ObjectType;
187 
189  "State=%p Op=%p [%s]\n", WalkState, Op,
191 
192  switch (WalkState->Opcode)
193  {
194  case AML_SCOPE_OP:
195  /*
196  * The target name of the Scope() operator must exist at this point so
197  * that we can actually open the scope to enter new names underneath it.
198  * Allow search-to-root for single namesegs.
199  */
200  Status = AcpiNsLookup (WalkState->ScopeInfo, Path, ObjectType,
202 #ifdef ACPI_ASL_COMPILER
203  if (Status == AE_NOT_FOUND)
204  {
205  /*
206  * Table disassembly:
207  * Target of Scope() not found. Generate an External for it, and
208  * insert the name into the namespace.
209  */
211  Status = AcpiNsLookup (WalkState->ScopeInfo, Path, ObjectType,
213  WalkState, &Node);
214  }
215 #endif
216  if (ACPI_FAILURE (Status))
217  {
218  ACPI_ERROR_NAMESPACE (WalkState->ScopeInfo, Path, Status);
220  }
221 
222  /*
223  * Check to make sure that the target is
224  * one of the opcodes that actually opens a scope
225  */
226  switch (Node->Type)
227  {
228  case ACPI_TYPE_ANY:
229  case ACPI_TYPE_LOCAL_SCOPE: /* Scope */
230  case ACPI_TYPE_DEVICE:
231  case ACPI_TYPE_POWER:
232  case ACPI_TYPE_PROCESSOR:
233  case ACPI_TYPE_THERMAL:
234 
235  /* These are acceptable types */
236  break;
237 
238  case ACPI_TYPE_INTEGER:
239  case ACPI_TYPE_STRING:
240  case ACPI_TYPE_BUFFER:
241  /*
242  * These types we will allow, but we will change the type.
243  * This enables some existing code of the form:
244  *
245  * Name (DEB, 0)
246  * Scope (DEB) { ... }
247  *
248  * Note: silently change the type here. On the second pass,
249  * we will report a warning
250  */
252  "Type override - [%4.4s] had invalid type (%s) "
253  "for Scope operator, changed to type ANY\n",
255 
256  Node->Type = ACPI_TYPE_ANY;
257  WalkState->ScopeInfo->Common.Value = ACPI_TYPE_ANY;
258  break;
259 
260  case ACPI_TYPE_METHOD:
261  /*
262  * Allow scope change to root during execution of module-level
263  * code. Root is typed METHOD during this time.
264  */
265  if ((Node == AcpiGbl_RootNode) &&
266  (WalkState->ParseFlags & ACPI_PARSE_MODULE_LEVEL))
267  {
268  break;
269  }
270 
271  /*lint -fallthrough */
272 
273  default:
274 
275  /* All other types are an error */
276 
278  "Invalid type (%s) for target of "
279  "Scope operator [%4.4s] (Cannot override)",
281 
283  }
284  break;
285 
286  default:
287  /*
288  * For all other named opcodes, we will enter the name into
289  * the namespace.
290  *
291  * Setup the search flags.
292  * Since we are entering a name into the namespace, we do not want to
293  * enable the search-to-root upsearch.
294  *
295  * There are only two conditions where it is acceptable that the name
296  * already exists:
297  * 1) the Scope() operator can reopen a scoping object that was
298  * previously defined (Scope, Method, Device, etc.)
299  * 2) Whenever we are parsing a deferred opcode (OpRegion, Buffer,
300  * BufferField, or Package), the name of the object is already
301  * in the namespace.
302  */
303  if (WalkState->DeferredNode)
304  {
305  /* This name is already in the namespace, get the node */
306 
307  Node = WalkState->DeferredNode;
308  Status = AE_OK;
309  break;
310  }
311 
312  /*
313  * If we are executing a method, do not create any namespace objects
314  * during the load phase, only during execution.
315  */
316  if (WalkState->MethodNode)
317  {
318  Node = NULL;
319  Status = AE_OK;
320  break;
321  }
322 
324  if ((WalkState->Opcode != AML_SCOPE_OP) &&
325  (!(WalkState->ParseFlags & ACPI_PARSE_DEFERRED_OP)))
326  {
327  if (WalkState->NamespaceOverride)
328  {
330  ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "[%s] Override allowed\n",
332  }
333  else
334  {
336  ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "[%s] Cannot already exist\n",
338  }
339  }
340  else
341  {
343  "[%s] Both Find or Create allowed\n",
345  }
346 
347  /*
348  * Enter the named type into the internal namespace. We enter the name
349  * as we go downward in the parse tree. Any necessary subobjects that
350  * involve arguments to the opcode must be created as we go back up the
351  * parse tree later.
352  */
353  Status = AcpiNsLookup (WalkState->ScopeInfo, Path, ObjectType,
354  ACPI_IMODE_LOAD_PASS1, Flags, WalkState, &Node);
355  if (ACPI_FAILURE (Status))
356  {
357  if (Status == AE_ALREADY_EXISTS)
358  {
359  /* The name already exists in this scope */
360 
361  if (Node->Flags & ANOBJ_IS_EXTERNAL)
362  {
363  /*
364  * Allow one create on an object or segment that was
365  * previously declared External
366  */
367  Node->Flags &= ~ANOBJ_IS_EXTERNAL;
368  Node->Type = (UINT8) ObjectType;
369 
370  /* Just retyped a node, probably will need to open a scope */
371 
373  {
375  Node, ObjectType, WalkState);
376  if (ACPI_FAILURE (Status))
377  {
379  }
380  }
381 
382  Status = AE_OK;
383  }
384  }
385 
386  if (ACPI_FAILURE (Status))
387  {
388  ACPI_ERROR_NAMESPACE (WalkState->ScopeInfo, Path, Status);
390  }
391  }
392  break;
393  }
394 
395  /* Common exit */
396 
397  if (!Op)
398  {
399  /* Create a new op */
400 
401  Op = AcpiPsAllocOp (WalkState->Opcode, WalkState->Aml);
402  if (!Op)
403  {
405  }
406  }
407 
408  /* Initialize the op */
409 
410 #ifdef ACPI_CONSTANT_EVAL_ONLY
411  Op->Named.Path = Path;
412 #endif
413 
414  if (Node)
415  {
416  /*
417  * Put the Node in the "op" object that the parser uses, so we
418  * can get it again quickly when this scope is closed
419  */
420  Op->Common.Node = Node;
421  Op->Named.Name = Node->Name.Integer;
422  }
423 
425  *OutOp = Op;
427 }
#define ACPI_NS_SEARCH_PARENT
Definition: acnamesp.h:63
ObjectType
Definition: metafile.c:80
ACPI_PARSE_OBJ_COMMON Common
Definition: aclocal.h:1078
#define AML_NAMED
Definition: amlcode.h:323
ACPI_STATUS AcpiNsLookup(ACPI_GENERIC_STATE *ScopeInfo, char *Name, ACPI_OBJECT_TYPE Type, ACPI_INTERPRETER_MODE InterpreterMode, UINT32 Flags, ACPI_WALK_STATE *WalkState, ACPI_NAMESPACE_NODE **RetNode)
Definition: nsaccess.c:329
#define ACPI_TYPE_THERMAL
Definition: actypes.h:691
#define AE_NO_MEMORY
Definition: acexcep.h:112
#define ACPI_TYPE_BUFFER
Definition: actypes.h:681
#define ACPI_TYPE_INTEGER
Definition: actypes.h:679
#define ACPI_TYPE_POWER
Definition: actypes.h:689
ACPI_STATUS AcpiDsScopeStackPush(ACPI_NAMESPACE_NODE *Node, ACPI_OBJECT_TYPE Type, ACPI_WALK_STATE *WalkState)
Definition: dswscope.c:107
UINT8 ObjectType
Definition: aclocal.h:874
struct acpi_namespace_node * DeferredNode
Definition: acstruct.h:111
ACPI_PARSE_OBJECT * AcpiPsGetParentScope(ACPI_PARSE_STATE *state)
Definition: psscope.c:65
ACPI_PARSE_OBJECT * AcpiPsAllocOp(UINT16 Opcode, UINT8 *Aml)
Definition: psutils.c:130
#define ACPI_NS_ERROR_IF_FOUND
Definition: acnamesp.h:66
UINT32 ParseFlags
Definition: acstruct.h:95
UINT32 ACPI_STATUS
Definition: actypes.h:460
#define AE_AML_OPERAND_TYPE
Definition: acexcep.h:182
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
#define ACPI_FAILURE(a)
Definition: acexcep.h:95
char * AcpiPsGetNextNamestring(ACPI_PARSE_STATE *ParserState)
Definition: psargs.c:172
unsigned int UINT32
union node Node
Definition: types.h:1255
smooth NULL
Definition: ftsmooth.c:416
#define AE_INFO
Definition: acoutput.h:230
UINT32 ACPI_OBJECT_TYPE
Definition: actypes.h:676
#define ACPI_FUNCTION_TRACE_PTR(a, b)
Definition: acoutput.h:481
ACPI_PARSE_OBJ_NAMED Named
Definition: aclocal.h:1079
UINT32 AcpiNsOpensScope(ACPI_OBJECT_TYPE Type)
Definition: nsutils.c:736
void AcpiDmAddOpToExternalList(ACPI_PARSE_OBJECT *Op, char *Path, UINT8 Type, UINT32 Value, UINT16 Flags)
#define ACPI_DB_DISPATCH
Definition: acoutput.h:163
#define ACPI_TYPE_METHOD
Definition: actypes.h:686
ACPI_PARSE_OBJECT * Op
Definition: acstruct.h:118
#define AE_ALREADY_EXISTS
Definition: acexcep.h:115
#define ACPI_DEBUG_PRINT(pl)
Definition: acoutput.h:475
void AcpiPsAppendArg(ACPI_PARSE_OBJECT *op, ACPI_PARSE_OBJECT *arg)
Definition: pstree.c:138
#define AML_SCOPE_OP
Definition: amlcode.h:60
#define AE_NOT_FOUND
Definition: acexcep.h:113
const ACPI_OPCODE_INFO * OpInfo
Definition: acstruct.h:119
ACPI_GENERIC_STATE * ScopeInfo
Definition: acstruct.h:124
#define ACPI_TYPE_ANY
Definition: actypes.h:678
ACPI_PARSE_STATE ParserState
Definition: acstruct.h:97
#define ACPI_TYPE_DEVICE
Definition: actypes.h:684
struct acpi_namespace_node * MethodNode
Definition: acstruct.h:116
ACPI_COMMON_STATE Common
Definition: aclocal.h:822
#define ACPI_TYPE_PROCESSOR
Definition: actypes.h:690
Status
Definition: gdiplustypes.h:24
BOOLEAN NamespaceOverride
Definition: acstruct.h:88
#define ACPI_DB_INFO
Definition: acoutput.h:153
PRTL_UNICODE_STRING_BUFFER Path
#define return_ACPI_STATUS(s)
Definition: acoutput.h:496
#define ACPI_NS_NO_UPSEARCH
Definition: acnamesp.h:62
#define ACPI_PARSE_MODULE_LEVEL
Definition: acparser.h:67
ACPI_PARSE_COMMON char * Path
Definition: aclocal.h:1032
#define ACPI_NS_OVERRIDE_IF_FOUND
Definition: acnamesp.h:70
const char * AcpiUtGetTypeName(ACPI_OBJECT_TYPE Type)
Definition: utdecode.c:249
#define ACPI_ERROR(plist)
Definition: acoutput.h:240
const char * AcpiUtGetNodeName(void *Object)
Definition: utdecode.c:305
#define ACPI_TYPE_LOCAL_SCOPE
Definition: actypes.h:717
UINT16 Opcode
Definition: acstruct.h:78
#define ACPI_TYPE_STRING
Definition: actypes.h:680
#define ACPI_PARSE_DEFERRED_OP
Definition: acparser.h:64
#define ACPI_ERROR_NAMESPACE(s, p, e)
Definition: acmacros.h:462
unsigned char UINT8
#define AE_OK
Definition: acexcep.h:97
UINT16 Flags
Definition: aclocal.h:873
Definition: dlist.c:348
UINT8 * Aml
Definition: acstruct.h:91
#define ANOBJ_IS_EXTERNAL
Definition: aclocal.h:224

Referenced by AcpiDsInitCallbacks().

◆ AcpiDsLoad1EndOp()

ACPI_STATUS AcpiDsLoad1EndOp ( ACPI_WALK_STATE WalkState)

Definition at line 444 of file dswload.c.

446 {
447  ACPI_PARSE_OBJECT *Op;
450 
451 #ifdef ACPI_ASL_COMPILER
452  UINT8 ParamCount;
453 #endif
454 
455 
456  ACPI_FUNCTION_TRACE (DsLoad1EndOp);
457 
458 
459  Op = WalkState->Op;
460  ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "Op=%p State=%p\n", Op, WalkState));
461 
462  /* We are only interested in opcodes that have an associated name */
463 
464  if (!(WalkState->OpInfo->Flags & (AML_NAMED | AML_FIELD)))
465  {
467  }
468 
469  /* Get the object type to determine if we should pop the scope */
470 
471  ObjectType = WalkState->OpInfo->ObjectType;
472 
473  if (WalkState->OpInfo->Flags & AML_FIELD)
474  {
475  /*
476  * If we are executing a method, do not create any namespace objects
477  * during the load phase, only during execution.
478  */
479  if (!WalkState->MethodNode)
480  {
481  if (WalkState->Opcode == AML_FIELD_OP ||
482  WalkState->Opcode == AML_BANK_FIELD_OP ||
483  WalkState->Opcode == AML_INDEX_FIELD_OP)
484  {
485  Status = AcpiDsInitFieldObjects (Op, WalkState);
486  }
487  }
489  }
490 
491  /*
492  * If we are executing a method, do not create any namespace objects
493  * during the load phase, only during execution.
494  */
495  if (!WalkState->MethodNode)
496  {
497  if (Op->Common.AmlOpcode == AML_REGION_OP)
498  {
501  ((Op->Common.Value.Arg)->Common.Value.Integer),
502  WalkState);
503  if (ACPI_FAILURE (Status))
504  {
506  }
507  }
508  else if (Op->Common.AmlOpcode == AML_DATA_REGION_OP)
509  {
511  ACPI_ADR_SPACE_DATA_TABLE, WalkState);
512  if (ACPI_FAILURE (Status))
513  {
515  }
516  }
517  }
518 
519  if (Op->Common.AmlOpcode == AML_NAME_OP)
520  {
521  /* For Name opcode, get the object type from the argument */
522 
523  if (Op->Common.Value.Arg)
524  {
526  (Op->Common.Value.Arg)->Common.AmlOpcode))->ObjectType;
527 
528  /* Set node type if we have a namespace node */
529 
530  if (Op->Common.Node)
531  {
532  Op->Common.Node->Type = (UINT8) ObjectType;
533  }
534  }
535  }
536 
537 #ifdef ACPI_ASL_COMPILER
538  /*
539  * For external opcode, get the object type from the argument and
540  * get the parameter count from the argument's next.
541  */
542  if (AcpiGbl_DisasmFlag &&
543  Op->Common.Node &&
544  Op->Common.AmlOpcode == AML_EXTERNAL_OP)
545  {
546  /*
547  * Note, if this external is not a method
548  * Op->Common.Value.Arg->Common.Next->Common.Value.Integer == 0
549  * Therefore, ParamCount will be 0.
550  */
551  ParamCount = (UINT8) Op->Common.Value.Arg->Common.Next->Common.Value.Integer;
552  ObjectType = (UINT8) Op->Common.Value.Arg->Common.Value.Integer;
553  Op->Common.Node->Flags |= ANOBJ_IS_EXTERNAL;
554  Op->Common.Node->Type = (UINT8) ObjectType;
555 
557  &Op->Common.Node, ParamCount);
558 
559  /*
560  * Add the external to the external list because we may be
561  * emitting code based off of the items within the external list.
562  */
563  AcpiDmAddOpToExternalList (Op, Op->Named.Path, (UINT8)ObjectType, ParamCount,
565  }
566 #endif
567 
568  /*
569  * If we are executing a method, do not create any namespace objects
570  * during the load phase, only during execution.
571  */
572  if (!WalkState->MethodNode)
573  {
574  if (Op->Common.AmlOpcode == AML_METHOD_OP)
575  {
576  /*
577  * MethodOp PkgLength NameString MethodFlags TermList
578  *
579  * Note: We must create the method node/object pair as soon as we
580  * see the method declaration. This allows later pass1 parsing
581  * of invocations of the method (need to know the number of
582  * arguments.)
583  */
585  "LOADING-Method: State=%p Op=%p NamedObj=%p\n",
586  WalkState, Op, Op->Named.Node));
587 
588  if (!AcpiNsGetAttachedObject (Op->Named.Node))
589  {
590  WalkState->Operands[0] = ACPI_CAST_PTR (void, Op->Named.Node);
591  WalkState->NumOperands = 1;
592 
594  WalkState, Op->Common.Value.Arg);
595  if (ACPI_SUCCESS (Status))
596  {
598  Op->Named.Length, WalkState);
599  }
600 
601  WalkState->Operands[0] = NULL;
602  WalkState->NumOperands = 0;
603 
604  if (ACPI_FAILURE (Status))
605  {
607  }
608  }
609  }
610  }
611 
612  /* Pop the scope stack (only if loading a table) */
613 
614  if (!WalkState->MethodNode &&
615  Op->Common.AmlOpcode != AML_EXTERNAL_OP &&
617  {
618  ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "(%s): Popping scope for Op %p\n",
620 
621  Status = AcpiDsScopeStackPop (WalkState);
622  }
623 
625 }
ACPI_STATUS AcpiDsCreateOperands(ACPI_WALK_STATE *WalkState, ACPI_PARSE_OBJECT *FirstArg)
Definition: dsutils.c:753
ACPI_STATUS AcpiDsInitFieldObjects(ACPI_PARSE_OBJECT *Op, ACPI_WALK_STATE *WalkState)
Definition: dsfield.c:606
ObjectType
Definition: metafile.c:80
ACPI_PARSE_OBJ_COMMON Common
Definition: aclocal.h:1078
#define AML_NAMED
Definition: amlcode.h:323
UINT8 ACPI_ADR_SPACE_TYPE
Definition: actypes.h:849
#define ACPI_SUCCESS(a)
Definition: acexcep.h:94
ACPI_STATUS AcpiDsScopeStackPop(ACPI_WALK_STATE *WalkState)
Definition: dswscope.c:192
UINT8 NumOperands
Definition: acstruct.h:80
#define ACPI_EXT_RESOLVED_REFERENCE
Definition: aclocal.h:1379
UINT8 ObjectType
Definition: aclocal.h:874
const ACPI_OPCODE_INFO * AcpiPsGetOpcodeInfo(UINT16 Opcode)
Definition: psopinfo.c:72
#define ACPI_ADR_SPACE_DATA_TABLE
Definition: actypes.h:873
UINT32 ACPI_STATUS
Definition: actypes.h:460
void AcpiDmCreateSubobjectForExternal(UINT8 Type, ACPI_NAMESPACE_NODE **Node, UINT32 Value)
#define AML_EXTERNAL_OP
Definition: amlcode.h:65
#define AML_REGION_OP
Definition: amlcode.h:180
#define ACPI_FAILURE(a)
Definition: acexcep.h:95
#define AML_NAME_OP
Definition: amlcode.h:54
ACPI_STATUS AcpiExCreateMethod(UINT8 *AmlStart, UINT32 AmlLength, ACPI_WALK_STATE *WalkState)
Definition: excreate.c:483
smooth NULL
Definition: ftsmooth.c:416
UINT32 ACPI_OBJECT_TYPE
Definition: actypes.h:676
ACPI_PARSE_OBJ_NAMED Named
Definition: aclocal.h:1079
UINT32 AcpiNsOpensScope(ACPI_OBJECT_TYPE Type)
Definition: nsutils.c:736
void AcpiDmAddOpToExternalList(ACPI_PARSE_OBJECT *Op, char *Path, UINT8 Type, UINT32 Value, UINT16 Flags)
#define ACPI_DB_DISPATCH
Definition: acoutput.h:163
#define AML_BANK_FIELD_OP
Definition: amlcode.h:187
ACPI_STATUS AcpiExCreateRegion(UINT8 *AmlStart, UINT32 AmlLength, UINT8 SpaceId, ACPI_WALK_STATE *WalkState)
Definition: excreate.c:268
ACPI_PARSE_OBJECT * Op
Definition: acstruct.h:118
#define AML_FIELD_OP
Definition: amlcode.h:181
#define ACPI_DEBUG_PRINT(pl)
Definition: acoutput.h:475
#define AML_FIELD
Definition: amlcode.h:321
ACPI_OPERAND_OBJECT * AcpiNsGetAttachedObject(ACPI_NAMESPACE_NODE *Node)
Definition: nsobject.c:308
const ACPI_OPCODE_INFO * OpInfo
Definition: acstruct.h:119
#define AML_INDEX_FIELD_OP
Definition: amlcode.h:186
#define ACPI_EXT_ORIGIN_FROM_OPCODE
Definition: aclocal.h:1383
#define AML_METHOD_OP
Definition: amlcode.h:64
struct acpi_namespace_node * MethodNode
Definition: acstruct.h:116
Status
Definition: gdiplustypes.h:24
union acpi_operand_object * Operands[ACPI_OBJ_NUM_OPERANDS+1]
Definition: acstruct.h:105
#define return_ACPI_STATUS(s)
Definition: acoutput.h:496
#define ACPI_FUNCTION_TRACE(a)
Definition: acoutput.h:480
ACPI_PARSE_COMMON char * Path
Definition: aclocal.h:1032
const char * AcpiUtGetTypeName(ACPI_OBJECT_TYPE Type)
Definition: utdecode.c:249
UINT16 Opcode
Definition: acstruct.h:78
#define ACPI_CAST_PTR(t, p)
Definition: actypes.h:544
unsigned char UINT8
#define AML_DATA_REGION_OP
Definition: amlcode.h:188
#define AE_OK
Definition: acexcep.h:97
UINT16 Flags
Definition: aclocal.h:873
#define ANOBJ_IS_EXTERNAL
Definition: aclocal.h:224

Referenced by AcpiDsInitCallbacks().