Print this page
update to acpica-unix2-20140114
acpica-unix2-20130823
PANKOVs restructure

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/intel/sys/acpi/acstruct.h
          +++ new/usr/src/common/acpica/include/acstruct.h
   1    1  /******************************************************************************
   2    2   *
   3    3   * Name: acstruct.h - Internal structs
   4    4   *
   5    5   *****************************************************************************/
   6    6  
   7    7  /*
   8      - * Copyright (C) 2000 - 2011, Intel Corp.
        8 + * Copyright (C) 2000 - 2014, Intel Corp.
   9    9   * All rights reserved.
  10   10   *
  11   11   * Redistribution and use in source and binary forms, with or without
  12   12   * modification, are permitted provided that the following conditions
  13   13   * are met:
  14   14   * 1. Redistributions of source code must retain the above copyright
  15   15   *    notice, this list of conditions, and the following disclaimer,
  16   16   *    without modification.
  17   17   * 2. Redistributions in binary form must reproduce at minimum a disclaimer
  18   18   *    substantially similar to the "NO WARRANTY" disclaimer below
↓ open down ↓ 28 lines elided ↑ open up ↑
  47   47  /* acpisrc:StructDefs -- for acpisrc conversion */
  48   48  
  49   49  /*****************************************************************************
  50   50   *
  51   51   * Tree walking typedefs and structs
  52   52   *
  53   53   ****************************************************************************/
  54   54  
  55   55  
  56   56  /*
  57      - * Walk state - current state of a parse tree walk.  Used for both a leisurely
       57 + * Walk state - current state of a parse tree walk. Used for both a leisurely
  58   58   * stroll through the tree (for whatever reason), and for control method
  59   59   * execution.
  60   60   */
  61   61  #define ACPI_NEXT_OP_DOWNWARD       1
  62   62  #define ACPI_NEXT_OP_UPWARD         2
  63   63  
  64   64  /*
  65   65   * Groups of definitions for WalkType used for different implementations of
  66   66   * walkers (never simultaneously) - flags for interpreter:
  67   67   */
↓ open down ↓ 120 lines elided ↑ open up ↑
 188  188          ACPI_OBJECT_INTEGER             *Index;
 189  189          ACPI_OBJECT_INTEGER             *Length;
 190  190          ACPI_OPERAND_OBJECT             *Target;
 191  191  
 192  192      } Mid;
 193  193  
 194  194  } ACPI_AML_OPERANDS;
 195  195  
 196  196  
 197  197  /*
 198      - * Structure used to pass object evaluation parameters.
      198 + * Structure used to pass object evaluation information and parameters.
 199  199   * Purpose is to reduce CPU stack use.
 200  200   */
 201  201  typedef struct acpi_evaluate_info
 202  202  {
 203      -    ACPI_NAMESPACE_NODE             *PrefixNode;
 204      -    char                            *Pathname;
 205      -    ACPI_OPERAND_OBJECT             *ObjDesc;
 206      -    ACPI_OPERAND_OBJECT             **Parameters;
 207      -    ACPI_NAMESPACE_NODE             *ResolvedNode;
 208      -    ACPI_OPERAND_OBJECT             *ReturnObject;
 209      -    UINT8                           ParamCount;
 210      -    UINT8                           PassNumber;
 211      -    UINT8                           ReturnObjectType;
 212      -    UINT8                           Flags;
      203 +    /* The first 3 elements are passed by the caller to AcpiNsEvaluate */
 213  204  
      205 +    ACPI_NAMESPACE_NODE             *PrefixNode;        /* Input: starting node */
      206 +    char                            *RelativePathname;  /* Input: path relative to PrefixNode */
      207 +    ACPI_OPERAND_OBJECT             **Parameters;       /* Input: argument list */
      208 +
      209 +    ACPI_NAMESPACE_NODE             *Node;              /* Resolved node (PrefixNode:RelativePathname) */
      210 +    ACPI_OPERAND_OBJECT             *ObjDesc;           /* Object attached to the resolved node */
      211 +    char                            *FullPathname;      /* Full pathname of the resolved node */
      212 +
      213 +    const ACPI_PREDEFINED_INFO      *Predefined;        /* Used if Node is a predefined name */
      214 +    ACPI_OPERAND_OBJECT             *ReturnObject;      /* Object returned from the evaluation */
      215 +    union acpi_operand_object       *ParentPackage;     /* Used if return object is a Package */
      216 +
      217 +    UINT32                          ReturnFlags;        /* Used for return value analysis */
      218 +    UINT32                          ReturnBtype;        /* Bitmapped type of the returned object */
      219 +    UINT16                          ParamCount;         /* Count of the input argument list */
      220 +    UINT8                           PassNumber;         /* Parser pass number */
      221 +    UINT8                           ReturnObjectType;   /* Object type of the returned object */
      222 +    UINT8                           NodeFlags;          /* Same as Node->Flags */
      223 +    UINT8                           Flags;              /* General flags */
      224 +
 214  225  } ACPI_EVALUATE_INFO;
 215  226  
 216  227  /* Values for Flags above */
 217  228  
 218      -#define ACPI_IGNORE_RETURN_VALUE        1
      229 +#define ACPI_IGNORE_RETURN_VALUE    1
 219  230  
      231 +/* Defines for ReturnFlags field above */
 220  232  
      233 +#define ACPI_OBJECT_REPAIRED        1
      234 +#define ACPI_OBJECT_WRAPPED         2
      235 +
      236 +
 221  237  /* Info used by AcpiNsInitializeDevices */
 222  238  
 223  239  typedef struct acpi_device_walk_info
 224  240  {
 225  241      ACPI_TABLE_DESC                 *TableDesc;
 226  242      ACPI_EVALUATE_INFO              *EvaluateInfo;
 227  243      UINT32                          DeviceCount;
 228  244      UINT32                          Num_STA;
 229  245      UINT32                          Num_INI;
 230  246  
↓ open down ↓ 24 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX