Merge branch 'asus' into release
[firefly-linux-kernel-4.4.55.git] / drivers / acpi / acpica / acpredef.h
index 63f656ae3604d6c4acb06049416c9abc3bdcb52d..cd80d1dd195093fc726bc9253a8f1423dc79d4a2 100644 (file)
@@ -64,8 +64,8 @@
  *      (Used for _PRW)
  *
  *
- * 2) PTYPE2 packages contain a variable number of sub-packages. Each of the
- *    different types describe the contents of each of the sub-packages.
+ * 2) PTYPE2 packages contain a Variable-length number of sub-packages. Each
+ *    of the different types describe the contents of each of the sub-packages.
  *
  * ACPI_PTYPE2: Each subpackage contains 1 or 2 object types:
  *      object type
@@ -91,6 +91,9 @@
  * ACPI_PTYPE2_MIN: Each subpackage has a variable but minimum length
  *      (Used for _HPX)
  *
+ * ACPI_PTYPE2_REV_FIXED: Revision at start, each subpackage is Fixed-length
+ *      (Used for _ART, _FPS)
+ *
  *****************************************************************************/
 
 enum acpi_return_package_types {
@@ -101,9 +104,11 @@ enum acpi_return_package_types {
        ACPI_PTYPE2_COUNT = 5,
        ACPI_PTYPE2_PKG_COUNT = 6,
        ACPI_PTYPE2_FIXED = 7,
-       ACPI_PTYPE2_MIN = 8
+       ACPI_PTYPE2_MIN = 8,
+       ACPI_PTYPE2_REV_FIXED = 9
 };
 
+#ifdef ACPI_CREATE_PREDEFINED_TABLE
 /*
  * Predefined method/object information table.
  *
@@ -136,239 +141,384 @@ enum acpi_return_package_types {
  * is saved here (rather than in a separate table) in order to minimize the
  * overall size of the stored data.
  */
-static const union acpi_predefined_info predefined_names[] = {
-       {.info = {"_AC0", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC1", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC2", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC3", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC4", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC5", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC6", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC7", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC8", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AC9", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_ADR", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_AL0", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL1", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL2", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL3", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL4", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL5", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL6", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL7", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL8", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_AL9", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_ALC", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_ALI", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_ALP", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_ALR", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 2, 0, 0, 0}}, /* variable (Pkgs) each 2 (Ints) */
-       {.info = {"_ALT", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_BBN", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_BCL", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0, 0, 0, 0}},     /* variable (Ints) */
-       {.info = {"_BCM", 1, 0}},
-       {.info = {"_BDN", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_BFS", 1, 0}},
-       {.info = {"_BIF", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER,
-                                         9,
-                                         ACPI_RTYPE_STRING | ACPI_RTYPE_BUFFER, 4, 0}},        /* fixed (9 Int),(4 Str) */
-       {.info = {"_BLT", 3, 0}},
-       {.info = {"_BMC", 1, 0}},
-       {.info = {"_BMD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 5, 0, 0, 0}},   /* fixed (5 Int) */
-       {.info = {"_BQC", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_BST", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0}},   /* fixed (4 Int) */
-       {.info = {"_BTM", 1, ACPI_RTYPE_INTEGER}},
-       {.info = {"_BTP", 1, 0}},
-       {.info = {"_CBA", 0, ACPI_RTYPE_INTEGER}},      /* see PCI firmware spec 3.0 */
-       {.info = {"_CID", 0,
-        ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING | ACPI_RTYPE_PACKAGE}},
-       {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING, 0, 0, 0, 0}},    /* variable (Ints/Strs) */
-       {.info = {"_CRS", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_CRT", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_CSD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 0, 0, 0, 0}},   /* variable (1 Int(n), n-1 Int) */
-       {.info = {"_CST", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2_PKG_COUNT,
-                                         ACPI_RTYPE_BUFFER, 1,
-                                         ACPI_RTYPE_INTEGER, 3, 0}},   /* variable (1 Int(n), n Pkg (1 Buf/3 Int) */
-       {.info = {"_DCK", 1, ACPI_RTYPE_INTEGER}},
-       {.info = {"_DCS", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_DDC", 1, ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER}},
-       {.info = {"_DDN", 0, ACPI_RTYPE_STRING}},
-       {.info = {"_DGS", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_DIS", 0, 0}},
-       {.info = {"_DMA", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_DOD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0, 0, 0, 0}},     /* variable (Ints) */
-       {.info = {"_DOS", 1, 0}},
-       {.info = {"_DSM", 4, ACPI_RTYPE_ALL}},  /* Must return a type, but it can be of any type */
-       {.info = {"_DSS", 1, 0}},
-       {.info = {"_DSW", 3, 0}},
-       {.info = {"_EC_", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_EDL", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_EJ0", 1, 0}},
-       {.info = {"_EJ1", 1, 0}},
-       {.info = {"_EJ2", 1, 0}},
-       {.info = {"_EJ3", 1, 0}},
-       {.info = {"_EJ4", 1, 0}},
-       {.info = {"_EJD", 0, ACPI_RTYPE_STRING}},
-       {.info = {"_FDE", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_FDI", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 16, 0, 0, 0}},  /* fixed (16 Int) */
-       {.info = {"_FDM", 1, 0}},
-       {.info = {"_FIX", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0, 0, 0, 0}},     /* variable (Ints) */
-       {.info = {"_GLK", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_GPD", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_GPE", 0, ACPI_RTYPE_INTEGER}},      /* _GPE method, not _GPE scope */
-       {.info = {"_GSB", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_GTF", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_GTM", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_GTS", 1, 0}},
-       {.info = {"_HID", 0, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING}},
-       {.info = {"_HOT", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_HPP", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0}},   /* fixed (4 Int) */
+static const union acpi_predefined_info predefined_names[] =
+{
+       {{"_AC0", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC1", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC2", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC3", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC4", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC5", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC6", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC7", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC8", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AC9", 0, ACPI_RTYPE_INTEGER}},
+       {{"_ADR", 0, ACPI_RTYPE_INTEGER}},
+       {{"_AL0", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL1", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL2", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL3", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL4", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL5", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL6", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL7", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL8", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_AL9", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_ALC", 0, ACPI_RTYPE_INTEGER}},
+       {{"_ALI", 0, ACPI_RTYPE_INTEGER}},
+       {{"_ALP", 0, ACPI_RTYPE_INTEGER}},
+       {{"_ALR", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each 2 (Ints) */
+                         {{{ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 2,0}, 0,0}},
+
+       {{"_ALT", 0, ACPI_RTYPE_INTEGER}},
+       {{"_ART", 0, ACPI_RTYPE_PACKAGE}},      /* Variable-length (1 Int(rev), n Pkg (2 Ref/11 Int) */
+       {{{ACPI_PTYPE2_REV_FIXED, ACPI_RTYPE_REFERENCE, 2, ACPI_RTYPE_INTEGER},
+         11, 0}},
+
+       {{"_BBN", 0, ACPI_RTYPE_INTEGER}},
+       {{"_BCL", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Ints) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0,0}, 0,0}},
+
+       {{"_BCM", 1, 0}},
+       {{"_BCT", 1, ACPI_RTYPE_INTEGER}},
+       {{"_BDN", 0, ACPI_RTYPE_INTEGER}},
+       {{"_BFS", 1, 0}},
+       {{"_BIF", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (9 Int),(4 Str) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 9, ACPI_RTYPE_STRING}, 4,0}},
+
+       {{"_BIX", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (16 Int),(4 Str) */
+       {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 16, ACPI_RTYPE_STRING}, 4,
+         0}},
+
+       {{"_BLT", 3, 0}},
+       {{"_BMA", 1, ACPI_RTYPE_INTEGER}},
+       {{"_BMC", 1, 0}},
+       {{"_BMD", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (5 Int) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 5,0}, 0,0}},
+
+       {{"_BMS", 1, ACPI_RTYPE_INTEGER}},
+       {{"_BQC", 0, ACPI_RTYPE_INTEGER}},
+       {{"_BST", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (4 Int) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4,0}, 0,0}},
+
+       {{"_BTM", 1, ACPI_RTYPE_INTEGER}},
+       {{"_BTP", 1, 0}},
+       {{"_CBA", 0, ACPI_RTYPE_INTEGER}}, /* See PCI firmware spec 3.0 */
+       {{"_CDM", 0, ACPI_RTYPE_INTEGER}},
+       {{"_CID", 0, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING | ACPI_RTYPE_PACKAGE}}, /* Variable-length (Ints/Strs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING, 0,0}, 0,0}},
+
+       {{"_CRS", 0, ACPI_RTYPE_BUFFER}},
+       {{"_CRT", 0, ACPI_RTYPE_INTEGER}},
+       {{"_CSD", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (1 Int(n), n-1 Int) */
+                         {{{ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 0,0}, 0,0}},
+
+       {{"_CST", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (1 Int(n), n Pkg (1 Buf/3 Int) */
+                         {{{ACPI_PTYPE2_PKG_COUNT,ACPI_RTYPE_BUFFER, 1, ACPI_RTYPE_INTEGER}, 3,0}},
+
+       {{"_DCK", 1, ACPI_RTYPE_INTEGER}},
+       {{"_DCS", 0, ACPI_RTYPE_INTEGER}},
+       {{"_DDC", 1, ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER}},
+       {{"_DDN", 0, ACPI_RTYPE_STRING}},
+       {{"_DGS", 0, ACPI_RTYPE_INTEGER}},
+       {{"_DIS", 0, 0}},
+       {{"_DMA", 0, ACPI_RTYPE_BUFFER}},
+       {{"_DOD", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Ints) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0,0}, 0,0}},
+
+       {{"_DOS", 1, 0}},
+       {{"_DSM", 4, ACPI_RTYPE_ALL}},     /* Must return a type, but it can be of any type */
+       {{"_DSS", 1, 0}},
+       {{"_DSW", 3, 0}},
+       {{"_DTI", 1, 0}},
+       {{"_EC_", 0, ACPI_RTYPE_INTEGER}},
+       {{"_EDL", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs)*/
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_EJ0", 1, 0}},
+       {{"_EJ1", 1, 0}},
+       {{"_EJ2", 1, 0}},
+       {{"_EJ3", 1, 0}},
+       {{"_EJ4", 1, 0}},
+       {{"_EJD", 0, ACPI_RTYPE_STRING}},
+       {{"_FDE", 0, ACPI_RTYPE_BUFFER}},
+       {{"_FDI", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (16 Int) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 16,0}, 0,0}},
+
+       {{"_FDM", 1, 0}},
+       {{"_FIF", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (4 Int) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0}, 0, 0}},
+
+       {{"_FIX", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Ints) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0,0}, 0,0}},
+
+       {{"_FPS", 0, ACPI_RTYPE_PACKAGE}},      /* Variable-length (1 Int(rev), n Pkg (5 Int) */
+       {{{ACPI_PTYPE2_REV_FIXED, ACPI_RTYPE_INTEGER, 5, 0}, 0, 0}},
+
+       {{"_FSL", 1, 0}},
+       {{"_FST", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (3 Int) */
+       {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3, 0}, 0, 0}},
+
+       {{"_GAI", 0, ACPI_RTYPE_INTEGER}},
+       {{"_GHL", 0, ACPI_RTYPE_INTEGER}},
+       {{"_GLK", 0, ACPI_RTYPE_INTEGER}},
+       {{"_GPD", 0, ACPI_RTYPE_INTEGER}},
+       {{"_GPE", 0, ACPI_RTYPE_INTEGER}}, /* _GPE method, not _GPE scope */
+       {{"_GSB", 0, ACPI_RTYPE_INTEGER}},
+       {{"_GTF", 0, ACPI_RTYPE_BUFFER}},
+       {{"_GTM", 0, ACPI_RTYPE_BUFFER}},
+       {{"_GTS", 1, 0}},
+       {{"_HID", 0, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING}},
+       {{"_HOT", 0, ACPI_RTYPE_INTEGER}},
+       {{"_HPP", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (4 Int) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4,0}, 0,0}},
 
        /*
-        * For _HPX, a single package is returned, containing a variable number of sub-packages.
-        * Each sub-package contains a PCI record setting. There are several different type of
-        * record settings, of different lengths, but all elements of all settings are Integers.
+        * For _HPX, a single package is returned, containing a Variable-length number
+        * of sub-packages. Each sub-package contains a PCI record setting.
+        * There are several different type of record settings, of different
+        * lengths, but all elements of all settings are Integers.
         */
-       {.info = {"_HPX", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2_MIN, ACPI_RTYPE_INTEGER, 5, 0, 0, 0}},     /* variable (Pkgs) each (var Ints) */
-       {.info = {"_IFT", 0, ACPI_RTYPE_INTEGER}},      /* see IPMI spec */
-       {.info = {"_INI", 0, 0}},
-       {.info = {"_IRC", 0, 0}},
-       {.info = {"_LCK", 1, 0}},
-       {.info = {"_LID", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_MAT", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_MLS", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2, ACPI_RTYPE_STRING, 2, 0, 0, 0}},  /* variable (Pkgs) each (2 Str) */
-       {.info = {"_MSG", 1, 0}},
-       {.info = {"_OFF", 0, 0}},
-       {.info = {"_ON_", 0, 0}},
-       {.info = {"_OS_", 0, ACPI_RTYPE_STRING}},
-       {.info = {"_OSC", 4, ACPI_RTYPE_BUFFER}},
-       {.info = {"_OST", 3, 0}},
-       {.info = {"_PCL", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_PCT", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER, 2, 0, 0, 0}},    /* fixed (2 Buf) */
-       {.info = {"_PDC", 1, 0}},
-       {.info = {"_PIC", 1, 0}},
-       {.info = {"_PLD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_BUFFER, 0, 0, 0, 0}},      /* variable (Bufs) */
-       {.info = {"_PPC", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_PPE", 0, ACPI_RTYPE_INTEGER}},      /* see dig64 spec */
-       {.info = {"_PR0", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_PR1", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_PR2", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_PRS", 0, ACPI_RTYPE_BUFFER}},
+       {{"_HPX", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each (var Ints) */
+                         {{{ACPI_PTYPE2_MIN, ACPI_RTYPE_INTEGER, 5,0}, 0,0}},
+
+       {{"_IFT", 0, ACPI_RTYPE_INTEGER}}, /* See IPMI spec */
+       {{"_INI", 0, 0}},
+       {{"_IRC", 0, 0}},
+       {{"_LCK", 1, 0}},
+       {{"_LID", 0, ACPI_RTYPE_INTEGER}},
+       {{"_MAT", 0, ACPI_RTYPE_BUFFER}},
+       {{"_MBM", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (8 Int) */
+       {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 8, 0}, 0, 0}},
+
+       {{"_MLS", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each (2 Str) */
+                         {{{ACPI_PTYPE2, ACPI_RTYPE_STRING, 2,0}, 0,0}},
+
+       {{"_MSG", 1, 0}},
+       {{"_MSM", 4, ACPI_RTYPE_INTEGER}},
+       {{"_NTT", 0, ACPI_RTYPE_INTEGER}},
+       {{"_OFF", 0, 0}},
+       {{"_ON_", 0, 0}},
+       {{"_OS_", 0, ACPI_RTYPE_STRING}},
+       {{"_OSC", 4, ACPI_RTYPE_BUFFER}},
+       {{"_OST", 3, 0}},
+       {{"_PAI", 1, ACPI_RTYPE_INTEGER}},
+       {{"_PCL", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_PCT", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (2 Buf) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER, 2,0}, 0,0}},
+
+       {{"_PDC", 1, 0}},
+       {{"_PDL", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PIC", 1, 0}},
+       {{"_PIF", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (3 Int),(3 Str) */
+       {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3, ACPI_RTYPE_STRING}, 3, 0}},
+
+       {{"_PLD", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Bufs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_BUFFER, 0,0}, 0,0}},
+
+       {{"_PMC", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (11 Int),(3 Str) */
+       {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 11, ACPI_RTYPE_STRING}, 3,
+         0}},
+
+       {{"_PMD", 0, ACPI_RTYPE_PACKAGE}},      /* Variable-length (Refs) */
+       {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0}, 0, 0}},
+
+       {{"_PMM", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PPC", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PPE", 0, ACPI_RTYPE_INTEGER}}, /* See dig64 spec */
+       {{"_PR0", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_PR1", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_PR2", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_PR3", 0, ACPI_RTYPE_PACKAGE}},      /* Variable-length (Refs) */
+       {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0}, 0, 0}},
+
+       {{"_PRL", 0, ACPI_RTYPE_PACKAGE}},      /* Variable-length (Refs) */
+       {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0}, 0, 0}},
+
+       {{"_PRS", 0, ACPI_RTYPE_BUFFER}},
 
        /*
-        * For _PRT, many BIOSs reverse the 2nd and 3rd Package elements. This bug is so prevalent that there
-        * is code in the ACPICA Resource Manager to detect this and switch them back. For now, do not allow
-        * and issue a warning. To allow this and eliminate the warning, add the ACPI_RTYPE_REFERENCE
-        * type to the 2nd element (index 1) in the statement below.
+        * For _PRT, many BIOSs reverse the 3rd and 4th Package elements (Source
+        * and source_index). This bug is so prevalent that there is code in the
+        * ACPICA Resource Manager to detect this and switch them back. For now,
+        * do not allow and issue a warning. To allow this and eliminate the
+        * warning, add the ACPI_RTYPE_REFERENCE type to the 4th element (index 3)
+        * in the statement below.
         */
-       {.info = {"_PRT", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2_FIXED, 4,
-                                         ACPI_RTYPE_INTEGER,
-                                         ACPI_RTYPE_INTEGER,
-                                         ACPI_RTYPE_INTEGER | ACPI_RTYPE_REFERENCE, ACPI_RTYPE_INTEGER}},      /* variable (Pkgs) each (4): Int,Int,Int/Ref,Int */
-
-       {.info = {"_PRW", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_OPTION, 2,
-                                         ACPI_RTYPE_INTEGER |
-                                         ACPI_RTYPE_PACKAGE,
-                                         ACPI_RTYPE_INTEGER, ACPI_RTYPE_REFERENCE, 0}},        /* variable (Pkgs) each: Pkg/Int,Int,[variable Refs] (Pkg is Ref/Int) */
-
-       {.info = {"_PS0", 0, 0}},
-       {.info = {"_PS1", 0, 0}},
-       {.info = {"_PS2", 0, 0}},
-       {.info = {"_PS3", 0, 0}},
-       {.info = {"_PSC", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_PSD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 0, 0, 0, 0}},   /* variable (Pkgs) each (5 Int) with count */
-       {.info = {"_PSL", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_PSR", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_PSS", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 6, 0, 0, 0}}, /* variable (Pkgs) each (6 Int) */
-       {.info = {"_PSV", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_PSW", 1, 0}},
-       {.info = {"_PTC", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER, 2, 0, 0, 0}},    /* fixed (2 Buf) */
-       {.info = {"_PTS", 1, 0}},
-       {.info = {"_PXM", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_REG", 2, 0}},
-       {.info = {"_REV", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_RMV", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_ROM", 2, ACPI_RTYPE_BUFFER}},
-       {.info = {"_RTV", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PRT", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each (4): Int,Int,Int/Ref,Int */
+                         {{{ACPI_PTYPE2_FIXED, 4, ACPI_RTYPE_INTEGER,ACPI_RTYPE_INTEGER},
+                         ACPI_RTYPE_INTEGER | ACPI_RTYPE_REFERENCE,
+                         ACPI_RTYPE_INTEGER}},
+
+       {{"_PRW", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each: Pkg/Int,Int,[Variable-length Refs] (Pkg is Ref/Int) */
+                         {{{ACPI_PTYPE1_OPTION, 2, ACPI_RTYPE_INTEGER | ACPI_RTYPE_PACKAGE,
+                         ACPI_RTYPE_INTEGER}, ACPI_RTYPE_REFERENCE,0}},
+
+       {{"_PS0", 0, 0}},
+       {{"_PS1", 0, 0}},
+       {{"_PS2", 0, 0}},
+       {{"_PS3", 0, 0}},
+       {{"_PSC", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PSD", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each (5 Int) with count */
+                         {{{ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER,0,0}, 0,0}},
+
+       {{"_PSL", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_PSR", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PSS", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each (6 Int) */
+                         {{{ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 6,0}, 0,0}},
+
+       {{"_PSV", 0, ACPI_RTYPE_INTEGER}},
+       {{"_PSW", 1, 0}},
+       {{"_PTC", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (2 Buf) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER, 2,0}, 0,0}},
+
+       {{"_PTP", 2, ACPI_RTYPE_INTEGER}},
+       {{"_PTS", 1, 0}},
+       {{"_PUR", 0, ACPI_RTYPE_PACKAGE}},      /* Fixed-length (2 Int) */
+       {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2, 0}, 0, 0}},
+
+       {{"_PXM", 0, ACPI_RTYPE_INTEGER}},
+       {{"_REG", 2, 0}},
+       {{"_REV", 0, ACPI_RTYPE_INTEGER}},
+       {{"_RMV", 0, ACPI_RTYPE_INTEGER}},
+       {{"_ROM", 2, ACPI_RTYPE_BUFFER}},
+       {{"_RTV", 0, ACPI_RTYPE_INTEGER}},
 
        /*
-        * For _S0_ through _S5_, the ACPI spec defines a return Package containing 1 Integer,
-        * but most DSDTs have it wrong - 2,3, or 4 integers. Allow this by making the objects "variable length",
-        * but all elements must be Integers.
+        * For _S0_ through _S5_, the ACPI spec defines a return Package
+        * containing 1 Integer, but most DSDTs have it wrong - 2,3, or 4 integers.
+        * Allow this by making the objects "Variable-length length", but all elements
+        * must be Integers.
         */
-       {.info = {"_S0_", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0}},     /* fixed (1 Int) */
-       {.info = {"_S1_", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0}},     /* fixed (1 Int) */
-       {.info = {"_S2_", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0}},     /* fixed (1 Int) */
-       {.info = {"_S3_", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0}},     /* fixed (1 Int) */
-       {.info = {"_S4_", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0}},     /* fixed (1 Int) */
-       {.info = {"_S5_", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0}},     /* fixed (1 Int) */
-
-       {.info = {"_S1D", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S2D", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S3D", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S4D", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S0W", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S1W", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S2W", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S3W", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_S4W", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_SBS", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_SCP", 0x13, 0}},    /* Acpi 1.0 allowed 1 arg. Acpi 3.0 expanded to 3 args. Allow both. */
-       /* Note: the 3-arg definition may be removed for ACPI 4.0 */
-       {.info = {"_SDD", 1, 0}},
-       {.info = {"_SEG", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_SLI", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_SPD", 1, ACPI_RTYPE_INTEGER}},
-       {.info = {"_SRS", 1, 0}},
-       {.info = {"_SRV", 0, ACPI_RTYPE_INTEGER}},      /* see IPMI spec */
-       {.info = {"_SST", 1, 0}},
-       {.info = {"_STA", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_STM", 3, 0}},
-       {.info = {"_STR", 0, ACPI_RTYPE_BUFFER}},
-       {.info = {"_SUN", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_SWS", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TC1", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TC2", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TMP", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TPC", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TPT", 1, 0}},
-       {.info = {"_TRT", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2, ACPI_RTYPE_REFERENCE, 2,
-                                         ACPI_RTYPE_INTEGER, 6, 0}},   /* variable (Pkgs) each 2_ref/6_int */
-       {.info = {"_TSD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 5, 0, 0, 0}},   /* variable (Pkgs) each 5_int with count */
-       {.info = {"_TSP", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TSS", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 5, 0, 0, 0}}, /* variable (Pkgs) each 5_int */
-       {.info = {"_TST", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_TTS", 1, 0}},
-       {.info = {"_TZD", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0}},   /* variable (Refs) */
-       {.info = {"_TZM", 0, ACPI_RTYPE_REFERENCE}},
-       {.info = {"_TZP", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_UID", 0, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING}},
-       {.info = {"_UPC", 0, ACPI_RTYPE_PACKAGE}}, {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0}},   /* fixed (4 Int) */
-       {.info = {"_UPD", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_UPP", 0, ACPI_RTYPE_INTEGER}},
-       {.info = {"_VPO", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S0_", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (1 Int) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1,0}, 0,0}},
+
+       {{"_S1_", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (1 Int) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1,0}, 0,0}},
+
+       {{"_S2_", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (1 Int) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1,0}, 0,0}},
+
+       {{"_S3_", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (1 Int) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1,0}, 0,0}},
+
+       {{"_S4_", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (1 Int) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1,0}, 0,0}},
+
+       {{"_S5_", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (1 Int) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1,0}, 0,0}},
+
+       {{"_S1D", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S2D", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S3D", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S4D", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S0W", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S1W", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S2W", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S3W", 0, ACPI_RTYPE_INTEGER}},
+       {{"_S4W", 0, ACPI_RTYPE_INTEGER}},
+       {{"_SBS", 0, ACPI_RTYPE_INTEGER}},
+       {{"_SCP", 0x13, 0}},               /* Acpi 1.0 allowed 1 arg. Acpi 3.0 expanded to 3 args. Allow both. */
+                          /* Note: the 3-arg definition may be removed for ACPI 4.0 */
+       {{"_SDD", 1, 0}},
+       {{"_SEG", 0, ACPI_RTYPE_INTEGER}},
+       {{"_SHL", 1, ACPI_RTYPE_INTEGER}},
+       {{"_SLI", 0, ACPI_RTYPE_BUFFER}},
+       {{"_SPD", 1, ACPI_RTYPE_INTEGER}},
+       {{"_SRS", 1, 0}},
+       {{"_SRV", 0, ACPI_RTYPE_INTEGER}}, /* See IPMI spec */
+       {{"_SST", 1, 0}},
+       {{"_STA", 0, ACPI_RTYPE_INTEGER}},
+       {{"_STM", 3, 0}},
+       {{"_STP", 2, ACPI_RTYPE_INTEGER}},
+       {{"_STR", 0, ACPI_RTYPE_BUFFER}},
+       {{"_STV", 2, ACPI_RTYPE_INTEGER}},
+       {{"_SUN", 0, ACPI_RTYPE_INTEGER}},
+       {{"_SWS", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TC1", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TC2", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TIP", 1, ACPI_RTYPE_INTEGER}},
+       {{"_TIV", 1, ACPI_RTYPE_INTEGER}},
+       {{"_TMP", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TPC", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TPT", 1, 0}},
+       {{"_TRT", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each 2_ref/6_int */
+                         {{{ACPI_PTYPE2, ACPI_RTYPE_REFERENCE, 2, ACPI_RTYPE_INTEGER}, 6, 0}},
+
+       {{"_TSD", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each 5_int with count */
+                         {{{ACPI_PTYPE2_COUNT,ACPI_RTYPE_INTEGER, 5,0}, 0,0}},
+
+       {{"_TSP", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TSS", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Pkgs) each 5_int */
+                         {{{ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 5,0}, 0,0}},
+
+       {{"_TST", 0, ACPI_RTYPE_INTEGER}},
+       {{"_TTS", 1, 0}},
+       {{"_TZD", 0, ACPI_RTYPE_PACKAGE}}, /* Variable-length (Refs) */
+                         {{{ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0,0}, 0,0}},
+
+       {{"_TZM", 0, ACPI_RTYPE_REFERENCE}},
+       {{"_TZP", 0, ACPI_RTYPE_INTEGER}},
+       {{"_UID", 0, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING}},
+       {{"_UPC", 0, ACPI_RTYPE_PACKAGE}}, /* Fixed-length (4 Int) */
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4,0}, 0,0}},
+
+       {{"_UPD", 0, ACPI_RTYPE_INTEGER}},
+       {{"_UPP", 0, ACPI_RTYPE_INTEGER}},
+       {{"_VPO", 0, ACPI_RTYPE_INTEGER}},
 
        /* Acpi 1.0 defined _WAK with no return value. Later, it was changed to return a package */
 
-       {.info = {"_WAK", 1, ACPI_RTYPE_NONE | ACPI_RTYPE_INTEGER | ACPI_RTYPE_PACKAGE}},
-       {.ret_info = {ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2, 0, 0, 0}},      /* fixed (2 Int), but is optional */
-       {.ret_info = {0, 0, 0, 0, 0, 0}}        /* Table terminator */
+       {{"_WAK", 1, ACPI_RTYPE_NONE | ACPI_RTYPE_INTEGER | ACPI_RTYPE_PACKAGE}},
+                         {{{ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2,0}, 0,0}}, /* Fixed-length (2 Int), but is optional */
+
+       {{{0,0,0,0}, 0,0}} /* Table terminator */
 };
 
 #if 0
        /* Not implemented */
 
-{
-"_WDG", 0, ACPI_RTYPE_BUFFER}, /* MS Extension */
+       {{"_WDG", 0, ACPI_RTYPE_BUFFER}},  /* MS Extension */
+       {{"_WED", 1, ACPI_RTYPE_PACKAGE}}, /* MS Extension */
 
-{
-"_WED", 1, ACPI_RTYPE_PACKAGE},        /* MS Extension */
+       /* This is an internally implemented control method, no need to check */
+       {{"_OSI", 1, ACPI_RTYPE_INTEGER}},
 
-    /* This is an internally implemented control method, no need to check */
-{
-"_OSI", 1, ACPI_RTYPE_INTEGER},
+       /* TBD: */
+
+       _PRT - currently ignore reversed entries. attempt to fix here?
+       think about possibly fixing package elements like _BIF, etc.
+#endif
 
-    /* TBD: */
-    _PRT - currently ignore reversed entries.attempt to fix here ?
-    think about code that attempts to fix package elements like _BIF, etc.
 #endif
 #endif