Home | History | Annotate | Line # | Download | only in include
      1 /******************************************************************************
      2  *
      3  * Name: acdisasm.h - AML disassembler
      4  *
      5  *****************************************************************************/
      6 
      7 /*
      8  * Copyright (C) 2000 - 2025, 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        AcpiDmTableInfoEcdt[];
    370 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEinj[];
    371 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEinj0[];
    372 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdt[];
    373 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtHdr[];
    374 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtCacd[];
    375 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtCacdX2apic[];
    376 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtCarc[];
    377 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtCard[];
    378 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtCmrc[];
    379 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtCmrd[];
    380 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtDacd[];
    381 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtDacdPath[];
    382 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtDacdScope[];
    383 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtIbad[];
    384 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtIbrd[];
    385 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtIbrdCorrFactor[];
    386 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtMarc[];
    387 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtMmrc[];
    388 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtMmrcCorrFactor[];
    389 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErdtRmdd[];
    390 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErst[];
    391 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErst0[];
    392 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFacs[];
    393 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt1[];
    394 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt2[];
    395 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt3[];
    396 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt5[];
    397 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt6[];
    398 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt[];
    399 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdtHdr[];
    400 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt0[];
    401 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt1[];
    402 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGas[];
    403 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt[];
    404 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdtHdr[];
    405 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdtEl2[];
    406 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt0[];
    407 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt0a[];
    408 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt1[];
    409 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHeader[];
    410 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest[];
    411 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest0[];
    412 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest1[];
    413 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest2[];
    414 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest6[];
    415 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest7[];
    416 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest8[];
    417 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest9[];
    418 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest10[];
    419 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest11[];
    420 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHestNotify[];
    421 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHestBank[];
    422 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHpet[];
    423 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpitHdr[];
    424 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpit0[];
    425 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpit1[];
    426 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat[];
    427 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat0[];
    428 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1[];
    429 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1a[];
    430 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1b[];
    431 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1c[];
    432 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat2[];
    433 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat2a[];
    434 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmatHdr[];
    435 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort[];
    436 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort0[];
    437 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort0a[];
    438 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort1[];
    439 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort1a[];
    440 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort2[];
    441 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3[];
    442 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3a[];
    443 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3b[];
    444 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3c[];
    445 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort4[];
    446 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort5[];
    447 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort6[];
    448 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort6a[];
    449 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort7[];
    450 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortAcc[];
    451 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortHdr[];
    452 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortHdr3[];
    453 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortMap[];
    454 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortPad[];
    455 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIovt[];
    456 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIovt0[];
    457 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIovtdev[];
    458 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs[];
    459 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHware1[];
    460 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHware23[];
    461 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsMemory[];
    462 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs4[];
    463 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8a[];
    464 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8b[];
    465 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8c[];
    466 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsCidString[];
    467 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsCidInteger[];
    468 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHid[];
    469 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsUidString[];
    470 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsUidInteger[];
    471 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHidString[];
    472 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHidInteger[];
    473 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt[];
    474 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt0[];
    475 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt1[];
    476 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt2[];
    477 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt3[];
    478 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt4[];
    479 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt5[];
    480 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt6[];
    481 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt7[];
    482 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt8[];
    483 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt9[];
    484 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt10[];
    485 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11[];
    486 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11a[];
    487 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11b[];
    488 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt12[];
    489 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt13[];
    490 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt14[];
    491 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt14a[];
    492 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt15[];
    493 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt15a[];
    494 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt16[];
    495 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt17[];
    496 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt18[];
    497 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt19[];
    498 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt20[];
    499 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt21[];
    500 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt22[];
    501 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt23[];
    502 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt24[];
    503 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt25[];
    504 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt26[];
    505 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt27[];
    506 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt28[];
    507 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt29[];
    508 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt30[];
    509 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt128[];
    510 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadtHdr[];
    511 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMcfg[];
    512 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMcfg0[];
    513 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMchi[];
    514 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam0[];
    515 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1[];
    516 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1A[];
    517 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1B[];
    518 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1C[];
    519 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1D[];
    520 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1E[];
    521 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1F[];
    522 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1G[];
    523 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam1Deps[];
    524 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpam2[];
    525 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst[];
    526 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0[];
    527 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0A[];
    528 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0B[];
    529 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst1[];
    530 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst2[];
    531 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMrrm[];
    532 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMrrm0[];
    533 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMsct[];
    534 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMsct0[];
    535 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit[];
    536 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfitHdr[];
    537 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit0[];
    538 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit1[];
    539 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit2[];
    540 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit2a[];
    541 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit3[];
    542 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit3a[];
    543 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit4[];
    544 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit5[];
    545 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6[];
    546 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6a[];
    547 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit7[];
    548 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt[];
    549 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt0[];
    550 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt1[];
    551 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt2[];
    552 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt3[];
    553 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt3a[];
    554 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt4[];
    555 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5[];
    556 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5a[];
    557 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5b[];
    558 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5c[];
    559 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt6[];
    560 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt6a[];
    561 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt6b[];
    562 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt7[];
    563 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt7a[];
    564 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt7b[];
    565 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt9[];
    566 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhatHdr[];
    567 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat0[];
    568 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat0a[];
    569 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat1[];
    570 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat1a[];
    571 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat1b[];
    572 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt[];
    573 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt0[];
    574 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt1[];
    575 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt2[];
    576 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmttVendor[];
    577 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmttHdr[];
    578 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct[];
    579 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcctHdr[];
    580 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct0[];
    581 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct1[];
    582 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct2[];
    583 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct3[];
    584 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct4[];
    585 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct5[];
    586 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPdtt[];
    587 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPdtt0[];
    588 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt0[];
    589 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt0a[];
    590 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt1[];
    591 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt1a[];
    592 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt2[];
    593 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPpttHdr[];
    594 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPrmtHdr[];
    595 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPrmtModule[];
    596 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPrmtHandler[];
    597 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRasf[];
    598 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRas2[];
    599 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRas2PccDesc[];
    600 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRgrt[];
    601 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRgrt0[];
    602 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhct[];
    603 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctNodeHdr[];
    604 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctIsa1[];
    605 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctIsaPad[];
    606 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctCmo1[];
    607 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctMmu1[];
    608 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctHartInfo1[];
    609 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhctHartInfo2[];
    610 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimt[];
    611 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtNodeHdr[];
    612 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtIommu[];
    613 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtIommuWire[];
    614 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtPcieRc[];
    615 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtIdMapping[];
    616 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtPlatDev[];
    617 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRimtPlatDevPad[];
    618 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRsdp1[];
    619 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRsdp2[];
    620 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt[];
    621 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3ptHdr[];
    622 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt0[];
    623 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt1[];
    624 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSbst[];
    625 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdei[];
    626 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev[];
    627 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevHdr[];
    628 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev0[];
    629 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev0a[];
    630 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev0b[];
    631 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevSecCompHdr[];
    632 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevSecCompId[];
    633 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevSecCompMem[];
    634 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev1[];
    635 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev1a[];
    636 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev1b[];
    637 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSlic[];
    638 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSlit[];
    639 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSpcr[];
    640 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSpmi[];
    641 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat[];
    642 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSratHdr[];
    643 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat0[];
    644 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat1[];
    645 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat2[];
    646 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat3[];
    647 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat4[];
    648 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat5[];
    649 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat6[];
    650 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat7[];
    651 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStao[];
    652 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStaoStr[];
    653 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSvkl[];
    654 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSvkl0[];
    655 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSwft[];
    656 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSwftFileHdr[];
    657 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSwftFileData[];
    658 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaHdr[];
    659 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaClient[];
    660 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaServer[];
    661 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTdel[];
    662 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm2[];
    663 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm2a[];
    664 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm211[];
    665 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm23[];
    666 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm23a[];
    667 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoUefi[];
    668 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot[];
    669 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViotHeader[];
    670 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot1[];
    671 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot2[];
    672 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot3[];
    673 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot4[];
    674 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWaet[];
    675 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdat[];
    676 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdat0[];
    677 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWddt[];
    678 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdrt[];
    679 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWpbt[];
    680 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWpbt0[];
    681 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWsmt[];
    682 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoXenv[];
    683 
    684 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGeneric[][2];
    685 
    686 /*
    687  * dmtable and ahtable
    688  */
    689 extern const ACPI_DMTABLE_DATA  AcpiDmTableData[];
    690 extern const AH_TABLE           AcpiGbl_SupportedTables[];
    691 
    692 UINT8
    693 AcpiDmGenerateChecksum (
    694     void                    *Table,
    695     UINT32                  Length,
    696     UINT8                   OriginalChecksum);
    697 
    698 const ACPI_DMTABLE_DATA *
    699 AcpiDmGetTableData (
    700     char                    *Signature);
    701 
    702 void
    703 AcpiDmDumpDataTable (
    704     ACPI_TABLE_HEADER       *Table);
    705 
    706 ACPI_STATUS
    707 AcpiDmDumpTable (
    708     UINT32                  TableLength,
    709     UINT32                  TableOffset,
    710     void                    *Table,
    711     UINT32                  SubtableLength,
    712     ACPI_DMTABLE_INFO        *Info);
    713 
    714 void
    715 AcpiDmLineHeader (
    716     UINT32                  Offset,
    717     UINT32                  ByteLength,
    718     char                    *Name);
    719 
    720 void
    721 AcpiDmLineHeader2 (
    722     UINT32                  Offset,
    723     UINT32                  ByteLength,
    724     char                    *Name,
    725     UINT32                  Value);
    726 
    727 
    728 /*
    729  * dmtbdump
    730  */
    731 void
    732 AcpiDmDumpBuffer (
    733     void                    *Table,
    734     UINT32                  BufferOffset,
    735     UINT32                  Length,
    736     UINT32                  AbsoluteOffset,
    737     char                    *Header);
    738 
    739 void
    740 AcpiDmDumpUnicode (
    741     void                    *Table,
    742     UINT32                  BufferOffset,
    743     UINT32                  ByteLength);
    744 
    745 void
    746 AcpiDmDumpAest (
    747     ACPI_TABLE_HEADER       *Table);
    748 
    749 void
    750 AcpiDmDumpApmt (
    751     ACPI_TABLE_HEADER       *Table);
    752 
    753 void
    754 AcpiDmDumpAsf (
    755     ACPI_TABLE_HEADER       *Table);
    756 
    757 void
    758 AcpiDmDumpAspt (
    759     ACPI_TABLE_HEADER       *Table);
    760 
    761 void
    762 AcpiDmDumpCcel (
    763     ACPI_TABLE_HEADER       *Table);
    764 
    765 void
    766 AcpiDmDumpCdat (
    767     ACPI_TABLE_HEADER       *Table);
    768 
    769 void
    770 AcpiDmDumpCedt (
    771     ACPI_TABLE_HEADER       *Table);
    772 
    773 void
    774 AcpiDmDumpCpep (
    775     ACPI_TABLE_HEADER       *Table);
    776 
    777 void
    778 AcpiDmDumpCsrt (
    779     ACPI_TABLE_HEADER       *Table);
    780 
    781 void
    782 AcpiDmDumpDbg2 (
    783     ACPI_TABLE_HEADER       *Table);
    784 
    785 void
    786 AcpiDmDumpDmar (
    787     ACPI_TABLE_HEADER       *Table);
    788 
    789 void
    790 AcpiDmDumpDrtm (
    791     ACPI_TABLE_HEADER       *Table);
    792 
    793 void
    794 AcpiDmDumpEinj (
    795     ACPI_TABLE_HEADER       *Table);
    796 
    797 void
    798 AcpiDmDumpErdt (
    799     ACPI_TABLE_HEADER       *Table);
    800 
    801 void
    802 AcpiDmDumpErst (
    803     ACPI_TABLE_HEADER       *Table);
    804 
    805 void
    806 AcpiDmDumpFadt (
    807     ACPI_TABLE_HEADER       *Table);
    808 
    809 void
    810 AcpiDmDumpFpdt (
    811     ACPI_TABLE_HEADER       *Table);
    812 
    813 void
    814 AcpiDmDumpGtdt (
    815     ACPI_TABLE_HEADER       *Table);
    816 
    817 void
    818 AcpiDmDumpHest (
    819     ACPI_TABLE_HEADER       *Table);
    820 
    821 void
    822 AcpiDmDumpHmat (
    823     ACPI_TABLE_HEADER       *Table);
    824 
    825 void
    826 AcpiDmDumpIort (
    827     ACPI_TABLE_HEADER       *Table);
    828 
    829 void
    830 AcpiDmDumpIovt (
    831     ACPI_TABLE_HEADER       *Table);
    832 
    833 void
    834 AcpiDmDumpIvrs (
    835     ACPI_TABLE_HEADER       *Table);
    836 
    837 void
    838 AcpiDmDumpLpit (
    839     ACPI_TABLE_HEADER       *Table);
    840 
    841 void
    842 AcpiDmDumpMadt (
    843     ACPI_TABLE_HEADER       *Table);
    844 
    845 void
    846 AcpiDmDumpMcfg (
    847     ACPI_TABLE_HEADER       *Table);
    848 
    849 void
    850 AcpiDmDumpMpam (
    851     ACPI_TABLE_HEADER       *Table);
    852 
    853 void
    854 AcpiDmDumpMpst (
    855     ACPI_TABLE_HEADER       *Table);
    856 
    857 void
    858 AcpiDmDumpMrrm (
    859     ACPI_TABLE_HEADER       *Table);
    860 
    861 void
    862 AcpiDmDumpMsct (
    863     ACPI_TABLE_HEADER       *Table);
    864 
    865 void
    866 AcpiDmDumpNfit (
    867     ACPI_TABLE_HEADER       *Table);
    868 
    869 void
    870 AcpiDmDumpNhlt (
    871     ACPI_TABLE_HEADER       *Table);
    872 
    873 void
    874 AcpiDmDumpPcct (
    875     ACPI_TABLE_HEADER       *Table);
    876 
    877 void
    878 AcpiDmDumpPdtt (
    879     ACPI_TABLE_HEADER       *Table);
    880 
    881 void
    882 AcpiDmDumpPhat (
    883     ACPI_TABLE_HEADER       *Table);
    884 
    885 void
    886 AcpiDmDumpPmtt (
    887     ACPI_TABLE_HEADER       *Table);
    888 
    889 void
    890 AcpiDmDumpPptt (
    891     ACPI_TABLE_HEADER       *Table);
    892 
    893 void
    894 AcpiDmDumpPrmt (
    895     ACPI_TABLE_HEADER       *Table);
    896 
    897 void
    898 AcpiDmDumpRas2 (
    899     ACPI_TABLE_HEADER       *Table);
    900 
    901 void
    902 AcpiDmDumpRgrt (
    903     ACPI_TABLE_HEADER       *Table);
    904 
    905 void
    906 AcpiDmDumpRhct (
    907     ACPI_TABLE_HEADER       *Table);
    908 
    909 void
    910 AcpiDmDumpRimt (
    911     ACPI_TABLE_HEADER       *Table);
    912 
    913 UINT32
    914 AcpiDmDumpRsdp (
    915     ACPI_TABLE_HEADER       *Table);
    916 
    917 void
    918 AcpiDmDumpRsdt (
    919     ACPI_TABLE_HEADER       *Table);
    920 
    921 UINT32
    922 AcpiDmDumpS3pt (
    923     ACPI_TABLE_HEADER       *Table);
    924 
    925 void
    926 AcpiDmDumpSdev (
    927     ACPI_TABLE_HEADER       *Table);
    928 
    929 void
    930 AcpiDmDumpSlic (
    931     ACPI_TABLE_HEADER       *Table);
    932 
    933 void
    934 AcpiDmDumpSlit (
    935     ACPI_TABLE_HEADER       *Table);
    936 
    937 void
    938 AcpiDmDumpSrat (
    939     ACPI_TABLE_HEADER       *Table);
    940 
    941 void
    942 AcpiDmDumpStao (
    943     ACPI_TABLE_HEADER       *Table);
    944 
    945 void
    946 AcpiDmDumpSvkl (
    947     ACPI_TABLE_HEADER       *Table);
    948 
    949 void
    950 AcpiDmDumpSwft (
    951     ACPI_TABLE_HEADER       *Table);
    952 
    953 void
    954 AcpiDmDumpTcpa (
    955     ACPI_TABLE_HEADER       *Table);
    956 
    957 void
    958 AcpiDmDumpTdel (
    959     ACPI_TABLE_HEADER       *Table);
    960 
    961 void
    962 AcpiDmDumpTpm2 (
    963     ACPI_TABLE_HEADER       *Table);
    964 
    965 void
    966 AcpiDmDumpViot (
    967     ACPI_TABLE_HEADER       *Table);
    968 
    969 void
    970 AcpiDmDumpWdat (
    971     ACPI_TABLE_HEADER       *Table);
    972 
    973 void
    974 AcpiDmDumpWpbt (
    975     ACPI_TABLE_HEADER       *Table);
    976 
    977 void
    978 AcpiDmDumpXsdt (
    979     ACPI_TABLE_HEADER       *Table);
    980 
    981 
    982 /*
    983  * dmwalk
    984  */
    985 void
    986 AcpiDmDisassemble (
    987     ACPI_WALK_STATE         *WalkState,
    988     ACPI_PARSE_OBJECT       *Origin,
    989     UINT32                  NumOpcodes);
    990 
    991 void
    992 AcpiDmWalkParseTree (
    993     ACPI_PARSE_OBJECT       *Op,
    994     ASL_WALK_CALLBACK       DescendingCallback,
    995     ASL_WALK_CALLBACK       AscendingCallback,
    996     void                    *Context);
    997 
    998 
    999 /*
   1000  * dmopcode
   1001  */
   1002 void
   1003 AcpiDmDisassembleOneOp (
   1004     ACPI_WALK_STATE         *WalkState,
   1005     ACPI_OP_WALK_INFO       *Info,
   1006     ACPI_PARSE_OBJECT       *Op);
   1007 
   1008 UINT32
   1009 AcpiDmListType (
   1010     ACPI_PARSE_OBJECT       *Op);
   1011 
   1012 void
   1013 AcpiDmMethodFlags (
   1014     ACPI_PARSE_OBJECT       *Op);
   1015 
   1016 void
   1017 AcpiDmDisplayTargetPathname (
   1018     ACPI_PARSE_OBJECT       *Op);
   1019 
   1020 void
   1021 AcpiDmNotifyDescription (
   1022     ACPI_PARSE_OBJECT       *Op);
   1023 
   1024 void
   1025 AcpiDmPredefinedDescription (
   1026     ACPI_PARSE_OBJECT       *Op);
   1027 
   1028 void
   1029 AcpiDmFieldPredefinedDescription (
   1030     ACPI_PARSE_OBJECT       *Op);
   1031 
   1032 void
   1033 AcpiDmFieldFlags (
   1034     ACPI_PARSE_OBJECT       *Op);
   1035 
   1036 void
   1037 AcpiDmAddressSpace (
   1038     UINT8                   SpaceId);
   1039 
   1040 void
   1041 AcpiDmRegionFlags (
   1042     ACPI_PARSE_OBJECT       *Op);
   1043 
   1044 void
   1045 AcpiDmMatchOp (
   1046     ACPI_PARSE_OBJECT       *Op);
   1047 
   1048 
   1049 /*
   1050  * dmnames
   1051  */
   1052 UINT32
   1053 AcpiDmDumpName (
   1054     UINT32                  Name);
   1055 
   1056 ACPI_STATUS
   1057 AcpiPsDisplayObjectPathname (
   1058     ACPI_WALK_STATE         *WalkState,
   1059     ACPI_PARSE_OBJECT       *Op);
   1060 
   1061 void
   1062 AcpiDmNamestring (
   1063     char                    *Name);
   1064 
   1065 
   1066 /*
   1067  * dmbuffer
   1068  */
   1069 void
   1070 AcpiDmDisasmByteList (
   1071     UINT32                  Level,
   1072     UINT8                   *ByteData,
   1073     UINT32                  ByteCount);
   1074 
   1075 void
   1076 AcpiDmByteList (
   1077     ACPI_OP_WALK_INFO       *Info,
   1078     ACPI_PARSE_OBJECT       *Op);
   1079 
   1080 void
   1081 AcpiDmCheckForHardwareId (
   1082     ACPI_PARSE_OBJECT       *Op);
   1083 
   1084 void
   1085 AcpiDmDecompressEisaId (
   1086     UINT32                  EncodedId);
   1087 
   1088 BOOLEAN
   1089 AcpiDmIsUuidBuffer (
   1090     ACPI_PARSE_OBJECT       *Op);
   1091 
   1092 BOOLEAN
   1093 AcpiDmIsUnicodeBuffer (
   1094     ACPI_PARSE_OBJECT       *Op);
   1095 
   1096 BOOLEAN
   1097 AcpiDmIsStringBuffer (
   1098     ACPI_PARSE_OBJECT       *Op);
   1099 
   1100 BOOLEAN
   1101 AcpiDmIsPldBuffer (
   1102     ACPI_PARSE_OBJECT       *Op);
   1103 
   1104 
   1105 /*
   1106  * dmdeferred
   1107  */
   1108 ACPI_STATUS
   1109 AcpiDmParseDeferredOps (
   1110     ACPI_PARSE_OBJECT       *Root);
   1111 
   1112 
   1113 /*
   1114  * dmextern
   1115  */
   1116 ACPI_STATUS
   1117 AcpiDmAddToExternalFileList (
   1118     char                    *PathList);
   1119 
   1120 void
   1121 AcpiDmClearExternalFileList (
   1122     void);
   1123 
   1124 void
   1125 AcpiDmAddOpToExternalList (
   1126     ACPI_PARSE_OBJECT       *Op,
   1127     char                    *Path,
   1128     UINT8                   Type,
   1129     UINT32                  Value,
   1130     UINT16                  Flags);
   1131 
   1132 void
   1133 AcpiDmCreateSubobjectForExternal (
   1134     UINT8                   Type,
   1135     ACPI_NAMESPACE_NODE     **Node,
   1136     UINT32                  Value);
   1137 
   1138 void
   1139 AcpiDmAddNodeToExternalList (
   1140     ACPI_NAMESPACE_NODE     *Node,
   1141     UINT8                   Type,
   1142     UINT32                  Value,
   1143     UINT16                  Flags);
   1144 
   1145 void
   1146 AcpiDmAddExternalListToNamespace (
   1147     void);
   1148 
   1149 void
   1150 AcpiDmAddOneExternalToNamespace (
   1151     char                    *Path,
   1152     UINT8                   Type,
   1153     UINT32                  Value);
   1154 
   1155 UINT32
   1156 AcpiDmGetUnresolvedExternalMethodCount (
   1157     void);
   1158 
   1159 void
   1160 AcpiDmClearExternalList (
   1161     void);
   1162 
   1163 void
   1164 AcpiDmEmitExternals (
   1165     void);
   1166 
   1167 void
   1168 AcpiDmEmitExternal (
   1169     ACPI_PARSE_OBJECT       *NameOp,
   1170     ACPI_PARSE_OBJECT       *TypeOp);
   1171 
   1172 void
   1173 AcpiDmUnresolvedWarning (
   1174     UINT8                   Type);
   1175 
   1176 void
   1177 AcpiDmGetExternalsFromFile (
   1178     void);
   1179 
   1180 void
   1181 AcpiDmMarkExternalConflict (
   1182     ACPI_NAMESPACE_NODE     *Node);
   1183 
   1184 
   1185 /*
   1186  * dmresrc
   1187  */
   1188 void
   1189 AcpiDmDumpInteger8 (
   1190     UINT8                   Value,
   1191     const char              *Name);
   1192 
   1193 void
   1194 AcpiDmDumpInteger16 (
   1195     UINT16                  Value,
   1196     const char              *Name);
   1197 
   1198 void
   1199 AcpiDmDumpInteger32 (
   1200     UINT32                  Value,
   1201     const char              *Name);
   1202 
   1203 void
   1204 AcpiDmDumpInteger64 (
   1205     UINT64                  Value,
   1206     const char              *Name);
   1207 
   1208 void
   1209 AcpiDmResourceTemplate (
   1210     ACPI_OP_WALK_INFO       *Info,
   1211     ACPI_PARSE_OBJECT       *Op,
   1212     UINT8                   *ByteData,
   1213     UINT32                  ByteCount);
   1214 
   1215 ACPI_STATUS
   1216 AcpiDmIsResourceTemplate (
   1217     ACPI_WALK_STATE         *WalkState,
   1218     ACPI_PARSE_OBJECT       *Op);
   1219 
   1220 void
   1221 AcpiDmBitList (
   1222     UINT16                  Mask);
   1223 
   1224 void
   1225 AcpiDmDescriptorName (
   1226     void);
   1227 
   1228 
   1229 /*
   1230  * dmresrcl
   1231  */
   1232 void
   1233 AcpiDmWordDescriptor (
   1234     ACPI_OP_WALK_INFO       *Info,
   1235     AML_RESOURCE            *Resource,
   1236     UINT32                  Length,
   1237     UINT32                  Level);
   1238 
   1239 void
   1240 AcpiDmDwordDescriptor (
   1241     ACPI_OP_WALK_INFO       *Info,
   1242     AML_RESOURCE            *Resource,
   1243     UINT32                  Length,
   1244     UINT32                  Level);
   1245 
   1246 void
   1247 AcpiDmExtendedDescriptor (
   1248     ACPI_OP_WALK_INFO       *Info,
   1249     AML_RESOURCE            *Resource,
   1250     UINT32                  Length,
   1251     UINT32                  Level);
   1252 
   1253 void
   1254 AcpiDmQwordDescriptor (
   1255     ACPI_OP_WALK_INFO       *Info,
   1256     AML_RESOURCE            *Resource,
   1257     UINT32                  Length,
   1258     UINT32                  Level);
   1259 
   1260 void
   1261 AcpiDmMemory24Descriptor (
   1262     ACPI_OP_WALK_INFO       *Info,
   1263     AML_RESOURCE            *Resource,
   1264     UINT32                  Length,
   1265     UINT32                  Level);
   1266 
   1267 void
   1268 AcpiDmMemory32Descriptor (
   1269     ACPI_OP_WALK_INFO       *Info,
   1270     AML_RESOURCE            *Resource,
   1271     UINT32                  Length,
   1272     UINT32                  Level);
   1273 
   1274 void
   1275 AcpiDmFixedMemory32Descriptor (
   1276     ACPI_OP_WALK_INFO       *Info,
   1277     AML_RESOURCE            *Resource,
   1278     UINT32                  Length,
   1279     UINT32                  Level);
   1280 
   1281 void
   1282 AcpiDmGenericRegisterDescriptor (
   1283     ACPI_OP_WALK_INFO       *Info,
   1284     AML_RESOURCE            *Resource,
   1285     UINT32                  Length,
   1286     UINT32                  Level);
   1287 
   1288 void
   1289 AcpiDmInterruptDescriptor (
   1290     ACPI_OP_WALK_INFO       *Info,
   1291     AML_RESOURCE            *Resource,
   1292     UINT32                  Length,
   1293     UINT32                  Level);
   1294 
   1295 void
   1296 AcpiDmVendorLargeDescriptor (
   1297     ACPI_OP_WALK_INFO       *Info,
   1298     AML_RESOURCE            *Resource,
   1299     UINT32                  Length,
   1300     UINT32                  Level);
   1301 
   1302 void
   1303 AcpiDmGpioDescriptor (
   1304     ACPI_OP_WALK_INFO       *Info,
   1305     AML_RESOURCE            *Resource,
   1306     UINT32                  Length,
   1307     UINT32                  Level);
   1308 
   1309 void
   1310 AcpiDmPinFunctionDescriptor (
   1311     ACPI_OP_WALK_INFO       *Info,
   1312     AML_RESOURCE            *Resource,
   1313     UINT32                  Length,
   1314     UINT32                  Level);
   1315 
   1316 void
   1317 AcpiDmPinConfigDescriptor (
   1318     ACPI_OP_WALK_INFO       *Info,
   1319     AML_RESOURCE            *Resource,
   1320     UINT32                  Length,
   1321     UINT32                  Level);
   1322 
   1323 void
   1324 AcpiDmPinGroupDescriptor (
   1325     ACPI_OP_WALK_INFO       *Info,
   1326     AML_RESOURCE            *Resource,
   1327     UINT32                  Length,
   1328     UINT32                  Level);
   1329 
   1330 void
   1331 AcpiDmPinGroupFunctionDescriptor (
   1332     ACPI_OP_WALK_INFO       *Info,
   1333     AML_RESOURCE            *Resource,
   1334     UINT32                  Length,
   1335     UINT32                  Level);
   1336 
   1337 void
   1338 AcpiDmPinGroupConfigDescriptor (
   1339     ACPI_OP_WALK_INFO       *Info,
   1340     AML_RESOURCE            *Resource,
   1341     UINT32                  Length,
   1342     UINT32                  Level);
   1343 
   1344 void
   1345 AcpiDmSerialBusDescriptor (
   1346     ACPI_OP_WALK_INFO       *Info,
   1347     AML_RESOURCE            *Resource,
   1348     UINT32                  Length,
   1349     UINT32                  Level);
   1350 
   1351 void
   1352 AcpiDmVendorCommon (
   1353     const char              *Name,
   1354     UINT8                   *ByteData,
   1355     UINT32                  Length,
   1356     UINT32                  Level);
   1357 
   1358 void
   1359 AcpiDmClockInputDescriptor (
   1360     ACPI_OP_WALK_INFO       *Info,
   1361     AML_RESOURCE            *Resource,
   1362     UINT32                  Length,
   1363     UINT32                  Level);
   1364 
   1365 /*
   1366  * dmresrcs
   1367  */
   1368 void
   1369 AcpiDmIrqDescriptor (
   1370     ACPI_OP_WALK_INFO       *Info,
   1371     AML_RESOURCE            *Resource,
   1372     UINT32                  Length,
   1373     UINT32                  Level);
   1374 
   1375 void
   1376 AcpiDmDmaDescriptor (
   1377     ACPI_OP_WALK_INFO       *Info,
   1378     AML_RESOURCE            *Resource,
   1379     UINT32                  Length,
   1380     UINT32                  Level);
   1381 
   1382 void
   1383 AcpiDmFixedDmaDescriptor (
   1384     ACPI_OP_WALK_INFO       *Info,
   1385     AML_RESOURCE            *Resource,
   1386     UINT32                  Length,
   1387     UINT32                  Level);
   1388 
   1389 void
   1390 AcpiDmIoDescriptor (
   1391     ACPI_OP_WALK_INFO       *Info,
   1392     AML_RESOURCE            *Resource,
   1393     UINT32                  Length,
   1394     UINT32                  Level);
   1395 
   1396 void
   1397 AcpiDmFixedIoDescriptor (
   1398     ACPI_OP_WALK_INFO       *Info,
   1399     AML_RESOURCE            *Resource,
   1400     UINT32                  Length,
   1401     UINT32                  Level);
   1402 
   1403 void
   1404 AcpiDmStartDependentDescriptor (
   1405     ACPI_OP_WALK_INFO       *Info,
   1406     AML_RESOURCE            *Resource,
   1407     UINT32                  Length,
   1408     UINT32                  Level);
   1409 
   1410 void
   1411 AcpiDmEndDependentDescriptor (
   1412     ACPI_OP_WALK_INFO       *Info,
   1413     AML_RESOURCE            *Resource,
   1414     UINT32                  Length,
   1415     UINT32                  Level);
   1416 
   1417 void
   1418 AcpiDmVendorSmallDescriptor (
   1419     ACPI_OP_WALK_INFO       *Info,
   1420     AML_RESOURCE            *Resource,
   1421     UINT32                  Length,
   1422     UINT32                  Level);
   1423 
   1424 
   1425 /*
   1426  * dmutils
   1427  */
   1428 void
   1429 AcpiDmDecodeAttribute (
   1430     UINT8                   Attribute);
   1431 
   1432 void
   1433 AcpiDmIndent (
   1434     UINT32                  Level);
   1435 
   1436 BOOLEAN
   1437 AcpiDmCommaIfListMember (
   1438     ACPI_PARSE_OBJECT       *Op);
   1439 
   1440 void
   1441 AcpiDmCommaIfFieldMember (
   1442     ACPI_PARSE_OBJECT       *Op);
   1443 
   1444 
   1445 /*
   1446  * dmrestag
   1447  */
   1448 void
   1449 AcpiDmFindResources (
   1450     ACPI_PARSE_OBJECT       *Root);
   1451 
   1452 void
   1453 AcpiDmCheckResourceReference (
   1454     ACPI_PARSE_OBJECT       *Op,
   1455     ACPI_WALK_STATE         *WalkState);
   1456 
   1457 
   1458 /*
   1459  * dmcstyle
   1460  */
   1461 BOOLEAN
   1462 AcpiDmCheckForSymbolicOpcode (
   1463     ACPI_PARSE_OBJECT       *Op,
   1464     ACPI_OP_WALK_INFO       *Info);
   1465 
   1466 void
   1467 AcpiDmCloseOperator (
   1468     ACPI_PARSE_OBJECT       *Op);
   1469 
   1470 
   1471 /*
   1472  * dmtables
   1473  */
   1474 ACPI_STATUS
   1475 AcpiDmProcessSwitch (
   1476     ACPI_PARSE_OBJECT       *Op);
   1477 
   1478 void
   1479 AcpiDmClearTempList(
   1480     void);
   1481 
   1482 /*
   1483  * dmtables
   1484  */
   1485 void
   1486 AdDisassemblerHeader (
   1487     char                    *Filename,
   1488     UINT8                   TableType);
   1489 
   1490 #define ACPI_IS_AML_TABLE   0
   1491 #define ACPI_IS_DATA_TABLE  1
   1492 
   1493 
   1494 /*
   1495  * adisasm
   1496  */
   1497 ACPI_STATUS
   1498 AdAmlDisassemble (
   1499     BOOLEAN                 OutToFile,
   1500     char                    *Filename,
   1501     char                    *Prefix,
   1502     char                    **OutFilename);
   1503 
   1504 ACPI_STATUS
   1505 AdGetLocalTables (
   1506     void);
   1507 
   1508 ACPI_STATUS
   1509 AdParseTable (
   1510     ACPI_TABLE_HEADER       *Table,
   1511     ACPI_OWNER_ID           *OwnerId,
   1512     BOOLEAN                 LoadTable,
   1513     BOOLEAN                 External);
   1514 
   1515 ACPI_STATUS
   1516 AdDisplayTables (
   1517     char                    *Filename,
   1518     ACPI_TABLE_HEADER       *Table);
   1519 
   1520 ACPI_STATUS
   1521 AdDisplayStatistics (
   1522     void);
   1523 
   1524 
   1525 /*
   1526  * dmwalk
   1527  */
   1528 UINT32
   1529 AcpiDmBlockType (
   1530     ACPI_PARSE_OBJECT       *Op);
   1531 
   1532 
   1533 #endif  /* __ACDISASM_H__ */
   1534