Print this page
update to acpica-unix2-20140114
acpica-unix2-20130823
PANKOVs restructure
   1 /******************************************************************************
   2  *
   3  * Name: acstruct.h - Internal structs
   4  *
   5  *****************************************************************************/
   6 
   7 /*
   8  * Copyright (C) 2000 - 2011, 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.
  17  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
  18  *    substantially similar to the "NO WARRANTY" disclaimer below
  19  *    ("Disclaimer") and any redistribution must be conditioned upon
  20  *    including a substantially similar Disclaimer requirement for further
  21  *    binary redistribution.
  22  * 3. Neither the names of the above-listed copyright holders nor the names
  23  *    of any contributors may be used to endorse or promote products derived
  24  *    from this software without specific prior written permission.
  25  *
  26  * Alternatively, this software may be distributed under the terms of the
  27  * GNU General Public License ("GPL") version 2 as published by the Free
  28  * Software Foundation.


 178     {
 179         ACPI_OPERAND_OBJECT             *Source;
 180         ACPI_OBJECT_INTEGER             *Index;
 181         ACPI_OPERAND_OBJECT             *Target;
 182 
 183     } Index;
 184 
 185     struct
 186     {
 187         ACPI_OPERAND_OBJECT             *Source;
 188         ACPI_OBJECT_INTEGER             *Index;
 189         ACPI_OBJECT_INTEGER             *Length;
 190         ACPI_OPERAND_OBJECT             *Target;
 191 
 192     } Mid;
 193 
 194 } ACPI_AML_OPERANDS;
 195 
 196 
 197 /*
 198  * Structure used to pass object evaluation parameters.
 199  * Purpose is to reduce CPU stack use.
 200  */
 201 typedef struct acpi_evaluate_info
 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;
 213 




















 214 } ACPI_EVALUATE_INFO;
 215 
 216 /* Values for Flags above */
 217 
 218 #define ACPI_IGNORE_RETURN_VALUE        1
 219 

 220 




 221 /* Info used by AcpiNsInitializeDevices */
 222 
 223 typedef struct acpi_device_walk_info
 224 {
 225     ACPI_TABLE_DESC                 *TableDesc;
 226     ACPI_EVALUATE_INFO              *EvaluateInfo;
 227     UINT32                          DeviceCount;
 228     UINT32                          Num_STA;
 229     UINT32                          Num_INI;
 230 
 231 } ACPI_DEVICE_WALK_INFO;
 232 
 233 
 234 /* TBD: [Restructure] Merge with struct above */
 235 
 236 typedef struct acpi_walk_info
 237 {
 238     UINT32                          DebugLevel;
 239     UINT32                          Count;
 240     ACPI_OWNER_ID                   OwnerId;
   1 /******************************************************************************
   2  *
   3  * Name: acstruct.h - Internal structs
   4  *
   5  *****************************************************************************/
   6 
   7 /*
   8  * Copyright (C) 2000 - 2014, 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.
  17  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
  18  *    substantially similar to the "NO WARRANTY" disclaimer below
  19  *    ("Disclaimer") and any redistribution must be conditioned upon
  20  *    including a substantially similar Disclaimer requirement for further
  21  *    binary redistribution.
  22  * 3. Neither the names of the above-listed copyright holders nor the names
  23  *    of any contributors may be used to endorse or promote products derived
  24  *    from this software without specific prior written permission.
  25  *
  26  * Alternatively, this software may be distributed under the terms of the
  27  * GNU General Public License ("GPL") version 2 as published by the Free
  28  * Software Foundation.


 178     {
 179         ACPI_OPERAND_OBJECT             *Source;
 180         ACPI_OBJECT_INTEGER             *Index;
 181         ACPI_OPERAND_OBJECT             *Target;
 182 
 183     } Index;
 184 
 185     struct
 186     {
 187         ACPI_OPERAND_OBJECT             *Source;
 188         ACPI_OBJECT_INTEGER             *Index;
 189         ACPI_OBJECT_INTEGER             *Length;
 190         ACPI_OPERAND_OBJECT             *Target;
 191 
 192     } Mid;
 193 
 194 } ACPI_AML_OPERANDS;
 195 
 196 
 197 /*
 198  * Structure used to pass object evaluation information and parameters.
 199  * Purpose is to reduce CPU stack use.
 200  */
 201 typedef struct acpi_evaluate_info
 202 {
 203     /* The first 3 elements are passed by the caller to AcpiNsEvaluate */









 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 
 225 } ACPI_EVALUATE_INFO;
 226 
 227 /* Values for Flags above */
 228 
 229 #define ACPI_IGNORE_RETURN_VALUE    1
 230 
 231 /* Defines for ReturnFlags field above */
 232 
 233 #define ACPI_OBJECT_REPAIRED        1
 234 #define ACPI_OBJECT_WRAPPED         2
 235 
 236 
 237 /* Info used by AcpiNsInitializeDevices */
 238 
 239 typedef struct acpi_device_walk_info
 240 {
 241     ACPI_TABLE_DESC                 *TableDesc;
 242     ACPI_EVALUATE_INFO              *EvaluateInfo;
 243     UINT32                          DeviceCount;
 244     UINT32                          Num_STA;
 245     UINT32                          Num_INI;
 246 
 247 } ACPI_DEVICE_WALK_INFO;
 248 
 249 
 250 /* TBD: [Restructure] Merge with struct above */
 251 
 252 typedef struct acpi_walk_info
 253 {
 254     UINT32                          DebugLevel;
 255     UINT32                          Count;
 256     ACPI_OWNER_ID                   OwnerId;