1167802Sjkim/******************************************************************************
2167802Sjkim *
3167802Sjkim * Module Name: dmtbinfo - Table info for non-AML tables
4167802Sjkim *
5167802Sjkim *****************************************************************************/
6167802Sjkim
7217365Sjkim/*
8245582Sjkim * Copyright (C) 2000 - 2013, Intel Corp.
9167802Sjkim * All rights reserved.
10167802Sjkim *
11217365Sjkim * Redistribution and use in source and binary forms, with or without
12217365Sjkim * modification, are permitted provided that the following conditions
13217365Sjkim * are met:
14217365Sjkim * 1. Redistributions of source code must retain the above copyright
15217365Sjkim *    notice, this list of conditions, and the following disclaimer,
16217365Sjkim *    without modification.
17217365Sjkim * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18217365Sjkim *    substantially similar to the "NO WARRANTY" disclaimer below
19217365Sjkim *    ("Disclaimer") and any redistribution must be conditioned upon
20217365Sjkim *    including a substantially similar Disclaimer requirement for further
21217365Sjkim *    binary redistribution.
22217365Sjkim * 3. Neither the names of the above-listed copyright holders nor the names
23217365Sjkim *    of any contributors may be used to endorse or promote products derived
24217365Sjkim *    from this software without specific prior written permission.
25167802Sjkim *
26217365Sjkim * Alternatively, this software may be distributed under the terms of the
27217365Sjkim * GNU General Public License ("GPL") version 2 as published by the Free
28217365Sjkim * Software Foundation.
29167802Sjkim *
30217365Sjkim * NO WARRANTY
31217365Sjkim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32217365Sjkim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33217365Sjkim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34217365Sjkim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35217365Sjkim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36217365Sjkim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37217365Sjkim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38217365Sjkim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39217365Sjkim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40217365Sjkim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41217365Sjkim * POSSIBILITY OF SUCH DAMAGES.
42217365Sjkim */
43167802Sjkim
44193529Sjkim#include <contrib/dev/acpica/include/acpi.h>
45193529Sjkim#include <contrib/dev/acpica/include/accommon.h>
46193529Sjkim#include <contrib/dev/acpica/include/acdisasm.h>
47167802Sjkim
48167802Sjkim/* This module used for application-level code only */
49167802Sjkim
50167802Sjkim#define _COMPONENT          ACPI_CA_DISASSEMBLER
51167802Sjkim        ACPI_MODULE_NAME    ("dmtbinfo")
52167802Sjkim
53167802Sjkim/*
54219707Sjkim * How to add a new table:
55219707Sjkim *
56219707Sjkim * - Add the C table definition to the actbl1.h or actbl2.h header.
57219707Sjkim * - Add ACPI_xxxx_OFFSET macro(s) for the table (and subtables) to list below.
58219707Sjkim * - Define the table in this file (for the disassembler). If any
59219707Sjkim *   new data types are required (ACPI_DMT_*), see below.
60219707Sjkim * - Add an external declaration for the new table definition (AcpiDmTableInfo*)
61219707Sjkim *     in acdisam.h
62219707Sjkim * - Add new table definition to the dispatch table in dmtable.c (AcpiDmTableData)
63219707Sjkim *     If a simple table (with no subtables), no disassembly code is needed.
64219707Sjkim *     Otherwise, create the AcpiDmDump* function for to disassemble the table
65219707Sjkim *     and add it to the dmtbdump.c file.
66219707Sjkim * - Add an external declaration for the new AcpiDmDump* function in acdisasm.h
67219707Sjkim * - Add the new AcpiDmDump* function to the dispatch table in dmtable.c
68219707Sjkim * - Create a template for the new table
69219707Sjkim * - Add data table compiler support
70219707Sjkim *
71219707Sjkim * How to add a new data type (ACPI_DMT_*):
72219707Sjkim *
73219707Sjkim * - Add new type at the end of the ACPI_DMT list in acdisasm.h
74219707Sjkim * - Add length and implementation cases in dmtable.c  (disassembler)
75219707Sjkim * - Add type and length cases in dtutils.c (DT compiler)
76219707Sjkim */
77219707Sjkim
78219707Sjkim/*
79167802Sjkim * Macros used to generate offsets to specific table fields
80167802Sjkim */
81229989Sjkim#define ACPI_FACS_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_FACS,f)
82229989Sjkim#define ACPI_GAS_OFFSET(f)              (UINT16) ACPI_OFFSET (ACPI_GENERIC_ADDRESS,f)
83229989Sjkim#define ACPI_HDR_OFFSET(f)              (UINT16) ACPI_OFFSET (ACPI_TABLE_HEADER,f)
84229989Sjkim#define ACPI_RSDP_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_RSDP,f)
85229989Sjkim#define ACPI_BERT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_BERT,f)
86229989Sjkim#define ACPI_BGRT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_BGRT,f)
87229989Sjkim#define ACPI_BOOT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_BOOT,f)
88229989Sjkim#define ACPI_CPEP_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_CPEP,f)
89239340Sjkim#define ACPI_DBG2_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DBG2,f)
90229989Sjkim#define ACPI_DBGP_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DBGP,f)
91229989Sjkim#define ACPI_DMAR_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DMAR,f)
92229989Sjkim#define ACPI_DRTM_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_DRTM,f)
93229989Sjkim#define ACPI_ECDT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_ECDT,f)
94229989Sjkim#define ACPI_EINJ_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_EINJ,f)
95229989Sjkim#define ACPI_ERST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_ERST,f)
96229989Sjkim#define ACPI_GTDT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_GTDT,f)
97229989Sjkim#define ACPI_HEST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_HEST,f)
98229989Sjkim#define ACPI_HPET_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_HPET,f)
99229989Sjkim#define ACPI_IVRS_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_IVRS,f)
100229989Sjkim#define ACPI_MADT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MADT,f)
101229989Sjkim#define ACPI_MCFG_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MCFG,f)
102229989Sjkim#define ACPI_MCHI_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MCHI,f)
103229989Sjkim#define ACPI_MPST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MPST,f)
104229989Sjkim#define ACPI_MSCT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_MSCT,f)
105229989Sjkim#define ACPI_PCCT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_PCCT,f)
106229989Sjkim#define ACPI_PMTT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_PMTT,f)
107229989Sjkim#define ACPI_S3PT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_S3PT,f)
108229989Sjkim#define ACPI_SBST_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SBST,f)
109229989Sjkim#define ACPI_SLIT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SLIT,f)
110229989Sjkim#define ACPI_SPCR_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SPCR,f)
111229989Sjkim#define ACPI_SPMI_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SPMI,f)
112229989Sjkim#define ACPI_SRAT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_SRAT,f)
113229989Sjkim#define ACPI_TCPA_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_TCPA,f)
114245582Sjkim#define ACPI_TPM2_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_TPM2,f)
115229989Sjkim#define ACPI_UEFI_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_UEFI,f)
116229989Sjkim#define ACPI_WAET_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WAET,f)
117229989Sjkim#define ACPI_WDAT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WDAT,f)
118229989Sjkim#define ACPI_WDDT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WDDT,f)
119229989Sjkim#define ACPI_WDRT_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_TABLE_WDRT,f)
120167802Sjkim
121193529Sjkim/* Subtables */
122167802Sjkim
123229989Sjkim#define ACPI_ASF0_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_INFO,f)
124229989Sjkim#define ACPI_ASF1_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT,f)
125229989Sjkim#define ACPI_ASF1a_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT_DATA,f)
126229989Sjkim#define ACPI_ASF2_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_REMOTE,f)
127229989Sjkim#define ACPI_ASF2a_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_ASF_CONTROL_DATA,f)
128229989Sjkim#define ACPI_ASF3_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_RMCP,f)
129229989Sjkim#define ACPI_ASF4_OFFSET(f)             (UINT16) ACPI_OFFSET (ACPI_ASF_ADDRESS,f)
130229989Sjkim#define ACPI_CPEP0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CPEP_POLLING,f)
131239340Sjkim#define ACPI_CSRT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CSRT_GROUP,f)
132245582Sjkim#define ACPI_CSRT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CSRT_SHARED_INFO,f)
133245582Sjkim#define ACPI_CSRT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_CSRT_DESCRIPTOR,f)
134239340Sjkim#define ACPI_DBG20_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DBG2_DEVICE,f)
135229989Sjkim#define ACPI_DMARS_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_DEVICE_SCOPE,f)
136229989Sjkim#define ACPI_DMAR0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_HARDWARE_UNIT,f)
137229989Sjkim#define ACPI_DMAR1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_RESERVED_MEMORY,f)
138229989Sjkim#define ACPI_DMAR2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_ATSR,f)
139229989Sjkim#define ACPI_DMAR3_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_DMAR_RHSA,f)
140229989Sjkim#define ACPI_EINJ0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_WHEA_HEADER,f)
141229989Sjkim#define ACPI_ERST0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_WHEA_HEADER,f)
142229989Sjkim#define ACPI_FPDTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_FPDT_HEADER,f)
143229989Sjkim#define ACPI_FPDT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_FPDT_BOOT,f)
144229989Sjkim#define ACPI_FPDT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_FPDT_S3PT_PTR,f)
145229989Sjkim#define ACPI_HEST0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_MACHINE_CHECK,f)
146229989Sjkim#define ACPI_HEST1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_CORRECTED,f)
147229989Sjkim#define ACPI_HEST2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_NMI,f)
148229989Sjkim#define ACPI_HEST6_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_AER_ROOT,f)
149229989Sjkim#define ACPI_HEST7_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_AER,f)
150229989Sjkim#define ACPI_HEST8_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_AER_BRIDGE,f)
151229989Sjkim#define ACPI_HEST9_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_GENERIC,f)
152229989Sjkim#define ACPI_HESTN_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_NOTIFY,f)
153229989Sjkim#define ACPI_HESTB_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_HEST_IA_ERROR_BANK,f)
154229989Sjkim#define ACPI_IVRSH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_HEADER,f)
155229989Sjkim#define ACPI_IVRS0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_HARDWARE,f)
156229989Sjkim#define ACPI_IVRS1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_MEMORY,f)
157229989Sjkim#define ACPI_IVRSD_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_IVRS_DE_HEADER,f)
158229989Sjkim#define ACPI_IVRS8A_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_IVRS_DEVICE8A,f)
159229989Sjkim#define ACPI_IVRS8B_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_IVRS_DEVICE8B,f)
160229989Sjkim#define ACPI_IVRS8C_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_IVRS_DEVICE8C,f)
161229989Sjkim#define ACPI_MADT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_APIC,f)
162229989Sjkim#define ACPI_MADT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_IO_APIC,f)
163229989Sjkim#define ACPI_MADT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_INTERRUPT_OVERRIDE,f)
164229989Sjkim#define ACPI_MADT3_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_NMI_SOURCE,f)
165229989Sjkim#define ACPI_MADT4_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_APIC_NMI,f)
166229989Sjkim#define ACPI_MADT5_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_APIC_OVERRIDE,f)
167229989Sjkim#define ACPI_MADT6_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_IO_SAPIC,f)
168229989Sjkim#define ACPI_MADT7_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_SAPIC,f)
169229989Sjkim#define ACPI_MADT8_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_INTERRUPT_SOURCE,f)
170229989Sjkim#define ACPI_MADT9_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_X2APIC,f)
171229989Sjkim#define ACPI_MADT10_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_LOCAL_X2APIC_NMI,f)
172229989Sjkim#define ACPI_MADT11_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_INTERRUPT,f)
173229989Sjkim#define ACPI_MADT12_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_DISTRIBUTOR,f)
174229989Sjkim#define ACPI_MADTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SUBTABLE_HEADER,f)
175229989Sjkim#define ACPI_MCFG0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MCFG_ALLOCATION,f)
176229989Sjkim#define ACPI_MPST0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_NODE,f)
177229989Sjkim#define ACPI_MPST0A_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_STATE,f)
178229989Sjkim#define ACPI_MPST0B_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_MPST_COMPONENT,f)
179229989Sjkim#define ACPI_MPST1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MPST_DATA_HDR,f)
180229989Sjkim#define ACPI_MPST2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_DATA,f)
181229989Sjkim#define ACPI_MSCT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MSCT_PROXIMITY,f)
182246849Sjkim#define ACPI_MTMR0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_MTMR_ENTRY,f)
183229989Sjkim#define ACPI_PCCT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PCCT_SUBSPACE,f)
184229989Sjkim#define ACPI_PMTT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_SOCKET,f)
185229989Sjkim#define ACPI_PMTT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_CONTROLLER,f)
186229989Sjkim#define ACPI_PMTT1A_OFFSET(f)           (UINT16) ACPI_OFFSET (ACPI_PMTT_DOMAIN,f)
187229989Sjkim#define ACPI_PMTT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_PHYSICAL_COMPONENT,f)
188229989Sjkim#define ACPI_PMTTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_PMTT_HEADER,f)
189229989Sjkim#define ACPI_S3PTH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_S3PT_HEADER,f)
190229989Sjkim#define ACPI_S3PT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_S3PT_RESUME,f)
191229989Sjkim#define ACPI_S3PT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_S3PT_SUSPEND,f)
192229989Sjkim#define ACPI_SLICH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SLIC_HEADER,f)
193229989Sjkim#define ACPI_SLIC0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SLIC_KEY,f)
194229989Sjkim#define ACPI_SLIC1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SLIC_MARKER,f)
195229989Sjkim#define ACPI_SRATH_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SUBTABLE_HEADER,f)
196229989Sjkim#define ACPI_SRAT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_CPU_AFFINITY,f)
197229989Sjkim#define ACPI_SRAT1_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_MEM_AFFINITY,f)
198229989Sjkim#define ACPI_SRAT2_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_SRAT_X2APIC_CPU_AFFINITY,f)
199246849Sjkim#define ACPI_VRTC0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_VRTC_ENTRY,f)
200229989Sjkim#define ACPI_WDAT0_OFFSET(f)            (UINT16) ACPI_OFFSET (ACPI_WDAT_ENTRY,f)
201167802Sjkim
202167802Sjkim/*
203167802Sjkim * Simplify access to flag fields by breaking them up into bytes
204167802Sjkim */
205229989Sjkim#define ACPI_FLAG_OFFSET(d,f,o)         (UINT16) (ACPI_OFFSET (d,f) + o)
206167802Sjkim
207167802Sjkim/* Flags */
208167802Sjkim
209167802Sjkim#define ACPI_FADT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_FADT,f,o)
210167802Sjkim#define ACPI_FACS_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_FACS,f,o)
211167802Sjkim#define ACPI_HPET_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_HPET,f,o)
212167802Sjkim#define ACPI_SRAT0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_CPU_AFFINITY,f,o)
213167802Sjkim#define ACPI_SRAT1_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_MEM_AFFINITY,f,o)
214193529Sjkim#define ACPI_SRAT2_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_SRAT_X2APIC_CPU_AFFINITY,f,o)
215228110Sjkim#define ACPI_GTDT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_GTDT,f,o)
216167802Sjkim#define ACPI_MADT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_MADT,f,o)
217167802Sjkim#define ACPI_MADT0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_APIC,f,o)
218167802Sjkim#define ACPI_MADT2_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_INTERRUPT_OVERRIDE,f,o)
219167802Sjkim#define ACPI_MADT3_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_NMI_SOURCE,f,o)
220167802Sjkim#define ACPI_MADT4_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_APIC_NMI,f,o)
221167802Sjkim#define ACPI_MADT7_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_SAPIC,f,o)
222167802Sjkim#define ACPI_MADT8_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_INTERRUPT_SOURCE,f,o)
223193529Sjkim#define ACPI_MADT9_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_X2APIC,f,o)
224193529Sjkim#define ACPI_MADT10_FLAG_OFFSET(f,o)    ACPI_FLAG_OFFSET (ACPI_MADT_LOCAL_X2APIC_NMI,f,o)
225228110Sjkim#define ACPI_MADT11_FLAG_OFFSET(f,o)    ACPI_FLAG_OFFSET (ACPI_MADT_GENERIC_INTERRUPT,f,o)
226228110Sjkim#define ACPI_MPST0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MPST_POWER_NODE,f,o)
227228110Sjkim#define ACPI_MPST2_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_MPST_POWER_DATA,f,o)
228228110Sjkim#define ACPI_PCCT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_PCCT,f,o)
229228110Sjkim#define ACPI_PMTTH_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_PMTT_HEADER,f,o)
230209746Sjkim#define ACPI_WDDT_FLAG_OFFSET(f,o)      ACPI_FLAG_OFFSET (ACPI_TABLE_WDDT,f,o)
231209746Sjkim#define ACPI_EINJ0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_WHEA_HEADER,f,o)
232209746Sjkim#define ACPI_ERST0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_WHEA_HEADER,f,o)
233209746Sjkim#define ACPI_HEST0_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_HEST_IA_MACHINE_CHECK,f,o)
234209746Sjkim#define ACPI_HEST1_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_HEST_IA_CORRECTED,f,o)
235209746Sjkim#define ACPI_HEST6_FLAG_OFFSET(f,o)     ACPI_FLAG_OFFSET (ACPI_HEST_AER_ROOT,f,o)
236167802Sjkim
237209746Sjkim/*
238209746Sjkim * Required terminator for all tables below
239209746Sjkim */
240209746Sjkim#define ACPI_DMT_TERMINATOR             {ACPI_DMT_EXIT, 0, NULL, 0}
241228110Sjkim#define ACPI_DMT_NEW_LINE               {ACPI_DMT_EXTRA_TEXT, 0, "\n", 0}
242167802Sjkim
243209746Sjkim
244167802Sjkim/*
245167802Sjkim * ACPI Table Information, used to dump formatted ACPI tables
246167802Sjkim *
247167802Sjkim * Each entry is of the form:  <Field Type, Field Offset, Field Name>
248167802Sjkim */
249167802Sjkim
250167802Sjkim/*******************************************************************************
251167802Sjkim *
252167802Sjkim * Common ACPI table header
253167802Sjkim *
254167802Sjkim ******************************************************************************/
255167802Sjkim
256167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHeader[] =
257167802Sjkim{
258209746Sjkim    {ACPI_DMT_SIG,      ACPI_HDR_OFFSET (Signature[0]),             "Signature", 0},
259209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HDR_OFFSET (Length),                   "Table Length", DT_LENGTH},
260209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HDR_OFFSET (Revision),                 "Revision", 0},
261209746Sjkim    {ACPI_DMT_CHKSUM,   ACPI_HDR_OFFSET (Checksum),                 "Checksum", 0},
262209746Sjkim    {ACPI_DMT_NAME6,    ACPI_HDR_OFFSET (OemId[0]),                 "Oem ID", 0},
263209746Sjkim    {ACPI_DMT_NAME8,    ACPI_HDR_OFFSET (OemTableId[0]),            "Oem Table ID", 0},
264209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HDR_OFFSET (OemRevision),              "Oem Revision", 0},
265209746Sjkim    {ACPI_DMT_NAME4,    ACPI_HDR_OFFSET (AslCompilerId[0]),         "Asl Compiler ID", 0},
266209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HDR_OFFSET (AslCompilerRevision),      "Asl Compiler Revision", 0},
267209746Sjkim    ACPI_DMT_TERMINATOR
268167802Sjkim};
269167802Sjkim
270167802Sjkim
271167802Sjkim/*******************************************************************************
272167802Sjkim *
273167802Sjkim * GAS - Generic Address Structure
274167802Sjkim *
275167802Sjkim ******************************************************************************/
276167802Sjkim
277167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoGas[] =
278167802Sjkim{
279209746Sjkim    {ACPI_DMT_SPACEID,  ACPI_GAS_OFFSET (SpaceId),                  "Space ID", 0},
280209746Sjkim    {ACPI_DMT_UINT8,    ACPI_GAS_OFFSET (BitWidth),                 "Bit Width", 0},
281209746Sjkim    {ACPI_DMT_UINT8,    ACPI_GAS_OFFSET (BitOffset),                "Bit Offset", 0},
282216471Sjkim    {ACPI_DMT_ACCWIDTH, ACPI_GAS_OFFSET (AccessWidth),              "Encoded Access Width", 0},
283209746Sjkim    {ACPI_DMT_UINT64,   ACPI_GAS_OFFSET (Address),                  "Address", 0},
284209746Sjkim    ACPI_DMT_TERMINATOR
285167802Sjkim};
286167802Sjkim
287167802Sjkim
288167802Sjkim/*******************************************************************************
289167802Sjkim *
290167802Sjkim * RSDP - Root System Description Pointer (Signature is "RSD PTR ")
291167802Sjkim *
292167802Sjkim ******************************************************************************/
293167802Sjkim
294167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoRsdp1[] =
295167802Sjkim{
296209746Sjkim    {ACPI_DMT_NAME8,    ACPI_RSDP_OFFSET (Signature[0]),            "Signature", 0},
297209746Sjkim    {ACPI_DMT_UINT8,    ACPI_RSDP_OFFSET (Checksum),                "Checksum", 0},
298209746Sjkim    {ACPI_DMT_NAME6,    ACPI_RSDP_OFFSET (OemId[0]),                "Oem ID", 0},
299209746Sjkim    {ACPI_DMT_UINT8,    ACPI_RSDP_OFFSET (Revision),                "Revision", 0},
300209746Sjkim    {ACPI_DMT_UINT32,   ACPI_RSDP_OFFSET (RsdtPhysicalAddress),     "RSDT Address", 0},
301209746Sjkim    ACPI_DMT_TERMINATOR
302167802Sjkim};
303167802Sjkim
304167802Sjkim/* ACPI 2.0+ Extensions */
305167802Sjkim
306167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoRsdp2[] =
307167802Sjkim{
308209746Sjkim    {ACPI_DMT_UINT32,   ACPI_RSDP_OFFSET (Length),                  "Length", DT_LENGTH},
309209746Sjkim    {ACPI_DMT_UINT64,   ACPI_RSDP_OFFSET (XsdtPhysicalAddress),     "XSDT Address", 0},
310209746Sjkim    {ACPI_DMT_UINT8,    ACPI_RSDP_OFFSET (ExtendedChecksum),        "Extended Checksum", 0},
311209746Sjkim    {ACPI_DMT_UINT24,   ACPI_RSDP_OFFSET (Reserved[0]),             "Reserved", 0},
312209746Sjkim    ACPI_DMT_TERMINATOR
313167802Sjkim};
314167802Sjkim
315167802Sjkim
316167802Sjkim/*******************************************************************************
317167802Sjkim *
318167802Sjkim * FACS - Firmware ACPI Control Structure
319167802Sjkim *
320167802Sjkim ******************************************************************************/
321167802Sjkim
322167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFacs[] =
323167802Sjkim{
324209746Sjkim    {ACPI_DMT_NAME4,    ACPI_FACS_OFFSET (Signature[0]),            "Signature", 0},
325209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (Length),                  "Length", DT_LENGTH},
326209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (HardwareSignature),       "Hardware Signature", 0},
327209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (FirmwareWakingVector),    "32 Firmware Waking Vector", 0},
328209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (GlobalLock),              "Global Lock", 0},
329209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
330209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_FACS_FLAG_OFFSET (Flags,0),            "S4BIOS Support Present", 0},
331209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_FACS_FLAG_OFFSET (Flags,0),            "64-bit Wake Supported (V2)", 0},
332209746Sjkim    {ACPI_DMT_UINT64,   ACPI_FACS_OFFSET (XFirmwareWakingVector),   "64 Firmware Waking Vector", 0},
333209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FACS_OFFSET (Version),                 "Version", 0},
334209746Sjkim    {ACPI_DMT_UINT24,   ACPI_FACS_OFFSET (Reserved[0]),             "Reserved", 0},
335209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FACS_OFFSET (OspmFlags),               "OspmFlags (decoded below)", DT_FLAG},
336209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_FACS_FLAG_OFFSET (OspmFlags,0),        "64-bit Wake Env Required (V2)", 0},
337209746Sjkim    ACPI_DMT_TERMINATOR
338167802Sjkim};
339167802Sjkim
340167802Sjkim
341167802Sjkim/*******************************************************************************
342167802Sjkim *
343167802Sjkim * FADT - Fixed ACPI Description Table (Signature is FACP)
344167802Sjkim *
345167802Sjkim ******************************************************************************/
346167802Sjkim
347193529Sjkim/* ACPI 1.0 FADT (Version 1) */
348193529Sjkim
349167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFadt1[] =
350167802Sjkim{
351209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Facs),                    "FACS Address", 0},
352209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Dsdt),                    "DSDT Address", DT_NON_ZERO},
353209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Model),                   "Model", 0},
354209746Sjkim    {ACPI_DMT_FADTPM,   ACPI_FADT_OFFSET (PreferredProfile),        "PM Profile", 0},
355209746Sjkim    {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (SciInterrupt),            "SCI Interrupt", 0},
356209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (SmiCommand),              "SMI Command Port", 0},
357209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (AcpiEnable),              "ACPI Enable Value", 0},
358209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (AcpiDisable),             "ACPI Disable Value", 0},
359209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (S4BiosRequest),           "S4BIOS Command", 0},
360209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (PstateControl),           "P-State Control", 0},
361209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1aEventBlock),          "PM1A Event Block Address", 0},
362209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1bEventBlock),          "PM1B Event Block Address", 0},
363209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1aControlBlock),        "PM1A Control Block Address", 0},
364209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm1bControlBlock),        "PM1B Control Block Address", 0},
365209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Pm2ControlBlock),         "PM2 Control Block Address", 0},
366209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (PmTimerBlock),            "PM Timer Block Address", 0},
367209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Gpe0Block),               "GPE0 Block Address", 0},
368209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Gpe1Block),               "GPE1 Block Address", 0},
369209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Pm1EventLength),          "PM1 Event Block Length", 0},
370209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Pm1ControlLength),        "PM1 Control Block Length", 0},
371209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Pm2ControlLength),        "PM2 Control Block Length", 0},
372209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (PmTimerLength),           "PM Timer Block Length", 0},
373209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Gpe0BlockLength),         "GPE0 Block Length", 0},
374209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Gpe1BlockLength),         "GPE1 Block Length", 0},
375209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Gpe1Base),                "GPE1 Base Offset", 0},
376209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (CstControl),              "_CST Support", 0},
377209746Sjkim    {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (C2Latency),               "C2 Latency", 0},
378209746Sjkim    {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (C3Latency),               "C3 Latency", 0},
379209746Sjkim    {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (FlushSize),               "CPU Cache Size", 0},
380209746Sjkim    {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (FlushStride),             "Cache Flush Stride", 0},
381209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (DutyOffset),              "Duty Cycle Offset", 0},
382209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (DutyWidth),               "Duty Cycle Width", 0},
383209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (DayAlarm),                "RTC Day Alarm Index", 0},
384209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (MonthAlarm),              "RTC Month Alarm Index", 0},
385209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Century),                 "RTC Century Index", 0},
386209746Sjkim    {ACPI_DMT_UINT16,   ACPI_FADT_OFFSET (BootFlags),               "Boot Flags (decoded below)", DT_FLAG},
387193529Sjkim
388193529Sjkim    /* Boot Architecture Flags byte 0 */
389193529Sjkim
390209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "Legacy Devices Supported (V2)", 0},
391209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "8042 Present on ports 60/64 (V2)", 0},
392209746Sjkim    {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "VGA Not Present (V4)", 0},
393209746Sjkim    {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "MSI Not Supported (V4)", 0},
394209746Sjkim    {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "PCIe ASPM Not Supported (V4)", 0},
395229989Sjkim    {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (BootFlags,0),        "CMOS RTC Not Present (V5)", 0},
396193529Sjkim
397209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (Reserved),                "Reserved", 0},
398209746Sjkim    {ACPI_DMT_UINT32,   ACPI_FADT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
399167802Sjkim
400167802Sjkim    /* Flags byte 0 */
401167802Sjkim
402209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "WBINVD instruction is operational (V1)", 0},
403209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "WBINVD flushes all caches (V1)", 0},
404209746Sjkim    {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "All CPUs support C1 (V1)", 0},
405209746Sjkim    {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "C2 works on MP system (V1)", 0},
406209746Sjkim    {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "Control Method Power Button (V1)", 0},
407209746Sjkim    {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "Control Method Sleep Button (V1)", 0},
408209746Sjkim    {ACPI_DMT_FLAG6,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "RTC wake not in fixed reg space (V1)", 0},
409209746Sjkim    {ACPI_DMT_FLAG7,    ACPI_FADT_FLAG_OFFSET (Flags,0),            "RTC can wake system from S4 (V1)", 0},
410167802Sjkim
411167802Sjkim    /* Flags byte 1 */
412167802Sjkim
413209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "32-bit PM Timer (V1)", 0},
414209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Docking Supported (V1)", 0},
415209746Sjkim    {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Reset Register Supported (V2)", 0},
416209746Sjkim    {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Sealed Case (V3)", 0},
417209746Sjkim    {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Headless - No Video (V3)", 0},
418209746Sjkim    {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Use native instr after SLP_TYPx (V3)", 0},
419209746Sjkim    {ACPI_DMT_FLAG6,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "PCIEXP_WAK Bits Supported (V4)", 0},
420209746Sjkim    {ACPI_DMT_FLAG7,    ACPI_FADT_FLAG_OFFSET (Flags,1),            "Use Platform Timer (V4)", 0},
421193529Sjkim
422193529Sjkim    /* Flags byte 2 */
423193529Sjkim
424209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "RTC_STS valid on S4 wake (V4)", 0},
425209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Remote Power-on capable (V4)", 0},
426209746Sjkim    {ACPI_DMT_FLAG2,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Use APIC Cluster Model (V4)", 0},
427209746Sjkim    {ACPI_DMT_FLAG3,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Use APIC Physical Destination Mode (V4)", 0},
428228110Sjkim    {ACPI_DMT_FLAG4,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Hardware Reduced (V5)", 0},
429229989Sjkim    {ACPI_DMT_FLAG5,    ACPI_FADT_FLAG_OFFSET (Flags,2),            "Low Power S0 Idle (V5)", 0},
430209746Sjkim    ACPI_DMT_TERMINATOR
431167802Sjkim};
432167802Sjkim
433193529Sjkim/* ACPI 1.0 MS Extensions (FADT version 2) */
434167802Sjkim
435167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFadt2[] =
436167802Sjkim{
437209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (ResetRegister),           "Reset Register", 0},
438209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (ResetValue),              "Value to cause reset", 0},
439209746Sjkim    {ACPI_DMT_UINT24,   ACPI_FADT_OFFSET (Reserved4[0]),            "Reserved", 0},
440209746Sjkim    ACPI_DMT_TERMINATOR
441193529Sjkim};
442167802Sjkim
443228110Sjkim/* ACPI 2.0+ Extensions (FADT version 3 and 4) */
444167802Sjkim
445193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFadt3[] =
446193529Sjkim{
447209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (ResetRegister),           "Reset Register", 0},
448209746Sjkim    {ACPI_DMT_UINT8,    ACPI_FADT_OFFSET (ResetValue),              "Value to cause reset", 0},
449209746Sjkim    {ACPI_DMT_UINT24,   ACPI_FADT_OFFSET (Reserved4[0]),            "Reserved", 0},
450209746Sjkim    {ACPI_DMT_UINT64,   ACPI_FADT_OFFSET (XFacs),                   "FACS Address", 0},
451209746Sjkim    {ACPI_DMT_UINT64,   ACPI_FADT_OFFSET (XDsdt),                   "DSDT Address", 0},
452209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1aEventBlock),         "PM1A Event Block", 0},
453209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1bEventBlock),         "PM1B Event Block", 0},
454209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1aControlBlock),       "PM1A Control Block", 0},
455209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm1bControlBlock),       "PM1B Control Block", 0},
456209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPm2ControlBlock),        "PM2 Control Block", 0},
457209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XPmTimerBlock),           "PM Timer Block", 0},
458209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XGpe0Block),              "GPE0 Block", 0},
459209746Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (XGpe1Block),              "GPE1 Block", 0},
460209746Sjkim    ACPI_DMT_TERMINATOR
461167802Sjkim};
462167802Sjkim
463228110Sjkim/* ACPI 5.0 Extensions (FADT version 5) */
464167802Sjkim
465228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFadt5[] =
466228110Sjkim{
467229989Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (SleepControl),            "Sleep Control Register", 0},
468229989Sjkim    {ACPI_DMT_GAS,      ACPI_FADT_OFFSET (SleepStatus),             "Sleep Status Register", 0},
469228110Sjkim    ACPI_DMT_TERMINATOR
470228110Sjkim};
471228110Sjkim
472228110Sjkim
473167802Sjkim/*
474167802Sjkim * Remaining tables are not consumed directly by the ACPICA subsystem
475167802Sjkim */
476167802Sjkim
477167802Sjkim/*******************************************************************************
478167802Sjkim *
479167802Sjkim * ASF - Alert Standard Format table (Signature "ASF!")
480167802Sjkim *
481167802Sjkim ******************************************************************************/
482167802Sjkim
483193529Sjkim/* Common Subtable header (one per Subtable) */
484167802Sjkim
485167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsfHdr[] =
486167802Sjkim{
487209746Sjkim    {ACPI_DMT_ASF,      ACPI_ASF0_OFFSET (Header.Type),             "Subtable Type", 0},
488209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (Header.Reserved),         "Reserved", 0},
489209746Sjkim    {ACPI_DMT_UINT16,   ACPI_ASF0_OFFSET (Header.Length),           "Length", DT_LENGTH},
490209746Sjkim    ACPI_DMT_TERMINATOR
491167802Sjkim};
492167802Sjkim
493167802Sjkim/* 0: ASF Information */
494167802Sjkim
495167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf0[] =
496167802Sjkim{
497209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (MinResetValue),           "Minimum Reset Value", 0},
498209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (MinPollInterval),         "Minimum Polling Interval", 0},
499209746Sjkim    {ACPI_DMT_UINT16,   ACPI_ASF0_OFFSET (SystemId),                "System ID", 0},
500209746Sjkim    {ACPI_DMT_UINT32,   ACPI_ASF0_OFFSET (MfgId),                   "Manufacturer ID", 0},
501209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF0_OFFSET (Flags),                   "Flags", 0},
502209746Sjkim    {ACPI_DMT_UINT24,   ACPI_ASF0_OFFSET (Reserved2[0]),            "Reserved", 0},
503209746Sjkim    ACPI_DMT_TERMINATOR
504167802Sjkim};
505167802Sjkim
506167802Sjkim/* 1: ASF Alerts */
507167802Sjkim
508167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf1[] =
509167802Sjkim{
510209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (AssertMask),              "AssertMask", 0},
511209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (DeassertMask),            "DeassertMask", 0},
512209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (Alerts),                  "Alert Count", 0},
513209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1_OFFSET (DataLength),              "Alert Data Length", 0},
514209746Sjkim    ACPI_DMT_TERMINATOR
515167802Sjkim};
516167802Sjkim
517167802Sjkim/* 1a: ASF Alert data */
518167802Sjkim
519167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf1a[] =
520167802Sjkim{
521209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Address),                "Address", 0},
522209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Command),                "Command", 0},
523209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Mask),                   "Mask", 0},
524209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Value),                  "Value", 0},
525209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (SensorType),             "SensorType", 0},
526209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Type),                   "Type", 0},
527209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Offset),                 "Offset", 0},
528209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (SourceType),             "SourceType", 0},
529209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Severity),               "Severity", 0},
530209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (SensorNumber),           "SensorNumber", 0},
531209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Entity),                 "Entity", 0},
532209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF1a_OFFSET (Instance),               "Instance", 0},
533209746Sjkim    ACPI_DMT_TERMINATOR
534167802Sjkim};
535167802Sjkim
536167802Sjkim/* 2: ASF Remote Control */
537167802Sjkim
538167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf2[] =
539167802Sjkim{
540209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF2_OFFSET (Controls),                "Control Count", 0},
541209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF2_OFFSET (DataLength),              "Control Data Length", 0},
542209746Sjkim    {ACPI_DMT_UINT16,   ACPI_ASF2_OFFSET (Reserved2),               "Reserved", 0},
543209746Sjkim    ACPI_DMT_TERMINATOR
544167802Sjkim};
545167802Sjkim
546167802Sjkim/* 2a: ASF Control data */
547167802Sjkim
548167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf2a[] =
549167802Sjkim{
550209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Function),               "Function", 0},
551209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Address),                "Address", 0},
552209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Command),                "Command", 0},
553209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF2a_OFFSET (Value),                  "Value", 0},
554209746Sjkim    ACPI_DMT_TERMINATOR
555167802Sjkim};
556167802Sjkim
557167802Sjkim/* 3: ASF RMCP Boot Options */
558167802Sjkim
559167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf3[] =
560167802Sjkim{
561218590Sjkim    {ACPI_DMT_BUF7,     ACPI_ASF3_OFFSET (Capabilities[0]),         "Capabilities", 0},
562209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF3_OFFSET (CompletionCode),          "Completion Code", 0},
563209746Sjkim    {ACPI_DMT_UINT32,   ACPI_ASF3_OFFSET (EnterpriseId),            "Enterprise ID", 0},
564209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF3_OFFSET (Command),                 "Command", 0},
565209746Sjkim    {ACPI_DMT_UINT16,   ACPI_ASF3_OFFSET (Parameter),               "Parameter", 0},
566209746Sjkim    {ACPI_DMT_UINT16,   ACPI_ASF3_OFFSET (BootOptions),             "Boot Options", 0},
567209746Sjkim    {ACPI_DMT_UINT16,   ACPI_ASF3_OFFSET (OemParameters),           "Oem Parameters", 0},
568209746Sjkim    ACPI_DMT_TERMINATOR
569167802Sjkim};
570167802Sjkim
571167802Sjkim/* 4: ASF Address */
572167802Sjkim
573167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoAsf4[] =
574167802Sjkim{
575209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF4_OFFSET (EpromAddress),            "Eprom Address", 0},
576209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ASF4_OFFSET (Devices),                 "Device Count", DT_COUNT},
577209746Sjkim    ACPI_DMT_TERMINATOR
578167802Sjkim};
579167802Sjkim
580167802Sjkim
581167802Sjkim/*******************************************************************************
582167802Sjkim *
583193529Sjkim * BERT -  Boot Error Record table
584193529Sjkim *
585193529Sjkim ******************************************************************************/
586193529Sjkim
587193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoBert[] =
588193529Sjkim{
589209746Sjkim    {ACPI_DMT_UINT32,   ACPI_BERT_OFFSET (RegionLength),            "Boot Error Region Length", 0},
590209746Sjkim    {ACPI_DMT_UINT64,   ACPI_BERT_OFFSET (Address),                 "Boot Error Region Address", 0},
591209746Sjkim    ACPI_DMT_TERMINATOR
592193529Sjkim};
593193529Sjkim
594193529Sjkim
595193529Sjkim/*******************************************************************************
596193529Sjkim *
597228110Sjkim * BGRT -  Boot Graphics Resource Table (ACPI 5.0)
598228110Sjkim *
599228110Sjkim ******************************************************************************/
600228110Sjkim
601228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoBgrt[] =
602228110Sjkim{
603228110Sjkim    {ACPI_DMT_UINT16,   ACPI_BGRT_OFFSET (Version),                 "Version", 0},
604228110Sjkim    {ACPI_DMT_UINT8,    ACPI_BGRT_OFFSET (Status),                  "Status", 0},
605228110Sjkim    {ACPI_DMT_UINT8,    ACPI_BGRT_OFFSET (ImageType),               "Image Type", 0},
606228110Sjkim    {ACPI_DMT_UINT64,   ACPI_BGRT_OFFSET (ImageAddress),            "Image Address", 0},
607228110Sjkim    {ACPI_DMT_UINT32,   ACPI_BGRT_OFFSET (ImageOffsetX),            "Image OffsetX", 0},
608228110Sjkim    {ACPI_DMT_UINT32,   ACPI_BGRT_OFFSET (ImageOffsetY),            "Image OffsetY", 0},
609228110Sjkim    ACPI_DMT_TERMINATOR
610228110Sjkim};
611228110Sjkim
612228110Sjkim
613228110Sjkim/*******************************************************************************
614228110Sjkim *
615167802Sjkim * BOOT - Simple Boot Flag Table
616167802Sjkim *
617167802Sjkim ******************************************************************************/
618167802Sjkim
619167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoBoot[] =
620167802Sjkim{
621209746Sjkim    {ACPI_DMT_UINT8,    ACPI_BOOT_OFFSET (CmosIndex),               "Boot Register Index", 0},
622209746Sjkim    {ACPI_DMT_UINT24,   ACPI_BOOT_OFFSET (Reserved[0]),             "Reserved", 0},
623209746Sjkim    ACPI_DMT_TERMINATOR
624167802Sjkim};
625167802Sjkim
626167802Sjkim
627167802Sjkim/*******************************************************************************
628167802Sjkim *
629167802Sjkim * CPEP - Corrected Platform Error Polling table
630167802Sjkim *
631167802Sjkim ******************************************************************************/
632167802Sjkim
633167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoCpep[] =
634167802Sjkim{
635209746Sjkim    {ACPI_DMT_UINT64,   ACPI_CPEP_OFFSET (Reserved),                "Reserved", 0},
636209746Sjkim    ACPI_DMT_TERMINATOR
637167802Sjkim};
638167802Sjkim
639167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoCpep0[] =
640167802Sjkim{
641209746Sjkim    {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Header.Type),            "Subtable Type", 0},
642209746Sjkim    {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Header.Length),          "Length", DT_LENGTH},
643209746Sjkim    {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Id),                     "Processor ID", 0},
644209746Sjkim    {ACPI_DMT_UINT8,    ACPI_CPEP0_OFFSET (Eid),                    "Processor EID", 0},
645209746Sjkim    {ACPI_DMT_UINT32,   ACPI_CPEP0_OFFSET (Interval),               "Polling Interval", 0},
646209746Sjkim    ACPI_DMT_TERMINATOR
647167802Sjkim};
648167802Sjkim
649167802Sjkim
650167802Sjkim/*******************************************************************************
651167802Sjkim *
652239340Sjkim * CSRT - Core System Resource Table
653239340Sjkim *
654239340Sjkim ******************************************************************************/
655239340Sjkim
656239340Sjkim/* Main table consists only of the standard ACPI table header */
657239340Sjkim
658239340Sjkim/* Resource Group subtable */
659239340Sjkim
660239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoCsrt0[] =
661239340Sjkim{
662239340Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (Length),                 "Length", 0},
663239340Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (VendorId),               "Vendor ID", 0},
664239340Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (SubvendorId),            "Subvendor ID", 0},
665239340Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (DeviceId),               "Device ID", 0},
666239340Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (SubdeviceId),            "Subdevice ID", 0},
667239340Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (Revision),               "Revision", 0},
668239340Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT0_OFFSET (Reserved),               "Reserved", 0},
669245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT0_OFFSET (SharedInfoLength),       "Shared Info Length", 0},
670239340Sjkim    ACPI_DMT_TERMINATOR
671239340Sjkim};
672239340Sjkim
673245582Sjkim/* Shared Info subtable */
674239340Sjkim
675239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoCsrt1[] =
676239340Sjkim{
677245582Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (MajorVersion),           "Major Version", 0},
678245582Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (MinorVersion),           "Minor Version", 0},
679245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (MmioBaseLow),            "MMIO Base Address Low", 0},
680245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (MmioBaseHigh),           "MMIO Base Address High", 0},
681245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (GsiInterrupt),           "GSI Interrupt", 0},
682245582Sjkim    {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (InterruptPolarity),      "Interrupt Polarity", 0},
683245582Sjkim    {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (InterruptMode),          "Interrupt Mode", 0},
684245582Sjkim    {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (NumChannels),            "Num Channels", 0},
685245582Sjkim    {ACPI_DMT_UINT8,    ACPI_CSRT1_OFFSET (DmaAddressWidth),        "DMA Address Width", 0},
686245582Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (BaseRequestLine),        "Base Request Line", 0},
687245582Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT1_OFFSET (NumHandshakeSignals),    "Num Handshake Signals", 0},
688245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT1_OFFSET (MaxBlockSize),           "Max Block Size", 0},
689239340Sjkim    ACPI_DMT_TERMINATOR
690239340Sjkim};
691239340Sjkim
692239340Sjkim
693245582Sjkim/* Resource Descriptor subtable */
694245582Sjkim
695245582SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoCsrt2[] =
696245582Sjkim{
697245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT2_OFFSET (Length),                 "Length", 0},
698245582Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT2_OFFSET (Type),                   "Type", 0},
699245582Sjkim    {ACPI_DMT_UINT16,   ACPI_CSRT2_OFFSET (Subtype),                "Subtype", 0},
700245582Sjkim    {ACPI_DMT_UINT32,   ACPI_CSRT2_OFFSET (Uid),                    "UID", 0},
701245582Sjkim    ACPI_DMT_TERMINATOR
702245582Sjkim};
703245582Sjkim
704245582Sjkim
705239340Sjkim/*******************************************************************************
706239340Sjkim *
707239340Sjkim * DBG2 - Debug Port Table 2
708239340Sjkim *
709239340Sjkim ******************************************************************************/
710239340Sjkim
711239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2[] =
712239340Sjkim{
713239340Sjkim    {ACPI_DMT_UINT32,   ACPI_DBG2_OFFSET (InfoOffset),              "Info Offset", 0},
714239340Sjkim    {ACPI_DMT_UINT32,   ACPI_DBG2_OFFSET (InfoCount),               "Info Count", 0},
715239340Sjkim    ACPI_DMT_TERMINATOR
716239340Sjkim};
717239340Sjkim
718239340Sjkim/* Debug Device Information Subtable */
719239340Sjkim
720239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Device[] =
721239340Sjkim{
722239340Sjkim    {ACPI_DMT_UINT8,    ACPI_DBG20_OFFSET (Revision),               "Revision", 0},
723239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (Length),                 "Length", 0},
724239340Sjkim    {ACPI_DMT_UINT8,    ACPI_DBG20_OFFSET (RegisterCount),          "Register Count", 0},
725239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (NamepathLength),         "Namepath Length", 0},
726239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (NamepathOffset),         "Namepath Offset", 0},
727239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (OemDataLength),          "OEM Data Length", 0},
728239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (OemDataOffset),          "OEM Data Offset", 0},
729239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (PortType),               "Port Type", 0},
730239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (PortSubtype),            "Port Subtype", 0},
731239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (Reserved),               "Reserved", 0},
732239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (BaseAddressOffset),      "Base Address Offset", 0},
733239340Sjkim    {ACPI_DMT_UINT16,   ACPI_DBG20_OFFSET (AddressSizeOffset),      "Address Size Offset", 0},
734239340Sjkim    ACPI_DMT_TERMINATOR
735239340Sjkim};
736239340Sjkim
737239340Sjkim/* Variable-length data for the subtable */
738239340Sjkim
739239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Addr[] =
740239340Sjkim{
741239340Sjkim    {ACPI_DMT_GAS,      0,                                          "Base Address Register", 0},
742239340Sjkim    ACPI_DMT_TERMINATOR
743239340Sjkim};
744239340Sjkim
745239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Size[] =
746239340Sjkim{
747239340Sjkim    {ACPI_DMT_UINT32,   0,                                          "Address Size", 0},
748239340Sjkim    ACPI_DMT_TERMINATOR
749239340Sjkim};
750239340Sjkim
751239340SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDbg2Name[] =
752239340Sjkim{
753239340Sjkim    {ACPI_DMT_STRING,   0,                                          "Namepath", 0},
754239340Sjkim    ACPI_DMT_TERMINATOR
755239340Sjkim};
756239340Sjkim
757239340Sjkim
758239340Sjkim/*******************************************************************************
759239340Sjkim *
760167802Sjkim * DBGP - Debug Port
761167802Sjkim *
762167802Sjkim ******************************************************************************/
763167802Sjkim
764167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDbgp[] =
765167802Sjkim{
766209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DBGP_OFFSET (Type),                    "Interface Type", 0},
767209746Sjkim    {ACPI_DMT_UINT24,   ACPI_DBGP_OFFSET (Reserved[0]),             "Reserved", 0},
768209746Sjkim    {ACPI_DMT_GAS,      ACPI_DBGP_OFFSET (DebugPort),               "Debug Port Register", 0},
769209746Sjkim    ACPI_DMT_TERMINATOR
770167802Sjkim};
771167802Sjkim
772167802Sjkim
773167802Sjkim/*******************************************************************************
774167802Sjkim *
775167802Sjkim * DMAR - DMA Remapping table
776167802Sjkim *
777167802Sjkim ******************************************************************************/
778167802Sjkim
779167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmar[] =
780167802Sjkim{
781209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMAR_OFFSET (Width),                   "Host Address Width", 0},
782209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMAR_OFFSET (Flags),                   "Flags", 0},
783252279Sjkim    {ACPI_DMT_BUF10,    ACPI_DMAR_OFFSET (Reserved[0]),             "Reserved", 0},
784209746Sjkim    ACPI_DMT_TERMINATOR
785167802Sjkim};
786167802Sjkim
787193529Sjkim/* Common Subtable header (one per Subtable) */
788167802Sjkim
789167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmarHdr[] =
790167802Sjkim{
791209746Sjkim    {ACPI_DMT_DMAR,     ACPI_DMAR0_OFFSET (Header.Type),            "Subtable Type", 0},
792209746Sjkim    {ACPI_DMT_UINT16,   ACPI_DMAR0_OFFSET (Header.Length),          "Length", DT_LENGTH},
793209746Sjkim    ACPI_DMT_TERMINATOR
794167802Sjkim};
795167802Sjkim
796167802Sjkim/* Common device scope entry */
797167802Sjkim
798167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmarScope[] =
799167802Sjkim{
800209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (EntryType),              "Device Scope Entry Type", 0},
801209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (Length),                 "Entry Length", DT_LENGTH},
802209746Sjkim    {ACPI_DMT_UINT16,   ACPI_DMARS_OFFSET (Reserved),               "Reserved", 0},
803209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (EnumerationId),          "Enumeration ID", 0},
804209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMARS_OFFSET (Bus),                    "PCI Bus Number", 0},
805209746Sjkim    ACPI_DMT_TERMINATOR
806167802Sjkim};
807167802Sjkim
808193529Sjkim/* DMAR Subtables */
809167802Sjkim
810167802Sjkim/* 0: Hardware Unit Definition */
811167802Sjkim
812167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmar0[] =
813167802Sjkim{
814209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMAR0_OFFSET (Flags),                  "Flags", 0},
815209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMAR0_OFFSET (Reserved),               "Reserved", 0},
816209746Sjkim    {ACPI_DMT_UINT16,   ACPI_DMAR0_OFFSET (Segment),                "PCI Segment Number", 0},
817209746Sjkim    {ACPI_DMT_UINT64,   ACPI_DMAR0_OFFSET (Address),                "Register Base Address", 0},
818209746Sjkim    ACPI_DMT_TERMINATOR
819167802Sjkim};
820167802Sjkim
821193529Sjkim/* 1: Reserved Memory Definition */
822167802Sjkim
823167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmar1[] =
824167802Sjkim{
825209746Sjkim    {ACPI_DMT_UINT16,   ACPI_DMAR1_OFFSET (Reserved),               "Reserved", 0},
826209746Sjkim    {ACPI_DMT_UINT16,   ACPI_DMAR1_OFFSET (Segment),                "PCI Segment Number", 0},
827209746Sjkim    {ACPI_DMT_UINT64,   ACPI_DMAR1_OFFSET (BaseAddress),            "Base Address", 0},
828209746Sjkim    {ACPI_DMT_UINT64,   ACPI_DMAR1_OFFSET (EndAddress),             "End Address (limit)", 0},
829209746Sjkim    ACPI_DMT_TERMINATOR
830167802Sjkim};
831167802Sjkim
832193529Sjkim/* 2: Root Port ATS Capability Definition */
833167802Sjkim
834193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmar2[] =
835193529Sjkim{
836209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMAR2_OFFSET (Flags),                  "Flags", 0},
837209746Sjkim    {ACPI_DMT_UINT8,    ACPI_DMAR2_OFFSET (Reserved),               "Reserved", 0},
838209746Sjkim    {ACPI_DMT_UINT16,   ACPI_DMAR2_OFFSET (Segment),                "PCI Segment Number", 0},
839209746Sjkim    ACPI_DMT_TERMINATOR
840193529Sjkim};
841193529Sjkim
842197104Sjkim/* 3: Remapping Hardware Static Affinity Structure */
843193529Sjkim
844197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDmar3[] =
845197104Sjkim{
846209746Sjkim    {ACPI_DMT_UINT32,   ACPI_DMAR3_OFFSET (Reserved),               "Reserved", 0},
847209746Sjkim    {ACPI_DMT_UINT64,   ACPI_DMAR3_OFFSET (BaseAddress),            "Base Address", 0},
848209746Sjkim    {ACPI_DMT_UINT32,   ACPI_DMAR3_OFFSET (ProximityDomain),        "Proximity Domain", 0},
849209746Sjkim    ACPI_DMT_TERMINATOR
850197104Sjkim};
851197104Sjkim
852197104Sjkim
853167802Sjkim/*******************************************************************************
854167802Sjkim *
855228110Sjkim * DRTM - Dynamic Root of Trust for Measurement table
856228110Sjkim *
857228110Sjkim ******************************************************************************/
858228110Sjkim
859228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoDrtm[] =
860228110Sjkim{
861228110Sjkim
862228110Sjkim    ACPI_DMT_TERMINATOR
863228110Sjkim};
864228110Sjkim
865228110Sjkim
866228110Sjkim/*******************************************************************************
867228110Sjkim *
868167802Sjkim * ECDT - Embedded Controller Boot Resources Table
869167802Sjkim *
870167802Sjkim ******************************************************************************/
871167802Sjkim
872167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoEcdt[] =
873167802Sjkim{
874209746Sjkim    {ACPI_DMT_GAS,      ACPI_ECDT_OFFSET (Control),                 "Command/Status Register", 0},
875209746Sjkim    {ACPI_DMT_GAS,      ACPI_ECDT_OFFSET (Data),                    "Data Register", 0},
876209746Sjkim    {ACPI_DMT_UINT32,   ACPI_ECDT_OFFSET (Uid),                     "UID", 0},
877209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ECDT_OFFSET (Gpe),                     "GPE Number", 0},
878209746Sjkim    {ACPI_DMT_STRING,   ACPI_ECDT_OFFSET (Id[0]),                   "Namepath", 0},
879209746Sjkim    ACPI_DMT_TERMINATOR
880167802Sjkim};
881167802Sjkim
882167802Sjkim
883167802Sjkim/*******************************************************************************
884167802Sjkim *
885193529Sjkim * EINJ - Error Injection table
886193529Sjkim *
887193529Sjkim ******************************************************************************/
888193529Sjkim
889193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoEinj[] =
890193529Sjkim{
891209746Sjkim    {ACPI_DMT_UINT32,   ACPI_EINJ_OFFSET (HeaderLength),            "Injection Header Length", 0},
892209746Sjkim    {ACPI_DMT_UINT8,    ACPI_EINJ_OFFSET (Flags),                   "Flags", 0},
893209746Sjkim    {ACPI_DMT_UINT24,   ACPI_EINJ_OFFSET (Reserved[0]),             "Reserved", 0},
894209746Sjkim    {ACPI_DMT_UINT32,   ACPI_EINJ_OFFSET (Entries),                 "Injection Entry Count", 0},
895209746Sjkim    ACPI_DMT_TERMINATOR
896193529Sjkim};
897193529Sjkim
898193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoEinj0[] =
899193529Sjkim{
900209746Sjkim    {ACPI_DMT_EINJACT,  ACPI_EINJ0_OFFSET (Action),                 "Action", 0},
901209746Sjkim    {ACPI_DMT_EINJINST, ACPI_EINJ0_OFFSET (Instruction),            "Instruction", 0},
902209746Sjkim    {ACPI_DMT_UINT8,    ACPI_EINJ0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
903209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_EINJ0_FLAG_OFFSET (Flags,0),           "Preserve Register Bits", 0},
904209746Sjkim
905209746Sjkim    {ACPI_DMT_UINT8,    ACPI_EINJ0_OFFSET (Reserved),               "Reserved", 0},
906209746Sjkim    {ACPI_DMT_GAS,      ACPI_EINJ0_OFFSET (RegisterRegion),         "Register Region", 0},
907209746Sjkim    {ACPI_DMT_UINT64,   ACPI_EINJ0_OFFSET (Value),                  "Value", 0},
908209746Sjkim    {ACPI_DMT_UINT64,   ACPI_EINJ0_OFFSET (Mask),                   "Mask", 0},
909209746Sjkim    ACPI_DMT_TERMINATOR
910193529Sjkim};
911193529Sjkim
912193529Sjkim
913193529Sjkim/*******************************************************************************
914193529Sjkim *
915193529Sjkim * ERST - Error Record Serialization table
916193529Sjkim *
917193529Sjkim ******************************************************************************/
918193529Sjkim
919193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoErst[] =
920193529Sjkim{
921209746Sjkim    {ACPI_DMT_UINT32,   ACPI_ERST_OFFSET (HeaderLength),            "Serialization Header Length", 0},
922209746Sjkim    {ACPI_DMT_UINT32,   ACPI_ERST_OFFSET (Reserved),                "Reserved", 0},
923209746Sjkim    {ACPI_DMT_UINT32,   ACPI_ERST_OFFSET (Entries),                 "Instruction Entry Count", 0},
924209746Sjkim    ACPI_DMT_TERMINATOR
925193529Sjkim};
926193529Sjkim
927209746SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoErst0[] =
928209746Sjkim{
929209746Sjkim    {ACPI_DMT_ERSTACT,  ACPI_ERST0_OFFSET (Action),                 "Action", 0},
930209746Sjkim    {ACPI_DMT_ERSTINST, ACPI_ERST0_OFFSET (Instruction),            "Instruction", 0},
931209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ERST0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
932209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_ERST0_FLAG_OFFSET (Flags,0),           "Preserve Register Bits", 0},
933193529Sjkim
934209746Sjkim    {ACPI_DMT_UINT8,    ACPI_ERST0_OFFSET (Reserved),               "Reserved", 0},
935209746Sjkim    {ACPI_DMT_GAS,      ACPI_ERST0_OFFSET (RegisterRegion),         "Register Region", 0},
936209746Sjkim    {ACPI_DMT_UINT64,   ACPI_ERST0_OFFSET (Value),                  "Value", 0},
937209746Sjkim    {ACPI_DMT_UINT64,   ACPI_ERST0_OFFSET (Mask),                   "Mask", 0},
938209746Sjkim    ACPI_DMT_TERMINATOR
939209746Sjkim};
940209746Sjkim
941209746Sjkim
942193529Sjkim/*******************************************************************************
943193529Sjkim *
944228110Sjkim * FPDT - Firmware Performance Data Table (ACPI 5.0)
945228110Sjkim *
946228110Sjkim ******************************************************************************/
947228110Sjkim
948228110Sjkim/* Main table consists of only the standard ACPI header - subtables follow */
949228110Sjkim
950228110Sjkim/* FPDT subtable header */
951228110Sjkim
952228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFpdtHdr[] =
953228110Sjkim{
954228110Sjkim    {ACPI_DMT_UINT16,   ACPI_FPDTH_OFFSET (Type),                   "Subtable Type", 0},
955228110Sjkim    {ACPI_DMT_UINT8,    ACPI_FPDTH_OFFSET (Length),                 "Length", DT_LENGTH},
956228110Sjkim    {ACPI_DMT_UINT8,    ACPI_FPDTH_OFFSET (Revision),               "Revision", 0},
957228110Sjkim    ACPI_DMT_TERMINATOR
958228110Sjkim};
959228110Sjkim
960228110Sjkim/* 0: Firmware Basic Boot Performance Record */
961228110Sjkim
962228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFpdt0[] =
963228110Sjkim{
964228110Sjkim    {ACPI_DMT_UINT32,   ACPI_FPDT0_OFFSET (Reserved),               "Reserved", 0},
965228110Sjkim    {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (ResetEnd),               "Reset End", 0},
966228110Sjkim    {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (LoadStart),              "Load Image Start", 0},
967228110Sjkim    {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (StartupStart),           "Start Image Start", 0},
968228110Sjkim    {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (ExitServicesEntry),      "Exit Services Entry", 0},
969228110Sjkim    {ACPI_DMT_UINT64,   ACPI_FPDT0_OFFSET (ExitServicesExit),       "Exit Services Exit", 0},
970228110Sjkim    ACPI_DMT_TERMINATOR
971228110Sjkim};
972228110Sjkim
973228110Sjkim/* 1: S3 Performance Table Pointer Record */
974228110Sjkim
975228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoFpdt1[] =
976228110Sjkim{
977228110Sjkim    {ACPI_DMT_UINT32,   ACPI_FPDT1_OFFSET (Reserved),               "Reserved", 0},
978228110Sjkim    {ACPI_DMT_UINT64,   ACPI_FPDT1_OFFSET (Address),                "S3PT Address", 0},
979228110Sjkim    ACPI_DMT_TERMINATOR
980228110Sjkim};
981228110Sjkim
982228110Sjkim
983228110Sjkim/*******************************************************************************
984228110Sjkim *
985228110Sjkim * GTDT - Generic Timer Description Table
986228110Sjkim *
987228110Sjkim ******************************************************************************/
988228110Sjkim
989228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoGtdt[] =
990228110Sjkim{
991228110Sjkim    {ACPI_DMT_UINT64,   ACPI_GTDT_OFFSET (Address),                 "Timer Address", 0},
992228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
993228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (Flags,0),            "Memory Present", 0},
994228110Sjkim    ACPI_DMT_NEW_LINE,
995228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (SecurePl1Interrupt),      "Secure PL1 Interrupt", 0},
996228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (SecurePl1Flags),          "SPL1 Flags (decoded below)", DT_FLAG},
997228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (SecurePl1Flags,0),   "Trigger Mode", 0},
998228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (SecurePl1Flags,0),   "Polarity", 0},
999228110Sjkim    ACPI_DMT_NEW_LINE,
1000228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecurePl1Interrupt),   "Non-Secure PL1 Interrupt", 0},
1001228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecurePl1Flags),       "NSPL1 Flags (decoded below)", DT_FLAG},
1002228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (NonSecurePl1Flags,0),"Trigger Mode", 0},
1003228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (NonSecurePl1Flags,0),"Polarity", 0},
1004228110Sjkim    ACPI_DMT_NEW_LINE,
1005228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (VirtualTimerInterrupt),   "Virtual Timer Interrupt", 0},
1006228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (VirtualTimerFlags),       "VT Flags (decoded below)", DT_FLAG},
1007228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (VirtualTimerFlags,0),"Trigger Mode", 0},
1008228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (VirtualTimerFlags,0),"Polarity", 0},
1009228110Sjkim    ACPI_DMT_NEW_LINE,
1010228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecurePl2Interrupt),   "Non-Secure PL2 Interrupt", 0},
1011228110Sjkim    {ACPI_DMT_UINT32,   ACPI_GTDT_OFFSET (NonSecurePl2Flags),       "NSPL2 Flags (decoded below)", DT_FLAG},
1012228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_GTDT_FLAG_OFFSET (NonSecurePl2Flags,0),"Trigger Mode", 0},
1013228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_GTDT_FLAG_OFFSET (NonSecurePl2Flags,0),"Polarity", 0},
1014228110Sjkim    ACPI_DMT_TERMINATOR
1015228110Sjkim};
1016228110Sjkim
1017228110Sjkim
1018228110Sjkim/*******************************************************************************
1019228110Sjkim *
1020193529Sjkim * HEST - Hardware Error Source table
1021193529Sjkim *
1022193529Sjkim ******************************************************************************/
1023193529Sjkim
1024193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest[] =
1025193529Sjkim{
1026209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST_OFFSET (ErrorSourceCount),        "Error Source Count", 0},
1027209746Sjkim    ACPI_DMT_TERMINATOR
1028193529Sjkim};
1029193529Sjkim
1030197104Sjkim/* Common HEST structures for subtables */
1031197104Sjkim
1032197104Sjkim#define ACPI_DM_HEST_HEADER \
1033209746Sjkim    {ACPI_DMT_HEST,     ACPI_HEST0_OFFSET (Header.Type),            "Subtable Type", 0}, \
1034209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST0_OFFSET (Header.SourceId),        "Source Id", 0}
1035197104Sjkim
1036197104Sjkim#define ACPI_DM_HEST_AER \
1037209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Reserved1),              "Reserved", 0}, \
1038209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST6_OFFSET (Aer.Flags),                  "Flags (decoded below)", DT_FLAG}, \
1039209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_HEST6_FLAG_OFFSET (Aer.Flags,0),           "Firmware First", 0}, \
1040209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST6_OFFSET (Aer.Enabled),                "Enabled", 0}, \
1041209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.RecordsToPreallocate),   "Records To Preallocate", 0}, \
1042209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.MaxSectionsPerRecord),   "Max Sections Per Record", 0}, \
1043209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.Bus),                    "Bus", 0}, \
1044209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Device),                 "Device", 0}, \
1045209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Function),               "Function", 0}, \
1046209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.DeviceControl),          "DeviceControl", 0}, \
1047209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST6_OFFSET (Aer.Reserved2),              "Reserved", 0}, \
1048209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.UncorrectableMask),      "Uncorrectable Mask", 0}, \
1049209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.UncorrectableSeverity),  "Uncorrectable Severity", 0}, \
1050209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.CorrectableMask),        "Correctable Mask", 0}, \
1051209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (Aer.AdvancedCapabilities),   "Advanced Capabilities", 0}
1052197104Sjkim
1053197104Sjkim
1054193529Sjkim/* HEST Subtables */
1055193529Sjkim
1056197104Sjkim/* 0: IA32 Machine Check Exception */
1057193529Sjkim
1058193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest0[] =
1059193529Sjkim{
1060197104Sjkim    ACPI_DM_HEST_HEADER,
1061209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST0_OFFSET (Reserved1),              "Reserved1", 0},
1062209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1063209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_HEST0_FLAG_OFFSET (Flags,0),           "Firmware First", 0},
1064209746Sjkim
1065209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST0_OFFSET (Enabled),                "Enabled", 0},
1066209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST0_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1067209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST0_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1068209746Sjkim    {ACPI_DMT_UINT64,   ACPI_HEST0_OFFSET (GlobalCapabilityData),   "Global Capability Data", 0},
1069209746Sjkim    {ACPI_DMT_UINT64,   ACPI_HEST0_OFFSET (GlobalControlData),      "Global Control Data", 0},
1070209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST0_OFFSET (NumHardwareBanks),       "Num Hardware Banks", 0},
1071209746Sjkim    {ACPI_DMT_UINT56,   ACPI_HEST0_OFFSET (Reserved3[0]),           "Reserved2", 0},
1072209746Sjkim    ACPI_DMT_TERMINATOR
1073193529Sjkim};
1074193529Sjkim
1075197104Sjkim/* 1: IA32 Corrected Machine Check */
1076193529Sjkim
1077193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest1[] =
1078193529Sjkim{
1079197104Sjkim    ACPI_DM_HEST_HEADER,
1080209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST1_OFFSET (Reserved1),              "Reserved1", 0},
1081209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST1_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1082209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_HEST1_FLAG_OFFSET (Flags,0),           "Firmware First", 0},
1083209746Sjkim
1084209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST1_OFFSET (Enabled),                "Enabled", 0},
1085209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST1_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1086209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST1_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1087209746Sjkim    {ACPI_DMT_HESTNTFY, ACPI_HEST1_OFFSET (Notify),                 "Notify", 0},
1088209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST1_OFFSET (NumHardwareBanks),       "Num Hardware Banks", 0},
1089209746Sjkim    {ACPI_DMT_UINT24,   ACPI_HEST1_OFFSET (Reserved2[0]),           "Reserved2", 0},
1090209746Sjkim    ACPI_DMT_TERMINATOR
1091193529Sjkim};
1092193529Sjkim
1093197104Sjkim/* 2: IA32 Non-Maskable Interrupt */
1094193529Sjkim
1095197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest2[] =
1096193529Sjkim{
1097197104Sjkim    ACPI_DM_HEST_HEADER,
1098209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (Reserved),               "Reserved", 0},
1099209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1100209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1101209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST2_OFFSET (MaxRawDataLength),       "Max Raw Data Length", 0},
1102209746Sjkim    ACPI_DMT_TERMINATOR
1103193529Sjkim};
1104193529Sjkim
1105193529Sjkim/* 6: PCI Express Root Port AER */
1106193529Sjkim
1107193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest6[] =
1108193529Sjkim{
1109197104Sjkim    ACPI_DM_HEST_HEADER,
1110197104Sjkim    ACPI_DM_HEST_AER,
1111209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST6_OFFSET (RootErrorCommand),       "Root Error Command", 0},
1112209746Sjkim    ACPI_DMT_TERMINATOR
1113193529Sjkim};
1114193529Sjkim
1115193529Sjkim/* 7: PCI Express AER (AER Endpoint) */
1116193529Sjkim
1117193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest7[] =
1118193529Sjkim{
1119197104Sjkim    ACPI_DM_HEST_HEADER,
1120197104Sjkim    ACPI_DM_HEST_AER,
1121209746Sjkim    ACPI_DMT_TERMINATOR
1122193529Sjkim};
1123193529Sjkim
1124193529Sjkim/* 8: PCI Express/PCI-X Bridge AER */
1125193529Sjkim
1126193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest8[] =
1127193529Sjkim{
1128197104Sjkim    ACPI_DM_HEST_HEADER,
1129197104Sjkim    ACPI_DM_HEST_AER,
1130209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST8_OFFSET (UncorrectableMask2),     "2nd Uncorrectable Mask", 0},
1131209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST8_OFFSET (UncorrectableSeverity2), "2nd Uncorrectable Severity", 0},
1132209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST8_OFFSET (AdvancedCapabilities2),  "2nd Advanced Capabilities", 0},
1133209746Sjkim    ACPI_DMT_TERMINATOR
1134193529Sjkim};
1135193529Sjkim
1136193529Sjkim/* 9: Generic Hardware Error Source */
1137193529Sjkim
1138193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHest9[] =
1139193529Sjkim{
1140197104Sjkim    ACPI_DM_HEST_HEADER,
1141209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HEST9_OFFSET (RelatedSourceId),        "Related Source Id", 0},
1142209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST9_OFFSET (Reserved),               "Reserved", 0},
1143209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HEST9_OFFSET (Enabled),                "Enabled", 0},
1144209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (RecordsToPreallocate),   "Records To Preallocate", 0},
1145209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (MaxSectionsPerRecord),   "Max Sections Per Record", 0},
1146209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (MaxRawDataLength),       "Max Raw Data Length", 0},
1147209746Sjkim    {ACPI_DMT_GAS,      ACPI_HEST9_OFFSET (ErrorStatusAddress),     "Error Status Address", 0},
1148209746Sjkim    {ACPI_DMT_HESTNTFY, ACPI_HEST9_OFFSET (Notify),                 "Notify", 0},
1149209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HEST9_OFFSET (ErrorBlockLength),       "Error Status Block Length", 0},
1150209746Sjkim    ACPI_DMT_TERMINATOR
1151193529Sjkim};
1152193529Sjkim
1153197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHestNotify[] =
1154193529Sjkim{
1155209746Sjkim    {ACPI_DMT_HESTNTYP, ACPI_HESTN_OFFSET (Type),                   "Notify Type", 0},
1156209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HESTN_OFFSET (Length),                 "Notify Length", DT_LENGTH},
1157209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HESTN_OFFSET (ConfigWriteEnable),      "Configuration Write Enable", 0},
1158209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (PollInterval),           "PollInterval", 0},
1159209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (Vector),                 "Vector", 0},
1160209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (PollingThresholdValue),  "Polling Threshold Value", 0},
1161209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (PollingThresholdWindow), "Polling Threshold Window", 0},
1162209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (ErrorThresholdValue),    "Error Threshold Value", 0},
1163209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTN_OFFSET (ErrorThresholdWindow),   "Error Threshold Window", 0},
1164209746Sjkim    ACPI_DMT_TERMINATOR
1165193529Sjkim};
1166193529Sjkim
1167193529Sjkim
1168197104Sjkim/*
1169197104Sjkim * IA32 Error Bank(s) - Follows the ACPI_HEST_IA_MACHINE_CHECK and
1170197104Sjkim * ACPI_HEST_IA_CORRECTED structures.
1171197104Sjkim */
1172197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHestBank[] =
1173197104Sjkim{
1174209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (BankNumber),             "Bank Number", 0},
1175209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (ClearStatusOnInit),      "Clear Status On Init", 0},
1176209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (StatusFormat),           "Status Format", 0},
1177209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HESTB_OFFSET (Reserved),               "Reserved", 0},
1178209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (ControlRegister),        "Control Register", 0},
1179209746Sjkim    {ACPI_DMT_UINT64,   ACPI_HESTB_OFFSET (ControlData),            "Control Data", 0},
1180209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (StatusRegister),         "Status Register", 0},
1181209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (AddressRegister),        "Address Register", 0},
1182209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HESTB_OFFSET (MiscRegister),           "Misc Register", 0},
1183209746Sjkim    ACPI_DMT_TERMINATOR
1184197104Sjkim};
1185197104Sjkim
1186197104Sjkim
1187193529Sjkim/*******************************************************************************
1188193529Sjkim *
1189167802Sjkim * HPET - High Precision Event Timer table
1190167802Sjkim *
1191167802Sjkim ******************************************************************************/
1192167802Sjkim
1193167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoHpet[] =
1194167802Sjkim{
1195209746Sjkim    {ACPI_DMT_UINT32,   ACPI_HPET_OFFSET (Id),                      "Hardware Block ID", 0},
1196209746Sjkim    {ACPI_DMT_GAS,      ACPI_HPET_OFFSET (Address),                 "Timer Block Register", 0},
1197209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HPET_OFFSET (Sequence),                "Sequence Number", 0},
1198209746Sjkim    {ACPI_DMT_UINT16,   ACPI_HPET_OFFSET (MinimumTick),             "Minimum Clock Ticks", 0},
1199209746Sjkim    {ACPI_DMT_UINT8,    ACPI_HPET_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
1200209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_HPET_FLAG_OFFSET (Flags,0),            "4K Page Protect", 0},
1201209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_HPET_FLAG_OFFSET (Flags,0),            "64K Page Protect", 0},
1202209746Sjkim    ACPI_DMT_TERMINATOR
1203167802Sjkim};
1204167802Sjkim
1205167802Sjkim
1206167802Sjkim/*******************************************************************************
1207167802Sjkim *
1208197104Sjkim * IVRS - I/O Virtualization Reporting Structure
1209197104Sjkim *
1210197104Sjkim ******************************************************************************/
1211197104Sjkim
1212197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs[] =
1213197104Sjkim{
1214209746Sjkim    {ACPI_DMT_UINT32,   ACPI_IVRS_OFFSET (Info),                    "Virtualization Info", 0},
1215209746Sjkim    {ACPI_DMT_UINT64,   ACPI_IVRS_OFFSET (Reserved),                "Reserved", 0},
1216209746Sjkim    ACPI_DMT_TERMINATOR
1217197104Sjkim};
1218197104Sjkim
1219197104Sjkim/* Common Subtable header (one per Subtable) */
1220197104Sjkim
1221197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrsHdr[] =
1222197104Sjkim{
1223209746Sjkim    {ACPI_DMT_IVRS,     ACPI_IVRSH_OFFSET (Type),                   "Subtable Type", 0},
1224209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRSH_OFFSET (Flags),                  "Flags", 0},
1225209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRSH_OFFSET (Length),                 "Length", DT_LENGTH},
1226209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRSH_OFFSET (DeviceId),               "DeviceId", 0},
1227209746Sjkim    ACPI_DMT_TERMINATOR
1228197104Sjkim};
1229197104Sjkim
1230197104Sjkim/* IVRS subtables */
1231197104Sjkim
1232197104Sjkim/* 0x10: I/O Virtualization Hardware Definition (IVHD) Block */
1233197104Sjkim
1234197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs0[] =
1235197104Sjkim{
1236209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRS0_OFFSET (CapabilityOffset),       "Capability Offset", 0},
1237209746Sjkim    {ACPI_DMT_UINT64,   ACPI_IVRS0_OFFSET (BaseAddress),            "Base Address", 0},
1238209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRS0_OFFSET (PciSegmentGroup),        "PCI Segment Group", 0},
1239209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRS0_OFFSET (Info),                   "Virtualization Info", 0},
1240209746Sjkim    {ACPI_DMT_UINT32,   ACPI_IVRS0_OFFSET (Reserved),               "Reserved", 0},
1241209746Sjkim    ACPI_DMT_TERMINATOR
1242197104Sjkim};
1243197104Sjkim
1244197104Sjkim/* 0x20, 0x21, 0x22: I/O Virtualization Memory Definition (IVMD) Block */
1245197104Sjkim
1246197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs1[] =
1247197104Sjkim{
1248209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRS1_OFFSET (AuxData),                "Auxiliary Data", 0},
1249209746Sjkim    {ACPI_DMT_UINT64,   ACPI_IVRS1_OFFSET (Reserved),               "Reserved", 0},
1250209746Sjkim    {ACPI_DMT_UINT64,   ACPI_IVRS1_OFFSET (StartAddress),           "Start Address", 0},
1251209746Sjkim    {ACPI_DMT_UINT64,   ACPI_IVRS1_OFFSET (MemoryLength),           "Memory Length", 0},
1252209746Sjkim    ACPI_DMT_TERMINATOR
1253197104Sjkim};
1254197104Sjkim
1255197104Sjkim/* Device entry header for IVHD block */
1256197104Sjkim
1257197104Sjkim#define ACPI_DMT_IVRS_DE_HEADER \
1258209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRSD_OFFSET (Type),                   "Entry Type", 0}, \
1259209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRSD_OFFSET (Id),                     "Device ID", 0}, \
1260209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRSD_OFFSET (DataSetting),            "Data Setting", 0}
1261197104Sjkim
1262197104Sjkim/* 4-byte device entry */
1263197104Sjkim
1264197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs4[] =
1265197104Sjkim{
1266197104Sjkim    ACPI_DMT_IVRS_DE_HEADER,
1267209746Sjkim    {ACPI_DMT_EXIT,     0,                                          NULL, 0},
1268197104Sjkim};
1269197104Sjkim
1270197104Sjkim/* 8-byte device entry */
1271197104Sjkim
1272197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs8a[] =
1273197104Sjkim{
1274197104Sjkim    ACPI_DMT_IVRS_DE_HEADER,
1275209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRS8A_OFFSET (Reserved1),             "Reserved", 0},
1276209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRS8A_OFFSET (UsedId),                "Source Used Device ID", 0},
1277209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRS8A_OFFSET (Reserved2),             "Reserved", 0},
1278209746Sjkim    ACPI_DMT_TERMINATOR
1279197104Sjkim};
1280197104Sjkim
1281197104Sjkim/* 8-byte device entry */
1282197104Sjkim
1283197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs8b[] =
1284197104Sjkim{
1285197104Sjkim    ACPI_DMT_IVRS_DE_HEADER,
1286209746Sjkim    {ACPI_DMT_UINT32,   ACPI_IVRS8B_OFFSET (ExtendedData),          "Extended Data", 0},
1287209746Sjkim    ACPI_DMT_TERMINATOR
1288197104Sjkim};
1289197104Sjkim
1290197104Sjkim/* 8-byte device entry */
1291197104Sjkim
1292197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoIvrs8c[] =
1293197104Sjkim{
1294197104Sjkim    ACPI_DMT_IVRS_DE_HEADER,
1295209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRS8C_OFFSET (Handle),                "Handle", 0},
1296209746Sjkim    {ACPI_DMT_UINT16,   ACPI_IVRS8C_OFFSET (UsedId),                "Source Used Device ID", 0},
1297209746Sjkim    {ACPI_DMT_UINT8,    ACPI_IVRS8C_OFFSET (Variety),               "Variety", 0},
1298209746Sjkim    ACPI_DMT_TERMINATOR
1299197104Sjkim};
1300197104Sjkim
1301197104Sjkim
1302197104Sjkim/*******************************************************************************
1303197104Sjkim *
1304167802Sjkim * MADT - Multiple APIC Description Table and subtables
1305167802Sjkim *
1306167802Sjkim ******************************************************************************/
1307167802Sjkim
1308167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt[] =
1309167802Sjkim{
1310209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT_OFFSET (Address),                 "Local Apic Address", 0},
1311209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
1312209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_MADT_FLAG_OFFSET (Flags,0),            "PC-AT Compatibility", 0},
1313209746Sjkim    ACPI_DMT_TERMINATOR
1314167802Sjkim};
1315167802Sjkim
1316193529Sjkim/* Common Subtable header (one per Subtable) */
1317167802Sjkim
1318167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadtHdr[] =
1319167802Sjkim{
1320209746Sjkim    {ACPI_DMT_MADT,     ACPI_MADTH_OFFSET (Type),                   "Subtable Type", 0},
1321209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADTH_OFFSET (Length),                 "Length", DT_LENGTH},
1322209746Sjkim    ACPI_DMT_TERMINATOR
1323167802Sjkim};
1324167802Sjkim
1325193529Sjkim/* MADT Subtables */
1326167802Sjkim
1327167802Sjkim/* 0: processor APIC */
1328167802Sjkim
1329167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt0[] =
1330167802Sjkim{
1331209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT0_OFFSET (ProcessorId),            "Processor ID", 0},
1332209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT0_OFFSET (Id),                     "Local Apic ID", 0},
1333209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT0_OFFSET (LapicFlags),             "Flags (decoded below)", DT_FLAG},
1334209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_MADT0_FLAG_OFFSET (LapicFlags,0),      "Processor Enabled", 0},
1335209746Sjkim    ACPI_DMT_TERMINATOR
1336167802Sjkim};
1337167802Sjkim
1338167802Sjkim/* 1: IO APIC */
1339167802Sjkim
1340167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt1[] =
1341167802Sjkim{
1342209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT1_OFFSET (Id),                     "I/O Apic ID", 0},
1343209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT1_OFFSET (Reserved),               "Reserved", 0},
1344209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT1_OFFSET (Address),                "Address", 0},
1345209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT1_OFFSET (GlobalIrqBase),          "Interrupt", 0},
1346209746Sjkim    ACPI_DMT_TERMINATOR
1347167802Sjkim};
1348167802Sjkim
1349167802Sjkim/* 2: Interrupt Override */
1350167802Sjkim
1351167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt2[] =
1352167802Sjkim{
1353209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT2_OFFSET (Bus),                    "Bus", 0},
1354209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT2_OFFSET (SourceIrq),              "Source", 0},
1355209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT2_OFFSET (GlobalIrq),              "Interrupt", 0},
1356209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT2_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1357209746Sjkim    {ACPI_DMT_FLAGS0,   ACPI_MADT2_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1358209746Sjkim    {ACPI_DMT_FLAGS2,   ACPI_MADT2_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1359209746Sjkim    ACPI_DMT_TERMINATOR
1360167802Sjkim};
1361167802Sjkim
1362167802Sjkim/* 3: NMI Sources */
1363167802Sjkim
1364167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt3[] =
1365167802Sjkim{
1366209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT3_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1367209746Sjkim    {ACPI_DMT_FLAGS0,   ACPI_MADT3_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1368209746Sjkim    {ACPI_DMT_FLAGS2,   ACPI_MADT3_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1369209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT3_OFFSET (GlobalIrq),              "Interrupt", 0},
1370209746Sjkim    ACPI_DMT_TERMINATOR
1371167802Sjkim};
1372167802Sjkim
1373167802Sjkim/* 4: Local APIC NMI */
1374167802Sjkim
1375167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt4[] =
1376167802Sjkim{
1377209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT4_OFFSET (ProcessorId),            "Processor ID", 0},
1378209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT4_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1379209746Sjkim    {ACPI_DMT_FLAGS0,   ACPI_MADT4_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1380209746Sjkim    {ACPI_DMT_FLAGS2,   ACPI_MADT4_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1381209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT4_OFFSET (Lint),                   "Interrupt Input LINT", 0},
1382209746Sjkim    ACPI_DMT_TERMINATOR
1383167802Sjkim};
1384167802Sjkim
1385167802Sjkim/* 5: Address Override */
1386167802Sjkim
1387167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt5[] =
1388167802Sjkim{
1389209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT5_OFFSET (Reserved),               "Reserved", 0},
1390209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MADT5_OFFSET (Address),                "APIC Address", 0},
1391209746Sjkim    ACPI_DMT_TERMINATOR
1392167802Sjkim};
1393167802Sjkim
1394167802Sjkim/* 6: I/O Sapic */
1395167802Sjkim
1396167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt6[] =
1397167802Sjkim{
1398209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT6_OFFSET (Id),                     "I/O Sapic ID", 0},
1399209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT6_OFFSET (Reserved),               "Reserved", 0},
1400209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT6_OFFSET (GlobalIrqBase),          "Interrupt Base", 0},
1401209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MADT6_OFFSET (Address),                "Address", 0},
1402209746Sjkim    ACPI_DMT_TERMINATOR
1403167802Sjkim};
1404167802Sjkim
1405167802Sjkim/* 7: Local Sapic */
1406167802Sjkim
1407167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt7[] =
1408167802Sjkim{
1409209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT7_OFFSET (ProcessorId),            "Processor ID", 0},
1410209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT7_OFFSET (Id),                     "Local Sapic ID", 0},
1411209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT7_OFFSET (Eid),                    "Local Sapic EID", 0},
1412209746Sjkim    {ACPI_DMT_UINT24,   ACPI_MADT7_OFFSET (Reserved[0]),            "Reserved", 0},
1413209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT7_OFFSET (LapicFlags),             "Flags (decoded below)", DT_FLAG},
1414209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_MADT7_FLAG_OFFSET (LapicFlags,0),      "Processor Enabled", 0},
1415209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT7_OFFSET (Uid),                    "Processor UID", 0},
1416209746Sjkim    {ACPI_DMT_STRING,   ACPI_MADT7_OFFSET (UidString[0]),           "Processor UID String", 0},
1417209746Sjkim    ACPI_DMT_TERMINATOR
1418167802Sjkim};
1419167802Sjkim
1420167802Sjkim/* 8: Platform Interrupt Source */
1421167802Sjkim
1422167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt8[] =
1423167802Sjkim{
1424209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT8_OFFSET (IntiFlags),              "Flags (decoded below)", DT_FLAG},
1425209746Sjkim    {ACPI_DMT_FLAGS0,   ACPI_MADT8_FLAG_OFFSET (IntiFlags,0),       "Polarity", 0},
1426209746Sjkim    {ACPI_DMT_FLAGS2,   ACPI_MADT8_FLAG_OFFSET (IntiFlags,0),       "Trigger Mode", 0},
1427209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (Type),                   "InterruptType", 0},
1428209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (Id),                     "Processor ID", 0},
1429209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (Eid),                    "Processor EID", 0},
1430209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT8_OFFSET (IoSapicVector),          "I/O Sapic Vector", 0},
1431209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT8_OFFSET (GlobalIrq),              "Interrupt", 0},
1432209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT8_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1433209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_MADT8_OFFSET (Flags),                  "CPEI Override", 0},
1434209746Sjkim    ACPI_DMT_TERMINATOR
1435167802Sjkim};
1436167802Sjkim
1437197104Sjkim/* 9: Processor Local X2_APIC (ACPI 4.0) */
1438167802Sjkim
1439193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt9[] =
1440193529Sjkim{
1441209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT9_OFFSET (Reserved),               "Reserved", 0},
1442209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT9_OFFSET (LocalApicId),            "Processor x2Apic ID", 0},
1443209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT9_OFFSET (LapicFlags),             "Flags (decoded below)", DT_FLAG},
1444209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_MADT9_FLAG_OFFSET (LapicFlags,0),      "Processor Enabled", 0},
1445209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT9_OFFSET (Uid),                    "Processor UID", 0},
1446209746Sjkim    ACPI_DMT_TERMINATOR
1447193529Sjkim};
1448193529Sjkim
1449197104Sjkim/* 10: Local X2_APIC NMI (ACPI 4.0) */
1450193529Sjkim
1451193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt10[] =
1452193529Sjkim{
1453209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT10_OFFSET (IntiFlags),             "Flags (decoded below)", DT_FLAG},
1454209746Sjkim    {ACPI_DMT_FLAGS0,   ACPI_MADT10_FLAG_OFFSET (IntiFlags,0),      "Polarity", 0},
1455209746Sjkim    {ACPI_DMT_FLAGS2,   ACPI_MADT10_FLAG_OFFSET (IntiFlags,0),      "Trigger Mode", 0},
1456209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT10_OFFSET (Uid),                   "Processor UID", 0},
1457209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MADT10_OFFSET (Lint),                  "Interrupt Input LINT", 0},
1458209746Sjkim    {ACPI_DMT_UINT24,   ACPI_MADT10_OFFSET (Reserved[0]),           "Reserved", 0},
1459209746Sjkim    ACPI_DMT_TERMINATOR
1460193529Sjkim};
1461193529Sjkim
1462228110Sjkim/* 11: Generic Interrupt Controller (ACPI 5.0) */
1463193529Sjkim
1464228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt11[] =
1465228110Sjkim{
1466228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT11_OFFSET (Reserved),              "Reserved", 0},
1467228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (GicId),                 "Local GIC Hardware ID", 0},
1468228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (Uid),                   "Processor UID", 0},
1469228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (Flags),                 "Flags (decoded below)", DT_FLAG},
1470228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_MADT11_FLAG_OFFSET (Flags,0),          "Processor Enabled", 0},
1471228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (ParkingVersion),        "Parking Protocol Version", 0},
1472228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT11_OFFSET (PerformanceInterrupt),  "Performance Interrupt", 0},
1473228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (ParkedAddress),         "Parked Address", 0},
1474228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MADT11_OFFSET (BaseAddress),           "Base Address", 0},
1475228110Sjkim    ACPI_DMT_TERMINATOR
1476228110Sjkim};
1477228110Sjkim
1478228110Sjkim/* 12: Generic Interrupt Distributor (ACPI 5.0) */
1479228110Sjkim
1480228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMadt12[] =
1481228110Sjkim{
1482228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MADT12_OFFSET (Reserved),              "Reserved", 0},
1483228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT12_OFFSET (GicId),                 "Local GIC Hardware ID", 0},
1484228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MADT12_OFFSET (BaseAddress),           "Base Address", 0},
1485228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT12_OFFSET (GlobalIrqBase),         "Interrupt Base", 0},
1486228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MADT12_OFFSET (Reserved2),             "Reserved", 0},
1487228110Sjkim   ACPI_DMT_TERMINATOR
1488228110Sjkim};
1489228110Sjkim
1490228110Sjkim
1491167802Sjkim/*******************************************************************************
1492167802Sjkim *
1493193529Sjkim * MCFG - PCI Memory Mapped Configuration table and Subtable
1494167802Sjkim *
1495167802Sjkim ******************************************************************************/
1496167802Sjkim
1497167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMcfg[] =
1498167802Sjkim{
1499209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MCFG_OFFSET (Reserved[0]),             "Reserved", 0},
1500209746Sjkim    ACPI_DMT_TERMINATOR
1501167802Sjkim};
1502167802Sjkim
1503167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMcfg0[] =
1504167802Sjkim{
1505209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MCFG0_OFFSET (Address),                "Base Address", 0},
1506209746Sjkim    {ACPI_DMT_UINT16,   ACPI_MCFG0_OFFSET (PciSegment),             "Segment Group Number", 0},
1507209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCFG0_OFFSET (StartBusNumber),         "Start Bus Number", 0},
1508209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCFG0_OFFSET (EndBusNumber),           "End Bus Number", 0},
1509209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MCFG0_OFFSET (Reserved),               "Reserved", 0},
1510209746Sjkim    ACPI_DMT_TERMINATOR
1511167802Sjkim};
1512167802Sjkim
1513167802Sjkim
1514167802Sjkim/*******************************************************************************
1515167802Sjkim *
1516204773Sjkim * MCHI - Management Controller Host Interface table
1517204773Sjkim *
1518204773Sjkim ******************************************************************************/
1519204773Sjkim
1520204773SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMchi[] =
1521204773Sjkim{
1522209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (InterfaceType),           "Interface Type", 0},
1523209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (Protocol),                "Protocol", 0},
1524209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MCHI_OFFSET (ProtocolData),            "Protocol Data", 0},
1525209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (InterruptType),           "Interrupt Type", 0},
1526209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (Gpe),                     "Gpe", 0},
1527209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciDeviceFlag),           "Pci Device Flag", 0},
1528209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MCHI_OFFSET (GlobalInterrupt),         "Global Interrupt", 0},
1529209746Sjkim    {ACPI_DMT_GAS,      ACPI_MCHI_OFFSET (ControlRegister),         "Control Register", 0},
1530209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciSegment),              "Pci Segment", 0},
1531209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciBus),                  "Pci Bus", 0},
1532209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciDevice),               "Pci Device", 0},
1533209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciFunction),             "Pci Function", 0},
1534209746Sjkim    ACPI_DMT_TERMINATOR
1535204773Sjkim};
1536204773Sjkim
1537204773Sjkim
1538204773Sjkim/*******************************************************************************
1539204773Sjkim *
1540228110Sjkim * MPST - Memory Power State Table
1541228110Sjkim *
1542228110Sjkim ******************************************************************************/
1543228110Sjkim
1544228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMpst[] =
1545228110Sjkim{
1546228110Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST_OFFSET (ChannelId),               "Channel ID", 0},
1547241973Sjkim    {ACPI_DMT_UINT24,   ACPI_MPST_OFFSET (Reserved1[0]),            "Reserved", 0},
1548228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST_OFFSET (PowerNodeCount),          "Power Node Count", 0},
1549241973Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST_OFFSET (Reserved2),               "Reserved", 0},
1550228110Sjkim    ACPI_DMT_TERMINATOR
1551228110Sjkim};
1552228110Sjkim
1553228110Sjkim/* MPST subtables */
1554228110Sjkim
1555228110Sjkim/* 0: Memory Power Node Structure */
1556228110Sjkim
1557228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMpst0[] =
1558228110Sjkim{
1559228110Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1560228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_MPST0_FLAG_OFFSET (Flags,0),           "Node Enabled", 0},
1561228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_MPST0_FLAG_OFFSET (Flags,0),           "Power Managed", 0},
1562228110Sjkim    {ACPI_DMT_FLAG2,    ACPI_MPST0_FLAG_OFFSET (Flags,0),           "Hot Plug Capable", 0},
1563228110Sjkim
1564228110Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST0_OFFSET (Reserved1),              "Reserved", 0},
1565228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST0_OFFSET (NodeId),                 "Node ID", 0},
1566241973Sjkim    {ACPI_DMT_UINT32,   ACPI_MPST0_OFFSET (Length),                 "Length", 0},
1567228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MPST0_OFFSET (RangeAddress),           "Range Address", 0},
1568228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MPST0_OFFSET (RangeLength),            "Range Length", 0},
1569241973Sjkim    {ACPI_DMT_UINT32,   ACPI_MPST0_OFFSET (NumPowerStates),         "Num Power States", 0},
1570241973Sjkim    {ACPI_DMT_UINT32,   ACPI_MPST0_OFFSET (NumPhysicalComponents),  "Num Physical Components", 0},
1571228110Sjkim    ACPI_DMT_TERMINATOR
1572228110Sjkim};
1573228110Sjkim
1574228110Sjkim/* 0A: Sub-subtable - Memory Power State Structure (follows Memory Power Node above) */
1575228110Sjkim
1576228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMpst0A[] =
1577228110Sjkim{
1578228110Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST0A_OFFSET (PowerState),            "Power State", 0},
1579228110Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST0A_OFFSET (InfoIndex),             "InfoIndex", 0},
1580228110Sjkim    ACPI_DMT_TERMINATOR
1581228110Sjkim};
1582228110Sjkim
1583228110Sjkim/* 0B: Sub-subtable - Physical Component ID Structure (follows Memory Power State(s) above) */
1584228110Sjkim
1585228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMpst0B[] =
1586228110Sjkim{
1587228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST0B_OFFSET (ComponentId),           "Component Id", 0},
1588228110Sjkim    ACPI_DMT_TERMINATOR
1589228110Sjkim};
1590228110Sjkim
1591228110Sjkim/* 01: Power Characteristics Count (follows all Power Node(s) above) */
1592228110Sjkim
1593228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMpst1[] =
1594228110Sjkim{
1595228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST1_OFFSET (CharacteristicsCount),   "Characteristics Count", 0},
1596241973Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST1_OFFSET (Reserved),               "Reserved", 0},
1597228110Sjkim    ACPI_DMT_TERMINATOR
1598228110Sjkim};
1599228110Sjkim
1600228110Sjkim/* 02: Memory Power State Characteristics Structure */
1601228110Sjkim
1602228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMpst2[] =
1603228110Sjkim{
1604241973Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST2_OFFSET (StructureId),            "Structure ID", 0},
1605228110Sjkim    {ACPI_DMT_UINT8,    ACPI_MPST2_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1606228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_MPST2_FLAG_OFFSET (Flags,0),           "Memory Preserved", 0},
1607228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_MPST2_FLAG_OFFSET (Flags,0),           "Auto Entry", 0},
1608228110Sjkim    {ACPI_DMT_FLAG2,    ACPI_MPST2_FLAG_OFFSET (Flags,0),           "Auto Exit", 0},
1609228110Sjkim
1610228110Sjkim    {ACPI_DMT_UINT16,   ACPI_MPST2_OFFSET (Reserved1),              "Reserved", 0},
1611228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MPST2_OFFSET (AveragePower),           "Average Power", 0},
1612228110Sjkim    {ACPI_DMT_UINT32,   ACPI_MPST2_OFFSET (PowerSaving),            "Power Saving", 0},
1613228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MPST2_OFFSET (ExitLatency),            "Exit Latency", 0},
1614228110Sjkim    {ACPI_DMT_UINT64,   ACPI_MPST2_OFFSET (Reserved2),              "Reserved", 0},
1615228110Sjkim    ACPI_DMT_TERMINATOR
1616228110Sjkim};
1617228110Sjkim
1618228110Sjkim
1619228110Sjkim/*******************************************************************************
1620228110Sjkim *
1621197104Sjkim * MSCT - Maximum System Characteristics Table (ACPI 4.0)
1622197104Sjkim *
1623197104Sjkim ******************************************************************************/
1624197104Sjkim
1625197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMsct[] =
1626197104Sjkim{
1627209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MSCT_OFFSET (ProximityOffset),         "Proximity Offset", 0},
1628209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MSCT_OFFSET (MaxProximityDomains),     "Max Proximity Domains", 0},
1629209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MSCT_OFFSET (MaxClockDomains),         "Max Clock Domains", 0},
1630209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MSCT_OFFSET (MaxAddress),              "Max Physical Address", 0},
1631209746Sjkim    ACPI_DMT_TERMINATOR
1632197104Sjkim};
1633197104Sjkim
1634197104Sjkim/* Subtable - Maximum Proximity Domain Information. Version 1 */
1635197104Sjkim
1636197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMsct0[] =
1637197104Sjkim{
1638209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MSCT0_OFFSET (Revision),               "Revision", 0},
1639209746Sjkim    {ACPI_DMT_UINT8,    ACPI_MSCT0_OFFSET (Length),                 "Length", DT_LENGTH},
1640209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MSCT0_OFFSET (RangeStart),             "Domain Range Start", 0},
1641209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MSCT0_OFFSET (RangeEnd),               "Domain Range End", 0},
1642209746Sjkim    {ACPI_DMT_UINT32,   ACPI_MSCT0_OFFSET (ProcessorCapacity),      "Processor Capacity", 0},
1643209746Sjkim    {ACPI_DMT_UINT64,   ACPI_MSCT0_OFFSET (MemoryCapacity),         "Memory Capacity", 0},
1644209746Sjkim    ACPI_DMT_TERMINATOR
1645197104Sjkim};
1646197104Sjkim
1647197104Sjkim
1648197104Sjkim/*******************************************************************************
1649197104Sjkim *
1650246849Sjkim * MTMR - MID Timer Table
1651246849Sjkim *
1652246849Sjkim ******************************************************************************/
1653246849Sjkim
1654246849SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMtmr[] =
1655246849Sjkim{
1656246849Sjkim    ACPI_DMT_TERMINATOR
1657246849Sjkim};
1658246849Sjkim
1659246849Sjkim/* MTMR Subtables - MTMR Entry */
1660246849Sjkim
1661246849SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoMtmr0[] =
1662246849Sjkim{
1663246849Sjkim    {ACPI_DMT_GAS,      ACPI_MTMR0_OFFSET (PhysicalAddress),        "PhysicalAddress", 0},
1664246849Sjkim    {ACPI_DMT_UINT32,   ACPI_MTMR0_OFFSET (Frequency),              "Frequency", 0},
1665246849Sjkim    {ACPI_DMT_UINT32,   ACPI_MTMR0_OFFSET (Irq),                    "IRQ", 0},
1666246849Sjkim    ACPI_DMT_TERMINATOR
1667246849Sjkim};
1668246849Sjkim
1669246849Sjkim
1670246849Sjkim/*******************************************************************************
1671246849Sjkim *
1672228110Sjkim * PCCT - Platform Communications Channel Table (ACPI 5.0)
1673228110Sjkim *
1674228110Sjkim ******************************************************************************/
1675228110Sjkim
1676228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPcct[] =
1677228110Sjkim{
1678228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PCCT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
1679228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_PCCT_FLAG_OFFSET (Flags,0),            "Doorbell", 0},
1680228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PCCT_OFFSET (Latency),                 "Command Latency", 0},
1681228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PCCT_OFFSET (Reserved),                "Reserved", 0},
1682228110Sjkim    ACPI_DMT_TERMINATOR
1683228110Sjkim};
1684228110Sjkim
1685228110Sjkim/* PCCT subtables */
1686228110Sjkim
1687228110Sjkim/* 0: Generic Communications Subspace */
1688228110Sjkim
1689228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPcct0[] =
1690228110Sjkim{
1691228110Sjkim    {ACPI_DMT_UINT8,    ACPI_PCCT0_OFFSET (Header.Type),            "Subtable Type", 0},
1692228110Sjkim    {ACPI_DMT_UINT8,    ACPI_PCCT0_OFFSET (Header.Length),          "Length", DT_LENGTH},
1693228110Sjkim    {ACPI_DMT_UINT48,   ACPI_PCCT0_OFFSET (Reserved[0]),            "Reserved", 0},
1694228110Sjkim    {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (BaseAddress),            "Base Address", 0},
1695228110Sjkim    {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (Length),                 "Address Length", 0},
1696228110Sjkim    {ACPI_DMT_GAS,      ACPI_PCCT0_OFFSET (DoorbellRegister),       "Doorbell Register", 0},
1697228110Sjkim    {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (PreserveMask),           "Preserve Mask", 0},
1698228110Sjkim    {ACPI_DMT_UINT64,   ACPI_PCCT0_OFFSET (WriteMask),              "Write Mask", 0},
1699228110Sjkim    ACPI_DMT_TERMINATOR
1700228110Sjkim};
1701228110Sjkim
1702228110Sjkim
1703228110Sjkim/*******************************************************************************
1704228110Sjkim *
1705228110Sjkim * PMTT - Platform Memory Topology Table
1706228110Sjkim *
1707228110Sjkim ******************************************************************************/
1708228110Sjkim
1709228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt[] =
1710228110Sjkim{
1711228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT_OFFSET (Reserved),                "Reserved", 0},
1712228110Sjkim    ACPI_DMT_TERMINATOR
1713228110Sjkim};
1714228110Sjkim
1715228110Sjkim/* Common Subtable header (one per Subtable) */
1716228110Sjkim
1717228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPmttHdr[] =
1718228110Sjkim{
1719228110Sjkim    {ACPI_DMT_PMTT,     ACPI_PMTTH_OFFSET (Type),                   "Subtable Type", 0},
1720228110Sjkim    {ACPI_DMT_UINT8,    ACPI_PMTTH_OFFSET (Reserved1),              "Reserved", 0},
1721228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTTH_OFFSET (Length),                 "Length", DT_LENGTH},
1722228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTTH_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1723228110Sjkim    {ACPI_DMT_FLAG0,    ACPI_PMTTH_FLAG_OFFSET (Flags,0),           "Top-level Device", 0},
1724228110Sjkim    {ACPI_DMT_FLAG1,    ACPI_PMTTH_FLAG_OFFSET (Flags,0),           "Physical Element", 0},
1725228110Sjkim    {ACPI_DMT_FLAGS2,   ACPI_PMTTH_FLAG_OFFSET (Flags,0),           "Memory Type", 0},
1726228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTTH_OFFSET (Reserved2),              "Reserved", 0},
1727228110Sjkim    ACPI_DMT_TERMINATOR
1728228110Sjkim};
1729228110Sjkim
1730228110Sjkim/* PMTT Subtables */
1731228110Sjkim
1732228110Sjkim/* 0: Socket */
1733228110Sjkim
1734228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt0[] =
1735228110Sjkim{
1736228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT0_OFFSET (SocketId),               "Socket ID", 0},
1737228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT0_OFFSET (Reserved),               "Reserved", 0},
1738228110Sjkim    ACPI_DMT_TERMINATOR
1739228110Sjkim};
1740228110Sjkim
1741228110Sjkim/* 1: Memory Controller */
1742228110Sjkim
1743228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt1[] =
1744228110Sjkim{
1745228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (ReadLatency),            "Read Latency", 0},
1746228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (WriteLatency),           "Write Latency", 0},
1747228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (ReadBandwidth),          "Read Bandwidth", 0},
1748228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT1_OFFSET (WriteBandwidth),         "Write Bandwidth", 0},
1749228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (AccessWidth),            "Access Width", 0},
1750228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (Alignment),              "Alignment", 0},
1751228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (Reserved),               "Reserved", 0},
1752228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT1_OFFSET (DomainCount),            "Domain Count", 0},
1753228110Sjkim    ACPI_DMT_TERMINATOR
1754228110Sjkim};
1755228110Sjkim
1756228110Sjkim/* 1a: Proximity Domain */
1757228110Sjkim
1758228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt1a[] =
1759228110Sjkim{
1760228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT1A_OFFSET (ProximityDomain),       "Proximity Domain", 0},
1761228110Sjkim    ACPI_DMT_TERMINATOR
1762228110Sjkim};
1763228110Sjkim
1764228110Sjkim/* 2: Physical Component */
1765228110Sjkim
1766228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoPmtt2[] =
1767228110Sjkim{
1768228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT2_OFFSET (ComponentId),            "Component ID", 0},
1769228110Sjkim    {ACPI_DMT_UINT16,   ACPI_PMTT2_OFFSET (Reserved),               "Reserved", 0},
1770228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT2_OFFSET (MemorySize),             "Memory Size", 0},
1771228110Sjkim    {ACPI_DMT_UINT32,   ACPI_PMTT2_OFFSET (BiosHandle),             "Bios Handle", 0},
1772228110Sjkim    ACPI_DMT_TERMINATOR
1773228110Sjkim};
1774228110Sjkim
1775228110Sjkim
1776228110Sjkim/*******************************************************************************
1777228110Sjkim *
1778228110Sjkim * S3PT - S3 Performance Table
1779228110Sjkim *
1780228110Sjkim ******************************************************************************/
1781228110Sjkim
1782228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoS3pt[] =
1783228110Sjkim{
1784228110Sjkim    {ACPI_DMT_SIG,     ACPI_S3PT_OFFSET (Signature[0]),             "Signature", 0},
1785228110Sjkim    {ACPI_DMT_UINT32,  ACPI_S3PT_OFFSET (Length),                   "Length", DT_LENGTH},
1786228110Sjkim    ACPI_DMT_TERMINATOR
1787228110Sjkim};
1788228110Sjkim
1789228110Sjkim/* S3PT subtable header */
1790228110Sjkim
1791228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoS3ptHdr[] =
1792228110Sjkim{
1793228110Sjkim    {ACPI_DMT_UINT16,  ACPI_S3PTH_OFFSET (Type),                    "Type", 0},
1794228110Sjkim    {ACPI_DMT_UINT8,   ACPI_S3PTH_OFFSET (Length),                  "Length", DT_LENGTH},
1795228110Sjkim    {ACPI_DMT_UINT8,   ACPI_S3PTH_OFFSET (Revision),                "Revision", 0},
1796228110Sjkim    ACPI_DMT_TERMINATOR
1797228110Sjkim};
1798228110Sjkim
1799228110Sjkim/* 0: Basic S3 Resume Performance Record */
1800228110Sjkim
1801228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoS3pt0[] =
1802228110Sjkim{
1803228110Sjkim    {ACPI_DMT_UINT32,  ACPI_S3PT0_OFFSET (ResumeCount),             "Resume Count", 0},
1804228110Sjkim    {ACPI_DMT_UINT64,  ACPI_S3PT0_OFFSET (FullResume),              "Full Resume", 0},
1805228110Sjkim    {ACPI_DMT_UINT64,  ACPI_S3PT0_OFFSET (AverageResume),           "Average Resume", 0},
1806228110Sjkim    ACPI_DMT_TERMINATOR
1807228110Sjkim};
1808228110Sjkim
1809228110Sjkim/* 1: Basic S3 Suspend Performance Record */
1810228110Sjkim
1811228110SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoS3pt1[] =
1812228110Sjkim{
1813228110Sjkim    {ACPI_DMT_UINT64,  ACPI_S3PT1_OFFSET (SuspendStart),            "Suspend Start", 0},
1814228110Sjkim    {ACPI_DMT_UINT64,  ACPI_S3PT1_OFFSET (SuspendEnd),              "Suspend End", 0},
1815228110Sjkim    ACPI_DMT_TERMINATOR
1816228110Sjkim};
1817228110Sjkim
1818228110Sjkim
1819228110Sjkim/*******************************************************************************
1820228110Sjkim *
1821167802Sjkim * SBST - Smart Battery Specification Table
1822167802Sjkim *
1823167802Sjkim ******************************************************************************/
1824167802Sjkim
1825167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSbst[] =
1826167802Sjkim{
1827209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SBST_OFFSET (WarningLevel),            "Warning Level", 0},
1828209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SBST_OFFSET (LowLevel),                "Low Level", 0},
1829209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SBST_OFFSET (CriticalLevel),           "Critical Level", 0},
1830209746Sjkim    ACPI_DMT_TERMINATOR
1831167802Sjkim};
1832167802Sjkim
1833167802Sjkim
1834167802Sjkim/*******************************************************************************
1835167802Sjkim *
1836219707Sjkim * SLIC - Software Licensing Description Table. There is no common table, just
1837219707Sjkim * the standard ACPI header and then subtables.
1838193529Sjkim *
1839193529Sjkim ******************************************************************************/
1840193529Sjkim
1841219707Sjkim/* Common Subtable header (one per Subtable) */
1842219707Sjkim
1843219707SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSlicHdr[] =
1844193529Sjkim{
1845219707Sjkim    {ACPI_DMT_SLIC,     ACPI_SLICH_OFFSET (Type),                   "Subtable Type", 0},
1846219707Sjkim    {ACPI_DMT_UINT32,   ACPI_SLICH_OFFSET (Length),                 "Length", DT_LENGTH},
1847209746Sjkim    ACPI_DMT_TERMINATOR
1848193529Sjkim};
1849193529Sjkim
1850219707SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSlic0[] =
1851219707Sjkim{
1852219707Sjkim    {ACPI_DMT_UINT8,    ACPI_SLIC0_OFFSET (KeyType),                "Key Type", 0},
1853219707Sjkim    {ACPI_DMT_UINT8,    ACPI_SLIC0_OFFSET (Version),                "Version", 0},
1854219707Sjkim    {ACPI_DMT_UINT16,   ACPI_SLIC0_OFFSET (Reserved),               "Reserved", 0},
1855219707Sjkim    {ACPI_DMT_UINT32,   ACPI_SLIC0_OFFSET (Algorithm),              "Algorithm", 0},
1856219707Sjkim    {ACPI_DMT_NAME4,    ACPI_SLIC0_OFFSET (Magic),                  "Magic", 0},
1857219707Sjkim    {ACPI_DMT_UINT32,   ACPI_SLIC0_OFFSET (BitLength),              "BitLength", 0},
1858219707Sjkim    {ACPI_DMT_UINT32,   ACPI_SLIC0_OFFSET (Exponent),               "Exponent", 0},
1859219707Sjkim    {ACPI_DMT_BUF128,   ACPI_SLIC0_OFFSET (Modulus[0]),             "Modulus", 0},
1860219707Sjkim    ACPI_DMT_TERMINATOR
1861219707Sjkim};
1862193529Sjkim
1863219707SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSlic1[] =
1864219707Sjkim{
1865219707Sjkim    {ACPI_DMT_UINT32,   ACPI_SLIC1_OFFSET (Version),                "Version", 0},
1866219707Sjkim    {ACPI_DMT_NAME6,    ACPI_SLIC1_OFFSET (OemId[0]),               "Oem ID", 0},
1867219707Sjkim    {ACPI_DMT_NAME8,    ACPI_SLIC1_OFFSET (OemTableId[0]),          "Oem Table ID", 0},
1868219707Sjkim    {ACPI_DMT_NAME8,    ACPI_SLIC1_OFFSET (WindowsFlag[0]),         "Windows Flag", 0},
1869219707Sjkim    {ACPI_DMT_UINT32,   ACPI_SLIC1_OFFSET (SlicVersion),            "SLIC Version", 0},
1870219707Sjkim    {ACPI_DMT_BUF16,    ACPI_SLIC1_OFFSET (Reserved[0]),            "Reserved", 0},
1871219707Sjkim    {ACPI_DMT_BUF128,   ACPI_SLIC1_OFFSET (Signature[0]),           "Signature", 0},
1872219707Sjkim    ACPI_DMT_TERMINATOR
1873219707Sjkim};
1874219707Sjkim
1875219707Sjkim
1876193529Sjkim/*******************************************************************************
1877193529Sjkim *
1878167802Sjkim * SLIT - System Locality Information Table
1879167802Sjkim *
1880167802Sjkim ******************************************************************************/
1881167802Sjkim
1882167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSlit[] =
1883167802Sjkim{
1884209746Sjkim    {ACPI_DMT_UINT64,   ACPI_SLIT_OFFSET (LocalityCount),          "Localities", 0},
1885209746Sjkim    ACPI_DMT_TERMINATOR
1886167802Sjkim};
1887167802Sjkim
1888167802Sjkim
1889167802Sjkim/*******************************************************************************
1890167802Sjkim *
1891167802Sjkim * SPCR - Serial Port Console Redirection table
1892167802Sjkim *
1893167802Sjkim ******************************************************************************/
1894167802Sjkim
1895167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSpcr[] =
1896167802Sjkim{
1897209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (InterfaceType),           "Interface Type", 0},
1898209746Sjkim    {ACPI_DMT_UINT24,   ACPI_SPCR_OFFSET (Reserved[0]),             "Reserved", 0},
1899209746Sjkim    {ACPI_DMT_GAS,      ACPI_SPCR_OFFSET (SerialPort),              "Serial Port Register", 0},
1900209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (InterruptType),           "Interrupt Type", 0},
1901209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PcInterrupt),             "PCAT-compatible IRQ", 0},
1902209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SPCR_OFFSET (Interrupt),               "Interrupt", 0},
1903209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (BaudRate),                "Baud Rate", 0},
1904209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (Parity),                  "Parity", 0},
1905209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (StopBits),                "Stop Bits", 0},
1906209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (FlowControl),             "Flow Control", 0},
1907209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (TerminalType),            "Terminal Type", 0},
1908209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (Reserved2),               "Reserved", 0},
1909209746Sjkim    {ACPI_DMT_UINT16,   ACPI_SPCR_OFFSET (PciDeviceId),             "PCI Device ID", 0},
1910209746Sjkim    {ACPI_DMT_UINT16,   ACPI_SPCR_OFFSET (PciVendorId),             "PCI Vendor ID", 0},
1911209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciBus),                  "PCI Bus", 0},
1912209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciDevice),               "PCI Device", 0},
1913209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciFunction),             "PCI Function", 0},
1914209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SPCR_OFFSET (PciFlags),                "PCI Flags", 0},
1915209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPCR_OFFSET (PciSegment),              "PCI Segment", 0},
1916209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SPCR_OFFSET (Reserved2),               "Reserved", 0},
1917209746Sjkim    ACPI_DMT_TERMINATOR
1918167802Sjkim};
1919167802Sjkim
1920167802Sjkim
1921167802Sjkim/*******************************************************************************
1922167802Sjkim *
1923167802Sjkim * SPMI - Server Platform Management Interface table
1924167802Sjkim *
1925167802Sjkim ******************************************************************************/
1926167802Sjkim
1927167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSpmi[] =
1928167802Sjkim{
1929209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (InterfaceType),           "Interface Type", 0},
1930209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (Reserved),                "Reserved", 0},
1931209746Sjkim    {ACPI_DMT_UINT16,   ACPI_SPMI_OFFSET (SpecRevision),            "IPMI Spec Version", 0},
1932209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (InterruptType),           "Interrupt Type", 0},
1933209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (GpeNumber),               "GPE Number", 0},
1934209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (Reserved1),               "Reserved", 0},
1935209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciDeviceFlag),           "PCI Device Flag", 0},
1936209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SPMI_OFFSET (Interrupt),               "Interrupt", 0},
1937209746Sjkim    {ACPI_DMT_GAS,      ACPI_SPMI_OFFSET (IpmiRegister),            "IPMI Register", 0},
1938209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciSegment),              "PCI Segment", 0},
1939209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciBus),                  "PCI Bus", 0},
1940209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciDevice),               "PCI Device", 0},
1941209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (PciFunction),             "PCI Function", 0},
1942209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SPMI_OFFSET (Reserved2),               "Reserved", 0},
1943209746Sjkim    ACPI_DMT_TERMINATOR
1944167802Sjkim};
1945167802Sjkim
1946167802Sjkim
1947167802Sjkim/*******************************************************************************
1948167802Sjkim *
1949193529Sjkim * SRAT - System Resource Affinity Table and Subtables
1950167802Sjkim *
1951167802Sjkim ******************************************************************************/
1952167802Sjkim
1953167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSrat[] =
1954167802Sjkim{
1955209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT_OFFSET (TableRevision),           "Table Revision", 0},
1956209746Sjkim    {ACPI_DMT_UINT64,   ACPI_SRAT_OFFSET (Reserved),                "Reserved", 0},
1957209746Sjkim    ACPI_DMT_TERMINATOR
1958167802Sjkim};
1959167802Sjkim
1960193529Sjkim/* Common Subtable header (one per Subtable) */
1961193529Sjkim
1962193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSratHdr[] =
1963193529Sjkim{
1964209746Sjkim    {ACPI_DMT_SRAT,     ACPI_SRATH_OFFSET (Type),                   "Subtable Type", 0},
1965209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SRATH_OFFSET (Length),                 "Length", DT_LENGTH},
1966209746Sjkim    ACPI_DMT_TERMINATOR
1967193529Sjkim};
1968193529Sjkim
1969193529Sjkim/* SRAT Subtables */
1970193529Sjkim
1971193529Sjkim/* 0: Processor Local APIC/SAPIC Affinity */
1972193529Sjkim
1973167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSrat0[] =
1974167802Sjkim{
1975209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SRAT0_OFFSET (ProximityDomainLo),      "Proximity Domain Low(8)", 0},
1976209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SRAT0_OFFSET (ApicId),                 "Apic ID", 0},
1977209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT0_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1978209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_SRAT0_FLAG_OFFSET (Flags,0),           "Enabled", 0},
1979209746Sjkim    {ACPI_DMT_UINT8,    ACPI_SRAT0_OFFSET (LocalSapicEid),          "Local Sapic EID", 0},
1980209746Sjkim    {ACPI_DMT_UINT24,   ACPI_SRAT0_OFFSET (ProximityDomainHi[0]),   "Proximity Domain High(24)", 0},
1981209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT0_OFFSET (Reserved),               "Reserved", 0},
1982209746Sjkim    ACPI_DMT_TERMINATOR
1983167802Sjkim};
1984167802Sjkim
1985193529Sjkim/* 1: Memory Affinity */
1986193529Sjkim
1987167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSrat1[] =
1988167802Sjkim{
1989209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT1_OFFSET (ProximityDomain),        "Proximity Domain", 0},
1990209746Sjkim    {ACPI_DMT_UINT16,   ACPI_SRAT1_OFFSET (Reserved),               "Reserved1", 0},
1991209746Sjkim    {ACPI_DMT_UINT64,   ACPI_SRAT1_OFFSET (BaseAddress),            "Base Address", 0},
1992209746Sjkim    {ACPI_DMT_UINT64,   ACPI_SRAT1_OFFSET (Length),                 "Address Length", 0},
1993209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT1_OFFSET (Reserved1),              "Reserved2", 0},
1994209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT1_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
1995209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_SRAT1_FLAG_OFFSET (Flags,0),           "Enabled", 0},
1996209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_SRAT1_FLAG_OFFSET (Flags,0),           "Hot Pluggable", 0},
1997209746Sjkim    {ACPI_DMT_FLAG2,    ACPI_SRAT1_FLAG_OFFSET (Flags,0),           "Non-Volatile", 0},
1998209746Sjkim    {ACPI_DMT_UINT64,   ACPI_SRAT1_OFFSET (Reserved2),              "Reserved3", 0},
1999209746Sjkim    ACPI_DMT_TERMINATOR
2000167802Sjkim};
2001167802Sjkim
2002197104Sjkim/* 2: Processor Local X2_APIC Affinity (ACPI 4.0) */
2003167802Sjkim
2004193529SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoSrat2[] =
2005193529Sjkim{
2006209746Sjkim    {ACPI_DMT_UINT16,   ACPI_SRAT2_OFFSET (Reserved),               "Reserved1", 0},
2007209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (ProximityDomain),        "Proximity Domain", 0},
2008209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (ApicId),                 "Apic ID", 0},
2009209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (Flags),                  "Flags (decoded below)", DT_FLAG},
2010209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_SRAT2_FLAG_OFFSET (Flags,0),           "Enabled", 0},
2011209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (ClockDomain),            "Clock Domain", 0},
2012209746Sjkim    {ACPI_DMT_UINT32,   ACPI_SRAT2_OFFSET (Reserved2),              "Reserved2", 0},
2013209746Sjkim    ACPI_DMT_TERMINATOR
2014193529Sjkim};
2015193529Sjkim
2016193529Sjkim
2017167802Sjkim/*******************************************************************************
2018167802Sjkim *
2019167802Sjkim * TCPA - Trusted Computing Platform Alliance table
2020167802Sjkim *
2021167802Sjkim ******************************************************************************/
2022167802Sjkim
2023167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoTcpa[] =
2024167802Sjkim{
2025209746Sjkim    {ACPI_DMT_UINT16,   ACPI_TCPA_OFFSET (Reserved),                "Reserved", 0},
2026209746Sjkim    {ACPI_DMT_UINT32,   ACPI_TCPA_OFFSET (MaxLogLength),            "Max Event Log Length", 0},
2027209746Sjkim    {ACPI_DMT_UINT64,   ACPI_TCPA_OFFSET (LogAddress),              "Event Log Address", 0},
2028209746Sjkim    ACPI_DMT_TERMINATOR
2029167802Sjkim};
2030167802Sjkim
2031167802Sjkim
2032167802Sjkim/*******************************************************************************
2033167802Sjkim *
2034245582Sjkim * TPM2 - Trusted Platform Module (TPM) 2.0 Hardware Interface Table
2035245582Sjkim *
2036245582Sjkim ******************************************************************************/
2037245582Sjkim
2038245582SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoTpm2[] =
2039245582Sjkim{
2040245582Sjkim    {ACPI_DMT_UINT32,   ACPI_TPM2_OFFSET (Flags),                   "Flags", 0},
2041245582Sjkim    {ACPI_DMT_UINT64,   ACPI_TPM2_OFFSET (ControlAddress),          "Control Address", 0},
2042245582Sjkim    {ACPI_DMT_UINT32,   ACPI_TPM2_OFFSET (StartMethod),             "Start Method", 0},
2043245582Sjkim    ACPI_DMT_TERMINATOR
2044245582Sjkim};
2045245582Sjkim
2046245582Sjkim
2047245582Sjkim/*******************************************************************************
2048245582Sjkim *
2049197104Sjkim * UEFI - UEFI Boot optimization Table
2050197104Sjkim *
2051197104Sjkim ******************************************************************************/
2052197104Sjkim
2053197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoUefi[] =
2054197104Sjkim{
2055217365Sjkim    {ACPI_DMT_UUID,     ACPI_UEFI_OFFSET (Identifier[0]),           "UUID Identifier", 0},
2056209746Sjkim    {ACPI_DMT_UINT16,   ACPI_UEFI_OFFSET (DataOffset),              "Data Offset", 0},
2057209746Sjkim    ACPI_DMT_TERMINATOR
2058197104Sjkim};
2059197104Sjkim
2060197104Sjkim
2061197104Sjkim/*******************************************************************************
2062197104Sjkim *
2063246849Sjkim * VRTC - Virtual Real Time Clock Table
2064246849Sjkim *
2065246849Sjkim ******************************************************************************/
2066246849Sjkim
2067246849SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoVrtc[] =
2068246849Sjkim{
2069246849Sjkim    ACPI_DMT_TERMINATOR
2070246849Sjkim};
2071246849Sjkim
2072246849Sjkim/* VRTC Subtables - VRTC Entry */
2073246849Sjkim
2074246849SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoVrtc0[] =
2075246849Sjkim{
2076246849Sjkim    {ACPI_DMT_GAS,      ACPI_VRTC0_OFFSET (PhysicalAddress),        "PhysicalAddress", 0},
2077246849Sjkim    {ACPI_DMT_UINT32,   ACPI_VRTC0_OFFSET (Irq),                    "IRQ", 0},
2078246849Sjkim    ACPI_DMT_TERMINATOR
2079246849Sjkim};
2080246849Sjkim
2081246849Sjkim
2082246849Sjkim/*******************************************************************************
2083246849Sjkim *
2084197104Sjkim * WAET - Windows ACPI Emulated devices Table
2085197104Sjkim *
2086197104Sjkim ******************************************************************************/
2087197104Sjkim
2088197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoWaet[] =
2089197104Sjkim{
2090209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WAET_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
2091209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_WAET_OFFSET (Flags),                   "RTC needs no INT ack", 0},
2092209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_WAET_OFFSET (Flags),                   "PM timer, one read only", 0},
2093209746Sjkim    ACPI_DMT_TERMINATOR
2094197104Sjkim};
2095197104Sjkim
2096197104Sjkim
2097197104Sjkim/*******************************************************************************
2098197104Sjkim *
2099197104Sjkim * WDAT - Watchdog Action Table
2100197104Sjkim *
2101197104Sjkim ******************************************************************************/
2102197104Sjkim
2103197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoWdat[] =
2104197104Sjkim{
2105209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (HeaderLength),            "Header Length", DT_LENGTH},
2106209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDAT_OFFSET (PciSegment),              "PCI Segment", 0},
2107209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (PciBus),                  "PCI Bus", 0},
2108209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (PciDevice),               "PCI Device", 0},
2109209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (PciFunction),             "PCI Function", 0},
2110209746Sjkim    {ACPI_DMT_UINT24,   ACPI_WDAT_OFFSET (Reserved[0]),             "Reserved", 0},
2111209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (TimerPeriod),             "Timer Period", 0},
2112209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (MaxCount),                "Max Count", 0},
2113209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (MinCount),                "Min Count", 0},
2114209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDAT_OFFSET (Flags),                   "Flags (decoded below)", DT_FLAG},
2115209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_WDAT_OFFSET (Flags),                   "Enabled", 0},
2116209746Sjkim    {ACPI_DMT_FLAG7,    ACPI_WDAT_OFFSET (Flags),                   "Stopped When Asleep", 0},
2117209746Sjkim    {ACPI_DMT_UINT24,   ACPI_WDAT_OFFSET (Reserved2[0]),            "Reserved", 0},
2118209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT_OFFSET (Entries),                 "Watchdog Entry Count", 0},
2119209746Sjkim    ACPI_DMT_TERMINATOR
2120197104Sjkim};
2121197104Sjkim
2122197104Sjkim/* WDAT Subtables - Watchdog Instruction Entries */
2123197104Sjkim
2124197104SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoWdat0[] =
2125197104Sjkim{
2126209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDAT0_OFFSET (Action),                 "Watchdog Action", 0},
2127209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDAT0_OFFSET (Instruction),            "Instruction", 0},
2128209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDAT0_OFFSET (Reserved),               "Reserved", 0},
2129209746Sjkim    {ACPI_DMT_GAS,      ACPI_WDAT0_OFFSET (RegisterRegion),         "Register Region", 0},
2130209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT0_OFFSET (Value),                  "Value", 0},
2131209746Sjkim    {ACPI_DMT_UINT32,   ACPI_WDAT0_OFFSET (Mask),                   "Register Mask", 0},
2132209746Sjkim    ACPI_DMT_TERMINATOR
2133197104Sjkim};
2134197104Sjkim
2135197104Sjkim
2136197104Sjkim/*******************************************************************************
2137197104Sjkim *
2138209746Sjkim * WDDT - Watchdog Description Table
2139209746Sjkim *
2140209746Sjkim ******************************************************************************/
2141209746Sjkim
2142209746SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoWddt[] =
2143209746Sjkim{
2144209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (SpecVersion),             "Specification Version", 0},
2145209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (TableVersion),            "Table Version", 0},
2146209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (PciVendorId),             "PCI Vendor ID", 0},
2147209746Sjkim    {ACPI_DMT_GAS,      ACPI_WDDT_OFFSET (Address),                 "Timer Register", 0},
2148209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (MaxCount),                "Max Count", 0},
2149209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (MinCount),                "Min Count", 0},
2150209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (Period),                  "Period", 0},
2151209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (Status),                  "Status (decoded below)", 0},
2152209746Sjkim
2153209746Sjkim    /* Status Flags byte 0 */
2154209746Sjkim
2155209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_WDDT_FLAG_OFFSET (Status,0),           "Available", 0},
2156209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_WDDT_FLAG_OFFSET (Status,0),           "Active", 0},
2157209746Sjkim    {ACPI_DMT_FLAG2,    ACPI_WDDT_FLAG_OFFSET (Status,0),           "OS Owns", 0},
2158209746Sjkim
2159209746Sjkim    /* Status Flags byte 1 */
2160209746Sjkim
2161209746Sjkim    {ACPI_DMT_FLAG3,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "User Reset", 0},
2162209746Sjkim    {ACPI_DMT_FLAG4,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "Timeout Reset", 0},
2163209746Sjkim    {ACPI_DMT_FLAG5,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "Power Fail Reset", 0},
2164209746Sjkim    {ACPI_DMT_FLAG6,    ACPI_WDDT_FLAG_OFFSET (Status,1),           "Unknown Reset", 0},
2165209746Sjkim
2166209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDDT_OFFSET (Capability),              "Capability (decoded below)", 0},
2167209746Sjkim
2168209746Sjkim    /* Capability Flags byte 0 */
2169209746Sjkim
2170209746Sjkim    {ACPI_DMT_FLAG0,    ACPI_WDDT_FLAG_OFFSET (Capability,0),       "Auto Reset", 0},
2171209746Sjkim    {ACPI_DMT_FLAG1,    ACPI_WDDT_FLAG_OFFSET (Capability,0),       "Timeout Alert", 0},
2172209746Sjkim    ACPI_DMT_TERMINATOR
2173209746Sjkim};
2174209746Sjkim
2175209746Sjkim
2176209746Sjkim/*******************************************************************************
2177209746Sjkim *
2178167802Sjkim * WDRT - Watchdog Resource Table
2179167802Sjkim *
2180167802Sjkim ******************************************************************************/
2181167802Sjkim
2182167802SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoWdrt[] =
2183167802Sjkim{
2184209746Sjkim    {ACPI_DMT_GAS,      ACPI_WDRT_OFFSET (ControlRegister),         "Control Register", 0},
2185209746Sjkim    {ACPI_DMT_GAS,      ACPI_WDRT_OFFSET (CountRegister),           "Count Register", 0},
2186209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDRT_OFFSET (PciDeviceId),             "PCI Device ID", 0},
2187209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDRT_OFFSET (PciVendorId),             "PCI Vendor ID", 0},
2188209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciBus),                  "PCI Bus", 0},
2189209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciDevice),               "PCI Device", 0},
2190209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciFunction),             "PCI Function", 0},
2191209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (PciSegment),              "PCI Segment", 0},
2192209746Sjkim    {ACPI_DMT_UINT16,   ACPI_WDRT_OFFSET (MaxCount),                "Max Count", 0},
2193209746Sjkim    {ACPI_DMT_UINT8,    ACPI_WDRT_OFFSET (Units),                   "Counter Units", 0},
2194209746Sjkim    ACPI_DMT_TERMINATOR
2195167802Sjkim};
2196217365Sjkim
2197228110Sjkim/*! [Begin] no source code translation */
2198228110Sjkim
2199217365Sjkim/*
2200228110Sjkim * Generic types (used in UEFI and custom tables)
2201217365Sjkim *
2202217365Sjkim * Examples:
2203217365Sjkim *
2204217365Sjkim *     Buffer : cc 04 ff bb
2205217365Sjkim *      UINT8 : 11
2206217365Sjkim *     UINT16 : 1122
2207217365Sjkim *     UINT24 : 112233
2208217365Sjkim *     UINT32 : 11223344
2209217365Sjkim *     UINT56 : 11223344556677
2210217365Sjkim *     UINT64 : 1122334455667788
2211217365Sjkim *
2212217365Sjkim *     String : "This is string"
2213217365Sjkim *    Unicode : "This string encoded to Unicode"
2214217365Sjkim *
2215217365Sjkim *       GUID : 11223344-5566-7788-99aa-bbccddeeff00
2216217365Sjkim * DevicePath : "\PciRoot(0)\Pci(0x1f,1)\Usb(0,0)"
2217217365Sjkim */
2218217365Sjkim
2219228110Sjkim#define ACPI_DM_GENERIC_ENTRY(FieldType, FieldName) \
2220217365Sjkim    {{FieldType, 0, FieldName, 0}, ACPI_DMT_TERMINATOR}
2221217365Sjkim
2222217365SjkimACPI_DMTABLE_INFO           AcpiDmTableInfoGeneric[][2] =
2223217365Sjkim{
2224217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT8,      "UINT8"),
2225217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT16,     "UINT16"),
2226217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT24,     "UINT24"),
2227217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT32,     "UINT32"),
2228228110Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT40,     "UINT40"),
2229228110Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT48,     "UINT48"),
2230217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT56,     "UINT56"),
2231217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UINT64,     "UINT64"),
2232217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_STRING,     "String"),
2233217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UNICODE,    "Unicode"),
2234217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_BUFFER,     "Buffer"),
2235217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_UUID,       "GUID"),
2236217365Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_STRING,     "DevicePath"),
2237218590Sjkim    ACPI_DM_GENERIC_ENTRY (ACPI_DMT_LABEL,      "Label"),
2238217365Sjkim    {ACPI_DMT_TERMINATOR}
2239217365Sjkim};
2240228110Sjkim/*! [End] no source code translation !*/
2241