Home | History | Annotate | Line # | Download | only in acpiexec
aetables.h revision 1.1.1.11
      1       1.1    jruoho /******************************************************************************
      2       1.1    jruoho  *
      3       1.1    jruoho  * Module Name: aetables.h - Precompiled AML ACPI tables for acpiexec
      4       1.1    jruoho  *
      5       1.1    jruoho  *****************************************************************************/
      6       1.1    jruoho 
      7       1.1    jruoho /*
      8  1.1.1.11  christos  * Copyright (C) 2000 - 2021, Intel Corp.
      9       1.1    jruoho  * All rights reserved.
     10       1.1    jruoho  *
     11       1.1    jruoho  * Redistribution and use in source and binary forms, with or without
     12       1.1    jruoho  * modification, are permitted provided that the following conditions
     13       1.1    jruoho  * are met:
     14       1.1    jruoho  * 1. Redistributions of source code must retain the above copyright
     15       1.1    jruoho  *    notice, this list of conditions, and the following disclaimer,
     16       1.1    jruoho  *    without modification.
     17       1.1    jruoho  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
     18       1.1    jruoho  *    substantially similar to the "NO WARRANTY" disclaimer below
     19       1.1    jruoho  *    ("Disclaimer") and any redistribution must be conditioned upon
     20       1.1    jruoho  *    including a substantially similar Disclaimer requirement for further
     21       1.1    jruoho  *    binary redistribution.
     22       1.1    jruoho  * 3. Neither the names of the above-listed copyright holders nor the names
     23       1.1    jruoho  *    of any contributors may be used to endorse or promote products derived
     24       1.1    jruoho  *    from this software without specific prior written permission.
     25       1.1    jruoho  *
     26       1.1    jruoho  * Alternatively, this software may be distributed under the terms of the
     27       1.1    jruoho  * GNU General Public License ("GPL") version 2 as published by the Free
     28       1.1    jruoho  * Software Foundation.
     29       1.1    jruoho  *
     30       1.1    jruoho  * NO WARRANTY
     31       1.1    jruoho  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     32       1.1    jruoho  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     33  1.1.1.11  christos  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
     34       1.1    jruoho  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     35       1.1    jruoho  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     36       1.1    jruoho  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     37       1.1    jruoho  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     38       1.1    jruoho  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     39       1.1    jruoho  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     40       1.1    jruoho  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     41       1.1    jruoho  * POSSIBILITY OF SUCH DAMAGES.
     42       1.1    jruoho  */
     43       1.1    jruoho 
     44       1.1    jruoho #ifndef __AETABLES_H__
     45       1.1    jruoho #define __AETABLES_H__
     46       1.1    jruoho 
     47       1.1    jruoho 
     48       1.1    jruoho /*
     49       1.1    jruoho  * Miscellaneous pre-compiled AML ACPI tables to be installed
     50       1.1    jruoho  */
     51       1.1    jruoho 
     52   1.1.1.4  christos /* Local DSDT used only if not present in the input */
     53       1.1    jruoho 
     54       1.1    jruoho static unsigned char LocalDsdtCode[] =
     55       1.1    jruoho {
     56       1.1    jruoho     0x44,0x53,0x44,0x54,0x24,0x00,0x00,0x00,  /* 00000000    "DSDT$..." */
     57       1.1    jruoho     0x02,0x2C,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    ".,Intel." */
     58       1.1    jruoho     0x4C,0x6F,0x63,0x61,0x6C,0x00,0x00,0x00,  /* 00000010    "Local..." */
     59       1.1    jruoho     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
     60       1.1    jruoho     0x30,0x07,0x09,0x20,
     61       1.1    jruoho };
     62       1.1    jruoho 
     63       1.1    jruoho /* Several example SSDTs */
     64       1.1    jruoho 
     65   1.1.1.3  christos /* SSDT1 is used by ASLTS; if changed here, must also be changed in dtregions.asl */
     66   1.1.1.3  christos 
     67       1.1    jruoho static unsigned char Ssdt1Code[] = /* Has method _T98 */
     68       1.1    jruoho {
     69   1.1.1.3  christos     0x53,0x53,0x44,0x54,0x3E,0x00,0x00,0x00,  /* 00000000    "SSDT>..." */
     70   1.1.1.3  christos     0x02,0x08,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    "..Intel." */
     71   1.1.1.3  christos     0x73,0x73,0x64,0x74,0x31,0x00,0x00,0x00,  /* 00000010    "ssdt1..." */
     72       1.1    jruoho     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
     73   1.1.1.3  christos     0x20,0x06,0x12,0x20,0x14,0x19,0x5F,0x54,  /* 00000020    " .. .._T" */
     74   1.1.1.3  christos     0x39,0x38,0x01,0x70,0x0D,0x53,0x53,0x44,  /* 00000028    "98.p.SSD" */
     75   1.1.1.3  christos     0x54,0x31,0x20,0x2D,0x20,0x5F,0x54,0x39,  /* 00000030    "T1 - _T9" */
     76   1.1.1.3  christos     0x38,0x00,0x5B,0x31,0xA4,0x00             /* 00000038    "8.[1.."   */
     77       1.1    jruoho };
     78       1.1    jruoho 
     79   1.1.1.3  christos unsigned char Ssdt2Code[] = /* Has method _T99 */
     80       1.1    jruoho {
     81   1.1.1.3  christos     0x53,0x53,0x44,0x54,0x3E,0x00,0x00,0x00,  /* 00000000    "SSDT>..." */
     82   1.1.1.3  christos     0x02,0xFE,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    "..Intel." */
     83   1.1.1.3  christos     0x73,0x73,0x64,0x74,0x32,0x00,0x00,0x00,  /* 00000010    "ssdt2..." */
     84   1.1.1.3  christos     0x02,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
     85   1.1.1.3  christos     0x20,0x06,0x12,0x20,0x14,0x19,0x5F,0x54,  /* 00000020    " .. .._T" */
     86   1.1.1.3  christos     0x39,0x39,0x06,0x70,0x0D,0x53,0x53,0x44,  /* 00000028    "99.p.SSD" */
     87   1.1.1.3  christos     0x54,0x32,0x20,0x2D,0x20,0x5F,0x54,0x39,  /* 00000030    "T2 - _T9" */
     88   1.1.1.3  christos     0x39,0x00,0x5B,0x31,0xA4,0x00             /* 00000038    "9.[1.."   */
     89       1.1    jruoho };
     90       1.1    jruoho 
     91   1.1.1.3  christos unsigned char Ssdt3Code[] =     /* OEM9: Has method _T97 */
     92       1.1    jruoho {
     93   1.1.1.3  christos     0x4F,0x45,0x4D,0x39,0x30,0x00,0x00,0x00,  /* 00000000    "OEM10..." */
     94   1.1.1.3  christos     0x01,0xDD,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    "..Intel." */
     95       1.1    jruoho     0x4D,0x61,0x6E,0x79,0x00,0x00,0x00,0x00,  /* 00000010    "Many...." */
     96       1.1    jruoho     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
     97       1.1    jruoho     0x24,0x04,0x03,0x20,0x14,0x0B,0x5F,0x54,  /* 00000020    "$.. .._T" */
     98       1.1    jruoho     0x39,0x37,0x00,0x70,0x0A,0x04,0x60,0xA4,  /* 00000028    "97.p..`." */
     99       1.1    jruoho };
    100       1.1    jruoho 
    101   1.1.1.3  christos unsigned char Ssdt4Code[] =     /* Has method _T96 */
    102   1.1.1.3  christos {
    103   1.1.1.3  christos     0x53,0x53,0x44,0x54,0x2D,0x00,0x00,0x00,  /* 00000000    "SSDT-..." */
    104   1.1.1.3  christos     0x02,0x2B,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    ".+Intel." */
    105   1.1.1.3  christos     0x73,0x73,0x64,0x74,0x34,0x00,0x00,0x00,  /* 00000010    "ssdt4..." */
    106   1.1.1.3  christos     0x04,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    107   1.1.1.3  christos     0x20,0x06,0x12,0x20,0x14,0x08,0x5F,0x54,  /* 00000020    " .. .._T" */
    108   1.1.1.3  christos     0x39,0x36,0x05,0xA4,0x00                  /* 00000028    "96..."    */
    109   1.1.1.3  christos };
    110   1.1.1.3  christos 
    111   1.1.1.3  christos /* "Hardware-Reduced" ACPI 5.0 FADT (No FACS, no ACPI hardware) */
    112   1.1.1.3  christos 
    113   1.1.1.3  christos unsigned char HwReducedFadtCode[] =
    114   1.1.1.3  christos {
    115   1.1.1.3  christos     0x46,0x41,0x43,0x50,0x0C,0x01,0x00,0x00,  /* 00000000    "FACP...." */
    116   1.1.1.3  christos     0x05,0x8C,0x49,0x4E,0x54,0x45,0x4C,0x20,  /* 00000008    "..INTEL " */
    117   1.1.1.3  christos     0x41,0x43,0x50,0x49,0x35,0x30,0x20,0x20,  /* 00000010    "ACPI50  " */
    118   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    119   1.1.1.3  christos     0x13,0x04,0x11,0x20,0x00,0x00,0x00,0x00,  /* 00000020    "... ...." */
    120   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000028    "........" */
    121   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000030    "........" */
    122   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000038    "........" */
    123   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000040    "........" */
    124   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000048    "........" */
    125   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000050    "........" */
    126   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000058    "........" */
    127   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000060    "........" */
    128   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000068    "........" */
    129   1.1.1.3  christos     0x00,0x00,0x78,0x00,0x01,0x08,0x00,0x01,  /* 00000070    "..x....." */
    130   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000078    "........" */
    131   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000080    "........" */
    132   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,  /* 00000088    "........" */
    133   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x01,0x20,0x00,0x02,  /* 00000090    "..... .." */
    134   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000098    "........" */
    135   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000A0    "........" */
    136   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x01,0x10,0x00,0x02,  /* 000000A8    "........" */
    137   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000B0    "........" */
    138   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000B8    "........" */
    139   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x01,0x08,0x00,0x00,  /* 000000C0    "........" */
    140   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000C8    "........" */
    141   1.1.1.3  christos     0x01,0x20,0x00,0x03,0x00,0x00,0x00,0x00,  /* 000000D0    ". ......" */
    142   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x01,  /* 000000D8    "........" */
    143   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000E0    "........" */
    144   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000E8    "........" */
    145   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x01,0x08,0x00,0x01,  /* 000000F0    "........" */
    146   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000000F8    "........" */
    147   1.1.1.3  christos     0x01,0x08,0x00,0x01,0x01,0x00,0x00,0x00,  /* 00000100    "........" */
    148   1.1.1.3  christos     0x00,0x00,0x00,0x00                       /* 00000108    "........" */
    149   1.1.1.3  christos };
    150   1.1.1.3  christos 
    151       1.1    jruoho /* Example OEM table */
    152       1.1    jruoho 
    153       1.1    jruoho static unsigned char Oem1Code[] =
    154       1.1    jruoho {
    155       1.1    jruoho     0x4F,0x45,0x4D,0x31,0x38,0x00,0x00,0x00,  /* 00000000    "OEM18..." */
    156       1.1    jruoho     0x01,0x4B,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    ".KIntel." */
    157       1.1    jruoho     0x4D,0x61,0x6E,0x79,0x00,0x00,0x00,0x00,  /* 00000010    "Many...." */
    158       1.1    jruoho     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    159       1.1    jruoho     0x18,0x09,0x03,0x20,0x08,0x5F,0x58,0x54,  /* 00000020    "... ._XT" */
    160       1.1    jruoho     0x32,0x0A,0x04,0x14,0x0C,0x5F,0x58,0x54,  /* 00000028    "2...._XT" */
    161       1.1    jruoho     0x31,0x00,0x70,0x01,0x5F,0x58,0x54,0x32,  /* 00000030    "1.p._XT2" */
    162       1.1    jruoho };
    163       1.1    jruoho 
    164       1.1    jruoho /* ASL source for this table is at the end of this file */
    165       1.1    jruoho 
    166       1.1    jruoho static unsigned char OemxCode[] =
    167       1.1    jruoho {
    168       1.1    jruoho     0x4F,0x45,0x4D,0x58,0xB0,0x00,0x00,0x00,  /* 00000000    "OEMX...." */
    169       1.1    jruoho     0x02,0x54,0x4D,0x79,0x4F,0x45,0x4D,0x00,  /* 00000008    ".TMyOEM." */
    170       1.1    jruoho     0x54,0x65,0x73,0x74,0x00,0x00,0x00,0x00,  /* 00000010    "Test...." */
    171       1.1    jruoho     0x32,0x04,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "2...INTL" */
    172       1.1    jruoho     0x31,0x03,0x10,0x20,0x14,0x1D,0x5F,0x49,  /* 00000020    "1.. .._I" */
    173       1.1    jruoho     0x4E,0x49,0x00,0x70,0x0D,0x54,0x61,0x62,  /* 00000028    "NI.p.Tab" */
    174       1.1    jruoho     0x6C,0x65,0x20,0x4F,0x45,0x4D,0x58,0x20,  /* 00000030    "le OEMX " */
    175       1.1    jruoho     0x72,0x75,0x6E,0x6E,0x69,0x6E,0x67,0x00,  /* 00000038    "running." */
    176       1.1    jruoho     0x5B,0x31,0x10,0x22,0x5C,0x5F,0x47,0x50,  /* 00000040    "[1."\_GP" */
    177       1.1    jruoho     0x45,0x14,0x06,0x5F,0x45,0x30,0x37,0x00,  /* 00000048    "E.._E07." */
    178       1.1    jruoho     0x14,0x06,0x5F,0x45,0x32,0x32,0x00,0x14,  /* 00000050    ".._E22.." */
    179       1.1    jruoho     0x06,0x5F,0x4C,0x33,0x31,0x00,0x14,0x06,  /* 00000058    "._L31..." */
    180       1.1    jruoho     0x5F,0x4C,0x36,0x36,0x00,0x5B,0x82,0x10,  /* 00000060    "_L66.[.." */
    181       1.1    jruoho     0x4F,0x45,0x4D,0x31,0x08,0x5F,0x50,0x52,  /* 00000068    "OEM1._PR" */
    182       1.1    jruoho     0x57,0x12,0x05,0x02,0x0A,0x07,0x00,0x5B,  /* 00000070    "W......[" */
    183       1.1    jruoho     0x82,0x10,0x4F,0x45,0x4D,0x32,0x08,0x5F,  /* 00000078    "..OEM2._" */
    184       1.1    jruoho     0x50,0x52,0x57,0x12,0x05,0x02,0x0A,0x66,  /* 00000080    "PRW....f" */
    185       1.1    jruoho     0x00,0x10,0x26,0x5C,0x47,0x50,0x45,0x32,  /* 00000088    "..&\GPE2" */
    186       1.1    jruoho     0x14,0x06,0x5F,0x4C,0x30,0x31,0x00,0x14,  /* 00000090    ".._L01.." */
    187       1.1    jruoho     0x06,0x5F,0x45,0x30,0x37,0x00,0x08,0x5F,  /* 00000098    "._E07.._" */
    188       1.1    jruoho     0x50,0x52,0x57,0x12,0x0C,0x02,0x12,0x08,  /* 000000A0    "PRW....." */
    189       1.1    jruoho     0x02,0x5C,0x47,0x50,0x45,0x32,0x01,0x00   /* 000000A8    ".\GPE2.." */
    190       1.1    jruoho };
    191       1.1    jruoho 
    192   1.1.1.2    jruoho /* Example ECDT */
    193   1.1.1.2    jruoho 
    194   1.1.1.2    jruoho unsigned char EcdtCode[] =
    195   1.1.1.2    jruoho {
    196   1.1.1.2    jruoho     0x45,0x43,0x44,0x54,0x4E,0x00,0x00,0x00,  /* 00000000    "ECDTN..." */
    197   1.1.1.2    jruoho     0x01,0x94,0x20,0x49,0x6E,0x74,0x65,0x6C,  /* 00000008    ".. Intel" */
    198   1.1.1.2    jruoho     0x54,0x65,0x6D,0x70,0x6C,0x61,0x74,0x65,  /* 00000010    "Template" */
    199   1.1.1.2    jruoho     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    200   1.1.1.2    jruoho     0x16,0x03,0x11,0x20,0x01,0x08,0x00,0x00,  /* 00000020    "... ...." */
    201   1.1.1.2    jruoho     0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000028    "f......." */
    202   1.1.1.2    jruoho     0x01,0x08,0x00,0x00,0x62,0x00,0x00,0x00,  /* 00000030    "....b..." */
    203   1.1.1.2    jruoho     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000038    "........" */
    204   1.1.1.2    jruoho     0x09,0x5C,0x5F,0x53,0x42,0x2E,0x50,0x43,  /* 00000040    ".\_SB.PC" */
    205   1.1.1.2    jruoho     0x49,0x30,0x2E,0x45,0x43,0x00             /* 00000048    "I0.EC."   */
    206   1.1.1.2    jruoho };
    207   1.1.1.2    jruoho 
    208   1.1.1.3  christos /* Test for multiple UEFI tables */
    209   1.1.1.3  christos 
    210   1.1.1.3  christos unsigned char Uefi1Code[] =
    211   1.1.1.3  christos {
    212   1.1.1.3  christos     0x55,0x45,0x46,0x49,0x36,0x00,0x00,0x00,  /* 00000000    "UEFI6..." */
    213   1.1.1.3  christos     0x01,0x6E,0x20,0x49,0x6E,0x74,0x65,0x6C,  /* 00000008    ".n Intel" */
    214   1.1.1.3  christos     0x20,0x20,0x20,0x55,0x45,0x46,0x49,0x31,  /* 00000010    "   UEFI1" */
    215   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    216   1.1.1.3  christos     0x23,0x08,0x13,0x20,0x06,0x07,0x08,0x09,  /* 00000020    "#.. ...." */
    217   1.1.1.3  christos     0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,  /* 00000028    "........" */
    218   1.1.1.3  christos     0x0C,0x0D,0x0E,0x0F,0x36,0x00             /* 00000030    "....6."   */
    219   1.1.1.3  christos };
    220   1.1.1.3  christos 
    221   1.1.1.3  christos unsigned char Uefi2Code[] =
    222   1.1.1.3  christos {
    223   1.1.1.3  christos     0x55,0x45,0x46,0x49,0xAA,0x00,0x00,0x00,  /* 00000000    "UEFI...." */
    224   1.1.1.3  christos     0x01,0xE0,0x20,0x49,0x6E,0x74,0x65,0x6C,  /* 00000008    ".. Intel" */
    225   1.1.1.3  christos     0x20,0x20,0x20,0x55,0x45,0x46,0x49,0x32,  /* 00000010    "   UEFI2" */
    226   1.1.1.3  christos     0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
    227   1.1.1.3  christos     0x23,0x08,0x13,0x20,0x67,0x45,0x23,0x01,  /* 00000020    "#.. gE#." */
    228   1.1.1.3  christos     0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,  /* 00000028    "........" */
    229   1.1.1.3  christos     0x0C,0x0D,0x0E,0x0F,0x36,0x00,0x04,0x19,  /* 00000030    "....6..." */
    230   1.1.1.3  christos     0x00,0x56,0x34,0xF2,0x04,0x03,0x02,0x01,  /* 00000038    ".V4....." */
    231   1.1.1.3  christos     0x77,0x66,0x55,0x44,0x33,0x22,0x11,0x1E,  /* 00000040    "wfUD3".." */
    232   1.1.1.3  christos     0x1C,0x1F,0x14,0x10,0x0C,0x08,0x04,0xAB,  /* 00000048    "........" */
    233   1.1.1.3  christos     0x54,0x68,0x69,0x73,0x20,0x69,0x73,0x20,  /* 00000050    "This is " */
    234   1.1.1.3  christos     0x61,0x20,0x73,0x74,0x72,0x69,0x6E,0x67,  /* 00000058    "a string" */
    235   1.1.1.3  christos     0x00,0x5C,0x50,0x43,0x49,0x30,0x5C,0x41,  /* 00000060    ".\PCI0\A" */
    236   1.1.1.3  christos     0x42,0x43,0x44,0x00,0x36,0x00,0x55,0x00,  /* 00000068    "BCD.6.U." */
    237   1.1.1.3  christos     0x6E,0x00,0x69,0x00,0x63,0x00,0x6F,0x00,  /* 00000070    "n.i.c.o." */
    238   1.1.1.3  christos     0x64,0x00,0x65,0x00,0x20,0x00,0x53,0x00,  /* 00000078    "d.e. .S." */
    239   1.1.1.3  christos     0x74,0x00,0x72,0x00,0x69,0x00,0x6E,0x00,  /* 00000080    "t.r.i.n." */
    240   1.1.1.3  christos     0x67,0x00,0x00,0x00,0x58,0x5B,0x00,0x00,  /* 00000088    "g...X[.." */
    241   1.1.1.3  christos     0x00,0x00,0x00,0x00,0x41,0x42,0x43,0x44,  /* 00000090    "....ABCD" */
    242   1.1.1.3  christos     0x45,0x00,0x00,0x01,0x02,0x03,0x04,0x05,  /* 00000098    "E......." */
    243   1.1.1.3  christos     0x06,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,  /* 000000A0    "........" */
    244   1.1.1.3  christos     0x0E,0x0F                                 /* 000000A8    ".."       */
    245   1.1.1.3  christos };
    246   1.1.1.3  christos 
    247   1.1.1.2    jruoho 
    248       1.1    jruoho /*
    249       1.1    jruoho  * Example installable control method
    250       1.1    jruoho  *
    251       1.1    jruoho  * DefinitionBlock ("", "DSDT", 2, "Intel", "MTHDTEST", 0x20090512)
    252       1.1    jruoho  * {
    253       1.1    jruoho  *     Method (\_SI_._T97, 1, Serialized)
    254       1.1    jruoho  *     {
    255       1.1    jruoho  *         Store ("Example installed method", Debug)
    256       1.1    jruoho  *         Store (Arg0, Debug)
    257       1.1    jruoho  *         Return ()
    258       1.1    jruoho  *     }
    259       1.1    jruoho  * }
    260       1.1    jruoho  *
    261       1.1    jruoho  * Compiled byte code below.
    262       1.1    jruoho  */
    263       1.1    jruoho static unsigned char MethodCode[] =
    264       1.1    jruoho {
    265       1.1    jruoho     0x44,0x53,0x44,0x54,0x53,0x00,0x00,0x00,  /* 00000000    "DSDTS..." */
    266       1.1    jruoho     0x02,0xF9,0x49,0x6E,0x74,0x65,0x6C,0x00,  /* 00000008    "..Intel." */
    267       1.1    jruoho     0x4D,0x54,0x48,0x44,0x54,0x45,0x53,0x54,  /* 00000010    "MTHDTEST" */
    268       1.1    jruoho     0x12,0x05,0x09,0x20,0x49,0x4E,0x54,0x4C,  /* 00000018    "... INTL" */
    269       1.1    jruoho     0x22,0x04,0x09,0x20,0x14,0x2E,0x2E,0x5F,  /* 00000020    "".. ..._" */
    270       1.1    jruoho     0x54,0x49,0x5F,0x5F,0x54,0x39,0x37,0x09,  /* 00000028    "SI__T97." */
    271       1.1    jruoho     0x70,0x0D,0x45,0x78,0x61,0x6D,0x70,0x6C,  /* 00000030    "p.Exampl" */
    272       1.1    jruoho     0x65,0x20,0x69,0x6E,0x73,0x74,0x61,0x6C,  /* 00000038    "e instal" */
    273       1.1    jruoho     0x6C,0x65,0x64,0x20,0x6D,0x65,0x74,0x68,  /* 00000040    "led meth" */
    274       1.1    jruoho     0x6F,0x64,0x00,0x5B,0x31,0x70,0x68,0x5B,  /* 00000048    "od.[1ph[" */
    275       1.1    jruoho     0x31,0xA4,0x00,
    276       1.1    jruoho };
    277       1.1    jruoho 
    278       1.1    jruoho 
    279       1.1    jruoho #if 0
    280       1.1    jruoho /******************************************************************************
    281       1.1    jruoho  *
    282       1.1    jruoho  * DESCRIPTION: ASL tables that are used in RSDT/XSDT, also used to test
    283       1.1    jruoho  *              Load/LoadTable operators.
    284       1.1    jruoho  *
    285       1.1    jruoho  *****************************************************************************/
    286       1.1    jruoho 
    287       1.1    jruoho DefinitionBlock ("", "OEMX", 2, "MyOEM", "Test", 0x00000432)
    288       1.1    jruoho {
    289       1.1    jruoho     External (GPE2, DeviceObj)
    290       1.1    jruoho 
    291       1.1    jruoho     Method (_INI)
    292       1.1    jruoho     {
    293       1.1    jruoho         Store ("Table OEMX running", Debug)
    294       1.1    jruoho     }
    295       1.1    jruoho 
    296       1.1    jruoho     Scope (\_GPE)
    297       1.1    jruoho     {
    298       1.1    jruoho         Method (_E07) {}
    299       1.1    jruoho         Method (_E22) {}
    300       1.1    jruoho         Method (_L31) {}
    301       1.1    jruoho         Method (_L66) {}
    302       1.1    jruoho     }
    303       1.1    jruoho 
    304       1.1    jruoho     Device (OEM1)
    305       1.1    jruoho     {
    306       1.1    jruoho         Name (_PRW, Package(){7,0})
    307       1.1    jruoho     }
    308       1.1    jruoho     Device (OEM2)
    309       1.1    jruoho     {
    310       1.1    jruoho         Name (_PRW, Package(){0x66,0})
    311       1.1    jruoho     }
    312       1.1    jruoho 
    313       1.1    jruoho     Scope (\GPE2)
    314       1.1    jruoho     {
    315       1.1    jruoho         Method (_L01) {}
    316       1.1    jruoho         Method (_E07) {}
    317       1.1    jruoho 
    318       1.1    jruoho         Name (_PRW, Package() {Package() {\GPE2, 1}, 0})
    319       1.1    jruoho     }
    320       1.1    jruoho }
    321       1.1    jruoho 
    322       1.1    jruoho /* Parent gr.asl file */
    323       1.1    jruoho 
    324       1.1    jruoho DefinitionBlock ("", "DSDT", 2, "Intel", "Many", 0x00000001)
    325       1.1    jruoho {
    326       1.1    jruoho     Name (BUF1, Buffer()
    327       1.1    jruoho     {
    328       1.1    jruoho         0x4F,0x45,0x4D,0x58,0xB0,0x00,0x00,0x00,  /* 00000000    "OEMX...." */
    329       1.1    jruoho         0x02,0x54,0x4D,0x79,0x4F,0x45,0x4D,0x00,  /* 00000008    ".TMyOEM." */
    330       1.1    jruoho         0x54,0x65,0x73,0x74,0x00,0x00,0x00,0x00,  /* 00000010    "Test...." */
    331       1.1    jruoho         0x32,0x04,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "2...INTL" */
    332       1.1    jruoho         0x31,0x03,0x10,0x20,0x14,0x1D,0x5F,0x49,  /* 00000020    "1.. .._I" */
    333       1.1    jruoho         0x4E,0x49,0x00,0x70,0x0D,0x54,0x61,0x62,  /* 00000028    "NI.p.Tab" */
    334       1.1    jruoho         0x6C,0x65,0x20,0x4F,0x45,0x4D,0x58,0x20,  /* 00000030    "le OEMX " */
    335       1.1    jruoho         0x72,0x75,0x6E,0x6E,0x69,0x6E,0x67,0x00,  /* 00000038    "running." */
    336       1.1    jruoho         0x5B,0x31,0x10,0x22,0x5C,0x5F,0x47,0x50,  /* 00000040    "[1."\_GP" */
    337       1.1    jruoho         0x45,0x14,0x06,0x5F,0x45,0x30,0x37,0x00,  /* 00000048    "E.._E07." */
    338       1.1    jruoho         0x14,0x06,0x5F,0x45,0x32,0x32,0x00,0x14,  /* 00000050    ".._E22.." */
    339       1.1    jruoho         0x06,0x5F,0x4C,0x33,0x31,0x00,0x14,0x06,  /* 00000058    "._L31..." */
    340       1.1    jruoho         0x5F,0x4C,0x36,0x36,0x00,0x5B,0x82,0x10,  /* 00000060    "_L66.[.." */
    341       1.1    jruoho         0x4F,0x45,0x4D,0x31,0x08,0x5F,0x50,0x52,  /* 00000068    "OEM1._PR" */
    342       1.1    jruoho         0x57,0x12,0x05,0x02,0x0A,0x07,0x00,0x5B,  /* 00000070    "W......[" */
    343       1.1    jruoho         0x82,0x10,0x4F,0x45,0x4D,0x32,0x08,0x5F,  /* 00000078    "..OEM2._" */
    344       1.1    jruoho         0x50,0x52,0x57,0x12,0x05,0x02,0x0A,0x66,  /* 00000080    "PRW....f" */
    345       1.1    jruoho         0x00,0x10,0x26,0x5C,0x47,0x50,0x45,0x32,  /* 00000088    "..&\GPE2" */
    346       1.1    jruoho         0x14,0x06,0x5F,0x4C,0x30,0x31,0x00,0x14,  /* 00000090    ".._L01.." */
    347       1.1    jruoho         0x06,0x5F,0x45,0x30,0x37,0x00,0x08,0x5F,  /* 00000098    "._E07.._" */
    348       1.1    jruoho         0x50,0x52,0x57,0x12,0x0C,0x02,0x12,0x08,  /* 000000A0    "PRW....." */
    349       1.1    jruoho         0x02,0x5C,0x47,0x50,0x45,0x32,0x01,0x00   /* 000000A8    ".\GPE2.." */
    350       1.1    jruoho     })
    351       1.1    jruoho 
    352       1.1    jruoho     Name (HNDL, 0)
    353       1.1    jruoho     Method (LD)
    354       1.1    jruoho     {
    355       1.1    jruoho         Load (BUF1, HNDL)
    356       1.1    jruoho         Store ("Load operator, handle:", Debug)
    357       1.1    jruoho         Store (HNDL, Debug)
    358       1.1    jruoho     }
    359       1.1    jruoho 
    360       1.1    jruoho     Method (MAIN, 0, NotSerialized)
    361       1.1    jruoho     {
    362       1.1    jruoho         Store ("Loading OEMX table", Debug)
    363       1.1    jruoho         Store (LoadTable ("OEMX", "MyOEM", "Test"), Debug)
    364       1.1    jruoho     }
    365       1.1    jruoho 
    366       1.1    jruoho     Scope (\_GPE)
    367       1.1    jruoho     {
    368       1.1    jruoho         Method (_L08) {}
    369       1.1    jruoho         Method (_E08) {}
    370       1.1    jruoho         Method (_L0B) {}
    371       1.1    jruoho     }
    372       1.1    jruoho 
    373       1.1    jruoho     Device (DEV0)
    374       1.1    jruoho     {
    375       1.1    jruoho         Name (_PRW, Package() {0x11, 0})
    376       1.1    jruoho     }
    377       1.1    jruoho 
    378       1.1    jruoho     Device (\GPE2)
    379       1.1    jruoho     {
    380       1.1    jruoho         Method (_L00) {}
    381       1.1    jruoho     }
    382       1.1    jruoho }
    383       1.1    jruoho 
    384   1.1.1.3  christos /* SSDT1 */
    385   1.1.1.3  christos 
    386   1.1.1.3  christos DefinitionBlock ("ssdt1.aml", "SSDT", 2, "Intel", "ssdt1", 0x00000001)
    387   1.1.1.3  christos {
    388   1.1.1.3  christos     Method (_T98, 1, NotSerialized)
    389   1.1.1.3  christos     {
    390   1.1.1.3  christos         Store ("SSDT1 - _T98", Debug)
    391   1.1.1.3  christos         Return (Zero)
    392   1.1.1.3  christos     }
    393   1.1.1.3  christos }
    394   1.1.1.3  christos 
    395   1.1.1.3  christos /* SSDT2 */
    396   1.1.1.3  christos 
    397   1.1.1.3  christos DefinitionBlock ("ssdt2.aml", "SSDT", 2, "Intel", "ssdt2", 0x00000002)
    398   1.1.1.3  christos {
    399   1.1.1.3  christos     Method (_T99, 6, NotSerialized)
    400   1.1.1.3  christos     {
    401   1.1.1.3  christos         Store ("SSDT2 - _T99", Debug)
    402   1.1.1.3  christos         Return (Zero)
    403   1.1.1.3  christos     }
    404   1.1.1.3  christos }
    405   1.1.1.3  christos 
    406   1.1.1.3  christos /* SSDT4 */
    407   1.1.1.3  christos 
    408   1.1.1.3  christos DefinitionBlock ("ssdt4.aml", "SSDT", 2, "Intel", "ssdt4", 0x00000004)
    409   1.1.1.3  christos {
    410   1.1.1.3  christos     Method (_T96, 5, NotSerialized)
    411   1.1.1.3  christos     {
    412   1.1.1.3  christos         Return (Zero)
    413   1.1.1.3  christos     }
    414   1.1.1.3  christos }
    415   1.1.1.3  christos 
    416   1.1.1.2    jruoho /* Example ECDT */
    417   1.1.1.2    jruoho 
    418   1.1.1.2    jruoho [000h 0000   4]                    Signature : "ECDT"    /* Embedded Controller Boot Resources Table */
    419   1.1.1.2    jruoho [004h 0004   4]                 Table Length : 0000004E
    420   1.1.1.2    jruoho [008h 0008   1]                     Revision : 01
    421   1.1.1.2    jruoho [009h 0009   1]                     Checksum : 14
    422   1.1.1.2    jruoho [00Ah 0010   6]                       Oem ID : " Intel"
    423   1.1.1.2    jruoho [010h 0016   8]                 Oem Table ID : "Template"
    424   1.1.1.2    jruoho [018h 0024   4]                 Oem Revision : 00000001
    425   1.1.1.2    jruoho [01Ch 0028   4]              Asl Compiler ID : "INTL"
    426   1.1.1.2    jruoho [020h 0032   4]        Asl Compiler Revision : 20110316
    427   1.1.1.2    jruoho 
    428   1.1.1.2    jruoho 
    429   1.1.1.2    jruoho [024h 0036  12]      Command/Status Register : <Generic Address Structure>
    430   1.1.1.2    jruoho [024h 0036   1]                     Space ID : 01 (SystemIO)
    431   1.1.1.2    jruoho [025h 0037   1]                    Bit Width : 08
    432   1.1.1.2    jruoho [026h 0038   1]                   Bit Offset : 00
    433   1.1.1.2    jruoho [027h 0039   1]         Encoded Access Width : 00 (Undefined/Legacy)
    434   1.1.1.2    jruoho [028h 0040   8]                      Address : 0000000000000066
    435   1.1.1.2    jruoho 
    436   1.1.1.2    jruoho [030h 0048  12]                Data Register : <Generic Address Structure>
    437   1.1.1.2    jruoho [030h 0048   1]                     Space ID : 01 (SystemIO)
    438   1.1.1.2    jruoho [031h 0049   1]                    Bit Width : 08
    439   1.1.1.2    jruoho [032h 0050   1]                   Bit Offset : 00
    440   1.1.1.2    jruoho [033h 0051   1]         Encoded Access Width : 00 (Undefined/Legacy)
    441   1.1.1.2    jruoho [034h 0052   8]                      Address : 0000000000000062
    442   1.1.1.2    jruoho 
    443   1.1.1.2    jruoho [03Ch 0060   4]                          UID : 00000000
    444   1.1.1.2    jruoho [040h 0064   1]                   GPE Number : 09
    445   1.1.1.2    jruoho [041h 0065  13]                     Namepath : "\_SB.PCI0.EC"
    446   1.1.1.2    jruoho 
    447   1.1.1.3  christos 
    448   1.1.1.3  christos /* Test multiple UEFI support */
    449   1.1.1.3  christos 
    450   1.1.1.3  christos [0004]                          Signature : "UEFI"    [UEFI Boot Optimization Table]
    451   1.1.1.3  christos [0004]                       Table Length : 00000036
    452   1.1.1.3  christos [0001]                           Revision : 01
    453   1.1.1.3  christos [0001]                           Checksum : 9B
    454   1.1.1.3  christos [0006]                             Oem ID : " Intel"
    455   1.1.1.3  christos [0008]                       Oem Table ID : "   UEFI1"
    456   1.1.1.3  christos [0004]                       Oem Revision : 00000001
    457   1.1.1.3  christos [0004]                    Asl Compiler ID : "INTL"
    458   1.1.1.3  christos [0004]              Asl Compiler Revision : 20100528
    459   1.1.1.3  christos 
    460   1.1.1.3  christos [0016]                    UUID Identifier : 09080706-0504-0706-0809-0A0B0C0D0E0F
    461   1.1.1.3  christos [0002]                        Data Offset : 0000
    462   1.1.1.3  christos 
    463   1.1.1.3  christos 
    464   1.1.1.3  christos [004]                          Signature : "UEFI"    /* UEFI Boot Optimization Table */
    465   1.1.1.3  christos [004]                       Table Length : 00000036
    466   1.1.1.3  christos [001]                           Revision : 01
    467   1.1.1.3  christos [001]                           Checksum : 9B
    468   1.1.1.3  christos [006]                             Oem ID : " Intel"
    469   1.1.1.3  christos [008]                       Oem Table ID : "   UEFI2"
    470   1.1.1.3  christos [004]                       Oem Revision : 00000001
    471   1.1.1.3  christos [004]                    Asl Compiler ID : "INTL"
    472   1.1.1.3  christos [004]              Asl Compiler Revision : 20100528
    473   1.1.1.3  christos 
    474   1.1.1.3  christos [016]                    UUID Identifier : 01234567-0504-0706-0809-0A0B0C0D0E0F
    475   1.1.1.3  christos [002]                        Data Offset : 0000
    476   1.1.1.3  christos 
    477   1.1.1.3  christos                                    Label : StartRecord
    478   1.1.1.3  christos                                    UINT8 : 4
    479   1.1.1.3  christos                                   UINT16 : $EndRecord - $StartRecord  /* Should be 0x19 */
    480   1.1.1.3  christos                                   UINT24 : 123456 | F00000
    481   1.1.1.3  christos                                   UINT32 : 01020304
    482   1.1.1.3  christos                                   UINT56 : 11223344556677
    483   1.1.1.3  christos                                   UINT64 : 0102030405060708 * 4 - 200 / 100 | F0000
    484   1.1.1.3  christos                                    Label : EndRecord
    485   1.1.1.3  christos 
    486   1.1.1.3  christos                                    UINT8 : AB
    487   1.1.1.3  christos                                   String : "This is a string"
    488   1.1.1.3  christos                               DevicePath : "\PCI0\ABCD"
    489   1.1.1.3  christos                                   UINT16 : $StartRecord
    490   1.1.1.3  christos                                  Unicode : "Unicode String"
    491   1.1.1.3  christos                                   UINT64 : $EndRecord * 128
    492   1.1.1.3  christos 
    493   1.1.1.3  christos                                   Buffer : 41 42 43 44 45
    494   1.1.1.3  christos                                   String : ""
    495   1.1.1.3  christos                                     GUID : 03020100-0504-0706-0809-0A0B0C0D0E0F
    496       1.1    jruoho #endif
    497       1.1    jruoho 
    498       1.1    jruoho #endif /* __AETABLES_H__ */
    499