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