xref: /freebsd/sys/contrib/dev/acpica/common/dmtbinfo.c (revision 313a0c13efa638cf248e35eed49f36ec0a1a7f26)
11a39cfb0SJung-uk Kim /******************************************************************************
21a39cfb0SJung-uk Kim  *
31a39cfb0SJung-uk Kim  * Module Name: dmtbinfo - Table info for non-AML tables
41a39cfb0SJung-uk Kim  *
51a39cfb0SJung-uk Kim  *****************************************************************************/
61a39cfb0SJung-uk Kim 
7d244b227SJung-uk Kim /*
8*313a0c13SJung-uk Kim  * Copyright (C) 2000 - 2014, Intel Corp.
91a39cfb0SJung-uk Kim  * All rights reserved.
101a39cfb0SJung-uk Kim  *
11d244b227SJung-uk Kim  * Redistribution and use in source and binary forms, with or without
12d244b227SJung-uk Kim  * modification, are permitted provided that the following conditions
13d244b227SJung-uk Kim  * are met:
14d244b227SJung-uk Kim  * 1. Redistributions of source code must retain the above copyright
15d244b227SJung-uk Kim  *    notice, this list of conditions, and the following disclaimer,
16d244b227SJung-uk Kim  *    without modification.
17d244b227SJung-uk Kim  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18d244b227SJung-uk Kim  *    substantially similar to the "NO WARRANTY" disclaimer below
19d244b227SJung-uk Kim  *    ("Disclaimer") and any redistribution must be conditioned upon
20d244b227SJung-uk Kim  *    including a substantially similar Disclaimer requirement for further
21d244b227SJung-uk Kim  *    binary redistribution.
22d244b227SJung-uk Kim  * 3. Neither the names of the above-listed copyright holders nor the names
23d244b227SJung-uk Kim  *    of any contributors may be used to endorse or promote products derived
24d244b227SJung-uk Kim  *    from this software without specific prior written permission.
251a39cfb0SJung-uk Kim  *
26d244b227SJung-uk Kim  * Alternatively, this software may be distributed under the terms of the
27d244b227SJung-uk Kim  * GNU General Public License ("GPL") version 2 as published by the Free
28d244b227SJung-uk Kim  * Software Foundation.
291a39cfb0SJung-uk Kim  *
30d244b227SJung-uk Kim  * NO WARRANTY
31d244b227SJung-uk Kim  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32d244b227SJung-uk Kim  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33d244b227SJung-uk Kim  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34d244b227SJung-uk Kim  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35d244b227SJung-uk Kim  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36d244b227SJung-uk Kim  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37d244b227SJung-uk Kim  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38d244b227SJung-uk Kim  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39d244b227SJung-uk Kim  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40d244b227SJung-uk Kim  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41d244b227SJung-uk Kim  * POSSIBILITY OF SUCH DAMAGES.
42d244b227SJung-uk Kim  */
431a39cfb0SJung-uk Kim 
44ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/include/acpi.h>
45ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/include/accommon.h>
46ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/include/acdisasm.h>
471a39cfb0SJung-uk Kim 
481a39cfb0SJung-uk Kim /* This module used for application-level code only */
491a39cfb0SJung-uk Kim 
501a39cfb0SJung-uk Kim #define _COMPONENT          ACPI_CA_DISASSEMBLER
511a39cfb0SJung-uk Kim         ACPI_MODULE_NAME    ("dmtbinfo")
521a39cfb0SJung-uk Kim 
531a39cfb0SJung-uk Kim /*
54dcbce41eSJung-uk Kim  * How to add a new table:
55dcbce41eSJung-uk Kim  *
56dcbce41eSJung-uk Kim  * - Add the C table definition to the actbl1.h or actbl2.h header.
57dcbce41eSJung-uk Kim  * - Add ACPI_xxxx_OFFSET macro(s) for the table (and subtables) to list below.
58dcbce41eSJung-uk Kim  * - Define the table in this file (for the disassembler). If any
59dcbce41eSJung-uk Kim  *   new data types are required (ACPI_DMT_*), see below.
60dcbce41eSJung-uk Kim  * - Add an external declaration for the new table definition (AcpiDmTableInfo*)
61dcbce41eSJung-uk Kim  *     in acdisam.h
62dcbce41eSJung-uk Kim  * - Add new table definition to the dispatch table in dmtable.c (AcpiDmTableData)
63dcbce41eSJung-uk Kim  *     If a simple table (with no subtables), no disassembly code is needed.
64dcbce41eSJung-uk Kim  *     Otherwise, create the AcpiDmDump* function for to disassemble the table
65dcbce41eSJung-uk Kim  *     and add it to the dmtbdump.c file.
66dcbce41eSJung-uk Kim  * - Add an external declaration for the new AcpiDmDump* function in acdisasm.h
67dcbce41eSJung-uk Kim  * - Add the new AcpiDmDump* function to the dispatch table in dmtable.c
68dcbce41eSJung-uk Kim  * - Create a template for the new table
69dcbce41eSJung-uk Kim  * - Add data table compiler support
70dcbce41eSJung-uk Kim  *
71dcbce41eSJung-uk Kim  * How to add a new data type (ACPI_DMT_*):
72dcbce41eSJung-uk Kim  *
73dcbce41eSJung-uk Kim  * - Add new type at the end of the ACPI_DMT list in acdisasm.h
74dcbce41eSJung-uk Kim  * - Add length and implementation cases in dmtable.c  (disassembler)
75dcbce41eSJung-uk Kim  * - Add type and length cases in dtutils.c (DT compiler)
76dcbce41eSJung-uk Kim  */
77dcbce41eSJung-uk Kim 
78dcbce41eSJung-uk Kim /*
791a39cfb0SJung-uk Kim  * Macros used to generate offsets to specific table fields
801a39cfb0SJung-uk Kim  */
81ec3fc72fSJung-uk Kim #define ACPI_FACS_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_FACS,f)
82ec3fc72fSJung-uk Kim #define ACPI_GAS_OFFSET(f)              (UINT16) ACPI_OFFSET (ACPI_GENERIC_ADDRESS,f)
83ec3fc72fSJung-uk Kim #define ACPI_HDR_OFFSET(f)              (UINT16) ACPI_OFFSET (ACPI_TABLE_HEADER,f)
84ec3fc72fSJung-uk Kim #define ACPI_RSDP_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_RSDP,f)
85ec3fc72fSJung-uk Kim #define ACPI_BERT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_BERT,f)
86ec3fc72fSJung-uk Kim #define ACPI_BGRT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_BGRT,f)
87ec3fc72fSJung-uk Kim #define ACPI_BOOT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_BOOT,f)
88ec3fc72fSJung-uk Kim #define ACPI_CPEP_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_CPEP,f)
891df130f1SJung-uk Kim #define ACPI_DBG2_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DBG2,f)
90ec3fc72fSJung-uk Kim #define ACPI_DBGP_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DBGP,f)
91ec3fc72fSJung-uk Kim #define ACPI_DMAR_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DMAR,f)
92ec3fc72fSJung-uk Kim #define ACPI_DRTM_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DRTM,f)
93ec3fc72fSJung-uk Kim #define ACPI_ECDT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_ECDT,f)
94ec3fc72fSJung-uk Kim #define ACPI_EINJ_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_EINJ,f)
95ec3fc72fSJung-uk Kim #define ACPI_ERST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_ERST,f)
96ec3fc72fSJung-uk Kim #define ACPI_GTDT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_GTDT,f)
97ec3fc72fSJung-uk Kim #define ACPI_HEST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_HEST,f)
98ec3fc72fSJung-uk Kim #define ACPI_HPET_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_HPET,f)
99ec3fc72fSJung-uk Kim #define ACPI_IVRS_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_IVRS,f)
100ec3fc72fSJung-uk Kim #define ACPI_MADT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MADT,f)
101ec3fc72fSJung-uk Kim #define ACPI_MCFG_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MCFG,f)
102ec3fc72fSJung-uk Kim #define ACPI_MCHI_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MCHI,f)
103ec3fc72fSJung-uk Kim #define ACPI_MPST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MPST,f)
104ec3fc72fSJung-uk Kim #define ACPI_MSCT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MSCT,f)
105ec3fc72fSJung-uk Kim #define ACPI_PCCT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_PCCT,f)
106ec3fc72fSJung-uk Kim #define ACPI_PMTT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_PMTT,f)
107ec3fc72fSJung-uk Kim #define ACPI_S3PT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_S3PT,f)
108ec3fc72fSJung-uk Kim #define ACPI_SBST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SBST,f)
109ec3fc72fSJung-uk Kim #define ACPI_SLIT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SLIT,f)
110ec3fc72fSJung-uk Kim #define ACPI_SPCR_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SPCR,f)
111ec3fc72fSJung-uk Kim #define ACPI_SPMI_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SPMI,f)
112ec3fc72fSJung-uk Kim #define ACPI_SRAT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SRAT,f)
113ec3fc72fSJung-uk Kim #define ACPI_TCPA_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_TCPA,f)
114efcc2a30SJung-uk Kim #define ACPI_TPM2_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_TPM2,f)
115ec3fc72fSJung-uk Kim #define ACPI_UEFI_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_UEFI,f)
116ec3fc72fSJung-uk Kim #define ACPI_WAET_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WAET,f)
117ec3fc72fSJung-uk Kim #define ACPI_WDAT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WDAT,f)
118ec3fc72fSJung-uk Kim #define ACPI_WDDT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WDDT,f)
119ec3fc72fSJung-uk Kim #define ACPI_WDRT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WDRT,f)
1201a39cfb0SJung-uk Kim 
121a9f12690SJung-uk Kim /* Subtables */
1221a39cfb0SJung-uk Kim 
123ec3fc72fSJung-uk Kim #define ACPI_ASF0_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_INFO,f)
124ec3fc72fSJung-uk Kim #define ACPI_ASF1_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT,f)
125ec3fc72fSJung-uk Kim #define ACPI_ASF1a_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT_DATA,f)
126ec3fc72fSJung-uk Kim #define ACPI_ASF2_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_REMOTE,f)
127ec3fc72fSJung-uk Kim #define ACPI_ASF2a_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_ASF_CONTROL_DATA,f)
128ec3fc72fSJung-uk Kim #define ACPI_ASF3_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_RMCP,f)
129ec3fc72fSJung-uk Kim #define ACPI_ASF4_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_ADDRESS,f)
130ec3fc72fSJung-uk Kim #define ACPI_CPEP0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CPEP_POLLING,f)
1311df130f1SJung-uk Kim #define ACPI_CSRT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CSRT_GROUP,f)
132efcc2a30SJung-uk Kim #define ACPI_CSRT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CSRT_SHARED_INFO,f)
133efcc2a30SJung-uk Kim #define ACPI_CSRT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CSRT_DESCRIPTOR,f)
1341df130f1SJung-uk Kim #define ACPI_DBG20_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DBG2_DEVICE,f)
135ec3fc72fSJung-uk Kim #define ACPI_DMARS_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_DEVICE_SCOPE,f)
136ec3fc72fSJung-uk Kim #define ACPI_DMAR0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_HARDWARE_UNIT,f)
137ec3fc72fSJung-uk Kim #define ACPI_DMAR1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_RESERVED_MEMORY,f)
138ec3fc72fSJung-uk Kim #define ACPI_DMAR2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_ATSR,f)
139ec3fc72fSJung-uk Kim #define ACPI_DMAR3_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_RHSA,f)
140*313a0c13SJung-uk Kim #define ACPI_DMAR4_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_ANDD,f)
141ec3fc72fSJung-uk Kim #define ACPI_EINJ0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_WHEA_HEADER,f)
142ec3fc72fSJung-uk Kim #define ACPI_ERST0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_WHEA_HEADER,f)
143ec3fc72fSJung-uk Kim #define ACPI_FPDTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_FPDT_HEADER,f)
144ec3fc72fSJung-uk Kim #define ACPI_FPDT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_FPDT_BOOT,f)
145ec3fc72fSJung-uk Kim #define ACPI_FPDT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_FPDT_S3PT_PTR,f)
146*313a0c13SJung-uk Kim #define ACPI_GTDT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_GTDT_TIMER_BLOCK,f)
147*313a0c13SJung-uk Kim #define ACPI_GTDT0a_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_GTDT_TIMER_ENTRY,f)
148*313a0c13SJung-uk Kim #define ACPI_GTDT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_GTDT_WATCHDOG,f)
149*313a0c13SJung-uk Kim #define ACPI_GTDTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_GTDT_HEADER,f)
150ec3fc72fSJung-uk Kim #define ACPI_HEST0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_MACHINE_CHECK,f)
151ec3fc72fSJung-uk Kim #define ACPI_HEST1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_CORRECTED,f)
152ec3fc72fSJung-uk Kim #define ACPI_HEST2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_NMI,f)
153ec3fc72fSJung-uk Kim #define ACPI_HEST6_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_AER_ROOT,f)
154ec3fc72fSJung-uk Kim #define ACPI_HEST7_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_AER,f)
155ec3fc72fSJung-uk Kim #define ACPI_HEST8_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_AER_BRIDGE,f)
156ec3fc72fSJung-uk Kim #define ACPI_HEST9_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_GENERIC,f)
157ec3fc72fSJung-uk Kim #define ACPI_HESTN_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_NOTIFY,f)
158ec3fc72fSJung-uk Kim #define ACPI_HESTB_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_ERROR_BANK,f)
159ec3fc72fSJung-uk Kim #define ACPI_IVRSH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_HEADER,f)
160ec3fc72fSJung-uk Kim #define ACPI_IVRS0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_HARDWARE,f)
161ec3fc72fSJung-uk Kim #define ACPI_IVRS1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_MEMORY,f)
162ec3fc72fSJung-uk Kim #define ACPI_IVRSD_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_DE_HEADER,f)
163ec3fc72fSJung-uk Kim #define ACPI_IVRS8A_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_IVRS_DEVICE8A,f)
164ec3fc72fSJung-uk Kim #define ACPI_IVRS8B_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_IVRS_DEVICE8B,f)
165ec3fc72fSJung-uk Kim #define ACPI_IVRS8C_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_IVRS_DEVICE8C,f)
166*313a0c13SJung-uk Kim #define ACPI_LPITH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_LPIT_HEADER,f)
167*313a0c13SJung-uk Kim #define ACPI_LPIT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_LPIT_NATIVE,f)
168*313a0c13SJung-uk Kim #define ACPI_LPIT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_LPIT_IO,f)
169ec3fc72fSJung-uk Kim #define ACPI_MADT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_APIC,f)
170ec3fc72fSJung-uk Kim #define ACPI_MADT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_IO_APIC,f)
171ec3fc72fSJung-uk Kim #define ACPI_MADT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_INTERRUPT_OVERRIDE,f)
172ec3fc72fSJung-uk Kim #define ACPI_MADT3_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_NMI_SOURCE,f)
173ec3fc72fSJung-uk Kim #define ACPI_MADT4_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_APIC_NMI,f)
174ec3fc72fSJung-uk Kim #define ACPI_MADT5_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_APIC_OVERRIDE,f)
175ec3fc72fSJung-uk Kim #define ACPI_MADT6_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_IO_SAPIC,f)
176ec3fc72fSJung-uk Kim #define ACPI_MADT7_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_SAPIC,f)
177ec3fc72fSJung-uk Kim #define ACPI_MADT8_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_INTERRUPT_SOURCE,f)
178ec3fc72fSJung-uk Kim #define ACPI_MADT9_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_X2APIC,f)
179ec3fc72fSJung-uk Kim #define ACPI_MADT10_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_X2APIC_NMI,f)
180ec3fc72fSJung-uk Kim #define ACPI_MADT11_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_INTERRUPT,f)
181ec3fc72fSJung-uk Kim #define ACPI_MADT12_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_DISTRIBUTOR,f)
182*313a0c13SJung-uk Kim #define ACPI_MADT13_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_MSI_FRAME,f)
183*313a0c13SJung-uk Kim #define ACPI_MADT14_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_REDISTRIBUTOR,f)
184ec3fc72fSJung-uk Kim #define ACPI_MADTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SUBTABLE_HEADER,f)
185ec3fc72fSJung-uk Kim #define ACPI_MCFG0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MCFG_ALLOCATION,f)
186ec3fc72fSJung-uk Kim #define ACPI_MPST0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_NODE,f)
187ec3fc72fSJung-uk Kim #define ACPI_MPST0A_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_STATE,f)
188ec3fc72fSJung-uk Kim #define ACPI_MPST0B_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MPST_COMPONENT,f)
189ec3fc72fSJung-uk Kim #define ACPI_MPST1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MPST_DATA_HDR,f)
190ec3fc72fSJung-uk Kim #define ACPI_MPST2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_DATA,f)
191ec3fc72fSJung-uk Kim #define ACPI_MSCT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MSCT_PROXIMITY,f)
1929c48c75eSJung-uk Kim #define ACPI_MTMR0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MTMR_ENTRY,f)
193ec3fc72fSJung-uk Kim #define ACPI_PCCT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PCCT_SUBSPACE,f)
194*313a0c13SJung-uk Kim #define ACPI_PCCT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PCCT_HW_REDUCED,f)
195ec3fc72fSJung-uk Kim #define ACPI_PMTT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_SOCKET,f)
196ec3fc72fSJung-uk Kim #define ACPI_PMTT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_CONTROLLER,f)
197ec3fc72fSJung-uk Kim #define ACPI_PMTT1A_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_PMTT_DOMAIN,f)
198ec3fc72fSJung-uk Kim #define ACPI_PMTT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_PHYSICAL_COMPONENT,f)
199ec3fc72fSJung-uk Kim #define ACPI_PMTTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_HEADER,f)
200ec3fc72fSJung-uk Kim #define ACPI_S3PTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_S3PT_HEADER,f)
201ec3fc72fSJung-uk Kim #define ACPI_S3PT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_S3PT_RESUME,f)
202ec3fc72fSJung-uk Kim #define ACPI_S3PT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_S3PT_SUSPEND,f)
203ec3fc72fSJung-uk Kim #define ACPI_SLICH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SLIC_HEADER,f)
204ec3fc72fSJung-uk Kim #define ACPI_SLIC0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SLIC_KEY,f)
205ec3fc72fSJung-uk Kim #define ACPI_SLIC1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SLIC_MARKER,f)
206ec3fc72fSJung-uk Kim #define ACPI_SRATH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SUBTABLE_HEADER,f)
207ec3fc72fSJung-uk Kim #define ACPI_SRAT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_CPU_AFFINITY,f)
208ec3fc72fSJung-uk Kim #define ACPI_SRAT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_MEM_AFFINITY,f)
209ec3fc72fSJung-uk Kim #define ACPI_SRAT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_X2APIC_CPU_AFFINITY,f)
210*313a0c13SJung-uk Kim #define ACPI_SRAT3_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_GICC_AFFINITY,f)
2119c48c75eSJung-uk Kim #define ACPI_VRTC0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_VRTC_ENTRY,f)
212ec3fc72fSJung-uk Kim #define ACPI_WDAT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_WDAT_ENTRY,f)
2131a39cfb0SJung-uk Kim 
2141a39cfb0SJung-uk Kim /*
2151a39cfb0SJung-uk Kim  * Simplify access to flag fields by breaking them up into bytes
2161a39cfb0SJung-uk Kim  */
217ec3fc72fSJung-uk Kim #define ACPI_FLAG_OFFSET(d,f,o)         (UINT16) (ACPI_OFFSET (d,f) + o)
2181a39cfb0SJung-uk Kim 
2191a39cfb0SJung-uk Kim /* Flags */
2201a39cfb0SJung-uk Kim 
2211a39cfb0SJung-uk Kim #define ACPI_FADT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_FADT,f,o)
2221a39cfb0SJung-uk Kim #define ACPI_FACS_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_FACS,f,o)
2231a39cfb0SJung-uk Kim #define ACPI_HPET_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_HPET,f,o)
2241a39cfb0SJung-uk Kim #define ACPI_SRAT0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_CPU_AFFINITY,f,o)
2251a39cfb0SJung-uk Kim #define ACPI_SRAT1_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_MEM_AFFINITY,f,o)
226a9f12690SJung-uk Kim #define ACPI_SRAT2_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_X2APIC_CPU_AFFINITY,f,o)
227*313a0c13SJung-uk Kim #define ACPI_SRAT3_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_GICC_AFFINITY,f,o)
2283f0275a0SJung-uk Kim #define ACPI_GTDT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_GTDT,f,o)
229*313a0c13SJung-uk Kim #define ACPI_GTDT0a_FLAG_OFFSET(f,o)    ACPI_FLAG_OFFSET (ACPI_GTDT_TIMER_ENTRY,f,o)
230*313a0c13SJung-uk Kim #define ACPI_GTDT1_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_GTDT_WATCHDOG,f,o)
231*313a0c13SJung-uk Kim #define ACPI_LPITH_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_LPIT_HEADER,f,o)
2321a39cfb0SJung-uk Kim #define ACPI_MADT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_MADT,f,o)
2331a39cfb0SJung-uk Kim #define ACPI_MADT0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_APIC,f,o)
2341a39cfb0SJung-uk Kim #define ACPI_MADT2_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_INTERRUPT_OVERRIDE,f,o)
2351a39cfb0SJung-uk Kim #define ACPI_MADT3_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_NMI_SOURCE,f,o)
2361a39cfb0SJung-uk Kim #define ACPI_MADT4_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_APIC_NMI,f,o)
2371a39cfb0SJung-uk Kim #define ACPI_MADT7_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_SAPIC,f,o)
2381a39cfb0SJung-uk Kim #define ACPI_MADT8_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_INTERRUPT_SOURCE,f,o)
239a9f12690SJung-uk Kim #define ACPI_MADT9_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_X2APIC,f,o)
240a9f12690SJung-uk Kim #define ACPI_MADT10_FLAG_OFFSET(f,o)    ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_X2APIC_NMI,f,o)
2413f0275a0SJung-uk Kim #define ACPI_MADT11_FLAG_OFFSET(f,o)    ACPI_FLAG_OFFSET (ACPI_MADT_GENERIC_INTERRUPT,f,o)
242*313a0c13SJung-uk Kim #define ACPI_MADT13_FLAG_OFFSET(f,o)    ACPI_FLAG_OFFSET (ACPI_MADT_GENERIC_MSI_FRAME,f,o)
2433f0275a0SJung-uk Kim #define ACPI_MPST0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MPST_POWER_NODE,f,o)
2443f0275a0SJung-uk Kim #define ACPI_MPST2_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MPST_POWER_DATA,f,o)
2453f0275a0SJung-uk Kim #define ACPI_PCCT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_PCCT,f,o)
246*313a0c13SJung-uk Kim #define ACPI_PCCT1_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_PCCT_HW_REDUCED,f,o)
2473f0275a0SJung-uk Kim #define ACPI_PMTTH_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_PMTT_HEADER,f,o)
248a88e22b7SJung-uk Kim #define ACPI_WDDT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_WDDT,f,o)
249a88e22b7SJung-uk Kim #define ACPI_EINJ0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_WHEA_HEADER,f,o)
250a88e22b7SJung-uk Kim #define ACPI_ERST0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_WHEA_HEADER,f,o)
251a88e22b7SJung-uk Kim #define ACPI_HEST0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_HEST_IA_MACHINE_CHECK,f,o)
252a88e22b7SJung-uk Kim #define ACPI_HEST1_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_HEST_IA_CORRECTED,f,o)
253a88e22b7SJung-uk Kim #define ACPI_HEST6_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_HEST_AER_ROOT,f,o)
254a88e22b7SJung-uk Kim 
255a88e22b7SJung-uk Kim /*
256a88e22b7SJung-uk Kim  * Required terminator for all tables below
257a88e22b7SJung-uk Kim  */
258a88e22b7SJung-uk Kim #define ACPI_DMT_TERMINATOR             {ACPI_DMT_EXIT, 0, NULL, 0}
2593f0275a0SJung-uk Kim #define ACPI_DMT_NEW_LINE               {ACPI_DMT_EXTRA_TEXT, 0, "\n", 0}
2601a39cfb0SJung-uk Kim 
2611a39cfb0SJung-uk Kim 
2621a39cfb0SJung-uk Kim /*
2631a39cfb0SJung-uk Kim  * ACPI Table Information, used to dump formatted ACPI tables
2641a39cfb0SJung-uk Kim  *
2651a39cfb0SJung-uk Kim  * Each entry is of the form:  <Field Type, Field Offset, Field Name>
2661a39cfb0SJung-uk Kim  */
2671a39cfb0SJung-uk Kim 
2681a39cfb0SJung-uk Kim /*******************************************************************************
2691a39cfb0SJung-uk Kim  *
2701a39cfb0SJung-uk Kim  * Common ACPI table header
2711a39cfb0SJung-uk Kim  *
2721a39cfb0SJung-uk Kim  ******************************************************************************/
2731a39cfb0SJung-uk Kim 
2741a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHeader[] =
2751a39cfb0SJung-uk Kim {
276a88e22b7SJung-uk Kim     {ACPI_DMT_SIG,      ACPI_HDR_OFFSET (Signature[0]),             "Signature", 0},
277a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HDR_OFFSET (Length),                   "Table Length", DT_LENGTH},
278a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HDR_OFFSET (Revision),                 "Revision", 0},
279a88e22b7SJung-uk Kim     {ACPI_DMT_CHKSUM,   ACPI_HDR_OFFSET (Checksum),                 "Checksum", 0},
280a88e22b7SJung-uk Kim     {ACPI_DMT_NAME6,    ACPI_HDR_OFFSET (OemId[0]),                 "Oem ID", 0},
281a88e22b7SJung-uk Kim     {ACPI_DMT_NAME8,    ACPI_HDR_OFFSET (OemTableId[0]),            "Oem Table ID", 0},
282a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HDR_OFFSET (OemRevision),              "Oem Revision", 0},
283a88e22b7SJung-uk Kim     {ACPI_DMT_NAME4,    ACPI_HDR_OFFSET (AslCompilerId[0]),         "Asl Compiler ID", 0},
284a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HDR_OFFSET (AslCompilerRevision),      "Asl Compiler Revision", 0},
285a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2861a39cfb0SJung-uk Kim };
2871a39cfb0SJung-uk Kim 
2881a39cfb0SJung-uk Kim 
2891a39cfb0SJung-uk Kim /*******************************************************************************
2901a39cfb0SJung-uk Kim  *
2911a39cfb0SJung-uk Kim  * GAS - Generic Address Structure
2921a39cfb0SJung-uk Kim  *
2931a39cfb0SJung-uk Kim  ******************************************************************************/
2941a39cfb0SJung-uk Kim 
2951a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGas[] =
2961a39cfb0SJung-uk Kim {
297a88e22b7SJung-uk Kim     {ACPI_DMT_SPACEID,  ACPI_GAS_OFFSET (SpaceId),                  "Space ID", 0},
298a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_GAS_OFFSET (BitWidth),                 "Bit Width", 0},
299a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_GAS_OFFSET (BitOffset),                "Bit Offset", 0},
3005a77b11bSJung-uk Kim     {ACPI_DMT_ACCWIDTH, ACPI_GAS_OFFSET (AccessWidth),              "Encoded Access Width", 0},
301a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GAS_OFFSET (Address),                  "Address", 0},
302a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
3031a39cfb0SJung-uk Kim };
3041a39cfb0SJung-uk Kim 
3051a39cfb0SJung-uk Kim 
3061a39cfb0SJung-uk Kim /*******************************************************************************
3071a39cfb0SJung-uk Kim  *
3081a39cfb0SJung-uk Kim  * RSDP - Root System Description Pointer (Signature is "RSD PTR ")
3091a39cfb0SJung-uk Kim  *
3101a39cfb0SJung-uk Kim  ******************************************************************************/
3111a39cfb0SJung-uk Kim 
3121a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoRsdp1[] =
3131a39cfb0SJung-uk Kim {
314a88e22b7SJung-uk Kim     {ACPI_DMT_NAME8,    ACPI_RSDP_OFFSET (Signature[0]),            "Signature", 0},
315a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_RSDP_OFFSET (Checksum),                "Checksum", 0},
316a88e22b7SJung-uk Kim     {ACPI_DMT_NAME6,    ACPI_RSDP_OFFSET (OemId[0]),                "Oem ID", 0},
317a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_RSDP_OFFSET (Revision),                "Revision", 0},
318a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_RSDP_OFFSET (RsdtPhysicalAddress),     "RSDT Address", 0},
319a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
3201a39cfb0SJung-uk Kim };
3211a39cfb0SJung-uk Kim 
3221a39cfb0SJung-uk Kim /* ACPI 2.0+ Extensions */
3231a39cfb0SJung-uk Kim 
3241a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoRsdp2[] =
3251a39cfb0SJung-uk Kim {
326a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_RSDP_OFFSET (Length),                  "Length", DT_LENGTH},
327a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_RSDP_OFFSET (XsdtPhysicalAddress),     "XSDT Address", 0},
328a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_RSDP_OFFSET (ExtendedChecksum),        "Extended Checksum", 0},
329a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_RSDP_OFFSET (Reserved[0]),             "Reserved", 0},
330a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
3311a39cfb0SJung-uk Kim };
3321a39cfb0SJung-uk Kim 
3331a39cfb0SJung-uk Kim 
3341a39cfb0SJung-uk Kim /*******************************************************************************
3351a39cfb0SJung-uk Kim  *
3361a39cfb0SJung-uk Kim  * FACS - Firmware ACPI Control Structure
3371a39cfb0SJung-uk Kim  *
3381a39cfb0SJung-uk Kim  ******************************************************************************/
3391a39cfb0SJung-uk Kim 
3401a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFacs[] =
3411a39cfb0SJung-uk Kim {
342a88e22b7SJung-uk Kim     {ACPI_DMT_NAME4,    ACPI_FACS_OFFSET (Signature[0]),            "Signature", 0},
343a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (Length),                  "Length", DT_LENGTH},
344a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (HardwareSignature),       "Hardware Signature", 0},
345a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (FirmwareWakingVector),    "32 Firmware Waking Vector", 0},
346a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (GlobalLock),              "Global Lock", 0},
347a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
348a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FACS_FLAG_OFFSET (Flags,0),            "S4BIOS Support Present", 0},
349a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_FACS_FLAG_OFFSET (Flags,0),            "64-bit Wake Supported (V2)", 0},
350a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FACS_OFFSET (XFirmwareWakingVector),   "64 Firmware Waking Vector", 0},
351a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FACS_OFFSET (Version),                 "Version", 0},
352a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_FACS_OFFSET (Reserved[0]),             "Reserved", 0},
353a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (OspmFlags),               "OspmFlags (decoded below)", DT_FLAG},
354a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FACS_FLAG_OFFSET (OspmFlags,0),        "64-bit Wake Env Required (V2)", 0},
355a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
3561a39cfb0SJung-uk Kim };
3571a39cfb0SJung-uk Kim 
3581a39cfb0SJung-uk Kim 
3591a39cfb0SJung-uk Kim /*******************************************************************************
3601a39cfb0SJung-uk Kim  *
3611a39cfb0SJung-uk Kim  * FADT - Fixed ACPI Description Table (Signature is FACP)
3621a39cfb0SJung-uk Kim  *
3631a39cfb0SJung-uk Kim  ******************************************************************************/
3641a39cfb0SJung-uk Kim 
365a9f12690SJung-uk Kim /* ACPI 1.0 FADT (Version 1) */
366a9f12690SJung-uk Kim 
3671a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFadt1[] =
3681a39cfb0SJung-uk Kim {
369a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Facs),                    "FACS Address", 0},
370a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Dsdt),                    "DSDT Address", DT_NON_ZERO},
371a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Model),                   "Model", 0},
372a88e22b7SJung-uk Kim     {ACPI_DMT_FADTPM,   ACPI_FADT_OFFSET (PreferredProfile),        "PM Profile", 0},
373a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (SciInterrupt),            "SCI Interrupt", 0},
374a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (SmiCommand),              "SMI Command Port", 0},
375a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (AcpiEnable),              "ACPI Enable Value", 0},
376a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (AcpiDisable),             "ACPI Disable Value", 0},
377a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (S4BiosRequest),           "S4BIOS Command", 0},
378a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (PstateControl),           "P-State Control", 0},
379a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1aEventBlock),          "PM1A Event Block Address", 0},
380a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1bEventBlock),          "PM1B Event Block Address", 0},
381a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1aControlBlock),        "PM1A Control Block Address", 0},
382a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1bControlBlock),        "PM1B Control Block Address", 0},
383a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm2ControlBlock),         "PM2 Control Block Address", 0},
384a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (PmTimerBlock),            "PM Timer Block Address", 0},
385a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Gpe0Block),               "GPE0 Block Address", 0},
386a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Gpe1Block),               "GPE1 Block Address", 0},
387a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Pm1EventLength),          "PM1 Event Block Length", 0},
388a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Pm1ControlLength),        "PM1 Control Block Length", 0},
389a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Pm2ControlLength),        "PM2 Control Block Length", 0},
390a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (PmTimerLength),           "PM Timer Block Length", 0},
391a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Gpe0BlockLength),         "GPE0 Block Length", 0},
392a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Gpe1BlockLength),         "GPE1 Block Length", 0},
393a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Gpe1Base),                "GPE1 Base Offset", 0},
394a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (CstControl),              "_CST Support", 0},
395a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (C2Latency),               "C2 Latency", 0},
396a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (C3Latency),               "C3 Latency", 0},
397a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (FlushSize),               "CPU Cache Size", 0},
398a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (FlushStride),             "Cache Flush Stride", 0},
399a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (DutyOffset),              "Duty Cycle Offset", 0},
400a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (DutyWidth),               "Duty Cycle Width", 0},
401a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (DayAlarm),                "RTC Day Alarm Index", 0},
402a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (MonthAlarm),              "RTC Month Alarm Index", 0},
403a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Century),                 "RTC Century Index", 0},
404a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (BootFlags),               "Boot Flags (decoded below)", DT_FLAG},
405a9f12690SJung-uk Kim 
406a9f12690SJung-uk Kim     /* Boot Architecture Flags byte 0 */
407a9f12690SJung-uk Kim 
408a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "Legacy Devices Supported (V2)", 0},
409a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "8042 Present on ports 60/64 (V2)", 0},
410a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "VGA Not Present (V4)", 0},
411a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "MSI Not Supported (V4)", 0},
412a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "PCIe ASPM Not Supported (V4)", 0},
413ec3fc72fSJung-uk Kim     {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "CMOS RTC Not Present (V5)", 0},
414a9f12690SJung-uk Kim 
415a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Reserved),                "Reserved", 0},
416a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
4171a39cfb0SJung-uk Kim 
4181a39cfb0SJung-uk Kim     /* Flags byte 0 */
4191a39cfb0SJung-uk Kim 
420a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "WBINVD instruction is operational (V1)", 0},
421a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "WBINVD flushes all caches (V1)", 0},
422a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "All CPUs support C1 (V1)", 0},
423a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "C2 works on MP system (V1)", 0},
424a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "Control Method Power Button (V1)", 0},
425a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "Control Method Sleep Button (V1)", 0},
426a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG6,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "RTC wake not in fixed reg space (V1)", 0},
427a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG7,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "RTC can wake system from S4 (V1)", 0},
4281a39cfb0SJung-uk Kim 
4291a39cfb0SJung-uk Kim     /* Flags byte 1 */
4301a39cfb0SJung-uk Kim 
431a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "32-bit PM Timer (V1)", 0},
432a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Docking Supported (V1)", 0},
433a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Reset Register Supported (V2)", 0},
434a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Sealed Case (V3)", 0},
435a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Headless - No Video (V3)", 0},
436a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Use native instr after SLP_TYPx (V3)", 0},
437a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG6,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "PCIEXP_WAK Bits Supported (V4)", 0},
438a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG7,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Use Platform Timer (V4)", 0},
4391a39cfb0SJung-uk Kim 
4401a39cfb0SJung-uk Kim     /* Flags byte 2 */
4411a39cfb0SJung-uk Kim 
442a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "RTC_STS valid on S4 wake (V4)", 0},
443a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Remote Power-on capable (V4)", 0},
444a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Use APIC Cluster Model (V4)", 0},
445a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Use APIC Physical Destination Mode (V4)", 0},
4463f0275a0SJung-uk Kim     {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Hardware Reduced (V5)", 0},
447ec3fc72fSJung-uk Kim     {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Low Power S0 Idle (V5)", 0},
448a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
449a9f12690SJung-uk Kim };
4501a39cfb0SJung-uk Kim 
451a9f12690SJung-uk Kim /* ACPI 1.0 MS Extensions (FADT version 2) */
452a9f12690SJung-uk Kim 
453a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFadt2[] =
454a9f12690SJung-uk Kim {
455a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (ResetRegister),           "Reset Register", 0},
456a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (ResetValue),              "Value to cause reset", 0},
457*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (ArmBootFlags),            "Reserved", 0},
458*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (MinorRevision),           "Reserved", 0},
459a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
460a9f12690SJung-uk Kim };
461a9f12690SJung-uk Kim 
462*313a0c13SJung-uk Kim /* ACPI 2.0+ Extensions (FADT version 3, 4, and 5) */
463a9f12690SJung-uk Kim 
464a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFadt3[] =
465a9f12690SJung-uk Kim {
466a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (ResetRegister),           "Reset Register", 0},
467a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (ResetValue),              "Value to cause reset", 0},
468*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (ArmBootFlags),            "ARM Flags (decoded below)", DT_FLAG},
469*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET(ArmBootFlags,0),      "PSCI Compliant", 0},
470*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET(ArmBootFlags,0),      "Must use HVC for PSCI", 0},
471*313a0c13SJung-uk Kim     ACPI_DMT_NEW_LINE,
472*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (MinorRevision),           "FADT Minor Revision", 0},
473a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FADT_OFFSET (XFacs),                   "FACS Address", 0},
474a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FADT_OFFSET (XDsdt),                   "DSDT Address", 0},
475a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1aEventBlock),         "PM1A Event Block", 0},
476a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1bEventBlock),         "PM1B Event Block", 0},
477a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1aControlBlock),       "PM1A Control Block", 0},
478a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1bControlBlock),       "PM1B Control Block", 0},
479a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm2ControlBlock),        "PM2 Control Block", 0},
480a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPmTimerBlock),           "PM Timer Block", 0},
481a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XGpe0Block),              "GPE0 Block", 0},
482a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XGpe1Block),              "GPE1 Block", 0},
483a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
4841a39cfb0SJung-uk Kim };
4851a39cfb0SJung-uk Kim 
4863f0275a0SJung-uk Kim /* ACPI 5.0 Extensions (FADT version 5) */
4873f0275a0SJung-uk Kim 
4883f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFadt5[] =
4893f0275a0SJung-uk Kim {
490ec3fc72fSJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (SleepControl),            "Sleep Control Register", 0},
491ec3fc72fSJung-uk Kim     {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (SleepStatus),             "Sleep Status Register", 0},
4923f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
4933f0275a0SJung-uk Kim };
4943f0275a0SJung-uk Kim 
4951a39cfb0SJung-uk Kim 
4961a39cfb0SJung-uk Kim /*
4971a39cfb0SJung-uk Kim  * Remaining tables are not consumed directly by the ACPICA subsystem
4981a39cfb0SJung-uk Kim  */
4991a39cfb0SJung-uk Kim 
5001a39cfb0SJung-uk Kim /*******************************************************************************
5011a39cfb0SJung-uk Kim  *
5021a39cfb0SJung-uk Kim  * ASF - Alert Standard Format table (Signature "ASF!")
5031a39cfb0SJung-uk Kim  *
5041a39cfb0SJung-uk Kim  ******************************************************************************/
5051a39cfb0SJung-uk Kim 
506a9f12690SJung-uk Kim /* Common Subtable header (one per Subtable) */
5071a39cfb0SJung-uk Kim 
5081a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsfHdr[] =
5091a39cfb0SJung-uk Kim {
510a88e22b7SJung-uk Kim     {ACPI_DMT_ASF,      ACPI_ASF0_OFFSET (Header.Type),             "Subtable Type", 0},
511a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (Header.Reserved),         "Reserved", 0},
512a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_ASF0_OFFSET (Header.Length),           "Length", DT_LENGTH},
513a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5141a39cfb0SJung-uk Kim };
5151a39cfb0SJung-uk Kim 
5161a39cfb0SJung-uk Kim /* 0: ASF Information */
5171a39cfb0SJung-uk Kim 
5181a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf0[] =
5191a39cfb0SJung-uk Kim {
520a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (MinResetValue),           "Minimum Reset Value", 0},
521a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (MinPollInterval),         "Minimum Polling Interval", 0},
522a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_ASF0_OFFSET (SystemId),                "System ID", 0},
523a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_ASF0_OFFSET (MfgId),                   "Manufacturer ID", 0},
524a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (Flags),                   "Flags", 0},
525a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_ASF0_OFFSET (Reserved2[0]),            "Reserved", 0},
526a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5271a39cfb0SJung-uk Kim };
5281a39cfb0SJung-uk Kim 
5291a39cfb0SJung-uk Kim /* 1: ASF Alerts */
5301a39cfb0SJung-uk Kim 
5311a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf1[] =
5321a39cfb0SJung-uk Kim {
533a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (AssertMask),              "AssertMask", 0},
534a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (DeassertMask),            "DeassertMask", 0},
535a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (Alerts),                  "Alert Count", 0},
536a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (DataLength),              "Alert Data Length", 0},
537a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5381a39cfb0SJung-uk Kim };
5391a39cfb0SJung-uk Kim 
5401a39cfb0SJung-uk Kim /* 1a: ASF Alert data */
5411a39cfb0SJung-uk Kim 
5421a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf1a[] =
5431a39cfb0SJung-uk Kim {
544a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Address),                "Address", 0},
545a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Command),                "Command", 0},
546a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Mask),                   "Mask", 0},
547a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Value),                  "Value", 0},
548a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (SensorType),             "SensorType", 0},
549a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Type),                   "Type", 0},
550a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Offset),                 "Offset", 0},
551a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (SourceType),             "SourceType", 0},
552a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Severity),               "Severity", 0},
553a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (SensorNumber),           "SensorNumber", 0},
554a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Entity),                 "Entity", 0},
555a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Instance),               "Instance", 0},
556a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5571a39cfb0SJung-uk Kim };
5581a39cfb0SJung-uk Kim 
5591a39cfb0SJung-uk Kim /* 2: ASF Remote Control */
5601a39cfb0SJung-uk Kim 
5611a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf2[] =
5621a39cfb0SJung-uk Kim {
563a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF2_OFFSET (Controls),                "Control Count", 0},
564a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF2_OFFSET (DataLength),              "Control Data Length", 0},
565a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_ASF2_OFFSET (Reserved2),               "Reserved", 0},
566a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5671a39cfb0SJung-uk Kim };
5681a39cfb0SJung-uk Kim 
5691a39cfb0SJung-uk Kim /* 2a: ASF Control data */
5701a39cfb0SJung-uk Kim 
5711a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf2a[] =
5721a39cfb0SJung-uk Kim {
573a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Function),               "Function", 0},
574a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Address),                "Address", 0},
575a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Command),                "Command", 0},
576a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Value),                  "Value", 0},
577a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5781a39cfb0SJung-uk Kim };
5791a39cfb0SJung-uk Kim 
5801a39cfb0SJung-uk Kim /* 3: ASF RMCP Boot Options */
5811a39cfb0SJung-uk Kim 
5821a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf3[] =
5831a39cfb0SJung-uk Kim {
5840b94ba42SJung-uk Kim     {ACPI_DMT_BUF7,     ACPI_ASF3_OFFSET (Capabilities[0]),         "Capabilities", 0},
585a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF3_OFFSET (CompletionCode),          "Completion Code", 0},
586a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_ASF3_OFFSET (EnterpriseId),            "Enterprise ID", 0},
587a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF3_OFFSET (Command),                 "Command", 0},
588a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_ASF3_OFFSET (Parameter),               "Parameter", 0},
589a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_ASF3_OFFSET (BootOptions),             "Boot Options", 0},
590a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_ASF3_OFFSET (OemParameters),           "Oem Parameters", 0},
591a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
5921a39cfb0SJung-uk Kim };
5931a39cfb0SJung-uk Kim 
5941a39cfb0SJung-uk Kim /* 4: ASF Address */
5951a39cfb0SJung-uk Kim 
5961a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoAsf4[] =
5971a39cfb0SJung-uk Kim {
598a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF4_OFFSET (EpromAddress),            "Eprom Address", 0},
599a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ASF4_OFFSET (Devices),                 "Device Count", DT_COUNT},
600a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
6011a39cfb0SJung-uk Kim };
6021a39cfb0SJung-uk Kim 
6031a39cfb0SJung-uk Kim 
6041a39cfb0SJung-uk Kim /*******************************************************************************
6051a39cfb0SJung-uk Kim  *
606a9f12690SJung-uk Kim  * BERT -  Boot Error Record table
607a9f12690SJung-uk Kim  *
608a9f12690SJung-uk Kim  ******************************************************************************/
609a9f12690SJung-uk Kim 
610a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoBert[] =
611a9f12690SJung-uk Kim {
612a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_BERT_OFFSET (RegionLength),            "Boot Error Region Length", 0},
613a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_BERT_OFFSET (Address),                 "Boot Error Region Address", 0},
614a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
615a9f12690SJung-uk Kim };
616a9f12690SJung-uk Kim 
617a9f12690SJung-uk Kim 
618a9f12690SJung-uk Kim /*******************************************************************************
619a9f12690SJung-uk Kim  *
6203f0275a0SJung-uk Kim  * BGRT -  Boot Graphics Resource Table (ACPI 5.0)
6213f0275a0SJung-uk Kim  *
6223f0275a0SJung-uk Kim  ******************************************************************************/
6233f0275a0SJung-uk Kim 
6243f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoBgrt[] =
6253f0275a0SJung-uk Kim {
6263f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_BGRT_OFFSET (Version),                 "Version", 0},
6273f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_BGRT_OFFSET (Status),                  "Status", 0},
6283f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_BGRT_OFFSET (ImageType),               "Image Type", 0},
6293f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_BGRT_OFFSET (ImageAddress),            "Image Address", 0},
6303f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_BGRT_OFFSET (ImageOffsetX),            "Image OffsetX", 0},
6313f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_BGRT_OFFSET (ImageOffsetY),            "Image OffsetY", 0},
6323f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
6333f0275a0SJung-uk Kim };
6343f0275a0SJung-uk Kim 
6353f0275a0SJung-uk Kim 
6363f0275a0SJung-uk Kim /*******************************************************************************
6373f0275a0SJung-uk Kim  *
6381a39cfb0SJung-uk Kim  * BOOT - Simple Boot Flag Table
6391a39cfb0SJung-uk Kim  *
6401a39cfb0SJung-uk Kim  ******************************************************************************/
6411a39cfb0SJung-uk Kim 
6421a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoBoot[] =
6431a39cfb0SJung-uk Kim {
644a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_BOOT_OFFSET (CmosIndex),               "Boot Register Index", 0},
645a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_BOOT_OFFSET (Reserved[0]),             "Reserved", 0},
646a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
6471a39cfb0SJung-uk Kim };
6481a39cfb0SJung-uk Kim 
6491a39cfb0SJung-uk Kim 
6501a39cfb0SJung-uk Kim /*******************************************************************************
6511a39cfb0SJung-uk Kim  *
6521a39cfb0SJung-uk Kim  * CPEP - Corrected Platform Error Polling table
6531a39cfb0SJung-uk Kim  *
6541a39cfb0SJung-uk Kim  ******************************************************************************/
6551a39cfb0SJung-uk Kim 
6561a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoCpep[] =
6571a39cfb0SJung-uk Kim {
658a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_CPEP_OFFSET (Reserved),                "Reserved", 0},
659a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
6601a39cfb0SJung-uk Kim };
6611a39cfb0SJung-uk Kim 
6621a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoCpep0[] =
6631a39cfb0SJung-uk Kim {
664a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Header.Type),            "Subtable Type", 0},
665a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Header.Length),          "Length", DT_LENGTH},
666a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Id),                     "Processor ID", 0},
667a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Eid),                    "Processor EID", 0},
668a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CPEP0_OFFSET (Interval),               "Polling Interval", 0},
669a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
6701a39cfb0SJung-uk Kim };
6711a39cfb0SJung-uk Kim 
6721a39cfb0SJung-uk Kim 
6731a39cfb0SJung-uk Kim /*******************************************************************************
6741a39cfb0SJung-uk Kim  *
6751df130f1SJung-uk Kim  * CSRT - Core System Resource Table
6761df130f1SJung-uk Kim  *
6771df130f1SJung-uk Kim  ******************************************************************************/
6781df130f1SJung-uk Kim 
6791df130f1SJung-uk Kim /* Main table consists only of the standard ACPI table header */
6801df130f1SJung-uk Kim 
6811df130f1SJung-uk Kim /* Resource Group subtable */
6821df130f1SJung-uk Kim 
6831df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoCsrt0[] =
6841df130f1SJung-uk Kim {
6851df130f1SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (Length),                 "Length", 0},
6861df130f1SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (VendorId),               "Vendor ID", 0},
6871df130f1SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (SubvendorId),            "Subvendor ID", 0},
6881df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (DeviceId),               "Device ID", 0},
6891df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (SubdeviceId),            "Subdevice ID", 0},
6901df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (Revision),               "Revision", 0},
6911df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (Reserved),               "Reserved", 0},
692efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (SharedInfoLength),       "Shared Info Length", 0},
6931df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
6941df130f1SJung-uk Kim };
6951df130f1SJung-uk Kim 
696efcc2a30SJung-uk Kim /* Shared Info subtable */
6971df130f1SJung-uk Kim 
6981df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoCsrt1[] =
6991df130f1SJung-uk Kim {
700efcc2a30SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (MajorVersion),           "Major Version", 0},
701efcc2a30SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (MinorVersion),           "Minor Version", 0},
702efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (MmioBaseLow),            "MMIO Base Address Low", 0},
703efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (MmioBaseHigh),           "MMIO Base Address High", 0},
704efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (GsiInterrupt),           "GSI Interrupt", 0},
705efcc2a30SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (InterruptPolarity),      "Interrupt Polarity", 0},
706efcc2a30SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (InterruptMode),          "Interrupt Mode", 0},
707efcc2a30SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (NumChannels),            "Num Channels", 0},
708efcc2a30SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (DmaAddressWidth),        "DMA Address Width", 0},
709efcc2a30SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (BaseRequestLine),        "Base Request Line", 0},
710efcc2a30SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (NumHandshakeSignals),    "Num Handshake Signals", 0},
711efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (MaxBlockSize),           "Max Block Size", 0},
712efcc2a30SJung-uk Kim     ACPI_DMT_TERMINATOR
713efcc2a30SJung-uk Kim };
714efcc2a30SJung-uk Kim 
715efcc2a30SJung-uk Kim 
716efcc2a30SJung-uk Kim /* Resource Descriptor subtable */
717efcc2a30SJung-uk Kim 
718efcc2a30SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoCsrt2[] =
719efcc2a30SJung-uk Kim {
720efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT2_OFFSET (Length),                 "Length", 0},
721efcc2a30SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT2_OFFSET (Type),                   "Type", 0},
722efcc2a30SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_CSRT2_OFFSET (Subtype),                "Subtype", 0},
723efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_CSRT2_OFFSET (Uid),                    "UID", 0},
7241df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
7251df130f1SJung-uk Kim };
7261df130f1SJung-uk Kim 
7271df130f1SJung-uk Kim 
7281df130f1SJung-uk Kim /*******************************************************************************
7291df130f1SJung-uk Kim  *
7301df130f1SJung-uk Kim  * DBG2 - Debug Port Table 2
7311df130f1SJung-uk Kim  *
7321df130f1SJung-uk Kim  ******************************************************************************/
7331df130f1SJung-uk Kim 
7341df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2[] =
7351df130f1SJung-uk Kim {
7361df130f1SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_DBG2_OFFSET (InfoOffset),              "Info Offset", 0},
7371df130f1SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_DBG2_OFFSET (InfoCount),               "Info Count", 0},
7381df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
7391df130f1SJung-uk Kim };
7401df130f1SJung-uk Kim 
7411df130f1SJung-uk Kim /* Debug Device Information Subtable */
7421df130f1SJung-uk Kim 
7431df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Device[] =
7441df130f1SJung-uk Kim {
7451df130f1SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DBG20_OFFSET (Revision),               "Revision", 0},
746*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (Length),                 "Length", DT_LENGTH},
7471df130f1SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DBG20_OFFSET (RegisterCount),          "Register Count", 0},
7481df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (NamepathLength),         "Namepath Length", 0},
7491df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (NamepathOffset),         "Namepath Offset", 0},
750*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (OemDataLength),          "OEM Data Length", DT_DESCRIBES_OPTIONAL},
751*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (OemDataOffset),          "OEM Data Offset", DT_DESCRIBES_OPTIONAL},
7521df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (PortType),               "Port Type", 0},
7531df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (PortSubtype),            "Port Subtype", 0},
7541df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (Reserved),               "Reserved", 0},
7551df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (BaseAddressOffset),      "Base Address Offset", 0},
7561df130f1SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (AddressSizeOffset),      "Address Size Offset", 0},
7571df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
7581df130f1SJung-uk Kim };
7591df130f1SJung-uk Kim 
7601df130f1SJung-uk Kim /* Variable-length data for the subtable */
7611df130f1SJung-uk Kim 
7621df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Addr[] =
7631df130f1SJung-uk Kim {
7641df130f1SJung-uk Kim     {ACPI_DMT_GAS,      0,                                          "Base Address Register", 0},
7651df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
7661df130f1SJung-uk Kim };
7671df130f1SJung-uk Kim 
7681df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Size[] =
7691df130f1SJung-uk Kim {
7701df130f1SJung-uk Kim     {ACPI_DMT_UINT32,   0,                                          "Address Size", 0},
7711df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
7721df130f1SJung-uk Kim };
7731df130f1SJung-uk Kim 
7741df130f1SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Name[] =
7751df130f1SJung-uk Kim {
7761df130f1SJung-uk Kim     {ACPI_DMT_STRING,   0,                                          "Namepath", 0},
7771df130f1SJung-uk Kim     ACPI_DMT_TERMINATOR
7781df130f1SJung-uk Kim };
7791df130f1SJung-uk Kim 
780*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2OemData[] =
781*313a0c13SJung-uk Kim {
782*313a0c13SJung-uk Kim     {ACPI_DMT_BUFFER,   0,                                          "OEM Data", DT_OPTIONAL},
783*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
784*313a0c13SJung-uk Kim };
785*313a0c13SJung-uk Kim 
7861df130f1SJung-uk Kim 
7871df130f1SJung-uk Kim /*******************************************************************************
7881df130f1SJung-uk Kim  *
7891a39cfb0SJung-uk Kim  * DBGP - Debug Port
7901a39cfb0SJung-uk Kim  *
7911a39cfb0SJung-uk Kim  ******************************************************************************/
7921a39cfb0SJung-uk Kim 
7931a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDbgp[] =
7941a39cfb0SJung-uk Kim {
795a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DBGP_OFFSET (Type),                    "Interface Type", 0},
796a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_DBGP_OFFSET (Reserved[0]),             "Reserved", 0},
797a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_DBGP_OFFSET (DebugPort),               "Debug Port Register", 0},
798a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
7991a39cfb0SJung-uk Kim };
8001a39cfb0SJung-uk Kim 
8011a39cfb0SJung-uk Kim 
8021a39cfb0SJung-uk Kim /*******************************************************************************
8031a39cfb0SJung-uk Kim  *
8041a39cfb0SJung-uk Kim  * DMAR - DMA Remapping table
8051a39cfb0SJung-uk Kim  *
8061a39cfb0SJung-uk Kim  ******************************************************************************/
8071a39cfb0SJung-uk Kim 
8081a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmar[] =
8091a39cfb0SJung-uk Kim {
810a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR_OFFSET (Width),                   "Host Address Width", 0},
811a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR_OFFSET (Flags),                   "Flags", 0},
8128d744e47SJung-uk Kim     {ACPI_DMT_BUF10,    ACPI_DMAR_OFFSET (Reserved[0]),             "Reserved", 0},
813a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
8141a39cfb0SJung-uk Kim };
8151a39cfb0SJung-uk Kim 
816a9f12690SJung-uk Kim /* Common Subtable header (one per Subtable) */
8171a39cfb0SJung-uk Kim 
8181a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmarHdr[] =
8191a39cfb0SJung-uk Kim {
820a88e22b7SJung-uk Kim     {ACPI_DMT_DMAR,     ACPI_DMAR0_OFFSET (Header.Type),            "Subtable Type", 0},
821a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DMAR0_OFFSET (Header.Length),          "Length", DT_LENGTH},
822a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
8231a39cfb0SJung-uk Kim };
8241a39cfb0SJung-uk Kim 
8251a39cfb0SJung-uk Kim /* Common device scope entry */
8261a39cfb0SJung-uk Kim 
8271a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmarScope[] =
8281a39cfb0SJung-uk Kim {
829*313a0c13SJung-uk Kim     {ACPI_DMT_DMAR_SCOPE, ACPI_DMARS_OFFSET (EntryType),            "Device Scope Type", 0},
830a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (Length),                 "Entry Length", DT_LENGTH},
831a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DMARS_OFFSET (Reserved),               "Reserved", 0},
832a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (EnumerationId),          "Enumeration ID", 0},
833a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (Bus),                    "PCI Bus Number", 0},
834a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
8351a39cfb0SJung-uk Kim };
8361a39cfb0SJung-uk Kim 
837a9f12690SJung-uk Kim /* DMAR Subtables */
8381a39cfb0SJung-uk Kim 
8391a39cfb0SJung-uk Kim /* 0: Hardware Unit Definition */
8401a39cfb0SJung-uk Kim 
8411a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmar0[] =
8421a39cfb0SJung-uk Kim {
843a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR0_OFFSET (Flags),                  "Flags", 0},
844a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR0_OFFSET (Reserved),               "Reserved", 0},
845a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DMAR0_OFFSET (Segment),                "PCI Segment Number", 0},
846a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_DMAR0_OFFSET (Address),                "Register Base Address", 0},
847a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
8481a39cfb0SJung-uk Kim };
8491a39cfb0SJung-uk Kim 
850a9f12690SJung-uk Kim /* 1: Reserved Memory Definition */
8511a39cfb0SJung-uk Kim 
8521a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmar1[] =
8531a39cfb0SJung-uk Kim {
854a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DMAR1_OFFSET (Reserved),               "Reserved", 0},
855a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DMAR1_OFFSET (Segment),                "PCI Segment Number", 0},
856a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_DMAR1_OFFSET (BaseAddress),            "Base Address", 0},
857a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_DMAR1_OFFSET (EndAddress),             "End Address (limit)", 0},
858a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
8591a39cfb0SJung-uk Kim };
8601a39cfb0SJung-uk Kim 
861a9f12690SJung-uk Kim /* 2: Root Port ATS Capability Definition */
862a9f12690SJung-uk Kim 
863a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmar2[] =
864a9f12690SJung-uk Kim {
865a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR2_OFFSET (Flags),                  "Flags", 0},
866a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR2_OFFSET (Reserved),               "Reserved", 0},
867a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_DMAR2_OFFSET (Segment),                "PCI Segment Number", 0},
868a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
869a9f12690SJung-uk Kim };
870a9f12690SJung-uk Kim 
871d6dd1baeSJung-uk Kim /* 3: Remapping Hardware Static Affinity Structure */
872d6dd1baeSJung-uk Kim 
873d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmar3[] =
874d6dd1baeSJung-uk Kim {
875a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_DMAR3_OFFSET (Reserved),               "Reserved", 0},
876a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_DMAR3_OFFSET (BaseAddress),            "Base Address", 0},
877a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_DMAR3_OFFSET (ProximityDomain),        "Proximity Domain", 0},
878a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
879d6dd1baeSJung-uk Kim };
880d6dd1baeSJung-uk Kim 
881*313a0c13SJung-uk Kim /* 4: ACPI Namespace Device Declaration Structure */
882*313a0c13SJung-uk Kim 
883*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDmar4[] =
884*313a0c13SJung-uk Kim {
885*313a0c13SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_DMAR4_OFFSET (Reserved[0]),            "Reserved", 0},
886*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_DMAR4_OFFSET (DeviceNumber),           "Device Number", 0},
887*313a0c13SJung-uk Kim     {ACPI_DMT_STRING,   ACPI_DMAR4_OFFSET (DeviceName[0]),          "Device Name", 0},
888*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
889*313a0c13SJung-uk Kim };
890*313a0c13SJung-uk Kim 
8911a39cfb0SJung-uk Kim 
8921a39cfb0SJung-uk Kim /*******************************************************************************
8931a39cfb0SJung-uk Kim  *
8943f0275a0SJung-uk Kim  * DRTM - Dynamic Root of Trust for Measurement table
8953f0275a0SJung-uk Kim  *
8963f0275a0SJung-uk Kim  ******************************************************************************/
8973f0275a0SJung-uk Kim 
8983f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoDrtm[] =
8993f0275a0SJung-uk Kim {
9003f0275a0SJung-uk Kim 
9013f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
9023f0275a0SJung-uk Kim };
9033f0275a0SJung-uk Kim 
9043f0275a0SJung-uk Kim 
9053f0275a0SJung-uk Kim /*******************************************************************************
9063f0275a0SJung-uk Kim  *
9071a39cfb0SJung-uk Kim  * ECDT - Embedded Controller Boot Resources Table
9081a39cfb0SJung-uk Kim  *
9091a39cfb0SJung-uk Kim  ******************************************************************************/
9101a39cfb0SJung-uk Kim 
9111a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoEcdt[] =
9121a39cfb0SJung-uk Kim {
913a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_ECDT_OFFSET (Control),                 "Command/Status Register", 0},
914a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_ECDT_OFFSET (Data),                    "Data Register", 0},
915a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_ECDT_OFFSET (Uid),                     "UID", 0},
916a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ECDT_OFFSET (Gpe),                     "GPE Number", 0},
917a88e22b7SJung-uk Kim     {ACPI_DMT_STRING,   ACPI_ECDT_OFFSET (Id[0]),                   "Namepath", 0},
918a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
9191a39cfb0SJung-uk Kim };
9201a39cfb0SJung-uk Kim 
9211a39cfb0SJung-uk Kim 
9221a39cfb0SJung-uk Kim /*******************************************************************************
9231a39cfb0SJung-uk Kim  *
924a9f12690SJung-uk Kim  * EINJ - Error Injection table
925a9f12690SJung-uk Kim  *
926a9f12690SJung-uk Kim  ******************************************************************************/
927a9f12690SJung-uk Kim 
928a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoEinj[] =
929a9f12690SJung-uk Kim {
930a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_EINJ_OFFSET (HeaderLength),            "Injection Header Length", 0},
931a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_EINJ_OFFSET (Flags),                   "Flags", 0},
932a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_EINJ_OFFSET (Reserved[0]),             "Reserved", 0},
933a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_EINJ_OFFSET (Entries),                 "Injection Entry Count", 0},
934a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
935a9f12690SJung-uk Kim };
936a9f12690SJung-uk Kim 
937a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoEinj0[] =
938a9f12690SJung-uk Kim {
939a88e22b7SJung-uk Kim     {ACPI_DMT_EINJACT,  ACPI_EINJ0_OFFSET (Action),                 "Action", 0},
940a88e22b7SJung-uk Kim     {ACPI_DMT_EINJINST, ACPI_EINJ0_OFFSET (Instruction),            "Instruction", 0},
941a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_EINJ0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
942a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_EINJ0_FLAG_OFFSET (Flags,0),           "Preserve Register Bits", 0},
943a88e22b7SJung-uk Kim 
944a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_EINJ0_OFFSET (Reserved),               "Reserved", 0},
945a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_EINJ0_OFFSET (RegisterRegion),         "Register Region", 0},
946a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_EINJ0_OFFSET (Value),                  "Value", 0},
947a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_EINJ0_OFFSET (Mask),                   "Mask", 0},
948a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
949a9f12690SJung-uk Kim };
950a9f12690SJung-uk Kim 
951a9f12690SJung-uk Kim 
952a9f12690SJung-uk Kim /*******************************************************************************
953a9f12690SJung-uk Kim  *
954a9f12690SJung-uk Kim  * ERST - Error Record Serialization table
955a9f12690SJung-uk Kim  *
956a9f12690SJung-uk Kim  ******************************************************************************/
957a9f12690SJung-uk Kim 
958a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoErst[] =
959a9f12690SJung-uk Kim {
960a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_ERST_OFFSET (HeaderLength),            "Serialization Header Length", 0},
961a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_ERST_OFFSET (Reserved),                "Reserved", 0},
962a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_ERST_OFFSET (Entries),                 "Instruction Entry Count", 0},
963a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
964a88e22b7SJung-uk Kim };
965a88e22b7SJung-uk Kim 
966a88e22b7SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoErst0[] =
967a88e22b7SJung-uk Kim {
968a88e22b7SJung-uk Kim     {ACPI_DMT_ERSTACT,  ACPI_ERST0_OFFSET (Action),                 "Action", 0},
969a88e22b7SJung-uk Kim     {ACPI_DMT_ERSTINST, ACPI_ERST0_OFFSET (Instruction),            "Instruction", 0},
970a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ERST0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
971a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_ERST0_FLAG_OFFSET (Flags,0),           "Preserve Register Bits", 0},
972a88e22b7SJung-uk Kim 
973a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_ERST0_OFFSET (Reserved),               "Reserved", 0},
974a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_ERST0_OFFSET (RegisterRegion),         "Register Region", 0},
975a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_ERST0_OFFSET (Value),                  "Value", 0},
976a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_ERST0_OFFSET (Mask),                   "Mask", 0},
977a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
978a9f12690SJung-uk Kim };
979a9f12690SJung-uk Kim 
980a9f12690SJung-uk Kim 
981a9f12690SJung-uk Kim /*******************************************************************************
982a9f12690SJung-uk Kim  *
9833f0275a0SJung-uk Kim  * FPDT - Firmware Performance Data Table (ACPI 5.0)
9843f0275a0SJung-uk Kim  *
9853f0275a0SJung-uk Kim  ******************************************************************************/
9863f0275a0SJung-uk Kim 
9873f0275a0SJung-uk Kim /* Main table consists of only the standard ACPI header - subtables follow */
9883f0275a0SJung-uk Kim 
9893f0275a0SJung-uk Kim /* FPDT subtable header */
9903f0275a0SJung-uk Kim 
9913f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFpdtHdr[] =
9923f0275a0SJung-uk Kim {
9933f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_FPDTH_OFFSET (Type),                   "Subtable Type", 0},
9943f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FPDTH_OFFSET (Length),                 "Length", DT_LENGTH},
9953f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_FPDTH_OFFSET (Revision),               "Revision", 0},
9963f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
9973f0275a0SJung-uk Kim };
9983f0275a0SJung-uk Kim 
9993f0275a0SJung-uk Kim /* 0: Firmware Basic Boot Performance Record */
10003f0275a0SJung-uk Kim 
10013f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFpdt0[] =
10023f0275a0SJung-uk Kim {
10033f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FPDT0_OFFSET (Reserved),               "Reserved", 0},
10043f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (ResetEnd),               "Reset End", 0},
10053f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (LoadStart),              "Load Image Start", 0},
10063f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (StartupStart),           "Start Image Start", 0},
10073f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (ExitServicesEntry),      "Exit Services Entry", 0},
10083f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (ExitServicesExit),       "Exit Services Exit", 0},
10093f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
10103f0275a0SJung-uk Kim };
10113f0275a0SJung-uk Kim 
10123f0275a0SJung-uk Kim /* 1: S3 Performance Table Pointer Record */
10133f0275a0SJung-uk Kim 
10143f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoFpdt1[] =
10153f0275a0SJung-uk Kim {
10163f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_FPDT1_OFFSET (Reserved),               "Reserved", 0},
10173f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_FPDT1_OFFSET (Address),                "S3PT Address", 0},
10183f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
10193f0275a0SJung-uk Kim };
10203f0275a0SJung-uk Kim 
10213f0275a0SJung-uk Kim 
10223f0275a0SJung-uk Kim /*******************************************************************************
10233f0275a0SJung-uk Kim  *
10243f0275a0SJung-uk Kim  * GTDT - Generic Timer Description Table
10253f0275a0SJung-uk Kim  *
10263f0275a0SJung-uk Kim  ******************************************************************************/
10273f0275a0SJung-uk Kim 
10283f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGtdt[] =
10293f0275a0SJung-uk Kim {
1030*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT_OFFSET (CounterBlockAddresss),    "Counter Block Address", 0},
1031*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (Reserved),                "Reserved", 0},
10323f0275a0SJung-uk Kim     ACPI_DMT_NEW_LINE,
1033*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (SecureEl1Interrupt),      "Secure EL1 Interrupt", 0},
1034*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (SecureEl1Flags),          "EL1 Flags (decoded below)", DT_FLAG},
1035*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (SecureEl1Flags,0),   "Trigger Mode", 0},
1036*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (SecureEl1Flags,0),   "Polarity", 0},
1037*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_GTDT_FLAG_OFFSET (SecureEl1Flags,0),   "Always On", 0},
10383f0275a0SJung-uk Kim     ACPI_DMT_NEW_LINE,
1039*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecureEl1Interrupt),   "Non-Secure EL1 Interrupt", 0},
1040*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecureEl1Flags),       "NEL1 Flags (decoded below)", DT_FLAG},
1041*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (NonSecureEl1Flags,0),"Trigger Mode", 0},
1042*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (NonSecureEl1Flags,0),"Polarity", 0},
1043*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_GTDT_FLAG_OFFSET (NonSecureEl1Flags,0),"Always On", 0},
10443f0275a0SJung-uk Kim     ACPI_DMT_NEW_LINE,
10453f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (VirtualTimerInterrupt),   "Virtual Timer Interrupt", 0},
10463f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (VirtualTimerFlags),       "VT Flags (decoded below)", DT_FLAG},
10473f0275a0SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (VirtualTimerFlags,0),"Trigger Mode", 0},
10483f0275a0SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (VirtualTimerFlags,0),"Polarity", 0},
1049*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_GTDT_FLAG_OFFSET (VirtualTimerFlags,0),"Always On", 0},
10503f0275a0SJung-uk Kim     ACPI_DMT_NEW_LINE,
1051*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecureEl2Interrupt),   "Non-Secure EL2 Interrupt", 0},
1052*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecureEl2Flags),       "NEL2 Flags (decoded below)", DT_FLAG},
1053*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (NonSecureEl2Flags,0),"Trigger Mode", 0},
1054*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (NonSecureEl2Flags,0),"Polarity", 0},
1055*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_GTDT_FLAG_OFFSET (NonSecureEl2Flags,0),"Always On", 0},
1056*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT_OFFSET (CounterReadBlockAddress), "Counter Read Block Address", 0},
1057*313a0c13SJung-uk Kim     ACPI_DMT_NEW_LINE,
1058*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (PlatformTimerCount),      "Platform Timer Count", 0},
1059*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (PlatformTimerOffset),     "Platform Timer Offset", 0},
1060*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1061*313a0c13SJung-uk Kim };
1062*313a0c13SJung-uk Kim 
1063*313a0c13SJung-uk Kim /* GTDT Subtable header (one per Subtable) */
1064*313a0c13SJung-uk Kim 
1065*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGtdtHdr[] =
1066*313a0c13SJung-uk Kim {
1067*313a0c13SJung-uk Kim     {ACPI_DMT_GTDT,     ACPI_GTDTH_OFFSET (Type),                   "Subtable Type", 0},
1068*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_GTDTH_OFFSET (Length),                 "Length", DT_LENGTH},
1069*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1070*313a0c13SJung-uk Kim };
1071*313a0c13SJung-uk Kim 
1072*313a0c13SJung-uk Kim /* GTDT Subtables */
1073*313a0c13SJung-uk Kim 
1074*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGtdt0[] =
1075*313a0c13SJung-uk Kim {
1076*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_GTDT0_OFFSET (Reserved),               "Reserved", 0},
1077*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT0_OFFSET (BlockAddress),           "Block Address", 0},
1078*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0_OFFSET (TimerCount),             "Timer Count", 0},
1079*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0_OFFSET (TimerOffset),            "Timer Offset", 0},
1080*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1081*313a0c13SJung-uk Kim };
1082*313a0c13SJung-uk Kim 
1083*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGtdt0a[] =
1084*313a0c13SJung-uk Kim {
1085*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8 ,   ACPI_GTDT0a_OFFSET (FrameNumber),               "Frame Number", 0},
1086*313a0c13SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_GTDT0a_OFFSET (Reserved[0]),               "Reserved", 0},
1087*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT0a_OFFSET (BaseAddress),               "Base Address", 0},
1088*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT0a_OFFSET (El0BaseAddress),            "EL0 Base Address", 0},
1089*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0a_OFFSET (TimerInterrupt),            "Timer Interrupt", 0},
1090*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0a_OFFSET (TimerFlags),                "Timer Flags (decoded below)", 0},
1091*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT0a_FLAG_OFFSET (TimerFlags,0),         "Trigger Mode", 0},
1092*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT0a_FLAG_OFFSET (TimerFlags,0),         "Polarity", 0},
1093*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0a_OFFSET (VirtualTimerInterrupt),     "Virtual Timer Interrupt", 0},
1094*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0a_OFFSET (VirtualTimerFlags),         "Virtual Timer Flags (decoded below)", 0},
1095*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT0a_FLAG_OFFSET (VirtualTimerFlags,0),  "Trigger Mode", 0},
1096*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT0a_FLAG_OFFSET (VirtualTimerFlags,0),  "Polarity", 0},
1097*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT0a_OFFSET (CommonFlags),               "Common Flags (decoded below)", 0},
1098*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT0a_FLAG_OFFSET (CommonFlags,0),        "Secure", 0},
1099*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT0a_FLAG_OFFSET (CommonFlags,0),        "Always On", 0},
1100*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1101*313a0c13SJung-uk Kim };
1102*313a0c13SJung-uk Kim 
1103*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGtdt1[] =
1104*313a0c13SJung-uk Kim {
1105*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_GTDT1_OFFSET (Reserved),               "Reserved", 0},
1106*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT1_OFFSET (RefreshFrameAddress),    "Refresh Frame Address", 0},
1107*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_GTDT1_OFFSET (ControlFrameAddress),    "Control Frame Address", 0},
1108*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT1_OFFSET (TimerInterrupt),         "Timer Interrupt", 0},
1109*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_GTDT1_OFFSET (TimerFlags),             "Timer Flags (decoded below)", DT_FLAG},
1110*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_GTDT1_FLAG_OFFSET (TimerFlags,0),      "Trigger Mode", 0},
1111*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_GTDT1_FLAG_OFFSET (TimerFlags,0),      "Polarity", 0},
1112*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_GTDT1_FLAG_OFFSET (TimerFlags,0),      "Security", 0},
11133f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
11143f0275a0SJung-uk Kim };
11153f0275a0SJung-uk Kim 
11163f0275a0SJung-uk Kim 
11173f0275a0SJung-uk Kim /*******************************************************************************
11183f0275a0SJung-uk Kim  *
1119a9f12690SJung-uk Kim  * HEST - Hardware Error Source table
1120a9f12690SJung-uk Kim  *
1121a9f12690SJung-uk Kim  ******************************************************************************/
1122a9f12690SJung-uk Kim 
1123a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest[] =
1124a9f12690SJung-uk Kim {
1125a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST_OFFSET (ErrorSourceCount),        "Error Source Count", 0},
1126a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1127a9f12690SJung-uk Kim };
1128a9f12690SJung-uk Kim 
1129d6dd1baeSJung-uk Kim /* Common HEST structures for subtables */
1130d6dd1baeSJung-uk Kim 
1131d6dd1baeSJung-uk Kim #define ACPI_DM_HEST_HEADER \
1132a88e22b7SJung-uk Kim     {ACPI_DMT_HEST,     ACPI_HEST0_OFFSET (Header.Type),            "Subtable Type", 0}, \
1133a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST0_OFFSET (Header.SourceId),        "Source Id", 0}
1134d6dd1baeSJung-uk Kim 
1135d6dd1baeSJung-uk Kim #define ACPI_DM_HEST_AER \
1136a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Reserved1),              "Reserved", 0}, \
1137a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST6_OFFSET (Aer.Flags),                  "Flags (decoded below)", DT_FLAG}, \
1138a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_HEST6_FLAG_OFFSET (Aer.Flags,0),           "Firmware First", 0}, \
1139a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST6_OFFSET (Aer.Enabled),                "Enabled", 0}, \
1140a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.RecordsToPreallocate),   "Records To Preallocate", 0}, \
1141a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.MaxSectionsPerRecord),   "Max Sections Per Record", 0}, \
1142a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.Bus),                    "Bus", 0}, \
1143a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Device),                 "Device", 0}, \
1144a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Function),               "Function", 0}, \
1145a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.DeviceControl),          "DeviceControl", 0}, \
1146a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Reserved2),              "Reserved", 0}, \
1147a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.UncorrectableMask),      "Uncorrectable Mask", 0}, \
1148a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.UncorrectableSeverity),  "Uncorrectable Severity", 0}, \
1149a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.CorrectableMask),        "Correctable Mask", 0}, \
1150a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.AdvancedCapabilities),   "Advanced Capabilities", 0}
1151d6dd1baeSJung-uk Kim 
1152d6dd1baeSJung-uk Kim 
1153a9f12690SJung-uk Kim /* HEST Subtables */
1154a9f12690SJung-uk Kim 
1155d6dd1baeSJung-uk Kim /* 0: IA32 Machine Check Exception */
1156a9f12690SJung-uk Kim 
1157a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest0[] =
1158a9f12690SJung-uk Kim {
1159d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1160a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST0_OFFSET (Reserved1),              "Reserved1", 0},
1161a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1162a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_HEST0_FLAG_OFFSET (Flags,0),           "Firmware First", 0},
1163a88e22b7SJung-uk Kim 
1164a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST0_OFFSET (Enabled),                "Enabled", 0},
1165a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST0_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1166a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST0_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1167a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_HEST0_OFFSET (GlobalCapabilityData),   "Global Capability Data", 0},
1168a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_HEST0_OFFSET (GlobalControlData),      "Global Control Data", 0},
1169a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST0_OFFSET (NumHardwareBanks),       "Num Hardware Banks", 0},
1170a88e22b7SJung-uk Kim     {ACPI_DMT_UINT56,   ACPI_HEST0_OFFSET (Reserved3[0]),           "Reserved2", 0},
1171a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1172a9f12690SJung-uk Kim };
1173a9f12690SJung-uk Kim 
1174d6dd1baeSJung-uk Kim /* 1: IA32 Corrected Machine Check */
1175a9f12690SJung-uk Kim 
1176a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest1[] =
1177a9f12690SJung-uk Kim {
1178d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1179a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST1_OFFSET (Reserved1),              "Reserved1", 0},
1180a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST1_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1181a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_HEST1_FLAG_OFFSET (Flags,0),           "Firmware First", 0},
1182a88e22b7SJung-uk Kim 
1183a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST1_OFFSET (Enabled),                "Enabled", 0},
1184a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST1_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1185a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST1_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1186a88e22b7SJung-uk Kim     {ACPI_DMT_HESTNTFY, ACPI_HEST1_OFFSET (Notify),                 "Notify", 0},
1187a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST1_OFFSET (NumHardwareBanks),       "Num Hardware Banks", 0},
1188a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_HEST1_OFFSET (Reserved2[0]),           "Reserved2", 0},
1189a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1190a9f12690SJung-uk Kim };
1191a9f12690SJung-uk Kim 
1192d6dd1baeSJung-uk Kim /* 2: IA32 Non-Maskable Interrupt */
1193a9f12690SJung-uk Kim 
1194d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest2[] =
1195a9f12690SJung-uk Kim {
1196d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1197a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (Reserved),               "Reserved", 0},
1198a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1199a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1200a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (MaxRawDataLength),       "Max Raw Data Length", 0},
1201a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1202a9f12690SJung-uk Kim };
1203a9f12690SJung-uk Kim 
1204a9f12690SJung-uk Kim /* 6: PCI Express Root Port AER */
1205a9f12690SJung-uk Kim 
1206a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest6[] =
1207a9f12690SJung-uk Kim {
1208d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1209d6dd1baeSJung-uk Kim     ACPI_DM_HEST_AER,
1210a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (RootErrorCommand),       "Root Error Command", 0},
1211a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1212a9f12690SJung-uk Kim };
1213a9f12690SJung-uk Kim 
1214a9f12690SJung-uk Kim /* 7: PCI Express AER (AER Endpoint) */
1215a9f12690SJung-uk Kim 
1216a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest7[] =
1217a9f12690SJung-uk Kim {
1218d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1219d6dd1baeSJung-uk Kim     ACPI_DM_HEST_AER,
1220a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1221a9f12690SJung-uk Kim };
1222a9f12690SJung-uk Kim 
1223a9f12690SJung-uk Kim /* 8: PCI Express/PCI-X Bridge AER */
1224a9f12690SJung-uk Kim 
1225a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest8[] =
1226a9f12690SJung-uk Kim {
1227d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1228d6dd1baeSJung-uk Kim     ACPI_DM_HEST_AER,
1229a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST8_OFFSET (UncorrectableMask2),     "2nd Uncorrectable Mask", 0},
1230a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST8_OFFSET (UncorrectableSeverity2), "2nd Uncorrectable Severity", 0},
1231a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST8_OFFSET (AdvancedCapabilities2),  "2nd Advanced Capabilities", 0},
1232a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1233a9f12690SJung-uk Kim };
1234a9f12690SJung-uk Kim 
1235a9f12690SJung-uk Kim /* 9: Generic Hardware Error Source */
1236a9f12690SJung-uk Kim 
1237a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHest9[] =
1238a9f12690SJung-uk Kim {
1239d6dd1baeSJung-uk Kim     ACPI_DM_HEST_HEADER,
1240a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HEST9_OFFSET (RelatedSourceId),        "Related Source Id", 0},
1241a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST9_OFFSET (Reserved),               "Reserved", 0},
1242a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HEST9_OFFSET (Enabled),                "Enabled", 0},
1243a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1244a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1245a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (MaxRawDataLength),       "Max Raw Data Length", 0},
1246a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_HEST9_OFFSET (ErrorStatusAddress),     "Error Status Address", 0},
1247a88e22b7SJung-uk Kim     {ACPI_DMT_HESTNTFY, ACPI_HEST9_OFFSET (Notify),                 "Notify", 0},
1248a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (ErrorBlockLength),       "Error Status Block Length", 0},
1249a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1250a9f12690SJung-uk Kim };
1251a9f12690SJung-uk Kim 
1252d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHestNotify[] =
1253a9f12690SJung-uk Kim {
1254a88e22b7SJung-uk Kim     {ACPI_DMT_HESTNTYP, ACPI_HESTN_OFFSET (Type),                   "Notify Type", 0},
1255a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HESTN_OFFSET (Length),                 "Notify Length", DT_LENGTH},
1256a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HESTN_OFFSET (ConfigWriteEnable),      "Configuration Write Enable", 0},
1257a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (PollInterval),           "PollInterval", 0},
1258a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (Vector),                 "Vector", 0},
1259a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (PollingThresholdValue),  "Polling Threshold Value", 0},
1260a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (PollingThresholdWindow), "Polling Threshold Window", 0},
1261a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (ErrorThresholdValue),    "Error Threshold Value", 0},
1262a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (ErrorThresholdWindow),   "Error Threshold Window", 0},
1263a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1264a9f12690SJung-uk Kim };
1265a9f12690SJung-uk Kim 
1266a9f12690SJung-uk Kim 
1267d6dd1baeSJung-uk Kim /*
1268d6dd1baeSJung-uk Kim  * IA32 Error Bank(s) - Follows the ACPI_HEST_IA_MACHINE_CHECK and
1269d6dd1baeSJung-uk Kim  * ACPI_HEST_IA_CORRECTED structures.
1270d6dd1baeSJung-uk Kim  */
1271d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHestBank[] =
1272d6dd1baeSJung-uk Kim {
1273a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (BankNumber),             "Bank Number", 0},
1274a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (ClearStatusOnInit),      "Clear Status On Init", 0},
1275a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (StatusFormat),           "Status Format", 0},
1276a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (Reserved),               "Reserved", 0},
1277a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (ControlRegister),        "Control Register", 0},
1278a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_HESTB_OFFSET (ControlData),            "Control Data", 0},
1279a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (StatusRegister),         "Status Register", 0},
1280a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (AddressRegister),        "Address Register", 0},
1281a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (MiscRegister),           "Misc Register", 0},
1282a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1283d6dd1baeSJung-uk Kim };
1284d6dd1baeSJung-uk Kim 
1285d6dd1baeSJung-uk Kim 
1286a9f12690SJung-uk Kim /*******************************************************************************
1287a9f12690SJung-uk Kim  *
12881a39cfb0SJung-uk Kim  * HPET - High Precision Event Timer table
12891a39cfb0SJung-uk Kim  *
12901a39cfb0SJung-uk Kim  ******************************************************************************/
12911a39cfb0SJung-uk Kim 
12921a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoHpet[] =
12931a39cfb0SJung-uk Kim {
1294a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_HPET_OFFSET (Id),                      "Hardware Block ID", 0},
1295a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_HPET_OFFSET (Address),                 "Timer Block Register", 0},
1296a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HPET_OFFSET (Sequence),                "Sequence Number", 0},
1297a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_HPET_OFFSET (MinimumTick),             "Minimum Clock Ticks", 0},
1298a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_HPET_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
1299a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_HPET_FLAG_OFFSET (Flags,0),            "4K Page Protect", 0},
1300a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_HPET_FLAG_OFFSET (Flags,0),            "64K Page Protect", 0},
1301a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1302d6dd1baeSJung-uk Kim };
1303d6dd1baeSJung-uk Kim 
1304d6dd1baeSJung-uk Kim 
1305d6dd1baeSJung-uk Kim /*******************************************************************************
1306d6dd1baeSJung-uk Kim  *
1307d6dd1baeSJung-uk Kim  * IVRS - I/O Virtualization Reporting Structure
1308d6dd1baeSJung-uk Kim  *
1309d6dd1baeSJung-uk Kim  ******************************************************************************/
1310d6dd1baeSJung-uk Kim 
1311d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs[] =
1312d6dd1baeSJung-uk Kim {
1313a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_IVRS_OFFSET (Info),                    "Virtualization Info", 0},
1314a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_IVRS_OFFSET (Reserved),                "Reserved", 0},
1315a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1316d6dd1baeSJung-uk Kim };
1317d6dd1baeSJung-uk Kim 
1318d6dd1baeSJung-uk Kim /* Common Subtable header (one per Subtable) */
1319d6dd1baeSJung-uk Kim 
1320d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrsHdr[] =
1321d6dd1baeSJung-uk Kim {
1322a88e22b7SJung-uk Kim     {ACPI_DMT_IVRS,     ACPI_IVRSH_OFFSET (Type),                   "Subtable Type", 0},
1323a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRSH_OFFSET (Flags),                  "Flags", 0},
1324a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRSH_OFFSET (Length),                 "Length", DT_LENGTH},
1325a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRSH_OFFSET (DeviceId),               "DeviceId", 0},
1326a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1327d6dd1baeSJung-uk Kim };
1328d6dd1baeSJung-uk Kim 
1329d6dd1baeSJung-uk Kim /* IVRS subtables */
1330d6dd1baeSJung-uk Kim 
1331d6dd1baeSJung-uk Kim /* 0x10: I/O Virtualization Hardware Definition (IVHD) Block */
1332d6dd1baeSJung-uk Kim 
1333d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs0[] =
1334d6dd1baeSJung-uk Kim {
1335a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRS0_OFFSET (CapabilityOffset),       "Capability Offset", 0},
1336a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_IVRS0_OFFSET (BaseAddress),            "Base Address", 0},
1337a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRS0_OFFSET (PciSegmentGroup),        "PCI Segment Group", 0},
1338a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRS0_OFFSET (Info),                   "Virtualization Info", 0},
1339a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_IVRS0_OFFSET (Reserved),               "Reserved", 0},
1340a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1341d6dd1baeSJung-uk Kim };
1342d6dd1baeSJung-uk Kim 
1343d6dd1baeSJung-uk Kim /* 0x20, 0x21, 0x22: I/O Virtualization Memory Definition (IVMD) Block */
1344d6dd1baeSJung-uk Kim 
1345d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs1[] =
1346d6dd1baeSJung-uk Kim {
1347a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRS1_OFFSET (AuxData),                "Auxiliary Data", 0},
1348a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_IVRS1_OFFSET (Reserved),               "Reserved", 0},
1349a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_IVRS1_OFFSET (StartAddress),           "Start Address", 0},
1350a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_IVRS1_OFFSET (MemoryLength),           "Memory Length", 0},
1351a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1352d6dd1baeSJung-uk Kim };
1353d6dd1baeSJung-uk Kim 
1354d6dd1baeSJung-uk Kim /* Device entry header for IVHD block */
1355d6dd1baeSJung-uk Kim 
1356d6dd1baeSJung-uk Kim #define ACPI_DMT_IVRS_DE_HEADER \
1357a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRSD_OFFSET (Type),                   "Entry Type", 0}, \
1358a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRSD_OFFSET (Id),                     "Device ID", 0}, \
1359a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRSD_OFFSET (DataSetting),            "Data Setting", 0}
1360d6dd1baeSJung-uk Kim 
1361d6dd1baeSJung-uk Kim /* 4-byte device entry */
1362d6dd1baeSJung-uk Kim 
1363d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs4[] =
1364d6dd1baeSJung-uk Kim {
1365d6dd1baeSJung-uk Kim     ACPI_DMT_IVRS_DE_HEADER,
1366a88e22b7SJung-uk Kim     {ACPI_DMT_EXIT,     0,                                          NULL, 0},
1367d6dd1baeSJung-uk Kim };
1368d6dd1baeSJung-uk Kim 
1369d6dd1baeSJung-uk Kim /* 8-byte device entry */
1370d6dd1baeSJung-uk Kim 
1371d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs8a[] =
1372d6dd1baeSJung-uk Kim {
1373d6dd1baeSJung-uk Kim     ACPI_DMT_IVRS_DE_HEADER,
1374a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRS8A_OFFSET (Reserved1),             "Reserved", 0},
1375a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRS8A_OFFSET (UsedId),                "Source Used Device ID", 0},
1376a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRS8A_OFFSET (Reserved2),             "Reserved", 0},
1377a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1378d6dd1baeSJung-uk Kim };
1379d6dd1baeSJung-uk Kim 
1380d6dd1baeSJung-uk Kim /* 8-byte device entry */
1381d6dd1baeSJung-uk Kim 
1382d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs8b[] =
1383d6dd1baeSJung-uk Kim {
1384d6dd1baeSJung-uk Kim     ACPI_DMT_IVRS_DE_HEADER,
1385a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_IVRS8B_OFFSET (ExtendedData),          "Extended Data", 0},
1386a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1387d6dd1baeSJung-uk Kim };
1388d6dd1baeSJung-uk Kim 
1389d6dd1baeSJung-uk Kim /* 8-byte device entry */
1390d6dd1baeSJung-uk Kim 
1391d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs8c[] =
1392d6dd1baeSJung-uk Kim {
1393d6dd1baeSJung-uk Kim     ACPI_DMT_IVRS_DE_HEADER,
1394a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRS8C_OFFSET (Handle),                "Handle", 0},
1395a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_IVRS8C_OFFSET (UsedId),                "Source Used Device ID", 0},
1396a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_IVRS8C_OFFSET (Variety),               "Variety", 0},
1397a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
13981a39cfb0SJung-uk Kim };
13991a39cfb0SJung-uk Kim 
14001a39cfb0SJung-uk Kim 
14011a39cfb0SJung-uk Kim /*******************************************************************************
14021a39cfb0SJung-uk Kim  *
1403*313a0c13SJung-uk Kim  * LPIT - Low Power Idle Table
1404*313a0c13SJung-uk Kim  *
1405*313a0c13SJung-uk Kim  ******************************************************************************/
1406*313a0c13SJung-uk Kim 
1407*313a0c13SJung-uk Kim /* Main table consists only of the standard ACPI table header */
1408*313a0c13SJung-uk Kim 
1409*313a0c13SJung-uk Kim /* Common Subtable header (one per Subtable) */
1410*313a0c13SJung-uk Kim 
1411*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoLpitHdr[] =
1412*313a0c13SJung-uk Kim {
1413*313a0c13SJung-uk Kim     {ACPI_DMT_LPIT,     ACPI_LPITH_OFFSET (Type),                   "Subtable Type", 0},
1414*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPITH_OFFSET (Length),                 "Length", DT_LENGTH},
1415*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_LPITH_OFFSET (UniqueId),               "Unique ID", 0},
1416*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_LPITH_OFFSET (Reserved),               "Reserved", 0},
1417*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPITH_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1418*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_LPITH_FLAG_OFFSET (Flags, 0),          "State Disabled", 0},
1419*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_LPITH_FLAG_OFFSET (Flags, 0),          "No Counter", 0},
1420*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1421*313a0c13SJung-uk Kim };
1422*313a0c13SJung-uk Kim 
1423*313a0c13SJung-uk Kim /* LPIT Subtables */
1424*313a0c13SJung-uk Kim 
1425*313a0c13SJung-uk Kim /* 0: Native C-state */
1426*313a0c13SJung-uk Kim 
1427*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoLpit0[] =
1428*313a0c13SJung-uk Kim {
1429*313a0c13SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_LPIT0_OFFSET (EntryTrigger),           "Entry Trigger", 0},
1430*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPIT0_OFFSET (Residency),              "Residency", 0},
1431*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPIT0_OFFSET (Latency),                "Latency", 0},
1432*313a0c13SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_LPIT0_OFFSET (ResidencyCounter),       "Residency Counter", 0},
1433*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_LPIT0_OFFSET (CounterFrequency),       "Counter Frequency", 0},
1434*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1435*313a0c13SJung-uk Kim };
1436*313a0c13SJung-uk Kim 
1437*313a0c13SJung-uk Kim /* 1: Simple I/O */
1438*313a0c13SJung-uk Kim 
1439*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoLpit1[] =
1440*313a0c13SJung-uk Kim {
1441*313a0c13SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_LPIT1_OFFSET (EntryTrigger),           "Entry Trigger", 0},
1442*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPIT1_OFFSET (TriggerAction),          "Trigger Action", 0},
1443*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_LPIT1_OFFSET (TriggerValue),           "Trigger Value", 0},
1444*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_LPIT1_OFFSET (TriggerMask),            "Trigger Mask", 0},
1445*313a0c13SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_LPIT1_OFFSET (MinimumIdleState),       "Minimum Idle State", 0},
1446*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPIT1_OFFSET (Residency),              "Residency", 0},
1447*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_LPIT1_OFFSET (Latency),                "Latency", 0},
1448*313a0c13SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_LPIT1_OFFSET (ResidencyCounter),       "Residency Counter", 0},
1449*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_LPIT1_OFFSET (CounterFrequency),       "Counter Frequency", 0},
1450*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1451*313a0c13SJung-uk Kim };
1452*313a0c13SJung-uk Kim 
1453*313a0c13SJung-uk Kim 
1454*313a0c13SJung-uk Kim /*******************************************************************************
1455*313a0c13SJung-uk Kim  *
14561a39cfb0SJung-uk Kim  * MADT - Multiple APIC Description Table and subtables
14571a39cfb0SJung-uk Kim  *
14581a39cfb0SJung-uk Kim  ******************************************************************************/
14591a39cfb0SJung-uk Kim 
14601a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt[] =
14611a39cfb0SJung-uk Kim {
1462a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT_OFFSET (Address),                 "Local Apic Address", 0},
1463a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
1464a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT_FLAG_OFFSET (Flags,0),            "PC-AT Compatibility", 0},
1465a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
14661a39cfb0SJung-uk Kim };
14671a39cfb0SJung-uk Kim 
1468a9f12690SJung-uk Kim /* Common Subtable header (one per Subtable) */
14691a39cfb0SJung-uk Kim 
14701a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadtHdr[] =
14711a39cfb0SJung-uk Kim {
1472a88e22b7SJung-uk Kim     {ACPI_DMT_MADT,     ACPI_MADTH_OFFSET (Type),                   "Subtable Type", 0},
1473a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADTH_OFFSET (Length),                 "Length", DT_LENGTH},
1474a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
14751a39cfb0SJung-uk Kim };
14761a39cfb0SJung-uk Kim 
1477a9f12690SJung-uk Kim /* MADT Subtables */
14781a39cfb0SJung-uk Kim 
14791a39cfb0SJung-uk Kim /* 0: processor APIC */
14801a39cfb0SJung-uk Kim 
14811a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt0[] =
14821a39cfb0SJung-uk Kim {
1483a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT0_OFFSET (ProcessorId),            "Processor ID", 0},
1484a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT0_OFFSET (Id),                     "Local Apic ID", 0},
1485a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT0_OFFSET (LapicFlags),             "Flags (decoded below)", DT_FLAG},
1486a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT0_FLAG_OFFSET (LapicFlags,0),      "Processor Enabled", 0},
1487a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
14881a39cfb0SJung-uk Kim };
14891a39cfb0SJung-uk Kim 
14901a39cfb0SJung-uk Kim /* 1: IO APIC */
14911a39cfb0SJung-uk Kim 
14921a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt1[] =
14931a39cfb0SJung-uk Kim {
1494a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT1_OFFSET (Id),                     "I/O Apic ID", 0},
1495a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT1_OFFSET (Reserved),               "Reserved", 0},
1496a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT1_OFFSET (Address),                "Address", 0},
1497a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT1_OFFSET (GlobalIrqBase),          "Interrupt", 0},
1498a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
14991a39cfb0SJung-uk Kim };
15001a39cfb0SJung-uk Kim 
15011a39cfb0SJung-uk Kim /* 2: Interrupt Override */
15021a39cfb0SJung-uk Kim 
15031a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt2[] =
15041a39cfb0SJung-uk Kim {
1505a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT2_OFFSET (Bus),                    "Bus", 0},
1506a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT2_OFFSET (SourceIrq),              "Source", 0},
1507a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT2_OFFSET (GlobalIrq),              "Interrupt", 0},
1508a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT2_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1509a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS0,   ACPI_MADT2_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1510a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS2,   ACPI_MADT2_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1511a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15121a39cfb0SJung-uk Kim };
15131a39cfb0SJung-uk Kim 
15141a39cfb0SJung-uk Kim /* 3: NMI Sources */
15151a39cfb0SJung-uk Kim 
15161a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt3[] =
15171a39cfb0SJung-uk Kim {
1518a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT3_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1519a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS0,   ACPI_MADT3_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1520a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS2,   ACPI_MADT3_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1521a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT3_OFFSET (GlobalIrq),              "Interrupt", 0},
1522a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15231a39cfb0SJung-uk Kim };
15241a39cfb0SJung-uk Kim 
15251a39cfb0SJung-uk Kim /* 4: Local APIC NMI */
15261a39cfb0SJung-uk Kim 
15271a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt4[] =
15281a39cfb0SJung-uk Kim {
1529a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT4_OFFSET (ProcessorId),            "Processor ID", 0},
1530a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT4_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1531a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS0,   ACPI_MADT4_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1532a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS2,   ACPI_MADT4_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1533a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT4_OFFSET (Lint),                   "Interrupt Input LINT", 0},
1534a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15351a39cfb0SJung-uk Kim };
15361a39cfb0SJung-uk Kim 
15371a39cfb0SJung-uk Kim /* 5: Address Override */
15381a39cfb0SJung-uk Kim 
15391a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt5[] =
15401a39cfb0SJung-uk Kim {
1541a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT5_OFFSET (Reserved),               "Reserved", 0},
1542a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT5_OFFSET (Address),                "APIC Address", 0},
1543a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15441a39cfb0SJung-uk Kim };
15451a39cfb0SJung-uk Kim 
15461a39cfb0SJung-uk Kim /* 6: I/O Sapic */
15471a39cfb0SJung-uk Kim 
15481a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt6[] =
15491a39cfb0SJung-uk Kim {
1550a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT6_OFFSET (Id),                     "I/O Sapic ID", 0},
1551a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT6_OFFSET (Reserved),               "Reserved", 0},
1552a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT6_OFFSET (GlobalIrqBase),          "Interrupt Base", 0},
1553a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT6_OFFSET (Address),                "Address", 0},
1554a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15551a39cfb0SJung-uk Kim };
15561a39cfb0SJung-uk Kim 
15571a39cfb0SJung-uk Kim /* 7: Local Sapic */
15581a39cfb0SJung-uk Kim 
15591a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt7[] =
15601a39cfb0SJung-uk Kim {
1561a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT7_OFFSET (ProcessorId),            "Processor ID", 0},
1562a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT7_OFFSET (Id),                     "Local Sapic ID", 0},
1563a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT7_OFFSET (Eid),                    "Local Sapic EID", 0},
1564a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_MADT7_OFFSET (Reserved[0]),            "Reserved", 0},
1565a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT7_OFFSET (LapicFlags),             "Flags (decoded below)", DT_FLAG},
1566a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT7_FLAG_OFFSET (LapicFlags,0),      "Processor Enabled", 0},
1567a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT7_OFFSET (Uid),                    "Processor UID", 0},
1568a88e22b7SJung-uk Kim     {ACPI_DMT_STRING,   ACPI_MADT7_OFFSET (UidString[0]),           "Processor UID String", 0},
1569a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15701a39cfb0SJung-uk Kim };
15711a39cfb0SJung-uk Kim 
15721a39cfb0SJung-uk Kim /* 8: Platform Interrupt Source */
15731a39cfb0SJung-uk Kim 
15741a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt8[] =
15751a39cfb0SJung-uk Kim {
1576a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT8_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1577a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS0,   ACPI_MADT8_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1578a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS2,   ACPI_MADT8_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1579a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (Type),                   "InterruptType", 0},
1580a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (Id),                     "Processor ID", 0},
1581a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (Eid),                    "Processor EID", 0},
1582a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (IoSapicVector),          "I/O Sapic Vector", 0},
1583a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT8_OFFSET (GlobalIrq),              "Interrupt", 0},
1584a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT8_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1585a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT8_OFFSET (Flags),                  "CPEI Override", 0},
1586a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
15871a39cfb0SJung-uk Kim };
15881a39cfb0SJung-uk Kim 
1589d6dd1baeSJung-uk Kim /* 9: Processor Local X2_APIC (ACPI 4.0) */
1590a9f12690SJung-uk Kim 
1591a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt9[] =
1592a9f12690SJung-uk Kim {
1593a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT9_OFFSET (Reserved),               "Reserved", 0},
1594a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT9_OFFSET (LocalApicId),            "Processor x2Apic ID", 0},
1595a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT9_OFFSET (LapicFlags),             "Flags (decoded below)", DT_FLAG},
1596a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT9_FLAG_OFFSET (LapicFlags,0),      "Processor Enabled", 0},
1597a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT9_OFFSET (Uid),                    "Processor UID", 0},
1598a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1599a9f12690SJung-uk Kim };
1600a9f12690SJung-uk Kim 
1601d6dd1baeSJung-uk Kim /* 10: Local X2_APIC NMI (ACPI 4.0) */
1602a9f12690SJung-uk Kim 
1603a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt10[] =
1604a9f12690SJung-uk Kim {
1605a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT10_OFFSET (IntiFlags),             "Flags (decoded below)", DT_FLAG},
1606a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS0,   ACPI_MADT10_FLAG_OFFSET (IntiFlags,0),      "Polarity", 0},
1607a88e22b7SJung-uk Kim     {ACPI_DMT_FLAGS2,   ACPI_MADT10_FLAG_OFFSET (IntiFlags,0),      "Trigger Mode", 0},
1608a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT10_OFFSET (Uid),                   "Processor UID", 0},
1609a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MADT10_OFFSET (Lint),                  "Interrupt Input LINT", 0},
1610a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_MADT10_OFFSET (Reserved[0]),           "Reserved", 0},
1611a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1612a9f12690SJung-uk Kim };
1613a9f12690SJung-uk Kim 
16143f0275a0SJung-uk Kim /* 11: Generic Interrupt Controller (ACPI 5.0) */
16153f0275a0SJung-uk Kim 
16163f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt11[] =
16173f0275a0SJung-uk Kim {
16183f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT11_OFFSET (Reserved),              "Reserved", 0},
1619*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (CpuInterfaceNumber),    "CPU Interface Number", 0},
16203f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (Uid),                   "Processor UID", 0},
16213f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (Flags),                 "Flags (decoded below)", DT_FLAG},
16223f0275a0SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT11_FLAG_OFFSET (Flags,0),          "Processor Enabled", 0},
1623*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_MADT11_FLAG_OFFSET (Flags,0),          "Performance Interrupt Trigger Mode", 0},
1624*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_MADT11_FLAG_OFFSET (Flags,0),          "Virtual GIC Interrupt Trigger Mode", 0},
16253f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (ParkingVersion),        "Parking Protocol Version", 0},
16263f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (PerformanceInterrupt),  "Performance Interrupt", 0},
16273f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (ParkedAddress),         "Parked Address", 0},
16283f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (BaseAddress),           "Base Address", 0},
1629*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (GicvBaseAddress),       "Virtual GIC Base Address", 0},
1630*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (GichBaseAddress),       "Hypervisor GIC Base Address", 0},
1631*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (VgicInterrupt),         "Virtual GIC Interrupt", 0},
1632*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (GicrBaseAddress),       "Redistributor Base Address", 0},
1633*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (ArmMpidr),              "ARM MPIDR", 0},
16343f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
16353f0275a0SJung-uk Kim };
16363f0275a0SJung-uk Kim 
16373f0275a0SJung-uk Kim /* 12: Generic Interrupt Distributor (ACPI 5.0) */
16383f0275a0SJung-uk Kim 
16393f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt12[] =
16403f0275a0SJung-uk Kim {
16413f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT12_OFFSET (Reserved),              "Reserved", 0},
16423f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT12_OFFSET (GicId),                 "Local GIC Hardware ID", 0},
16433f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT12_OFFSET (BaseAddress),           "Base Address", 0},
16443f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT12_OFFSET (GlobalIrqBase),         "Interrupt Base", 0},
16453f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT12_OFFSET (Reserved2),             "Reserved", 0},
16463f0275a0SJung-uk Kim    ACPI_DMT_TERMINATOR
16473f0275a0SJung-uk Kim };
16483f0275a0SJung-uk Kim 
1649*313a0c13SJung-uk Kim /* 13: Generic MSI Frame (ACPI 5.1) */
1650*313a0c13SJung-uk Kim 
1651*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt13[] =
1652*313a0c13SJung-uk Kim {
1653*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT13_OFFSET (Reserved),              "Reserved", 0},
1654*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT13_OFFSET (MsiFrameId),            "MSI Frame ID", 0},
1655*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT13_OFFSET (BaseAddress),           "Base Address", 0},
1656*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT13_OFFSET (Flags),                 "Flags (decoded below)", DT_FLAG},
1657*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MADT13_FLAG_OFFSET (Flags,0),          "Select SPI", 0},
1658*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT13_OFFSET (SpiCount),              "SPI Count", 0},
1659*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT13_OFFSET (SpiBase),               "SPI Base", 0},
1660*313a0c13SJung-uk Kim    ACPI_DMT_TERMINATOR
1661*313a0c13SJung-uk Kim };
1662*313a0c13SJung-uk Kim 
1663*313a0c13SJung-uk Kim /* 14: Generic Redistributor (ACPI 5.1) */
1664*313a0c13SJung-uk Kim 
1665*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMadt14[] =
1666*313a0c13SJung-uk Kim {
1667*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MADT14_OFFSET (Reserved),              "Reserved", 0},
1668*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MADT14_OFFSET (BaseAddress),           "Base Address", 0},
1669*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MADT14_OFFSET (Length),                "Length", 0},
1670*313a0c13SJung-uk Kim    ACPI_DMT_TERMINATOR
1671*313a0c13SJung-uk Kim };
1672*313a0c13SJung-uk Kim 
16731a39cfb0SJung-uk Kim 
16741a39cfb0SJung-uk Kim /*******************************************************************************
16751a39cfb0SJung-uk Kim  *
1676a9f12690SJung-uk Kim  * MCFG - PCI Memory Mapped Configuration table and Subtable
16771a39cfb0SJung-uk Kim  *
16781a39cfb0SJung-uk Kim  ******************************************************************************/
16791a39cfb0SJung-uk Kim 
16801a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMcfg[] =
16811a39cfb0SJung-uk Kim {
1682a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MCFG_OFFSET (Reserved[0]),             "Reserved", 0},
1683a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
16841a39cfb0SJung-uk Kim };
16851a39cfb0SJung-uk Kim 
16861a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMcfg0[] =
16871a39cfb0SJung-uk Kim {
1688a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MCFG0_OFFSET (Address),                "Base Address", 0},
1689a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MCFG0_OFFSET (PciSegment),             "Segment Group Number", 0},
1690a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCFG0_OFFSET (StartBusNumber),         "Start Bus Number", 0},
1691a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCFG0_OFFSET (EndBusNumber),           "End Bus Number", 0},
1692a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MCFG0_OFFSET (Reserved),               "Reserved", 0},
1693a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
16941a39cfb0SJung-uk Kim };
16951a39cfb0SJung-uk Kim 
16961a39cfb0SJung-uk Kim 
16971a39cfb0SJung-uk Kim /*******************************************************************************
16981a39cfb0SJung-uk Kim  *
1699ca3cf4faSJung-uk Kim  * MCHI - Management Controller Host Interface table
1700ca3cf4faSJung-uk Kim  *
1701ca3cf4faSJung-uk Kim  ******************************************************************************/
1702ca3cf4faSJung-uk Kim 
1703ca3cf4faSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMchi[] =
1704ca3cf4faSJung-uk Kim {
1705a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (InterfaceType),           "Interface Type", 0},
1706a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (Protocol),                "Protocol", 0},
1707a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MCHI_OFFSET (ProtocolData),            "Protocol Data", 0},
1708a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (InterruptType),           "Interrupt Type", 0},
1709a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (Gpe),                     "Gpe", 0},
1710a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciDeviceFlag),           "Pci Device Flag", 0},
1711a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MCHI_OFFSET (GlobalInterrupt),         "Global Interrupt", 0},
1712a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_MCHI_OFFSET (ControlRegister),         "Control Register", 0},
1713a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciSegment),              "Pci Segment", 0},
1714a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciBus),                  "Pci Bus", 0},
1715a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciDevice),               "Pci Device", 0},
1716a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciFunction),             "Pci Function", 0},
1717a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1718ca3cf4faSJung-uk Kim };
1719ca3cf4faSJung-uk Kim 
1720ca3cf4faSJung-uk Kim 
1721ca3cf4faSJung-uk Kim /*******************************************************************************
1722ca3cf4faSJung-uk Kim  *
17233f0275a0SJung-uk Kim  * MPST - Memory Power State Table
17243f0275a0SJung-uk Kim  *
17253f0275a0SJung-uk Kim  ******************************************************************************/
17263f0275a0SJung-uk Kim 
17273f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMpst[] =
17283f0275a0SJung-uk Kim {
17293f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST_OFFSET (ChannelId),               "Channel ID", 0},
17308ef1a331SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_MPST_OFFSET (Reserved1[0]),            "Reserved", 0},
17313f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST_OFFSET (PowerNodeCount),          "Power Node Count", 0},
17328ef1a331SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST_OFFSET (Reserved2),               "Reserved", 0},
17333f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
17343f0275a0SJung-uk Kim };
17353f0275a0SJung-uk Kim 
17363f0275a0SJung-uk Kim /* MPST subtables */
17373f0275a0SJung-uk Kim 
17383f0275a0SJung-uk Kim /* 0: Memory Power Node Structure */
17393f0275a0SJung-uk Kim 
17403f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMpst0[] =
17413f0275a0SJung-uk Kim {
17423f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
17433f0275a0SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MPST0_FLAG_OFFSET (Flags,0),           "Node Enabled", 0},
17443f0275a0SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_MPST0_FLAG_OFFSET (Flags,0),           "Power Managed", 0},
17453f0275a0SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_MPST0_FLAG_OFFSET (Flags,0),           "Hot Plug Capable", 0},
17463f0275a0SJung-uk Kim 
17473f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST0_OFFSET (Reserved1),              "Reserved", 0},
17483f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST0_OFFSET (NodeId),                 "Node ID", 0},
17498ef1a331SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MPST0_OFFSET (Length),                 "Length", 0},
17503f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MPST0_OFFSET (RangeAddress),           "Range Address", 0},
17513f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MPST0_OFFSET (RangeLength),            "Range Length", 0},
17528ef1a331SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MPST0_OFFSET (NumPowerStates),         "Num Power States", 0},
17538ef1a331SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MPST0_OFFSET (NumPhysicalComponents),  "Num Physical Components", 0},
17543f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
17553f0275a0SJung-uk Kim };
17563f0275a0SJung-uk Kim 
17573f0275a0SJung-uk Kim /* 0A: Sub-subtable - Memory Power State Structure (follows Memory Power Node above) */
17583f0275a0SJung-uk Kim 
17593f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMpst0A[] =
17603f0275a0SJung-uk Kim {
17613f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST0A_OFFSET (PowerState),            "Power State", 0},
17623f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST0A_OFFSET (InfoIndex),             "InfoIndex", 0},
17633f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
17643f0275a0SJung-uk Kim };
17653f0275a0SJung-uk Kim 
17663f0275a0SJung-uk Kim /* 0B: Sub-subtable - Physical Component ID Structure (follows Memory Power State(s) above) */
17673f0275a0SJung-uk Kim 
17683f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMpst0B[] =
17693f0275a0SJung-uk Kim {
17703f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST0B_OFFSET (ComponentId),           "Component Id", 0},
17713f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
17723f0275a0SJung-uk Kim };
17733f0275a0SJung-uk Kim 
17743f0275a0SJung-uk Kim /* 01: Power Characteristics Count (follows all Power Node(s) above) */
17753f0275a0SJung-uk Kim 
17763f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMpst1[] =
17773f0275a0SJung-uk Kim {
17783f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST1_OFFSET (CharacteristicsCount),   "Characteristics Count", 0},
17798ef1a331SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST1_OFFSET (Reserved),               "Reserved", 0},
17803f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
17813f0275a0SJung-uk Kim };
17823f0275a0SJung-uk Kim 
17833f0275a0SJung-uk Kim /* 02: Memory Power State Characteristics Structure */
17843f0275a0SJung-uk Kim 
17853f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMpst2[] =
17863f0275a0SJung-uk Kim {
17878ef1a331SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST2_OFFSET (StructureId),            "Structure ID", 0},
17883f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MPST2_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
17893f0275a0SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_MPST2_FLAG_OFFSET (Flags,0),           "Memory Preserved", 0},
17903f0275a0SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_MPST2_FLAG_OFFSET (Flags,0),           "Auto Entry", 0},
17913f0275a0SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_MPST2_FLAG_OFFSET (Flags,0),           "Auto Exit", 0},
17923f0275a0SJung-uk Kim 
17933f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_MPST2_OFFSET (Reserved1),              "Reserved", 0},
17943f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MPST2_OFFSET (AveragePower),           "Average Power", 0},
17953f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MPST2_OFFSET (PowerSaving),            "Power Saving", 0},
17963f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MPST2_OFFSET (ExitLatency),            "Exit Latency", 0},
17973f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MPST2_OFFSET (Reserved2),              "Reserved", 0},
17983f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
17993f0275a0SJung-uk Kim };
18003f0275a0SJung-uk Kim 
18013f0275a0SJung-uk Kim 
18023f0275a0SJung-uk Kim /*******************************************************************************
18033f0275a0SJung-uk Kim  *
1804d6dd1baeSJung-uk Kim  * MSCT - Maximum System Characteristics Table (ACPI 4.0)
1805d6dd1baeSJung-uk Kim  *
1806d6dd1baeSJung-uk Kim  ******************************************************************************/
1807d6dd1baeSJung-uk Kim 
1808d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMsct[] =
1809d6dd1baeSJung-uk Kim {
1810a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MSCT_OFFSET (ProximityOffset),         "Proximity Offset", 0},
1811a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MSCT_OFFSET (MaxProximityDomains),     "Max Proximity Domains", 0},
1812a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MSCT_OFFSET (MaxClockDomains),         "Max Clock Domains", 0},
1813a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MSCT_OFFSET (MaxAddress),              "Max Physical Address", 0},
1814a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1815d6dd1baeSJung-uk Kim };
1816d6dd1baeSJung-uk Kim 
1817d6dd1baeSJung-uk Kim /* Subtable - Maximum Proximity Domain Information. Version 1 */
1818d6dd1baeSJung-uk Kim 
1819d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMsct0[] =
1820d6dd1baeSJung-uk Kim {
1821a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MSCT0_OFFSET (Revision),               "Revision", 0},
1822a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_MSCT0_OFFSET (Length),                 "Length", DT_LENGTH},
1823a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MSCT0_OFFSET (RangeStart),             "Domain Range Start", 0},
1824a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MSCT0_OFFSET (RangeEnd),               "Domain Range End", 0},
1825a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MSCT0_OFFSET (ProcessorCapacity),      "Processor Capacity", 0},
1826a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_MSCT0_OFFSET (MemoryCapacity),         "Memory Capacity", 0},
1827a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
1828d6dd1baeSJung-uk Kim };
1829d6dd1baeSJung-uk Kim 
1830d6dd1baeSJung-uk Kim 
1831d6dd1baeSJung-uk Kim /*******************************************************************************
1832d6dd1baeSJung-uk Kim  *
18339c48c75eSJung-uk Kim  * MTMR - MID Timer Table
18349c48c75eSJung-uk Kim  *
18359c48c75eSJung-uk Kim  ******************************************************************************/
18369c48c75eSJung-uk Kim 
18379c48c75eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMtmr[] =
18389c48c75eSJung-uk Kim {
18399c48c75eSJung-uk Kim     ACPI_DMT_TERMINATOR
18409c48c75eSJung-uk Kim };
18419c48c75eSJung-uk Kim 
18429c48c75eSJung-uk Kim /* MTMR Subtables - MTMR Entry */
18439c48c75eSJung-uk Kim 
18449c48c75eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoMtmr0[] =
18459c48c75eSJung-uk Kim {
18469c48c75eSJung-uk Kim     {ACPI_DMT_GAS,      ACPI_MTMR0_OFFSET (PhysicalAddress),        "PhysicalAddress", 0},
18479c48c75eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MTMR0_OFFSET (Frequency),              "Frequency", 0},
18489c48c75eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_MTMR0_OFFSET (Irq),                    "IRQ", 0},
18499c48c75eSJung-uk Kim     ACPI_DMT_TERMINATOR
18509c48c75eSJung-uk Kim };
18519c48c75eSJung-uk Kim 
18529c48c75eSJung-uk Kim 
18539c48c75eSJung-uk Kim /*******************************************************************************
18549c48c75eSJung-uk Kim  *
18553f0275a0SJung-uk Kim  * PCCT - Platform Communications Channel Table (ACPI 5.0)
18563f0275a0SJung-uk Kim  *
18573f0275a0SJung-uk Kim  ******************************************************************************/
18583f0275a0SJung-uk Kim 
18593f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPcct[] =
18603f0275a0SJung-uk Kim {
18613f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PCCT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
18623f0275a0SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_PCCT_FLAG_OFFSET (Flags,0),            "Doorbell", 0},
1863*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT_OFFSET (Reserved),                "Reserved", 0},
18643f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
18653f0275a0SJung-uk Kim };
18663f0275a0SJung-uk Kim 
18673f0275a0SJung-uk Kim /* PCCT subtables */
18683f0275a0SJung-uk Kim 
1869*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPcctHdr[] =
1870*313a0c13SJung-uk Kim {
1871*313a0c13SJung-uk Kim     {ACPI_DMT_PCCT,     ACPI_PCCT0_OFFSET (Header.Type),            "Subtable Type", 0},
1872*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_PCCT0_OFFSET (Header.Length),          "Length", DT_LENGTH},
1873*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1874*313a0c13SJung-uk Kim };
1875*313a0c13SJung-uk Kim 
18763f0275a0SJung-uk Kim /* 0: Generic Communications Subspace */
18773f0275a0SJung-uk Kim 
18783f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPcct0[] =
18793f0275a0SJung-uk Kim {
18803f0275a0SJung-uk Kim     {ACPI_DMT_UINT48,   ACPI_PCCT0_OFFSET (Reserved[0]),            "Reserved", 0},
18813f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (BaseAddress),            "Base Address", 0},
18823f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (Length),                 "Address Length", 0},
18833f0275a0SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_PCCT0_OFFSET (DoorbellRegister),       "Doorbell Register", 0},
18843f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (PreserveMask),           "Preserve Mask", 0},
18853f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (WriteMask),              "Write Mask", 0},
1886*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PCCT0_OFFSET (Latency),                "Command Latency", 0},
1887*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PCCT0_OFFSET (MaxAccessRate),          "Maximum Access Rate", 0},
1888*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PCCT0_OFFSET (MinTurnaroundTime),      "Minimum Turnaround Time", 0},
1889*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
1890*313a0c13SJung-uk Kim };
1891*313a0c13SJung-uk Kim 
1892*313a0c13SJung-uk Kim /* 1: HW-reduced Communications Subspace (ACPI 5.1) */
1893*313a0c13SJung-uk Kim 
1894*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPcct1[] =
1895*313a0c13SJung-uk Kim {
1896*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PCCT1_OFFSET (DoorbellInterrupt),      "Doorbell Interrupt", 0},
1897*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_PCCT1_OFFSET (Flags),                  "Flags (Decoded Below)", DT_FLAG},
1898*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_PCCT1_FLAG_OFFSET (Flags,0),           "Polarity", 0},
1899*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_PCCT1_FLAG_OFFSET (Flags,0),           "Mode", 0},
1900*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_PCCT1_OFFSET (Reserved),               "Reserved", 0},
1901*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT1_OFFSET (BaseAddress),            "Base Address", 0},
1902*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT1_OFFSET (Length),                 "Address Length", 0},
1903*313a0c13SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_PCCT1_OFFSET (DoorbellRegister),       "Doorbell Register", 0},
1904*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT1_OFFSET (PreserveMask),           "Preserve Mask", 0},
1905*313a0c13SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_PCCT1_OFFSET (WriteMask),              "Write Mask", 0},
1906*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PCCT1_OFFSET (Latency),                "Command Latency", 0},
1907*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PCCT1_OFFSET (MaxAccessRate),          "Maximum Access Rate", 0},
1908*313a0c13SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PCCT1_OFFSET (MinTurnaroundTime),      "Minimum Turnaround Time", 0},
19093f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19103f0275a0SJung-uk Kim };
19113f0275a0SJung-uk Kim 
19123f0275a0SJung-uk Kim 
19133f0275a0SJung-uk Kim /*******************************************************************************
19143f0275a0SJung-uk Kim  *
19153f0275a0SJung-uk Kim  * PMTT - Platform Memory Topology Table
19163f0275a0SJung-uk Kim  *
19173f0275a0SJung-uk Kim  ******************************************************************************/
19183f0275a0SJung-uk Kim 
19193f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt[] =
19203f0275a0SJung-uk Kim {
19213f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT_OFFSET (Reserved),                "Reserved", 0},
19223f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19233f0275a0SJung-uk Kim };
19243f0275a0SJung-uk Kim 
19253f0275a0SJung-uk Kim /* Common Subtable header (one per Subtable) */
19263f0275a0SJung-uk Kim 
19273f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPmttHdr[] =
19283f0275a0SJung-uk Kim {
19293f0275a0SJung-uk Kim     {ACPI_DMT_PMTT,     ACPI_PMTTH_OFFSET (Type),                   "Subtable Type", 0},
19303f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_PMTTH_OFFSET (Reserved1),              "Reserved", 0},
19313f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTTH_OFFSET (Length),                 "Length", DT_LENGTH},
19323f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTTH_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
19333f0275a0SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_PMTTH_FLAG_OFFSET (Flags,0),           "Top-level Device", 0},
19343f0275a0SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_PMTTH_FLAG_OFFSET (Flags,0),           "Physical Element", 0},
19353f0275a0SJung-uk Kim     {ACPI_DMT_FLAGS2,   ACPI_PMTTH_FLAG_OFFSET (Flags,0),           "Memory Type", 0},
19363f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTTH_OFFSET (Reserved2),              "Reserved", 0},
19373f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19383f0275a0SJung-uk Kim };
19393f0275a0SJung-uk Kim 
19403f0275a0SJung-uk Kim /* PMTT Subtables */
19413f0275a0SJung-uk Kim 
19423f0275a0SJung-uk Kim /* 0: Socket */
19433f0275a0SJung-uk Kim 
19443f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt0[] =
19453f0275a0SJung-uk Kim {
19463f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT0_OFFSET (SocketId),               "Socket ID", 0},
19473f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT0_OFFSET (Reserved),               "Reserved", 0},
19483f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19493f0275a0SJung-uk Kim };
19503f0275a0SJung-uk Kim 
19513f0275a0SJung-uk Kim /* 1: Memory Controller */
19523f0275a0SJung-uk Kim 
19533f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt1[] =
19543f0275a0SJung-uk Kim {
19553f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (ReadLatency),            "Read Latency", 0},
19563f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (WriteLatency),           "Write Latency", 0},
19573f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (ReadBandwidth),          "Read Bandwidth", 0},
19583f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (WriteBandwidth),         "Write Bandwidth", 0},
19593f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (AccessWidth),            "Access Width", 0},
19603f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (Alignment),              "Alignment", 0},
19613f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (Reserved),               "Reserved", 0},
19623f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (DomainCount),            "Domain Count", 0},
19633f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19643f0275a0SJung-uk Kim };
19653f0275a0SJung-uk Kim 
19663f0275a0SJung-uk Kim /* 1a: Proximity Domain */
19673f0275a0SJung-uk Kim 
19683f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt1a[] =
19693f0275a0SJung-uk Kim {
19703f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT1A_OFFSET (ProximityDomain),       "Proximity Domain", 0},
19713f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19723f0275a0SJung-uk Kim };
19733f0275a0SJung-uk Kim 
19743f0275a0SJung-uk Kim /* 2: Physical Component */
19753f0275a0SJung-uk Kim 
19763f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt2[] =
19773f0275a0SJung-uk Kim {
19783f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT2_OFFSET (ComponentId),            "Component ID", 0},
19793f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_PMTT2_OFFSET (Reserved),               "Reserved", 0},
19803f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT2_OFFSET (MemorySize),             "Memory Size", 0},
19813f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_PMTT2_OFFSET (BiosHandle),             "Bios Handle", 0},
19823f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19833f0275a0SJung-uk Kim };
19843f0275a0SJung-uk Kim 
19853f0275a0SJung-uk Kim 
19863f0275a0SJung-uk Kim /*******************************************************************************
19873f0275a0SJung-uk Kim  *
19883f0275a0SJung-uk Kim  * S3PT - S3 Performance Table
19893f0275a0SJung-uk Kim  *
19903f0275a0SJung-uk Kim  ******************************************************************************/
19913f0275a0SJung-uk Kim 
19923f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoS3pt[] =
19933f0275a0SJung-uk Kim {
19943f0275a0SJung-uk Kim     {ACPI_DMT_SIG,     ACPI_S3PT_OFFSET (Signature[0]),             "Signature", 0},
19953f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,  ACPI_S3PT_OFFSET (Length),                   "Length", DT_LENGTH},
19963f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
19973f0275a0SJung-uk Kim };
19983f0275a0SJung-uk Kim 
19993f0275a0SJung-uk Kim /* S3PT subtable header */
20003f0275a0SJung-uk Kim 
20013f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoS3ptHdr[] =
20023f0275a0SJung-uk Kim {
20033f0275a0SJung-uk Kim     {ACPI_DMT_UINT16,  ACPI_S3PTH_OFFSET (Type),                    "Type", 0},
20043f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,   ACPI_S3PTH_OFFSET (Length),                  "Length", DT_LENGTH},
20053f0275a0SJung-uk Kim     {ACPI_DMT_UINT8,   ACPI_S3PTH_OFFSET (Revision),                "Revision", 0},
20063f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
20073f0275a0SJung-uk Kim };
20083f0275a0SJung-uk Kim 
20093f0275a0SJung-uk Kim /* 0: Basic S3 Resume Performance Record */
20103f0275a0SJung-uk Kim 
20113f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoS3pt0[] =
20123f0275a0SJung-uk Kim {
20133f0275a0SJung-uk Kim     {ACPI_DMT_UINT32,  ACPI_S3PT0_OFFSET (ResumeCount),             "Resume Count", 0},
20143f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,  ACPI_S3PT0_OFFSET (FullResume),              "Full Resume", 0},
20153f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,  ACPI_S3PT0_OFFSET (AverageResume),           "Average Resume", 0},
20163f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
20173f0275a0SJung-uk Kim };
20183f0275a0SJung-uk Kim 
20193f0275a0SJung-uk Kim /* 1: Basic S3 Suspend Performance Record */
20203f0275a0SJung-uk Kim 
20213f0275a0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoS3pt1[] =
20223f0275a0SJung-uk Kim {
20233f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,  ACPI_S3PT1_OFFSET (SuspendStart),            "Suspend Start", 0},
20243f0275a0SJung-uk Kim     {ACPI_DMT_UINT64,  ACPI_S3PT1_OFFSET (SuspendEnd),              "Suspend End", 0},
20253f0275a0SJung-uk Kim     ACPI_DMT_TERMINATOR
20263f0275a0SJung-uk Kim };
20273f0275a0SJung-uk Kim 
20283f0275a0SJung-uk Kim 
20293f0275a0SJung-uk Kim /*******************************************************************************
20303f0275a0SJung-uk Kim  *
20311a39cfb0SJung-uk Kim  * SBST - Smart Battery Specification Table
20321a39cfb0SJung-uk Kim  *
20331a39cfb0SJung-uk Kim  ******************************************************************************/
20341a39cfb0SJung-uk Kim 
20351a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSbst[] =
20361a39cfb0SJung-uk Kim {
2037a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SBST_OFFSET (WarningLevel),            "Warning Level", 0},
2038a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SBST_OFFSET (LowLevel),                "Low Level", 0},
2039a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SBST_OFFSET (CriticalLevel),           "Critical Level", 0},
2040a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
20411a39cfb0SJung-uk Kim };
20421a39cfb0SJung-uk Kim 
20431a39cfb0SJung-uk Kim 
20441a39cfb0SJung-uk Kim /*******************************************************************************
20451a39cfb0SJung-uk Kim  *
2046dcbce41eSJung-uk Kim  * SLIC - Software Licensing Description Table. There is no common table, just
2047dcbce41eSJung-uk Kim  * the standard ACPI header and then subtables.
2048a9f12690SJung-uk Kim  *
2049a9f12690SJung-uk Kim  ******************************************************************************/
2050a9f12690SJung-uk Kim 
2051dcbce41eSJung-uk Kim /* Common Subtable header (one per Subtable) */
2052dcbce41eSJung-uk Kim 
2053dcbce41eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSlicHdr[] =
2054a9f12690SJung-uk Kim {
2055dcbce41eSJung-uk Kim     {ACPI_DMT_SLIC,     ACPI_SLICH_OFFSET (Type),                   "Subtable Type", 0},
2056dcbce41eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SLICH_OFFSET (Length),                 "Length", DT_LENGTH},
2057dcbce41eSJung-uk Kim     ACPI_DMT_TERMINATOR
2058dcbce41eSJung-uk Kim };
2059dcbce41eSJung-uk Kim 
2060dcbce41eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSlic0[] =
2061dcbce41eSJung-uk Kim {
2062dcbce41eSJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SLIC0_OFFSET (KeyType),                "Key Type", 0},
2063dcbce41eSJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SLIC0_OFFSET (Version),                "Version", 0},
2064dcbce41eSJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_SLIC0_OFFSET (Reserved),               "Reserved", 0},
2065dcbce41eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SLIC0_OFFSET (Algorithm),              "Algorithm", 0},
2066dcbce41eSJung-uk Kim     {ACPI_DMT_NAME4,    ACPI_SLIC0_OFFSET (Magic),                  "Magic", 0},
2067dcbce41eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SLIC0_OFFSET (BitLength),              "BitLength", 0},
2068dcbce41eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SLIC0_OFFSET (Exponent),               "Exponent", 0},
2069dcbce41eSJung-uk Kim     {ACPI_DMT_BUF128,   ACPI_SLIC0_OFFSET (Modulus[0]),             "Modulus", 0},
2070dcbce41eSJung-uk Kim     ACPI_DMT_TERMINATOR
2071dcbce41eSJung-uk Kim };
2072dcbce41eSJung-uk Kim 
2073dcbce41eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSlic1[] =
2074dcbce41eSJung-uk Kim {
2075dcbce41eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SLIC1_OFFSET (Version),                "Version", 0},
2076dcbce41eSJung-uk Kim     {ACPI_DMT_NAME6,    ACPI_SLIC1_OFFSET (OemId[0]),               "Oem ID", 0},
2077dcbce41eSJung-uk Kim     {ACPI_DMT_NAME8,    ACPI_SLIC1_OFFSET (OemTableId[0]),          "Oem Table ID", 0},
2078dcbce41eSJung-uk Kim     {ACPI_DMT_NAME8,    ACPI_SLIC1_OFFSET (WindowsFlag[0]),         "Windows Flag", 0},
2079dcbce41eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SLIC1_OFFSET (SlicVersion),            "SLIC Version", 0},
2080dcbce41eSJung-uk Kim     {ACPI_DMT_BUF16,    ACPI_SLIC1_OFFSET (Reserved[0]),            "Reserved", 0},
2081dcbce41eSJung-uk Kim     {ACPI_DMT_BUF128,   ACPI_SLIC1_OFFSET (Signature[0]),           "Signature", 0},
2082a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2083a9f12690SJung-uk Kim };
2084a9f12690SJung-uk Kim 
2085a9f12690SJung-uk Kim 
2086a9f12690SJung-uk Kim /*******************************************************************************
2087a9f12690SJung-uk Kim  *
20881a39cfb0SJung-uk Kim  * SLIT - System Locality Information Table
20891a39cfb0SJung-uk Kim  *
20901a39cfb0SJung-uk Kim  ******************************************************************************/
20911a39cfb0SJung-uk Kim 
20921a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSlit[] =
20931a39cfb0SJung-uk Kim {
2094a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_SLIT_OFFSET (LocalityCount),          "Localities", 0},
2095a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
20961a39cfb0SJung-uk Kim };
20971a39cfb0SJung-uk Kim 
20981a39cfb0SJung-uk Kim 
20991a39cfb0SJung-uk Kim /*******************************************************************************
21001a39cfb0SJung-uk Kim  *
21011a39cfb0SJung-uk Kim  * SPCR - Serial Port Console Redirection table
21021a39cfb0SJung-uk Kim  *
21031a39cfb0SJung-uk Kim  ******************************************************************************/
21041a39cfb0SJung-uk Kim 
21051a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSpcr[] =
21061a39cfb0SJung-uk Kim {
2107a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (InterfaceType),           "Interface Type", 0},
2108a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_SPCR_OFFSET (Reserved[0]),             "Reserved", 0},
2109a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_SPCR_OFFSET (SerialPort),              "Serial Port Register", 0},
2110a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (InterruptType),           "Interrupt Type", 0},
2111a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PcInterrupt),             "PCAT-compatible IRQ", 0},
2112a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SPCR_OFFSET (Interrupt),               "Interrupt", 0},
2113a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (BaudRate),                "Baud Rate", 0},
2114a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (Parity),                  "Parity", 0},
2115a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (StopBits),                "Stop Bits", 0},
2116a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (FlowControl),             "Flow Control", 0},
2117a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (TerminalType),            "Terminal Type", 0},
2118a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (Reserved2),               "Reserved", 0},
2119a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_SPCR_OFFSET (PciDeviceId),             "PCI Device ID", 0},
2120a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_SPCR_OFFSET (PciVendorId),             "PCI Vendor ID", 0},
2121a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciBus),                  "PCI Bus", 0},
2122a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciDevice),               "PCI Device", 0},
2123a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciFunction),             "PCI Function", 0},
2124a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SPCR_OFFSET (PciFlags),                "PCI Flags", 0},
2125a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciSegment),              "PCI Segment", 0},
2126a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SPCR_OFFSET (Reserved2),               "Reserved", 0},
2127a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
21281a39cfb0SJung-uk Kim };
21291a39cfb0SJung-uk Kim 
21301a39cfb0SJung-uk Kim 
21311a39cfb0SJung-uk Kim /*******************************************************************************
21321a39cfb0SJung-uk Kim  *
21331a39cfb0SJung-uk Kim  * SPMI - Server Platform Management Interface table
21341a39cfb0SJung-uk Kim  *
21351a39cfb0SJung-uk Kim  ******************************************************************************/
21361a39cfb0SJung-uk Kim 
21371a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSpmi[] =
21381a39cfb0SJung-uk Kim {
2139a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (InterfaceType),           "Interface Type", 0},
2140*313a0c13SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (Reserved),                "Reserved", DT_NON_ZERO}, /* Value must be 1 */
2141a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_SPMI_OFFSET (SpecRevision),            "IPMI Spec Version", 0},
2142a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (InterruptType),           "Interrupt Type", 0},
2143a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (GpeNumber),               "GPE Number", 0},
2144a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (Reserved1),               "Reserved", 0},
2145a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciDeviceFlag),           "PCI Device Flag", 0},
2146a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SPMI_OFFSET (Interrupt),               "Interrupt", 0},
2147a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_SPMI_OFFSET (IpmiRegister),            "IPMI Register", 0},
2148a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciSegment),              "PCI Segment", 0},
2149a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciBus),                  "PCI Bus", 0},
2150a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciDevice),               "PCI Device", 0},
2151a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciFunction),             "PCI Function", 0},
2152a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (Reserved2),               "Reserved", 0},
2153a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
21541a39cfb0SJung-uk Kim };
21551a39cfb0SJung-uk Kim 
21561a39cfb0SJung-uk Kim 
21571a39cfb0SJung-uk Kim /*******************************************************************************
21581a39cfb0SJung-uk Kim  *
2159a9f12690SJung-uk Kim  * SRAT - System Resource Affinity Table and Subtables
21601a39cfb0SJung-uk Kim  *
21611a39cfb0SJung-uk Kim  ******************************************************************************/
21621a39cfb0SJung-uk Kim 
21631a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSrat[] =
21641a39cfb0SJung-uk Kim {
2165a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT_OFFSET (TableRevision),           "Table Revision", 0},
2166a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_SRAT_OFFSET (Reserved),                "Reserved", 0},
2167a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
21681a39cfb0SJung-uk Kim };
21691a39cfb0SJung-uk Kim 
2170a9f12690SJung-uk Kim /* Common Subtable header (one per Subtable) */
2171a9f12690SJung-uk Kim 
2172a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSratHdr[] =
2173a9f12690SJung-uk Kim {
2174a88e22b7SJung-uk Kim     {ACPI_DMT_SRAT,     ACPI_SRATH_OFFSET (Type),                   "Subtable Type", 0},
2175a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SRATH_OFFSET (Length),                 "Length", DT_LENGTH},
2176a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2177a9f12690SJung-uk Kim };
2178a9f12690SJung-uk Kim 
2179a9f12690SJung-uk Kim /* SRAT Subtables */
2180a9f12690SJung-uk Kim 
2181a9f12690SJung-uk Kim /* 0: Processor Local APIC/SAPIC Affinity */
2182a9f12690SJung-uk Kim 
21831a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSrat0[] =
21841a39cfb0SJung-uk Kim {
2185a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SRAT0_OFFSET (ProximityDomainLo),      "Proximity Domain Low(8)", 0},
2186a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SRAT0_OFFSET (ApicId),                 "Apic ID", 0},
2187a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
2188a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_SRAT0_FLAG_OFFSET (Flags,0),           "Enabled", 0},
2189a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_SRAT0_OFFSET (LocalSapicEid),          "Local Sapic EID", 0},
2190a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_SRAT0_OFFSET (ProximityDomainHi[0]),   "Proximity Domain High(24)", 0},
2191*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT0_OFFSET (ClockDomain),            "Clock Domain", 0},
2192a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
21931a39cfb0SJung-uk Kim };
21941a39cfb0SJung-uk Kim 
2195a9f12690SJung-uk Kim /* 1: Memory Affinity */
2196a9f12690SJung-uk Kim 
21971a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSrat1[] =
21981a39cfb0SJung-uk Kim {
2199a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT1_OFFSET (ProximityDomain),        "Proximity Domain", 0},
2200a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_SRAT1_OFFSET (Reserved),               "Reserved1", 0},
2201a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_SRAT1_OFFSET (BaseAddress),            "Base Address", 0},
2202a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_SRAT1_OFFSET (Length),                 "Address Length", 0},
2203a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT1_OFFSET (Reserved1),              "Reserved2", 0},
2204a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT1_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
2205a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_SRAT1_FLAG_OFFSET (Flags,0),           "Enabled", 0},
2206a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_SRAT1_FLAG_OFFSET (Flags,0),           "Hot Pluggable", 0},
2207a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_SRAT1_FLAG_OFFSET (Flags,0),           "Non-Volatile", 0},
2208a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_SRAT1_OFFSET (Reserved2),              "Reserved3", 0},
2209a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2210a9f12690SJung-uk Kim };
2211a9f12690SJung-uk Kim 
2212d6dd1baeSJung-uk Kim /* 2: Processor Local X2_APIC Affinity (ACPI 4.0) */
2213a9f12690SJung-uk Kim 
2214a9f12690SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSrat2[] =
2215a9f12690SJung-uk Kim {
2216a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_SRAT2_OFFSET (Reserved),               "Reserved1", 0},
2217a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (ProximityDomain),        "Proximity Domain", 0},
2218a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (ApicId),                 "Apic ID", 0},
2219a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
2220a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_SRAT2_FLAG_OFFSET (Flags,0),           "Enabled", 0},
2221a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (ClockDomain),            "Clock Domain", 0},
2222a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (Reserved2),              "Reserved2", 0},
2223a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
22241a39cfb0SJung-uk Kim };
22251a39cfb0SJung-uk Kim 
2226*313a0c13SJung-uk Kim /* : GICC Affinity (ACPI 5.1) */
2227*313a0c13SJung-uk Kim 
2228*313a0c13SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoSrat3[] =
2229*313a0c13SJung-uk Kim {
2230*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT3_OFFSET (ProximityDomain),        "Proximity Domain", 0},
2231*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT3_OFFSET (AcpiProcessorUid),       "Acpi Processor UID", 0},
2232*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT3_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
2233*313a0c13SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_SRAT3_FLAG_OFFSET (Flags,0),           "Enabled", 0},
2234*313a0c13SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_SRAT3_OFFSET (ClockDomain),            "Clock Domain", 0},
2235*313a0c13SJung-uk Kim     ACPI_DMT_TERMINATOR
2236*313a0c13SJung-uk Kim };
2237*313a0c13SJung-uk Kim 
22381a39cfb0SJung-uk Kim 
22391a39cfb0SJung-uk Kim /*******************************************************************************
22401a39cfb0SJung-uk Kim  *
22411a39cfb0SJung-uk Kim  * TCPA - Trusted Computing Platform Alliance table
22421a39cfb0SJung-uk Kim  *
22431a39cfb0SJung-uk Kim  ******************************************************************************/
22441a39cfb0SJung-uk Kim 
22451a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoTcpa[] =
22461a39cfb0SJung-uk Kim {
2247a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_TCPA_OFFSET (Reserved),                "Reserved", 0},
2248a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_TCPA_OFFSET (MaxLogLength),            "Max Event Log Length", 0},
2249a88e22b7SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_TCPA_OFFSET (LogAddress),              "Event Log Address", 0},
2250a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
22511a39cfb0SJung-uk Kim };
22521a39cfb0SJung-uk Kim 
22531a39cfb0SJung-uk Kim 
22541a39cfb0SJung-uk Kim /*******************************************************************************
22551a39cfb0SJung-uk Kim  *
2256efcc2a30SJung-uk Kim  * TPM2 - Trusted Platform Module (TPM) 2.0 Hardware Interface Table
2257efcc2a30SJung-uk Kim  *
2258efcc2a30SJung-uk Kim  ******************************************************************************/
2259efcc2a30SJung-uk Kim 
2260efcc2a30SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoTpm2[] =
2261efcc2a30SJung-uk Kim {
2262efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_TPM2_OFFSET (Flags),                   "Flags", 0},
2263efcc2a30SJung-uk Kim     {ACPI_DMT_UINT64,   ACPI_TPM2_OFFSET (ControlAddress),          "Control Address", 0},
2264efcc2a30SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_TPM2_OFFSET (StartMethod),             "Start Method", 0},
2265efcc2a30SJung-uk Kim     ACPI_DMT_TERMINATOR
2266efcc2a30SJung-uk Kim };
2267efcc2a30SJung-uk Kim 
2268efcc2a30SJung-uk Kim 
2269efcc2a30SJung-uk Kim /*******************************************************************************
2270efcc2a30SJung-uk Kim  *
2271d6dd1baeSJung-uk Kim  * UEFI - UEFI Boot optimization Table
2272d6dd1baeSJung-uk Kim  *
2273d6dd1baeSJung-uk Kim  ******************************************************************************/
2274d6dd1baeSJung-uk Kim 
2275d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoUefi[] =
2276d6dd1baeSJung-uk Kim {
2277d244b227SJung-uk Kim     {ACPI_DMT_UUID,     ACPI_UEFI_OFFSET (Identifier[0]),           "UUID Identifier", 0},
2278a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_UEFI_OFFSET (DataOffset),              "Data Offset", 0},
2279a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2280d6dd1baeSJung-uk Kim };
2281d6dd1baeSJung-uk Kim 
2282d6dd1baeSJung-uk Kim 
2283d6dd1baeSJung-uk Kim /*******************************************************************************
2284d6dd1baeSJung-uk Kim  *
22859c48c75eSJung-uk Kim  * VRTC - Virtual Real Time Clock Table
22869c48c75eSJung-uk Kim  *
22879c48c75eSJung-uk Kim  ******************************************************************************/
22889c48c75eSJung-uk Kim 
22899c48c75eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoVrtc[] =
22909c48c75eSJung-uk Kim {
22919c48c75eSJung-uk Kim     ACPI_DMT_TERMINATOR
22929c48c75eSJung-uk Kim };
22939c48c75eSJung-uk Kim 
22949c48c75eSJung-uk Kim /* VRTC Subtables - VRTC Entry */
22959c48c75eSJung-uk Kim 
22969c48c75eSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoVrtc0[] =
22979c48c75eSJung-uk Kim {
22989c48c75eSJung-uk Kim     {ACPI_DMT_GAS,      ACPI_VRTC0_OFFSET (PhysicalAddress),        "PhysicalAddress", 0},
22999c48c75eSJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_VRTC0_OFFSET (Irq),                    "IRQ", 0},
23009c48c75eSJung-uk Kim     ACPI_DMT_TERMINATOR
23019c48c75eSJung-uk Kim };
23029c48c75eSJung-uk Kim 
23039c48c75eSJung-uk Kim 
23049c48c75eSJung-uk Kim /*******************************************************************************
23059c48c75eSJung-uk Kim  *
2306d6dd1baeSJung-uk Kim  * WAET - Windows ACPI Emulated devices Table
2307d6dd1baeSJung-uk Kim  *
2308d6dd1baeSJung-uk Kim  ******************************************************************************/
2309d6dd1baeSJung-uk Kim 
2310d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoWaet[] =
2311d6dd1baeSJung-uk Kim {
2312a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WAET_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
2313a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_WAET_OFFSET (Flags),                   "RTC needs no INT ack", 0},
2314a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_WAET_OFFSET (Flags),                   "PM timer, one read only", 0},
2315a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2316d6dd1baeSJung-uk Kim };
2317d6dd1baeSJung-uk Kim 
2318d6dd1baeSJung-uk Kim 
2319d6dd1baeSJung-uk Kim /*******************************************************************************
2320d6dd1baeSJung-uk Kim  *
2321d6dd1baeSJung-uk Kim  * WDAT - Watchdog Action Table
2322d6dd1baeSJung-uk Kim  *
2323d6dd1baeSJung-uk Kim  ******************************************************************************/
2324d6dd1baeSJung-uk Kim 
2325d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoWdat[] =
2326d6dd1baeSJung-uk Kim {
2327a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (HeaderLength),            "Header Length", DT_LENGTH},
2328a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDAT_OFFSET (PciSegment),              "PCI Segment", 0},
2329a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (PciBus),                  "PCI Bus", 0},
2330a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (PciDevice),               "PCI Device", 0},
2331a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (PciFunction),             "PCI Function", 0},
2332a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_WDAT_OFFSET (Reserved[0]),             "Reserved", 0},
2333a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (TimerPeriod),             "Timer Period", 0},
2334a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (MaxCount),                "Max Count", 0},
2335a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (MinCount),                "Min Count", 0},
2336a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
2337a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_WDAT_OFFSET (Flags),                   "Enabled", 0},
2338a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG7,    ACPI_WDAT_OFFSET (Flags),                   "Stopped When Asleep", 0},
2339a88e22b7SJung-uk Kim     {ACPI_DMT_UINT24,   ACPI_WDAT_OFFSET (Reserved2[0]),            "Reserved", 0},
2340a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (Entries),                 "Watchdog Entry Count", 0},
2341a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2342d6dd1baeSJung-uk Kim };
2343d6dd1baeSJung-uk Kim 
2344d6dd1baeSJung-uk Kim /* WDAT Subtables - Watchdog Instruction Entries */
2345d6dd1baeSJung-uk Kim 
2346d6dd1baeSJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoWdat0[] =
2347d6dd1baeSJung-uk Kim {
2348a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDAT0_OFFSET (Action),                 "Watchdog Action", 0},
2349a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDAT0_OFFSET (Instruction),            "Instruction", 0},
2350a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDAT0_OFFSET (Reserved),               "Reserved", 0},
2351a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_WDAT0_OFFSET (RegisterRegion),         "Register Region", 0},
2352a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT0_OFFSET (Value),                  "Value", 0},
2353a88e22b7SJung-uk Kim     {ACPI_DMT_UINT32,   ACPI_WDAT0_OFFSET (Mask),                   "Register Mask", 0},
2354a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2355a88e22b7SJung-uk Kim };
2356a88e22b7SJung-uk Kim 
2357a88e22b7SJung-uk Kim 
2358a88e22b7SJung-uk Kim /*******************************************************************************
2359a88e22b7SJung-uk Kim  *
2360a88e22b7SJung-uk Kim  * WDDT - Watchdog Description Table
2361a88e22b7SJung-uk Kim  *
2362a88e22b7SJung-uk Kim  ******************************************************************************/
2363a88e22b7SJung-uk Kim 
2364a88e22b7SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoWddt[] =
2365a88e22b7SJung-uk Kim {
2366a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (SpecVersion),             "Specification Version", 0},
2367a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (TableVersion),            "Table Version", 0},
2368a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (PciVendorId),             "PCI Vendor ID", 0},
2369a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_WDDT_OFFSET (Address),                 "Timer Register", 0},
2370a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (MaxCount),                "Max Count", 0},
2371a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (MinCount),                "Min Count", 0},
2372a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (Period),                  "Period", 0},
2373a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (Status),                  "Status (decoded below)", 0},
2374a88e22b7SJung-uk Kim 
2375a88e22b7SJung-uk Kim     /* Status Flags byte 0 */
2376a88e22b7SJung-uk Kim 
2377a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_WDDT_FLAG_OFFSET (Status,0),           "Available", 0},
2378a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_WDDT_FLAG_OFFSET (Status,0),           "Active", 0},
2379a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG2,    ACPI_WDDT_FLAG_OFFSET (Status,0),           "OS Owns", 0},
2380a88e22b7SJung-uk Kim 
2381a88e22b7SJung-uk Kim     /* Status Flags byte 1 */
2382a88e22b7SJung-uk Kim 
2383a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG3,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "User Reset", 0},
2384a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG4,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "Timeout Reset", 0},
2385a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG5,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "Power Fail Reset", 0},
2386a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG6,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "Unknown Reset", 0},
2387a88e22b7SJung-uk Kim 
2388a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (Capability),              "Capability (decoded below)", 0},
2389a88e22b7SJung-uk Kim 
2390a88e22b7SJung-uk Kim     /* Capability Flags byte 0 */
2391a88e22b7SJung-uk Kim 
2392a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG0,    ACPI_WDDT_FLAG_OFFSET (Capability,0),       "Auto Reset", 0},
2393a88e22b7SJung-uk Kim     {ACPI_DMT_FLAG1,    ACPI_WDDT_FLAG_OFFSET (Capability,0),       "Timeout Alert", 0},
2394a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
2395d6dd1baeSJung-uk Kim };
2396d6dd1baeSJung-uk Kim 
2397d6dd1baeSJung-uk Kim 
2398d6dd1baeSJung-uk Kim /*******************************************************************************
2399d6dd1baeSJung-uk Kim  *
24001a39cfb0SJung-uk Kim  * WDRT - Watchdog Resource Table
24011a39cfb0SJung-uk Kim  *
24021a39cfb0SJung-uk Kim  ******************************************************************************/
24031a39cfb0SJung-uk Kim 
24041a39cfb0SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoWdrt[] =
24051a39cfb0SJung-uk Kim {
2406a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_WDRT_OFFSET (ControlRegister),         "Control Register", 0},
2407a88e22b7SJung-uk Kim     {ACPI_DMT_GAS,      ACPI_WDRT_OFFSET (CountRegister),           "Count Register", 0},
2408a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDRT_OFFSET (PciDeviceId),             "PCI Device ID", 0},
2409a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDRT_OFFSET (PciVendorId),             "PCI Vendor ID", 0},
2410a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciBus),                  "PCI Bus", 0},
2411a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciDevice),               "PCI Device", 0},
2412a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciFunction),             "PCI Function", 0},
2413a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciSegment),              "PCI Segment", 0},
2414a88e22b7SJung-uk Kim     {ACPI_DMT_UINT16,   ACPI_WDRT_OFFSET (MaxCount),                "Max Count", 0},
2415a88e22b7SJung-uk Kim     {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (Units),                   "Counter Units", 0},
2416a88e22b7SJung-uk Kim     ACPI_DMT_TERMINATOR
24171a39cfb0SJung-uk Kim };
2418d244b227SJung-uk Kim 
24193f0275a0SJung-uk Kim /*! [Begin] no source code translation */
24203f0275a0SJung-uk Kim 
2421d244b227SJung-uk Kim /*
24223f0275a0SJung-uk Kim  * Generic types (used in UEFI and custom tables)
2423d244b227SJung-uk Kim  *
2424d244b227SJung-uk Kim  * Examples:
2425d244b227SJung-uk Kim  *
2426d244b227SJung-uk Kim  *     Buffer : cc 04 ff bb
2427d244b227SJung-uk Kim  *      UINT8 : 11
2428d244b227SJung-uk Kim  *     UINT16 : 1122
2429d244b227SJung-uk Kim  *     UINT24 : 112233
2430d244b227SJung-uk Kim  *     UINT32 : 11223344
2431d244b227SJung-uk Kim  *     UINT56 : 11223344556677
2432d244b227SJung-uk Kim  *     UINT64 : 1122334455667788
2433d244b227SJung-uk Kim  *
2434d244b227SJung-uk Kim  *     String : "This is string"
2435d244b227SJung-uk Kim  *    Unicode : "This string encoded to Unicode"
2436d244b227SJung-uk Kim  *
2437d244b227SJung-uk Kim  *       GUID : 11223344-5566-7788-99aa-bbccddeeff00
2438d244b227SJung-uk Kim  * DevicePath : "\PciRoot(0)\Pci(0x1f,1)\Usb(0,0)"
2439d244b227SJung-uk Kim  */
2440d244b227SJung-uk Kim 
2441d244b227SJung-uk Kim #define ACPI_DM_GENERIC_ENTRY(FieldType, FieldName) \
2442d244b227SJung-uk Kim     {{FieldType, 0, FieldName, 0}, ACPI_DMT_TERMINATOR}
2443d244b227SJung-uk Kim 
2444d244b227SJung-uk Kim ACPI_DMTABLE_INFO           AcpiDmTableInfoGeneric[][2] =
2445d244b227SJung-uk Kim {
2446d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT8,      "UINT8"),
2447d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT16,     "UINT16"),
2448d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT24,     "UINT24"),
2449d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT32,     "UINT32"),
24503f0275a0SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT40,     "UINT40"),
24513f0275a0SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT48,     "UINT48"),
2452d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT56,     "UINT56"),
2453d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT64,     "UINT64"),
2454d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_STRING,     "String"),
2455d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UNICODE,    "Unicode"),
2456d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_BUFFER,     "Buffer"),
2457d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UUID,       "GUID"),
2458d244b227SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_STRING,     "DevicePath"),
24590b94ba42SJung-uk Kim     ACPI_DM_GENERIC_ENTRY (ACPI_DMT_LABEL,      "Label"),
2460d244b227SJung-uk Kim     {ACPI_DMT_TERMINATOR}
2461d244b227SJung-uk Kim };
24623f0275a0SJung-uk Kim /*! [End] no source code translation !*/
2463