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/amlcode.h
          +++ new/usr/src/common/acpica/include/amlcode.h
   1    1  /******************************************************************************
   2    2   *
   3    3   * Name: amlcode.h - Definitions for AML, as included in "definition blocks"
   4    4   *                   Declarations and definitions contained herein are derived
   5    5   *                   directly from the ACPI specification.
   6    6   *
   7    7   *****************************************************************************/
   8    8  
   9    9  /*
  10      - * Copyright (C) 2000 - 2011, Intel Corp.
       10 + * Copyright (C) 2000 - 2014, Intel Corp.
  11   11   * All rights reserved.
  12   12   *
  13   13   * Redistribution and use in source and binary forms, with or without
  14   14   * modification, are permitted provided that the following conditions
  15   15   * are met:
  16   16   * 1. Redistributions of source code must retain the above copyright
  17   17   *    notice, this list of conditions, and the following disclaimer,
  18   18   *    without modification.
  19   19   * 2. Redistributions in binary form must reproduce at minimum a disclaimer
  20   20   *    substantially similar to the "NO WARRANTY" disclaimer below
↓ open down ↓ 163 lines elided ↑ open up ↑
 184  184  /*
 185  185   * Combination opcodes (actually two one-byte opcodes)
 186  186   * Used by the disassembler and iASL compiler
 187  187   */
 188  188  #define AML_LGREATEREQUAL_OP        (UINT16) 0x9295
 189  189  #define AML_LLESSEQUAL_OP           (UINT16) 0x9294
 190  190  #define AML_LNOTEQUAL_OP            (UINT16) 0x9293
 191  191  
 192  192  
 193  193  /*
      194 + * Opcodes for "Field" operators
      195 + */
      196 +#define AML_FIELD_OFFSET_OP         (UINT8) 0x00
      197 +#define AML_FIELD_ACCESS_OP         (UINT8) 0x01
      198 +#define AML_FIELD_CONNECTION_OP     (UINT8) 0x02        /* ACPI 5.0 */
      199 +#define AML_FIELD_EXT_ACCESS_OP     (UINT8) 0x03        /* ACPI 5.0 */
      200 +
      201 +
      202 +/*
 194  203   * Internal opcodes
 195  204   * Use only "Unknown" AML opcodes, don't attempt to use
 196  205   * any valid ACPI ASCII values (A-Z, 0-9, '-')
 197  206   */
 198  207  #define AML_INT_NAMEPATH_OP         (UINT16) 0x002d
 199  208  #define AML_INT_NAMEDFIELD_OP       (UINT16) 0x0030
 200  209  #define AML_INT_RESERVEDFIELD_OP    (UINT16) 0x0031
 201  210  #define AML_INT_ACCESSFIELD_OP      (UINT16) 0x0032
 202  211  #define AML_INT_BYTELIST_OP         (UINT16) 0x0033
 203  212  #define AML_INT_STATICSTRING_OP     (UINT16) 0x0034
 204  213  #define AML_INT_METHODCALL_OP       (UINT16) 0x0035
 205  214  #define AML_INT_RETURN_VALUE_OP     (UINT16) 0x0036
 206  215  #define AML_INT_EVAL_SUBTREE_OP     (UINT16) 0x0037
      216 +#define AML_INT_CONNECTION_OP       (UINT16) 0x0038
      217 +#define AML_INT_EXTACCESSFIELD_OP   (UINT16) 0x0039
 207  218  
 208      -
 209  219  #define ARG_NONE                    0x0
 210  220  
 211  221  /*
 212  222   * Argument types for the AML Parser
 213  223   * Each field in the ArgTypes UINT32 is 5 bits, allowing for a maximum of 6 arguments.
 214  224   * There can be up to 31 unique argument types
 215  225   * Zero is reserved as end-of-list indicator
 216  226   */
 217  227  #define ARGP_BYTEDATA               0x01
 218  228  #define ARGP_BYTELIST               0x02
↓ open down ↓ 252 lines elided ↑ open up ↑
 471  481  } AML_UPDATE_RULE;
 472  482  
 473  483  
 474  484  /*
 475  485   * Field Access Attributes.
 476  486   * This byte is extracted from the AML via the
 477  487   * AccessAs keyword
 478  488   */
 479  489  typedef enum
 480  490  {
 481      -    AML_FIELD_ATTRIB_SMB_QUICK      = 0x02,
 482      -    AML_FIELD_ATTRIB_SMB_SEND_RCV   = 0x04,
 483      -    AML_FIELD_ATTRIB_SMB_BYTE       = 0x06,
 484      -    AML_FIELD_ATTRIB_SMB_WORD       = 0x08,
 485      -    AML_FIELD_ATTRIB_SMB_BLOCK      = 0x0A,
 486      -    AML_FIELD_ATTRIB_SMB_WORD_CALL  = 0x0C,
 487      -    AML_FIELD_ATTRIB_SMB_BLOCK_CALL = 0x0D
      491 +    AML_FIELD_ATTRIB_QUICK          = 0x02,
      492 +    AML_FIELD_ATTRIB_SEND_RCV       = 0x04,
      493 +    AML_FIELD_ATTRIB_BYTE           = 0x06,
      494 +    AML_FIELD_ATTRIB_WORD           = 0x08,
      495 +    AML_FIELD_ATTRIB_BLOCK          = 0x0A,
      496 +    AML_FIELD_ATTRIB_MULTIBYTE      = 0x0B,
      497 +    AML_FIELD_ATTRIB_WORD_CALL      = 0x0C,
      498 +    AML_FIELD_ATTRIB_BLOCK_CALL     = 0x0D,
      499 +    AML_FIELD_ATTRIB_RAW_BYTES      = 0x0E,
      500 +    AML_FIELD_ATTRIB_RAW_PROCESS    = 0x0F
 488  501  
 489  502  } AML_ACCESS_ATTRIBUTE;
 490  503  
 491  504  
 492  505  /* Bit fields in the AML MethodFlags byte */
 493  506  
 494  507  #define AML_METHOD_ARG_COUNT        0x07
 495  508  #define AML_METHOD_SERIALIZED       0x08
 496  509  #define AML_METHOD_SYNC_LEVEL       0xF0
 497  510  
 498  511  
 499  512  #endif /* __AMLCODE_H__ */
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX