1 /****************************************************************************** 2 * 3 * Name: acdisasm.h - AML disassembler 4 * 5 *****************************************************************************/ 6 7 /* 8 * Copyright (C) 2000 - 2026, Intel Corp. 9 * All rights reserved. 10 * 11 * Redistribution and use in source and binary forms, with or without 12 * modification, are permitted provided that the following conditions 13 * are met: 14 * 1. Redistributions of source code must retain the above copyright 15 * notice, this list of conditions, and the following disclaimer, 16 * without modification. 17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18 * substantially similar to the "NO WARRANTY" disclaimer below 19 * ("Disclaimer") and any redistribution must be conditioned upon 20 * including a substantially similar Disclaimer requirement for further 21 * binary redistribution. 22 * 3. Neither the names of the above-listed copyright holders nor the names 23 * of any contributors may be used to endorse or promote products derived 24 * from this software without specific prior written permission. 25 * 26 * Alternatively, this software may be distributed under the terms of the 27 * GNU General Public License ("GPL") version 2 as published by the Free 28 * Software Foundation. 29 * 30 * NO WARRANTY 31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41 * POSSIBILITY OF SUCH DAMAGES. 42 */ 43 44 #ifndef __ACDISASM_H__ 45 #define __ACDISASM_H__ 46 47 #include "amlresrc.h" 48 49 50 #define BLOCK_NONE 0 51 #define BLOCK_PAREN 1 52 #define BLOCK_BRACE 2 53 #define BLOCK_COMMA_LIST 4 54 #define ACPI_DEFAULT_RESNAME *(const UINT32 *) "__RD" 55 56 /* 57 * Raw table data header. Used by disassembler and data table compiler. 58 * Do not change. 59 */ 60 #define ACPI_RAW_TABLE_DATA_HEADER "Raw Table Data" 61 62 63 typedef struct acpi_dmtable_info 64 { 65 UINT8 Opcode; 66 UINT16 Offset; 67 char *Name; 68 UINT8 Flags; 69 70 } ACPI_DMTABLE_INFO; 71 72 /* Values for Flags field above */ 73 74 #define DT_LENGTH 0x01 /* Field is a subtable length */ 75 #define DT_FLAG 0x02 /* Field is a flag value */ 76 #define DT_NON_ZERO 0x04 /* Field must be non-zero */ 77 #define DT_OPTIONAL 0x08 /* Field is optional */ 78 #define DT_DESCRIBES_OPTIONAL 0x10 /* Field describes an optional field (length, etc.) */ 79 #define DT_COUNT 0x20 /* Currently not used */ 80 81 /* 82 * Values for Opcode above. 83 * Note: 0-7 must not change, they are used as a flag shift value. Other 84 * than those, new values can be added wherever appropriate. 85 */ 86 typedef enum 87 { 88 /* Simple Data Types */ 89 90 ACPI_DMT_FLAG0 = 0, 91 ACPI_DMT_FLAG1 = 1, 92 ACPI_DMT_FLAG2 = 2, 93 ACPI_DMT_FLAG3 = 3, 94 ACPI_DMT_FLAG4 = 4, 95 ACPI_DMT_FLAG5 = 5, 96 ACPI_DMT_FLAG6 = 6, 97 ACPI_DMT_FLAG7 = 7, 98 ACPI_DMT_FLAGS0, 99 ACPI_DMT_FLAGS1, 100 ACPI_DMT_FLAGS2, 101 ACPI_DMT_FLAGS8_2, 102 ACPI_DMT_FLAGS4, 103 ACPI_DMT_FLAGS4_0, 104 ACPI_DMT_FLAGS4_4, 105 ACPI_DMT_FLAGS4_8, 106 ACPI_DMT_FLAGS4_12, 107 ACPI_DMT_FLAGS16_16, 108 ACPI_DMT_UINT8, 109 ACPI_DMT_UINT16, 110 ACPI_DMT_UINT24, 111 ACPI_DMT_UINT32, 112 ACPI_DMT_UINT40, 113 ACPI_DMT_UINT48, 114 ACPI_DMT_UINT56, 115 ACPI_DMT_UINT64, 116 ACPI_DMT_BUF7, 117 ACPI_DMT_BUF10, 118 ACPI_DMT_BUF11, 119 ACPI_DMT_BUF12, 120 ACPI_DMT_BUF16, 121 ACPI_DMT_BUF18, 122 ACPI_DMT_BUF24, 123 ACPI_DMT_BUF26, 124 ACPI_DMT_BUF32, 125 ACPI_DMT_BUF112, 126 ACPI_DMT_BUF128, 127 ACPI_DMT_SIG, 128 ACPI_DMT_STRING, 129 ACPI_DMT_NAME4, 130 ACPI_DMT_NAME6, 131 ACPI_DMT_NAME8, 132 133 /* Types that are decoded to strings and miscellaneous */ 134 135 ACPI_DMT_ACCWIDTH, 136 ACPI_DMT_CHKSUM, 137 ACPI_DMT_GAS, 138 ACPI_DMT_SPACEID, 139 ACPI_DMT_UNICODE, 140 ACPI_DMT_UUID, 141 142 /* Types used only for the Data Table Compiler */ 143 144 ACPI_DMT_BUFFER, 145 ACPI_DMT_RAW_BUFFER, /* Large, multiple line buffer */ 146 ACPI_DMT_DEVICE_PATH, 147 ACPI_DMT_LABEL, 148 ACPI_DMT_PCI_PATH, 149 150 /* Types that are specific to particular ACPI tables */ 151 152 ACPI_DMT_AEST, 153 ACPI_DMT_AEST_CACHE, 154 ACPI_DMT_AEST_GIC, 155 ACPI_DMT_AEST_RES, 156 ACPI_DMT_AEST_XFACE, 157 ACPI_DMT_AEST_XRUPT, 158 ACPI_DMT_AGDI, 159 ACPI_DMT_ASF, 160 ACPI_DMT_ASPT, 161 ACPI_DMT_CDAT, 162 ACPI_DMT_CEDT, 163 ACPI_DMT_DMAR, 164 ACPI_DMT_DMAR_SCOPE, 165 ACPI_DMT_EINJACT, 166 ACPI_DMT_EINJINST, 167 ACPI_DMT_ERDT, 168 ACPI_DMT_ERSTACT, 169 ACPI_DMT_ERSTINST, 170 ACPI_DMT_FADTPM, 171 ACPI_DMT_GTDT, 172 ACPI_DMT_HEST, 173 ACPI_DMT_HESTNTFY, 174 ACPI_DMT_HESTNTYP, 175 ACPI_DMT_HMAT, 176 ACPI_DMT_IORTMEM, 177 ACPI_DMT_IOVT, 178 ACPI_DMT_IOVTDEV, 179 ACPI_DMT_IVRS, 180 ACPI_DMT_IVRS_DE, 181 ACPI_DMT_IVRS_UNTERMINATED_STRING, 182 ACPI_DMT_LPIT, 183 ACPI_DMT_MADT, 184 ACPI_DMT_MPAM_LOCATOR, 185 ACPI_DMT_NFIT, 186 ACPI_DMT_NHLT1, 187 ACPI_DMT_NHLT1a, 188 ACPI_DMT_NHLT1b, 189 ACPI_DMT_NHLT1c, 190 ACPI_DMT_NHLT1d, 191 ACPI_DMT_NHLT1e, 192 ACPI_DMT_NHLT1f, 193 ACPI_DMT_PCCT, 194 ACPI_DMT_PHAT, 195 ACPI_DMT_PMTT, 196 ACPI_DMT_PMTT_VENDOR, 197 ACPI_DMT_PPTT, 198 ACPI_DMT_RGRT, 199 ACPI_DMT_RHCT, 200 ACPI_DMT_RIMT, 201 ACPI_DMT_SDEI, 202 ACPI_DMT_SDEV, 203 ACPI_DMT_SLIC, 204 ACPI_DMT_SRAT, 205 ACPI_DMT_SWFT, 206 ACPI_DMT_TPM2, 207 ACPI_DMT_VIOT, 208 ACPI_DMT_WPBT_UNICODE, 209 210 /* Special opcodes */ 211 212 ACPI_DMT_EXTRA_TEXT, 213 ACPI_DMT_EXIT 214 215 } ACPI_ENTRY_TYPES; 216 217 typedef 218 void (*ACPI_DMTABLE_HANDLER) ( 219 ACPI_TABLE_HEADER *Table); 220 221 typedef 222 ACPI_STATUS (*ACPI_CMTABLE_HANDLER) ( 223 void **PFieldList); 224 225 typedef struct acpi_dmtable_data 226 { 227 char *Signature; 228 ACPI_DMTABLE_INFO *TableInfo; 229 ACPI_DMTABLE_HANDLER TableHandler; 230 ACPI_CMTABLE_HANDLER CmTableHandler; 231 const unsigned char *Template; 232 233 } ACPI_DMTABLE_DATA; 234 235 236 typedef struct acpi_op_walk_info 237 { 238 ACPI_WALK_STATE *WalkState; 239 ACPI_PARSE_OBJECT *MappingOp; 240 UINT8 *PreviousAml; 241 UINT8 *StartAml; 242 UINT32 Level; 243 UINT32 LastLevel; 244 UINT32 Count; 245 UINT32 BitOffset; 246 UINT32 Flags; 247 UINT32 AmlOffset; 248 249 } ACPI_OP_WALK_INFO; 250 251 /* 252 * TBD - another copy of this is in asltypes.h, fix 253 */ 254 #ifndef ASL_WALK_CALLBACK_DEFINED 255 typedef 256 ACPI_STATUS (*ASL_WALK_CALLBACK) ( 257 ACPI_PARSE_OBJECT *Op, 258 UINT32 Level, 259 void *Context); 260 #define ASL_WALK_CALLBACK_DEFINED 261 #endif 262 263 typedef 264 void (*ACPI_RESOURCE_HANDLER) ( 265 ACPI_OP_WALK_INFO *Info, 266 AML_RESOURCE *Resource, 267 UINT32 Length, 268 UINT32 Level); 269 270 typedef struct acpi_resource_tag 271 { 272 UINT32 BitIndex; 273 char *Tag; 274 275 } ACPI_RESOURCE_TAG; 276 277 /* Strings used for decoding flags to ASL keywords */ 278 279 extern const char *AcpiGbl_WordDecode[]; 280 extern const char *AcpiGbl_IrqDecode[]; 281 extern const char *AcpiGbl_LockRule[]; 282 extern const char *AcpiGbl_AccessTypes[]; 283 extern const char *AcpiGbl_UpdateRules[]; 284 extern const char *AcpiGbl_MatchOps[]; 285 286 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestHdr[]; 287 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestProcError[]; 288 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestCacheRsrc[]; 289 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestTlbRsrc[]; 290 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestGenRsrc[]; 291 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestMemError[]; 292 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestSmmuError[]; 293 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestVendorError[]; 294 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestVendorV2Error[]; 295 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestGicError[]; 296 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestPCIeError[]; 297 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestProxyError[]; 298 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXface[]; 299 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXfaceHeader[]; 300 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXface4k[]; 301 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXface16k[]; 302 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXface64k[]; 303 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXrupt[]; 304 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXruptV2[]; 305 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAgdi[]; 306 extern ACPI_DMTABLE_INFO AcpiDmTableInfoApmtNode[]; 307 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf0[]; 308 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf1[]; 309 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf1a[]; 310 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf2[]; 311 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf2a[]; 312 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf3[]; 313 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf4[]; 314 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsfHdr[]; 315 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt[]; 316 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsptHdr[]; 317 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt0[]; 318 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt1[]; 319 extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt2[]; 320 extern ACPI_DMTABLE_INFO AcpiDmTableInfoBdat[]; 321 extern ACPI_DMTABLE_INFO AcpiDmTableInfoBoot[]; 322 extern ACPI_DMTABLE_INFO AcpiDmTableInfoBert[]; 323 extern ACPI_DMTABLE_INFO AcpiDmTableInfoBgrt[]; 324 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCcel[]; 325 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdatTableHdr[]; 326 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdatHeader[]; 327 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdat0[]; 328 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdat1[]; 329 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdat2[]; 330 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdat3[]; 331 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdat4[]; 332 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdat5[]; 333 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCdatEntries[]; 334 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedtHdr[]; 335 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt0[]; 336 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt1[]; 337 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt1_te[]; 338 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt2[]; 339 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt2_te[]; 340 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCpep[]; 341 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCpep0[]; 342 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt0[]; 343 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt1[]; 344 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt2[]; 345 extern ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt2a[]; 346 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbg2[]; 347 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbg2Device[]; 348 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbg2Addr[]; 349 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbg2Size[]; 350 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbg2Name[]; 351 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbg2OemData[]; 352 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDbgp[]; 353 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar[]; 354 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmarHdr[]; 355 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmarScope[]; 356 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar0[]; 357 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar1[]; 358 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar2[]; 359 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar3[]; 360 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar4[]; 361 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar5[]; 362 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar6[]; 363 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm[]; 364 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm0[]; 365 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm0a[]; 366 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm1[]; 367 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm1a[]; 368 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm2[]; 369 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtpr[]; 370 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprInstance[]; 371 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprArr[]; 372 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprSerializeReq0[]; 373 extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprSerializeReq1[]; 374 extern ACPI_DMTABLE_INFO AcpiDmTableInfoEcdt[]; 375 extern ACPI_DMTABLE_INFO AcpiDmTableInfoEinj[]; 376 extern ACPI_DMTABLE_INFO AcpiDmTableInfoEinj0[]; 377 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdt[]; 378 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtHdr[]; 379 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtCacd[]; 380 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtCacdX2apic[]; 381 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtCarc[]; 382 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtCard[]; 383 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtCmrc[]; 384 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtCmrd[]; 385 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtDacd[]; 386 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtDacdPath[]; 387 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtDacdScope[]; 388 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtIbad[]; 389 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtIbrd[]; 390 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtIbrdCorrFactor[]; 391 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtMarc[]; 392 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtMmrc[]; 393 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtMmrcCorrFactor[]; 394 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErdtRmdd[]; 395 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErst[]; 396 extern ACPI_DMTABLE_INFO AcpiDmTableInfoErst0[]; 397 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFacs[]; 398 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFadt1[]; 399 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFadt2[]; 400 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFadt3[]; 401 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFadt5[]; 402 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFadt6[]; 403 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFpdt[]; 404 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFpdtHdr[]; 405 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFpdt0[]; 406 extern ACPI_DMTABLE_INFO AcpiDmTableInfoFpdt1[]; 407 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGas[]; 408 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGtdt[]; 409 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGtdtHdr[]; 410 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGtdtEl2[]; 411 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGtdt0[]; 412 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGtdt0a[]; 413 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGtdt1[]; 414 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHeader[]; 415 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest[]; 416 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest0[]; 417 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest1[]; 418 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest2[]; 419 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest6[]; 420 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest7[]; 421 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest8[]; 422 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest9[]; 423 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest10[]; 424 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHest11[]; 425 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHestNotify[]; 426 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHestBank[]; 427 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHpet[]; 428 extern ACPI_DMTABLE_INFO AcpiDmTableInfoLpitHdr[]; 429 extern ACPI_DMTABLE_INFO AcpiDmTableInfoLpit0[]; 430 extern ACPI_DMTABLE_INFO AcpiDmTableInfoLpit1[]; 431 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat[]; 432 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat0[]; 433 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat1[]; 434 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat1a[]; 435 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat1b[]; 436 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat1c[]; 437 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat2[]; 438 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmat2a[]; 439 extern ACPI_DMTABLE_INFO AcpiDmTableInfoHmatHdr[]; 440 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort[]; 441 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort0[]; 442 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort0a[]; 443 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort1[]; 444 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort1a[]; 445 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort2[]; 446 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort3[]; 447 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort3a[]; 448 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort3b[]; 449 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort3c[]; 450 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort4[]; 451 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort5[]; 452 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort6[]; 453 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort6a[]; 454 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIort7[]; 455 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIortAcc[]; 456 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIortHdr[]; 457 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIortHdr3[]; 458 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIortMap[]; 459 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIortPad[]; 460 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIovt[]; 461 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIovt0[]; 462 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIovtdev[]; 463 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrs[]; 464 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsHware1[]; 465 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsHware23[]; 466 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsMemory[]; 467 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrs4[]; 468 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrs8a[]; 469 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrs8b[]; 470 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrs8c[]; 471 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsCidString[]; 472 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsCidInteger[]; 473 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsHid[]; 474 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsUidString[]; 475 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsUidInteger[]; 476 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsHidString[]; 477 extern ACPI_DMTABLE_INFO AcpiDmTableInfoIvrsHidInteger[]; 478 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt[]; 479 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt0[]; 480 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt1[]; 481 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt2[]; 482 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt3[]; 483 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt4[]; 484 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt5[]; 485 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt6[]; 486 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt7[]; 487 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt8[]; 488 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt9[]; 489 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt10[]; 490 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt11[]; 491 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt11a[]; 492 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt11b[]; 493 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt12[]; 494 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt13[]; 495 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt14[]; 496 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt14a[]; 497 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt15[]; 498 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt15a[]; 499 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt16[]; 500 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt17[]; 501 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt18[]; 502 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt19[]; 503 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt20[]; 504 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt21[]; 505 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt22[]; 506 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt23[]; 507 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt24[]; 508 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt25[]; 509 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt26[]; 510 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt27[]; 511 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt28[]; 512 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt29[]; 513 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt30[]; 514 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt128[]; 515 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadtHdr[]; 516 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMcfg[]; 517 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMcfg0[]; 518 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMchi[]; 519 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam0[]; 520 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1[]; 521 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1A[]; 522 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1B[]; 523 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1C[]; 524 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1D[]; 525 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1E[]; 526 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1F[]; 527 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1G[]; 528 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1Deps[]; 529 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam2[]; 530 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst[]; 531 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst0[]; 532 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst0A[]; 533 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst0B[]; 534 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst1[]; 535 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst2[]; 536 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMrrm[]; 537 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMrrm0[]; 538 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMsct[]; 539 extern ACPI_DMTABLE_INFO AcpiDmTableInfoMsct0[]; 540 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit[]; 541 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfitHdr[]; 542 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit0[]; 543 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit1[]; 544 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit2[]; 545 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit2a[]; 546 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit3[]; 547 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit3a[]; 548 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit4[]; 549 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit5[]; 550 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit6[]; 551 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit6a[]; 552 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNfit7[]; 553 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt[]; 554 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt0[]; 555 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt1[]; 556 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt2[]; 557 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt3[]; 558 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt3a[]; 559 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt4[]; 560 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5[]; 561 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5a[]; 562 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5b[]; 563 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5c[]; 564 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6[]; 565 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6a[]; 566 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6b[]; 567 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7[]; 568 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7a[]; 569 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7b[]; 570 extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt9[]; 571 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhatHdr[]; 572 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat0[]; 573 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat0a[]; 574 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat1[]; 575 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat1a[]; 576 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat1b[]; 577 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPmtt[]; 578 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPmtt0[]; 579 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPmtt1[]; 580 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPmtt2[]; 581 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPmttVendor[]; 582 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPmttHdr[]; 583 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct[]; 584 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcctHdr[]; 585 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct0[]; 586 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct1[]; 587 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct2[]; 588 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct3[]; 589 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct4[]; 590 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPcct5[]; 591 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPdtt[]; 592 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPdtt0[]; 593 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPptt0[]; 594 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPptt0a[]; 595 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPptt1[]; 596 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPptt1a[]; 597 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPptt2[]; 598 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPpttHdr[]; 599 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPrmtHdr[]; 600 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPrmtModule[]; 601 extern ACPI_DMTABLE_INFO AcpiDmTableInfoPrmtHandler[]; 602 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRasf[]; 603 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRas2[]; 604 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRas2PccDesc[]; 605 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRgrt[]; 606 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRgrt0[]; 607 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhct[]; 608 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctNodeHdr[]; 609 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctIsa1[]; 610 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctIsaPad[]; 611 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctCmo1[]; 612 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctMmu1[]; 613 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctHartInfo1[]; 614 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctHartInfo2[]; 615 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimt[]; 616 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtNodeHdr[]; 617 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtIommu[]; 618 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtIommuWire[]; 619 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtPcieRc[]; 620 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtIdMapping[]; 621 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtPlatDev[]; 622 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRimtPlatDevPad[]; 623 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRsdp1[]; 624 extern ACPI_DMTABLE_INFO AcpiDmTableInfoRsdp2[]; 625 extern ACPI_DMTABLE_INFO AcpiDmTableInfoS3pt[]; 626 extern ACPI_DMTABLE_INFO AcpiDmTableInfoS3ptHdr[]; 627 extern ACPI_DMTABLE_INFO AcpiDmTableInfoS3pt0[]; 628 extern ACPI_DMTABLE_INFO AcpiDmTableInfoS3pt1[]; 629 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSbst[]; 630 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdei[]; 631 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev[]; 632 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdevHdr[]; 633 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev0[]; 634 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev0a[]; 635 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev0b[]; 636 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdevSecCompHdr[]; 637 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdevSecCompId[]; 638 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdevSecCompMem[]; 639 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev1[]; 640 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev1a[]; 641 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSdev1b[]; 642 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSlic[]; 643 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSlit[]; 644 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSpcr[]; 645 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSpmi[]; 646 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat[]; 647 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSratHdr[]; 648 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat0[]; 649 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat1[]; 650 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat2[]; 651 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat3[]; 652 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat4[]; 653 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat5[]; 654 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat6[]; 655 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSrat7[]; 656 extern ACPI_DMTABLE_INFO AcpiDmTableInfoStao[]; 657 extern ACPI_DMTABLE_INFO AcpiDmTableInfoStaoStr[]; 658 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSvkl[]; 659 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSvkl0[]; 660 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSwft[]; 661 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSwftFileHdr[]; 662 extern ACPI_DMTABLE_INFO AcpiDmTableInfoSwftFileData[]; 663 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaHdr[]; 664 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaClient[]; 665 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaServer[]; 666 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTdel[]; 667 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm2[]; 668 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm2a[]; 669 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm211[]; 670 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm23[]; 671 extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm23a[]; 672 extern ACPI_DMTABLE_INFO AcpiDmTableInfoUefi[]; 673 extern ACPI_DMTABLE_INFO AcpiDmTableInfoViot[]; 674 extern ACPI_DMTABLE_INFO AcpiDmTableInfoViotHeader[]; 675 extern ACPI_DMTABLE_INFO AcpiDmTableInfoViot1[]; 676 extern ACPI_DMTABLE_INFO AcpiDmTableInfoViot2[]; 677 extern ACPI_DMTABLE_INFO AcpiDmTableInfoViot3[]; 678 extern ACPI_DMTABLE_INFO AcpiDmTableInfoViot4[]; 679 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWaet[]; 680 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWdat[]; 681 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWdat0[]; 682 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWddt[]; 683 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWdrt[]; 684 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWpbt[]; 685 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWpbt0[]; 686 extern ACPI_DMTABLE_INFO AcpiDmTableInfoWsmt[]; 687 extern ACPI_DMTABLE_INFO AcpiDmTableInfoXenv[]; 688 689 extern ACPI_DMTABLE_INFO AcpiDmTableInfoGeneric[][2]; 690 691 /* 692 * dmtable and ahtable 693 */ 694 extern const ACPI_DMTABLE_DATA AcpiDmTableData[]; 695 extern const AH_TABLE AcpiGbl_SupportedTables[]; 696 697 UINT8 698 AcpiDmGenerateChecksum ( 699 void *Table, 700 UINT32 Length, 701 UINT8 OriginalChecksum); 702 703 const ACPI_DMTABLE_DATA * 704 AcpiDmGetTableData ( 705 char *Signature); 706 707 void 708 AcpiDmDumpDataTable ( 709 ACPI_TABLE_HEADER *Table); 710 711 ACPI_STATUS 712 AcpiDmDumpTable ( 713 UINT32 TableLength, 714 UINT32 TableOffset, 715 void *Table, 716 UINT32 SubtableLength, 717 ACPI_DMTABLE_INFO *Info); 718 719 void 720 AcpiDmLineHeader ( 721 UINT32 Offset, 722 UINT32 ByteLength, 723 char *Name); 724 725 void 726 AcpiDmLineHeader2 ( 727 UINT32 Offset, 728 UINT32 ByteLength, 729 char *Name, 730 UINT32 Value); 731 732 733 /* 734 * dmtbdump 735 */ 736 void 737 AcpiDmDumpBuffer ( 738 void *Table, 739 UINT32 BufferOffset, 740 UINT32 Length, 741 UINT32 AbsoluteOffset, 742 char *Header); 743 744 void 745 AcpiDmDumpUnicode ( 746 void *Table, 747 UINT32 BufferOffset, 748 UINT32 ByteLength); 749 750 void 751 AcpiDmDumpAest ( 752 ACPI_TABLE_HEADER *Table); 753 754 void 755 AcpiDmDumpApmt ( 756 ACPI_TABLE_HEADER *Table); 757 758 void 759 AcpiDmDumpAsf ( 760 ACPI_TABLE_HEADER *Table); 761 762 void 763 AcpiDmDumpAspt ( 764 ACPI_TABLE_HEADER *Table); 765 766 void 767 AcpiDmDumpCcel ( 768 ACPI_TABLE_HEADER *Table); 769 770 void 771 AcpiDmDumpCdat ( 772 ACPI_TABLE_HEADER *Table); 773 774 void 775 AcpiDmDumpCedt ( 776 ACPI_TABLE_HEADER *Table); 777 778 void 779 AcpiDmDumpCpep ( 780 ACPI_TABLE_HEADER *Table); 781 782 void 783 AcpiDmDumpCsrt ( 784 ACPI_TABLE_HEADER *Table); 785 786 void 787 AcpiDmDumpDbg2 ( 788 ACPI_TABLE_HEADER *Table); 789 790 void 791 AcpiDmDumpDmar ( 792 ACPI_TABLE_HEADER *Table); 793 794 void 795 AcpiDmDumpDrtm ( 796 ACPI_TABLE_HEADER *Table); 797 798 void 799 AcpiDmDumpDtpr ( 800 ACPI_TABLE_HEADER *Table); 801 802 void 803 AcpiDmDumpEinj ( 804 ACPI_TABLE_HEADER *Table); 805 806 void 807 AcpiDmDumpErdt ( 808 ACPI_TABLE_HEADER *Table); 809 810 void 811 AcpiDmDumpErst ( 812 ACPI_TABLE_HEADER *Table); 813 814 void 815 AcpiDmDumpFadt ( 816 ACPI_TABLE_HEADER *Table); 817 818 void 819 AcpiDmDumpFpdt ( 820 ACPI_TABLE_HEADER *Table); 821 822 void 823 AcpiDmDumpGtdt ( 824 ACPI_TABLE_HEADER *Table); 825 826 void 827 AcpiDmDumpHest ( 828 ACPI_TABLE_HEADER *Table); 829 830 void 831 AcpiDmDumpHmat ( 832 ACPI_TABLE_HEADER *Table); 833 834 void 835 AcpiDmDumpIort ( 836 ACPI_TABLE_HEADER *Table); 837 838 void 839 AcpiDmDumpIovt ( 840 ACPI_TABLE_HEADER *Table); 841 842 void 843 AcpiDmDumpIvrs ( 844 ACPI_TABLE_HEADER *Table); 845 846 void 847 AcpiDmDumpLpit ( 848 ACPI_TABLE_HEADER *Table); 849 850 void 851 AcpiDmDumpMadt ( 852 ACPI_TABLE_HEADER *Table); 853 854 void 855 AcpiDmDumpMcfg ( 856 ACPI_TABLE_HEADER *Table); 857 858 void 859 AcpiDmDumpMpam ( 860 ACPI_TABLE_HEADER *Table); 861 862 void 863 AcpiDmDumpMpst ( 864 ACPI_TABLE_HEADER *Table); 865 866 void 867 AcpiDmDumpMrrm ( 868 ACPI_TABLE_HEADER *Table); 869 870 void 871 AcpiDmDumpMsct ( 872 ACPI_TABLE_HEADER *Table); 873 874 void 875 AcpiDmDumpNfit ( 876 ACPI_TABLE_HEADER *Table); 877 878 void 879 AcpiDmDumpNhlt ( 880 ACPI_TABLE_HEADER *Table); 881 882 void 883 AcpiDmDumpPcct ( 884 ACPI_TABLE_HEADER *Table); 885 886 void 887 AcpiDmDumpPdtt ( 888 ACPI_TABLE_HEADER *Table); 889 890 void 891 AcpiDmDumpPhat ( 892 ACPI_TABLE_HEADER *Table); 893 894 void 895 AcpiDmDumpPmtt ( 896 ACPI_TABLE_HEADER *Table); 897 898 void 899 AcpiDmDumpPptt ( 900 ACPI_TABLE_HEADER *Table); 901 902 void 903 AcpiDmDumpPrmt ( 904 ACPI_TABLE_HEADER *Table); 905 906 void 907 AcpiDmDumpRas2 ( 908 ACPI_TABLE_HEADER *Table); 909 910 void 911 AcpiDmDumpRgrt ( 912 ACPI_TABLE_HEADER *Table); 913 914 void 915 AcpiDmDumpRhct ( 916 ACPI_TABLE_HEADER *Table); 917 918 void 919 AcpiDmDumpRimt ( 920 ACPI_TABLE_HEADER *Table); 921 922 UINT32 923 AcpiDmDumpRsdp ( 924 ACPI_TABLE_HEADER *Table); 925 926 void 927 AcpiDmDumpRsdt ( 928 ACPI_TABLE_HEADER *Table); 929 930 UINT32 931 AcpiDmDumpS3pt ( 932 ACPI_TABLE_HEADER *Table); 933 934 void 935 AcpiDmDumpSdev ( 936 ACPI_TABLE_HEADER *Table); 937 938 void 939 AcpiDmDumpSlic ( 940 ACPI_TABLE_HEADER *Table); 941 942 void 943 AcpiDmDumpSlit ( 944 ACPI_TABLE_HEADER *Table); 945 946 void 947 AcpiDmDumpSrat ( 948 ACPI_TABLE_HEADER *Table); 949 950 void 951 AcpiDmDumpStao ( 952 ACPI_TABLE_HEADER *Table); 953 954 void 955 AcpiDmDumpSvkl ( 956 ACPI_TABLE_HEADER *Table); 957 958 void 959 AcpiDmDumpSwft ( 960 ACPI_TABLE_HEADER *Table); 961 962 void 963 AcpiDmDumpTcpa ( 964 ACPI_TABLE_HEADER *Table); 965 966 void 967 AcpiDmDumpTdel ( 968 ACPI_TABLE_HEADER *Table); 969 970 void 971 AcpiDmDumpTpm2 ( 972 ACPI_TABLE_HEADER *Table); 973 974 void 975 AcpiDmDumpViot ( 976 ACPI_TABLE_HEADER *Table); 977 978 void 979 AcpiDmDumpWdat ( 980 ACPI_TABLE_HEADER *Table); 981 982 void 983 AcpiDmDumpWpbt ( 984 ACPI_TABLE_HEADER *Table); 985 986 void 987 AcpiDmDumpXsdt ( 988 ACPI_TABLE_HEADER *Table); 989 990 991 /* 992 * dmwalk 993 */ 994 void 995 AcpiDmDisassemble ( 996 ACPI_WALK_STATE *WalkState, 997 ACPI_PARSE_OBJECT *Origin, 998 UINT32 NumOpcodes); 999 1000 void 1001 AcpiDmWalkParseTree ( 1002 ACPI_PARSE_OBJECT *Op, 1003 ASL_WALK_CALLBACK DescendingCallback, 1004 ASL_WALK_CALLBACK AscendingCallback, 1005 void *Context); 1006 1007 1008 /* 1009 * dmopcode 1010 */ 1011 void 1012 AcpiDmDisassembleOneOp ( 1013 ACPI_WALK_STATE *WalkState, 1014 ACPI_OP_WALK_INFO *Info, 1015 ACPI_PARSE_OBJECT *Op); 1016 1017 UINT32 1018 AcpiDmListType ( 1019 ACPI_PARSE_OBJECT *Op); 1020 1021 void 1022 AcpiDmMethodFlags ( 1023 ACPI_PARSE_OBJECT *Op); 1024 1025 void 1026 AcpiDmDisplayTargetPathname ( 1027 ACPI_PARSE_OBJECT *Op); 1028 1029 void 1030 AcpiDmNotifyDescription ( 1031 ACPI_PARSE_OBJECT *Op); 1032 1033 void 1034 AcpiDmPredefinedDescription ( 1035 ACPI_PARSE_OBJECT *Op); 1036 1037 void 1038 AcpiDmFieldPredefinedDescription ( 1039 ACPI_PARSE_OBJECT *Op); 1040 1041 void 1042 AcpiDmFieldFlags ( 1043 ACPI_PARSE_OBJECT *Op); 1044 1045 void 1046 AcpiDmAddressSpace ( 1047 UINT8 SpaceId); 1048 1049 void 1050 AcpiDmRegionFlags ( 1051 ACPI_PARSE_OBJECT *Op); 1052 1053 void 1054 AcpiDmMatchOp ( 1055 ACPI_PARSE_OBJECT *Op); 1056 1057 1058 /* 1059 * dmnames 1060 */ 1061 UINT32 1062 AcpiDmDumpName ( 1063 UINT32 Name); 1064 1065 ACPI_STATUS 1066 AcpiPsDisplayObjectPathname ( 1067 ACPI_WALK_STATE *WalkState, 1068 ACPI_PARSE_OBJECT *Op); 1069 1070 void 1071 AcpiDmNamestring ( 1072 char *Name); 1073 1074 1075 /* 1076 * dmbuffer 1077 */ 1078 void 1079 AcpiDmDisasmByteList ( 1080 UINT32 Level, 1081 UINT8 *ByteData, 1082 UINT32 ByteCount); 1083 1084 void 1085 AcpiDmByteList ( 1086 ACPI_OP_WALK_INFO *Info, 1087 ACPI_PARSE_OBJECT *Op); 1088 1089 void 1090 AcpiDmCheckForHardwareId ( 1091 ACPI_PARSE_OBJECT *Op); 1092 1093 void 1094 AcpiDmDecompressEisaId ( 1095 UINT32 EncodedId); 1096 1097 BOOLEAN 1098 AcpiDmIsUuidBuffer ( 1099 ACPI_PARSE_OBJECT *Op); 1100 1101 BOOLEAN 1102 AcpiDmIsUnicodeBuffer ( 1103 ACPI_PARSE_OBJECT *Op); 1104 1105 BOOLEAN 1106 AcpiDmIsStringBuffer ( 1107 ACPI_PARSE_OBJECT *Op); 1108 1109 BOOLEAN 1110 AcpiDmIsPldBuffer ( 1111 ACPI_PARSE_OBJECT *Op); 1112 1113 1114 /* 1115 * dmdeferred 1116 */ 1117 ACPI_STATUS 1118 AcpiDmParseDeferredOps ( 1119 ACPI_PARSE_OBJECT *Root); 1120 1121 1122 /* 1123 * dmextern 1124 */ 1125 ACPI_STATUS 1126 AcpiDmAddToExternalFileList ( 1127 char *PathList); 1128 1129 void 1130 AcpiDmClearExternalFileList ( 1131 void); 1132 1133 void 1134 AcpiDmAddOpToExternalList ( 1135 ACPI_PARSE_OBJECT *Op, 1136 char *Path, 1137 UINT8 Type, 1138 UINT32 Value, 1139 UINT16 Flags); 1140 1141 void 1142 AcpiDmCreateSubobjectForExternal ( 1143 UINT8 Type, 1144 ACPI_NAMESPACE_NODE **Node, 1145 UINT32 Value); 1146 1147 void 1148 AcpiDmAddNodeToExternalList ( 1149 ACPI_NAMESPACE_NODE *Node, 1150 UINT8 Type, 1151 UINT32 Value, 1152 UINT16 Flags); 1153 1154 void 1155 AcpiDmAddExternalListToNamespace ( 1156 void); 1157 1158 void 1159 AcpiDmAddOneExternalToNamespace ( 1160 char *Path, 1161 UINT8 Type, 1162 UINT32 Value); 1163 1164 UINT32 1165 AcpiDmGetUnresolvedExternalMethodCount ( 1166 void); 1167 1168 void 1169 AcpiDmClearExternalList ( 1170 void); 1171 1172 void 1173 AcpiDmEmitExternals ( 1174 void); 1175 1176 void 1177 AcpiDmEmitExternal ( 1178 ACPI_PARSE_OBJECT *NameOp, 1179 ACPI_PARSE_OBJECT *TypeOp); 1180 1181 void 1182 AcpiDmUnresolvedWarning ( 1183 UINT8 Type); 1184 1185 void 1186 AcpiDmGetExternalsFromFile ( 1187 void); 1188 1189 void 1190 AcpiDmMarkExternalConflict ( 1191 ACPI_NAMESPACE_NODE *Node); 1192 1193 1194 /* 1195 * dmresrc 1196 */ 1197 void 1198 AcpiDmDumpInteger8 ( 1199 UINT8 Value, 1200 const char *Name); 1201 1202 void 1203 AcpiDmDumpInteger16 ( 1204 UINT16 Value, 1205 const char *Name); 1206 1207 void 1208 AcpiDmDumpInteger32 ( 1209 UINT32 Value, 1210 const char *Name); 1211 1212 void 1213 AcpiDmDumpInteger64 ( 1214 UINT64 Value, 1215 const char *Name); 1216 1217 void 1218 AcpiDmResourceTemplate ( 1219 ACPI_OP_WALK_INFO *Info, 1220 ACPI_PARSE_OBJECT *Op, 1221 UINT8 *ByteData, 1222 UINT32 ByteCount); 1223 1224 ACPI_STATUS 1225 AcpiDmIsResourceTemplate ( 1226 ACPI_WALK_STATE *WalkState, 1227 ACPI_PARSE_OBJECT *Op); 1228 1229 void 1230 AcpiDmBitList ( 1231 UINT16 Mask); 1232 1233 void 1234 AcpiDmDescriptorName ( 1235 void); 1236 1237 1238 /* 1239 * dmresrcl 1240 */ 1241 void 1242 AcpiDmWordDescriptor ( 1243 ACPI_OP_WALK_INFO *Info, 1244 AML_RESOURCE *Resource, 1245 UINT32 Length, 1246 UINT32 Level); 1247 1248 void 1249 AcpiDmDwordDescriptor ( 1250 ACPI_OP_WALK_INFO *Info, 1251 AML_RESOURCE *Resource, 1252 UINT32 Length, 1253 UINT32 Level); 1254 1255 void 1256 AcpiDmExtendedDescriptor ( 1257 ACPI_OP_WALK_INFO *Info, 1258 AML_RESOURCE *Resource, 1259 UINT32 Length, 1260 UINT32 Level); 1261 1262 void 1263 AcpiDmQwordDescriptor ( 1264 ACPI_OP_WALK_INFO *Info, 1265 AML_RESOURCE *Resource, 1266 UINT32 Length, 1267 UINT32 Level); 1268 1269 void 1270 AcpiDmMemory24Descriptor ( 1271 ACPI_OP_WALK_INFO *Info, 1272 AML_RESOURCE *Resource, 1273 UINT32 Length, 1274 UINT32 Level); 1275 1276 void 1277 AcpiDmMemory32Descriptor ( 1278 ACPI_OP_WALK_INFO *Info, 1279 AML_RESOURCE *Resource, 1280 UINT32 Length, 1281 UINT32 Level); 1282 1283 void 1284 AcpiDmFixedMemory32Descriptor ( 1285 ACPI_OP_WALK_INFO *Info, 1286 AML_RESOURCE *Resource, 1287 UINT32 Length, 1288 UINT32 Level); 1289 1290 void 1291 AcpiDmGenericRegisterDescriptor ( 1292 ACPI_OP_WALK_INFO *Info, 1293 AML_RESOURCE *Resource, 1294 UINT32 Length, 1295 UINT32 Level); 1296 1297 void 1298 AcpiDmInterruptDescriptor ( 1299 ACPI_OP_WALK_INFO *Info, 1300 AML_RESOURCE *Resource, 1301 UINT32 Length, 1302 UINT32 Level); 1303 1304 void 1305 AcpiDmVendorLargeDescriptor ( 1306 ACPI_OP_WALK_INFO *Info, 1307 AML_RESOURCE *Resource, 1308 UINT32 Length, 1309 UINT32 Level); 1310 1311 void 1312 AcpiDmGpioDescriptor ( 1313 ACPI_OP_WALK_INFO *Info, 1314 AML_RESOURCE *Resource, 1315 UINT32 Length, 1316 UINT32 Level); 1317 1318 void 1319 AcpiDmPinFunctionDescriptor ( 1320 ACPI_OP_WALK_INFO *Info, 1321 AML_RESOURCE *Resource, 1322 UINT32 Length, 1323 UINT32 Level); 1324 1325 void 1326 AcpiDmPinConfigDescriptor ( 1327 ACPI_OP_WALK_INFO *Info, 1328 AML_RESOURCE *Resource, 1329 UINT32 Length, 1330 UINT32 Level); 1331 1332 void 1333 AcpiDmPinGroupDescriptor ( 1334 ACPI_OP_WALK_INFO *Info, 1335 AML_RESOURCE *Resource, 1336 UINT32 Length, 1337 UINT32 Level); 1338 1339 void 1340 AcpiDmPinGroupFunctionDescriptor ( 1341 ACPI_OP_WALK_INFO *Info, 1342 AML_RESOURCE *Resource, 1343 UINT32 Length, 1344 UINT32 Level); 1345 1346 void 1347 AcpiDmPinGroupConfigDescriptor ( 1348 ACPI_OP_WALK_INFO *Info, 1349 AML_RESOURCE *Resource, 1350 UINT32 Length, 1351 UINT32 Level); 1352 1353 void 1354 AcpiDmSerialBusDescriptor ( 1355 ACPI_OP_WALK_INFO *Info, 1356 AML_RESOURCE *Resource, 1357 UINT32 Length, 1358 UINT32 Level); 1359 1360 void 1361 AcpiDmVendorCommon ( 1362 const char *Name, 1363 UINT8 *ByteData, 1364 UINT32 Length, 1365 UINT32 Level); 1366 1367 void 1368 AcpiDmClockInputDescriptor ( 1369 ACPI_OP_WALK_INFO *Info, 1370 AML_RESOURCE *Resource, 1371 UINT32 Length, 1372 UINT32 Level); 1373 1374 /* 1375 * dmresrcs 1376 */ 1377 void 1378 AcpiDmIrqDescriptor ( 1379 ACPI_OP_WALK_INFO *Info, 1380 AML_RESOURCE *Resource, 1381 UINT32 Length, 1382 UINT32 Level); 1383 1384 void 1385 AcpiDmDmaDescriptor ( 1386 ACPI_OP_WALK_INFO *Info, 1387 AML_RESOURCE *Resource, 1388 UINT32 Length, 1389 UINT32 Level); 1390 1391 void 1392 AcpiDmFixedDmaDescriptor ( 1393 ACPI_OP_WALK_INFO *Info, 1394 AML_RESOURCE *Resource, 1395 UINT32 Length, 1396 UINT32 Level); 1397 1398 void 1399 AcpiDmIoDescriptor ( 1400 ACPI_OP_WALK_INFO *Info, 1401 AML_RESOURCE *Resource, 1402 UINT32 Length, 1403 UINT32 Level); 1404 1405 void 1406 AcpiDmFixedIoDescriptor ( 1407 ACPI_OP_WALK_INFO *Info, 1408 AML_RESOURCE *Resource, 1409 UINT32 Length, 1410 UINT32 Level); 1411 1412 void 1413 AcpiDmStartDependentDescriptor ( 1414 ACPI_OP_WALK_INFO *Info, 1415 AML_RESOURCE *Resource, 1416 UINT32 Length, 1417 UINT32 Level); 1418 1419 void 1420 AcpiDmEndDependentDescriptor ( 1421 ACPI_OP_WALK_INFO *Info, 1422 AML_RESOURCE *Resource, 1423 UINT32 Length, 1424 UINT32 Level); 1425 1426 void 1427 AcpiDmVendorSmallDescriptor ( 1428 ACPI_OP_WALK_INFO *Info, 1429 AML_RESOURCE *Resource, 1430 UINT32 Length, 1431 UINT32 Level); 1432 1433 1434 /* 1435 * dmutils 1436 */ 1437 void 1438 AcpiDmDecodeAttribute ( 1439 UINT8 Attribute); 1440 1441 void 1442 AcpiDmIndent ( 1443 UINT32 Level); 1444 1445 BOOLEAN 1446 AcpiDmCommaIfListMember ( 1447 ACPI_PARSE_OBJECT *Op); 1448 1449 void 1450 AcpiDmCommaIfFieldMember ( 1451 ACPI_PARSE_OBJECT *Op); 1452 1453 1454 /* 1455 * dmrestag 1456 */ 1457 void 1458 AcpiDmFindResources ( 1459 ACPI_PARSE_OBJECT *Root); 1460 1461 void 1462 AcpiDmCheckResourceReference ( 1463 ACPI_PARSE_OBJECT *Op, 1464 ACPI_WALK_STATE *WalkState); 1465 1466 1467 /* 1468 * dmcstyle 1469 */ 1470 BOOLEAN 1471 AcpiDmCheckForSymbolicOpcode ( 1472 ACPI_PARSE_OBJECT *Op, 1473 ACPI_OP_WALK_INFO *Info); 1474 1475 void 1476 AcpiDmCloseOperator ( 1477 ACPI_PARSE_OBJECT *Op); 1478 1479 1480 /* 1481 * dmtables 1482 */ 1483 ACPI_STATUS 1484 AcpiDmProcessSwitch ( 1485 ACPI_PARSE_OBJECT *Op); 1486 1487 void 1488 AcpiDmClearTempList( 1489 void); 1490 1491 /* 1492 * dmtables 1493 */ 1494 void 1495 AdDisassemblerHeader ( 1496 char *Filename, 1497 UINT8 TableType); 1498 1499 #define ACPI_IS_AML_TABLE 0 1500 #define ACPI_IS_DATA_TABLE 1 1501 1502 1503 /* 1504 * adisasm 1505 */ 1506 ACPI_STATUS 1507 AdAmlDisassemble ( 1508 BOOLEAN OutToFile, 1509 char *Filename, 1510 char *Prefix, 1511 char **OutFilename); 1512 1513 ACPI_STATUS 1514 AdGetLocalTables ( 1515 void); 1516 1517 ACPI_STATUS 1518 AdParseTable ( 1519 ACPI_TABLE_HEADER *Table, 1520 ACPI_OWNER_ID *OwnerId, 1521 BOOLEAN LoadTable, 1522 BOOLEAN External); 1523 1524 ACPI_STATUS 1525 AdDisplayTables ( 1526 char *Filename, 1527 ACPI_TABLE_HEADER *Table); 1528 1529 ACPI_STATUS 1530 AdDisplayStatistics ( 1531 void); 1532 1533 1534 /* 1535 * dmwalk 1536 */ 1537 UINT32 1538 AcpiDmBlockType ( 1539 ACPI_PARSE_OBJECT *Op); 1540 1541 1542 #endif /* __ACDISASM_H__ */ 1543