Home | History | Annotate | Line # | Download | only in include
acdisasm.h revision 1.9
      1  1.1    jruoho /******************************************************************************
      2  1.1    jruoho  *
      3  1.1    jruoho  * Name: acdisasm.h - AML disassembler
      4  1.1    jruoho  *
      5  1.1    jruoho  *****************************************************************************/
      6  1.1    jruoho 
      7  1.3    jruoho /*
      8  1.9  christos  * Copyright (C) 2000 - 2016, Intel Corp.
      9  1.1    jruoho  * All rights reserved.
     10  1.1    jruoho  *
     11  1.3    jruoho  * Redistribution and use in source and binary forms, with or without
     12  1.3    jruoho  * modification, are permitted provided that the following conditions
     13  1.3    jruoho  * are met:
     14  1.3    jruoho  * 1. Redistributions of source code must retain the above copyright
     15  1.3    jruoho  *    notice, this list of conditions, and the following disclaimer,
     16  1.3    jruoho  *    without modification.
     17  1.3    jruoho  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
     18  1.3    jruoho  *    substantially similar to the "NO WARRANTY" disclaimer below
     19  1.3    jruoho  *    ("Disclaimer") and any redistribution must be conditioned upon
     20  1.3    jruoho  *    including a substantially similar Disclaimer requirement for further
     21  1.3    jruoho  *    binary redistribution.
     22  1.3    jruoho  * 3. Neither the names of the above-listed copyright holders nor the names
     23  1.3    jruoho  *    of any contributors may be used to endorse or promote products derived
     24  1.3    jruoho  *    from this software without specific prior written permission.
     25  1.3    jruoho  *
     26  1.3    jruoho  * Alternatively, this software may be distributed under the terms of the
     27  1.3    jruoho  * GNU General Public License ("GPL") version 2 as published by the Free
     28  1.3    jruoho  * Software Foundation.
     29  1.3    jruoho  *
     30  1.3    jruoho  * NO WARRANTY
     31  1.3    jruoho  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     32  1.3    jruoho  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     33  1.3    jruoho  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
     34  1.3    jruoho  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     35  1.3    jruoho  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     36  1.3    jruoho  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     37  1.3    jruoho  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     38  1.3    jruoho  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     39  1.3    jruoho  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     40  1.3    jruoho  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     41  1.3    jruoho  * POSSIBILITY OF SUCH DAMAGES.
     42  1.3    jruoho  */
     43  1.1    jruoho 
     44  1.1    jruoho #ifndef __ACDISASM_H__
     45  1.1    jruoho #define __ACDISASM_H__
     46  1.1    jruoho 
     47  1.1    jruoho #include "amlresrc.h"
     48  1.1    jruoho 
     49  1.1    jruoho 
     50  1.1    jruoho #define BLOCK_NONE              0
     51  1.1    jruoho #define BLOCK_PAREN             1
     52  1.1    jruoho #define BLOCK_BRACE             2
     53  1.1    jruoho #define BLOCK_COMMA_LIST        4
     54  1.2    jruoho #define ACPI_DEFAULT_RESNAME    *(const UINT32 *) "__RD"
     55  1.1    jruoho 
     56  1.3    jruoho /*
     57  1.3    jruoho  * Raw table data header. Used by disassembler and data table compiler.
     58  1.3    jruoho  * Do not change.
     59  1.3    jruoho  */
     60  1.3    jruoho #define ACPI_RAW_TABLE_DATA_HEADER      "Raw Table Data"
     61  1.3    jruoho 
     62  1.1    jruoho 
     63  1.8  christos typedef struct acpi_dmtable_info
     64  1.1    jruoho {
     65  1.1    jruoho     UINT8                       Opcode;
     66  1.5  christos     UINT16                      Offset;
     67  1.1    jruoho     char                        *Name;
     68  1.1    jruoho     UINT8                       Flags;
     69  1.1    jruoho 
     70  1.1    jruoho } ACPI_DMTABLE_INFO;
     71  1.1    jruoho 
     72  1.5  christos /* Values for Flags field above */
     73  1.5  christos 
     74  1.1    jruoho #define DT_LENGTH                       0x01    /* Field is a subtable length */
     75  1.1    jruoho #define DT_FLAG                         0x02    /* Field is a flag value */
     76  1.1    jruoho #define DT_NON_ZERO                     0x04    /* Field must be non-zero */
     77  1.5  christos #define DT_OPTIONAL                     0x08    /* Field is optional */
     78  1.5  christos #define DT_DESCRIBES_OPTIONAL           0x10    /* Field describes an optional field (length, etc.) */
     79  1.5  christos #define DT_COUNT                        0x20    /* Currently not used */
     80  1.1    jruoho 
     81  1.1    jruoho /*
     82  1.1    jruoho  * Values for Opcode above.
     83  1.5  christos  * Note: 0-7 must not change, they are used as a flag shift value. Other
     84  1.5  christos  * than those, new values can be added wherever appropriate.
     85  1.1    jruoho  */
     86  1.5  christos typedef enum
     87  1.5  christos {
     88  1.5  christos     /* Simple Data Types */
     89  1.5  christos 
     90  1.5  christos     ACPI_DMT_FLAG0          = 0,
     91  1.5  christos     ACPI_DMT_FLAG1          = 1,
     92  1.5  christos     ACPI_DMT_FLAG2          = 2,
     93  1.5  christos     ACPI_DMT_FLAG3          = 3,
     94  1.5  christos     ACPI_DMT_FLAG4          = 4,
     95  1.5  christos     ACPI_DMT_FLAG5          = 5,
     96  1.5  christos     ACPI_DMT_FLAG6          = 6,
     97  1.5  christos     ACPI_DMT_FLAG7          = 7,
     98  1.5  christos     ACPI_DMT_FLAGS0,
     99  1.5  christos     ACPI_DMT_FLAGS1,
    100  1.5  christos     ACPI_DMT_FLAGS2,
    101  1.5  christos     ACPI_DMT_FLAGS4,
    102  1.5  christos     ACPI_DMT_UINT8,
    103  1.5  christos     ACPI_DMT_UINT16,
    104  1.5  christos     ACPI_DMT_UINT24,
    105  1.5  christos     ACPI_DMT_UINT32,
    106  1.5  christos     ACPI_DMT_UINT40,
    107  1.5  christos     ACPI_DMT_UINT48,
    108  1.5  christos     ACPI_DMT_UINT56,
    109  1.5  christos     ACPI_DMT_UINT64,
    110  1.5  christos     ACPI_DMT_BUF7,
    111  1.5  christos     ACPI_DMT_BUF10,
    112  1.5  christos     ACPI_DMT_BUF16,
    113  1.5  christos     ACPI_DMT_BUF128,
    114  1.5  christos     ACPI_DMT_SIG,
    115  1.5  christos     ACPI_DMT_STRING,
    116  1.5  christos     ACPI_DMT_NAME4,
    117  1.5  christos     ACPI_DMT_NAME6,
    118  1.5  christos     ACPI_DMT_NAME8,
    119  1.5  christos 
    120  1.5  christos     /* Types that are decoded to strings and miscellaneous */
    121  1.5  christos 
    122  1.5  christos     ACPI_DMT_ACCWIDTH,
    123  1.5  christos     ACPI_DMT_CHKSUM,
    124  1.5  christos     ACPI_DMT_GAS,
    125  1.5  christos     ACPI_DMT_SPACEID,
    126  1.5  christos     ACPI_DMT_UNICODE,
    127  1.5  christos     ACPI_DMT_UUID,
    128  1.5  christos 
    129  1.5  christos     /* Types used only for the Data Table Compiler */
    130  1.5  christos 
    131  1.5  christos     ACPI_DMT_BUFFER,
    132  1.7  christos     ACPI_DMT_RAW_BUFFER,  /* Large, multiple line buffer */
    133  1.5  christos     ACPI_DMT_DEVICE_PATH,
    134  1.5  christos     ACPI_DMT_LABEL,
    135  1.5  christos     ACPI_DMT_PCI_PATH,
    136  1.5  christos 
    137  1.5  christos     /* Types that are specific to particular ACPI tables */
    138  1.5  christos 
    139  1.5  christos     ACPI_DMT_ASF,
    140  1.5  christos     ACPI_DMT_DMAR,
    141  1.6  christos     ACPI_DMT_DMAR_SCOPE,
    142  1.5  christos     ACPI_DMT_EINJACT,
    143  1.5  christos     ACPI_DMT_EINJINST,
    144  1.5  christos     ACPI_DMT_ERSTACT,
    145  1.5  christos     ACPI_DMT_ERSTINST,
    146  1.5  christos     ACPI_DMT_FADTPM,
    147  1.6  christos     ACPI_DMT_GTDT,
    148  1.5  christos     ACPI_DMT_HEST,
    149  1.5  christos     ACPI_DMT_HESTNTFY,
    150  1.5  christos     ACPI_DMT_HESTNTYP,
    151  1.8  christos     ACPI_DMT_IORTMEM,
    152  1.5  christos     ACPI_DMT_IVRS,
    153  1.6  christos     ACPI_DMT_LPIT,
    154  1.5  christos     ACPI_DMT_MADT,
    155  1.8  christos     ACPI_DMT_NFIT,
    156  1.5  christos     ACPI_DMT_PCCT,
    157  1.5  christos     ACPI_DMT_PMTT,
    158  1.5  christos     ACPI_DMT_SLIC,
    159  1.5  christos     ACPI_DMT_SRAT,
    160  1.5  christos 
    161  1.5  christos     /* Special opcodes */
    162  1.5  christos 
    163  1.5  christos     ACPI_DMT_EXTRA_TEXT,
    164  1.5  christos     ACPI_DMT_EXIT
    165  1.5  christos 
    166  1.5  christos } ACPI_ENTRY_TYPES;
    167  1.1    jruoho 
    168  1.1    jruoho typedef
    169  1.1    jruoho void (*ACPI_DMTABLE_HANDLER) (
    170  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    171  1.1    jruoho 
    172  1.1    jruoho typedef
    173  1.1    jruoho ACPI_STATUS (*ACPI_CMTABLE_HANDLER) (
    174  1.1    jruoho     void                    **PFieldList);
    175  1.1    jruoho 
    176  1.1    jruoho typedef struct acpi_dmtable_data
    177  1.1    jruoho {
    178  1.1    jruoho     char                    *Signature;
    179  1.1    jruoho     ACPI_DMTABLE_INFO       *TableInfo;
    180  1.1    jruoho     ACPI_DMTABLE_HANDLER    TableHandler;
    181  1.1    jruoho     ACPI_CMTABLE_HANDLER    CmTableHandler;
    182  1.3    jruoho     const unsigned char     *Template;
    183  1.1    jruoho 
    184  1.1    jruoho } ACPI_DMTABLE_DATA;
    185  1.1    jruoho 
    186  1.1    jruoho 
    187  1.1    jruoho typedef struct acpi_op_walk_info
    188  1.1    jruoho {
    189  1.9  christos     ACPI_WALK_STATE         *WalkState;
    190  1.9  christos     ACPI_PARSE_OBJECT       *MappingOp;
    191  1.9  christos     UINT8                   *PreviousAml;
    192  1.9  christos     UINT8                   *StartAml;
    193  1.1    jruoho     UINT32                  Level;
    194  1.1    jruoho     UINT32                  LastLevel;
    195  1.1    jruoho     UINT32                  Count;
    196  1.1    jruoho     UINT32                  BitOffset;
    197  1.1    jruoho     UINT32                  Flags;
    198  1.9  christos     UINT32                  AmlOffset;
    199  1.1    jruoho 
    200  1.1    jruoho } ACPI_OP_WALK_INFO;
    201  1.1    jruoho 
    202  1.1    jruoho /*
    203  1.1    jruoho  * TBD - another copy of this is in asltypes.h, fix
    204  1.1    jruoho  */
    205  1.1    jruoho #ifndef ASL_WALK_CALLBACK_DEFINED
    206  1.1    jruoho typedef
    207  1.1    jruoho ACPI_STATUS (*ASL_WALK_CALLBACK) (
    208  1.1    jruoho     ACPI_PARSE_OBJECT           *Op,
    209  1.1    jruoho     UINT32                      Level,
    210  1.1    jruoho     void                        *Context);
    211  1.1    jruoho #define ASL_WALK_CALLBACK_DEFINED
    212  1.1    jruoho #endif
    213  1.1    jruoho 
    214  1.5  christos typedef
    215  1.5  christos void (*ACPI_RESOURCE_HANDLER) (
    216  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    217  1.5  christos     AML_RESOURCE            *Resource,
    218  1.5  christos     UINT32                  Length,
    219  1.5  christos     UINT32                  Level);
    220  1.1    jruoho 
    221  1.1    jruoho typedef struct acpi_resource_tag
    222  1.1    jruoho {
    223  1.1    jruoho     UINT32                  BitIndex;
    224  1.1    jruoho     char                    *Tag;
    225  1.1    jruoho 
    226  1.1    jruoho } ACPI_RESOURCE_TAG;
    227  1.1    jruoho 
    228  1.1    jruoho /* Strings used for decoding flags to ASL keywords */
    229  1.1    jruoho 
    230  1.1    jruoho extern const char               *AcpiGbl_WordDecode[];
    231  1.1    jruoho extern const char               *AcpiGbl_IrqDecode[];
    232  1.1    jruoho extern const char               *AcpiGbl_LockRule[];
    233  1.1    jruoho extern const char               *AcpiGbl_AccessTypes[];
    234  1.1    jruoho extern const char               *AcpiGbl_UpdateRules[];
    235  1.1    jruoho extern const char               *AcpiGbl_MatchOps[];
    236  1.1    jruoho 
    237  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf0[];
    238  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf1[];
    239  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf1a[];
    240  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf2[];
    241  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf2a[];
    242  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf3[];
    243  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf4[];
    244  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsfHdr[];
    245  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoBoot[];
    246  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoBert[];
    247  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoBgrt[];
    248  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCpep[];
    249  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCpep0[];
    250  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt0[];
    251  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt1[];
    252  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt2[];
    253  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt2a[];
    254  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2[];
    255  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Device[];
    256  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Addr[];
    257  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Size[];
    258  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Name[];
    259  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2OemData[];
    260  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbgp[];
    261  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar[];
    262  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmarHdr[];
    263  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmarScope[];
    264  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar0[];
    265  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar1[];
    266  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar2[];
    267  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar3[];
    268  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar4[];
    269  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm[];
    270  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm0[];
    271  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm0a[];
    272  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm1[];
    273  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm1a[];
    274  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm2[];
    275  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEcdt[];
    276  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEinj[];
    277  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEinj0[];
    278  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErst[];
    279  1.3    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErst0[];
    280  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFacs[];
    281  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt1[];
    282  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt2[];
    283  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt3[];
    284  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt5[];
    285  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt6[];
    286  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt[];
    287  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdtHdr[];
    288  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt0[];
    289  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt1[];
    290  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGas[];
    291  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt[];
    292  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdtHdr[];
    293  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt0[];
    294  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt0a[];
    295  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt1[];
    296  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHeader[];
    297  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest[];
    298  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest0[];
    299  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest1[];
    300  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest2[];
    301  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest6[];
    302  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest7[];
    303  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest8[];
    304  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest9[];
    305  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHestNotify[];
    306  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHestBank[];
    307  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHpet[];
    308  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpitHdr[];
    309  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpit0[];
    310  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpit1[];
    311  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort[];
    312  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort0[];
    313  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort0a[];
    314  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort1[];
    315  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort1a[];
    316  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort2[];
    317  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3[];
    318  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3a[];
    319  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3b[];
    320  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3c[];
    321  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortAcc[];
    322  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortHdr[];
    323  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortMap[];
    324  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortPad[];
    325  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs[];
    326  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs0[];
    327  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs1[];
    328  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs4[];
    329  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8a[];
    330  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8b[];
    331  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8c[];
    332  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHdr[];
    333  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt[];
    334  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt0[];
    335  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt1[];
    336  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt2[];
    337  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt3[];
    338  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt4[];
    339  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt5[];
    340  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt6[];
    341  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt7[];
    342  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt8[];
    343  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt9[];
    344  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt10[];
    345  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11[];
    346  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt12[];
    347  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt13[];
    348  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt14[];
    349  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt15[];
    350  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadtHdr[];
    351  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMcfg[];
    352  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMcfg0[];
    353  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMchi[];
    354  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst[];
    355  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0[];
    356  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0A[];
    357  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0B[];
    358  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst1[];
    359  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst2[];
    360  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMsct[];
    361  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMsct0[];
    362  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMtmr[];
    363  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMtmr0[];
    364  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit[];
    365  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfitHdr[];
    366  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit0[];
    367  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit1[];
    368  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit2[];
    369  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit2a[];
    370  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit3[];
    371  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit3a[];
    372  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit4[];
    373  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit5[];
    374  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6[];
    375  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6a[];
    376  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt[];
    377  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt0[];
    378  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt1[];
    379  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt1a[];
    380  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt2[];
    381  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmttHdr[];
    382  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct[];
    383  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcctHdr[];
    384  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct0[];
    385  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct1[];
    386  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRsdp1[];
    387  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRsdp2[];
    388  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt[];
    389  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3ptHdr[];
    390  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt0[];
    391  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt1[];
    392  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSbst[];
    393  1.7  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSlic[];
    394  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSlit[];
    395  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSpcr[];
    396  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSpmi[];
    397  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat[];
    398  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSratHdr[];
    399  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat0[];
    400  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat1[];
    401  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat2[];
    402  1.6  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat3[];
    403  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStao[];
    404  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStaoStr[];
    405  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaHdr[];
    406  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaClient[];
    407  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaServer[];
    408  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm2[];
    409  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoUefi[];
    410  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoVrtc[];
    411  1.5  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoVrtc0[];
    412  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWaet[];
    413  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdat[];
    414  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdat0[];
    415  1.3    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWddt[];
    416  1.1    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdrt[];
    417  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWpbt[];
    418  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWpbt0[];
    419  1.8  christos extern ACPI_DMTABLE_INFO        AcpiDmTableInfoXenv[];
    420  1.1    jruoho 
    421  1.3    jruoho extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGeneric[][2];
    422  1.3    jruoho 
    423  1.1    jruoho /*
    424  1.8  christos  * dmtable and ahtable
    425  1.1    jruoho  */
    426  1.8  christos extern const ACPI_DMTABLE_DATA  AcpiDmTableData[];
    427  1.8  christos extern const AH_TABLE           AcpiSupportedTables[];
    428  1.3    jruoho 
    429  1.3    jruoho UINT8
    430  1.3    jruoho AcpiDmGenerateChecksum (
    431  1.3    jruoho     void                    *Table,
    432  1.3    jruoho     UINT32                  Length,
    433  1.3    jruoho     UINT8                   OriginalChecksum);
    434  1.1    jruoho 
    435  1.8  christos const ACPI_DMTABLE_DATA *
    436  1.1    jruoho AcpiDmGetTableData (
    437  1.1    jruoho     char                    *Signature);
    438  1.1    jruoho 
    439  1.1    jruoho void
    440  1.1    jruoho AcpiDmDumpDataTable (
    441  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    442  1.1    jruoho 
    443  1.1    jruoho ACPI_STATUS
    444  1.1    jruoho AcpiDmDumpTable (
    445  1.1    jruoho     UINT32                  TableLength,
    446  1.1    jruoho     UINT32                  TableOffset,
    447  1.1    jruoho     void                    *Table,
    448  1.1    jruoho     UINT32                  SubTableLength,
    449  1.1    jruoho     ACPI_DMTABLE_INFO        *Info);
    450  1.1    jruoho 
    451  1.1    jruoho void
    452  1.1    jruoho AcpiDmLineHeader (
    453  1.1    jruoho     UINT32                  Offset,
    454  1.1    jruoho     UINT32                  ByteLength,
    455  1.1    jruoho     char                    *Name);
    456  1.1    jruoho 
    457  1.1    jruoho void
    458  1.1    jruoho AcpiDmLineHeader2 (
    459  1.1    jruoho     UINT32                  Offset,
    460  1.1    jruoho     UINT32                  ByteLength,
    461  1.1    jruoho     char                    *Name,
    462  1.1    jruoho     UINT32                  Value);
    463  1.1    jruoho 
    464  1.1    jruoho 
    465  1.1    jruoho /*
    466  1.1    jruoho  * dmtbdump
    467  1.1    jruoho  */
    468  1.1    jruoho void
    469  1.7  christos AcpiDmDumpBuffer (
    470  1.7  christos     void                    *Table,
    471  1.7  christos     UINT32                  BufferOffset,
    472  1.7  christos     UINT32                  Length,
    473  1.7  christos     UINT32                  AbsoluteOffset,
    474  1.8  christos     char                    *Header);
    475  1.8  christos 
    476  1.8  christos void
    477  1.8  christos AcpiDmDumpUnicode (
    478  1.8  christos     void                    *Table,
    479  1.8  christos     UINT32                  BufferOffset,
    480  1.8  christos     UINT32                  ByteLength);
    481  1.7  christos 
    482  1.7  christos void
    483  1.1    jruoho AcpiDmDumpAsf (
    484  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    485  1.1    jruoho 
    486  1.1    jruoho void
    487  1.1    jruoho AcpiDmDumpCpep (
    488  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    489  1.1    jruoho 
    490  1.1    jruoho void
    491  1.5  christos AcpiDmDumpCsrt (
    492  1.5  christos     ACPI_TABLE_HEADER       *Table);
    493  1.5  christos 
    494  1.5  christos void
    495  1.5  christos AcpiDmDumpDbg2 (
    496  1.5  christos     ACPI_TABLE_HEADER       *Table);
    497  1.5  christos 
    498  1.5  christos void
    499  1.1    jruoho AcpiDmDumpDmar (
    500  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    501  1.1    jruoho 
    502  1.1    jruoho void
    503  1.8  christos AcpiDmDumpDrtm (
    504  1.8  christos     ACPI_TABLE_HEADER       *Table);
    505  1.8  christos 
    506  1.8  christos void
    507  1.1    jruoho AcpiDmDumpEinj (
    508  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    509  1.1    jruoho 
    510  1.1    jruoho void
    511  1.1    jruoho AcpiDmDumpErst (
    512  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    513  1.1    jruoho 
    514  1.1    jruoho void
    515  1.1    jruoho AcpiDmDumpFadt (
    516  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    517  1.1    jruoho 
    518  1.1    jruoho void
    519  1.5  christos AcpiDmDumpFpdt (
    520  1.5  christos     ACPI_TABLE_HEADER       *Table);
    521  1.5  christos 
    522  1.5  christos void
    523  1.6  christos AcpiDmDumpGtdt (
    524  1.6  christos     ACPI_TABLE_HEADER       *Table);
    525  1.6  christos 
    526  1.6  christos void
    527  1.1    jruoho AcpiDmDumpHest (
    528  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    529  1.1    jruoho 
    530  1.1    jruoho void
    531  1.8  christos AcpiDmDumpIort (
    532  1.8  christos     ACPI_TABLE_HEADER       *Table);
    533  1.8  christos 
    534  1.8  christos void
    535  1.1    jruoho AcpiDmDumpIvrs (
    536  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    537  1.1    jruoho 
    538  1.1    jruoho void
    539  1.6  christos AcpiDmDumpLpit (
    540  1.6  christos     ACPI_TABLE_HEADER       *Table);
    541  1.6  christos 
    542  1.6  christos void
    543  1.5  christos AcpiDmDumpMadt (
    544  1.5  christos     ACPI_TABLE_HEADER       *Table);
    545  1.5  christos 
    546  1.5  christos void
    547  1.1    jruoho AcpiDmDumpMcfg (
    548  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    549  1.1    jruoho 
    550  1.1    jruoho void
    551  1.5  christos AcpiDmDumpMpst (
    552  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    553  1.1    jruoho 
    554  1.1    jruoho void
    555  1.1    jruoho AcpiDmDumpMsct (
    556  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    557  1.1    jruoho 
    558  1.5  christos void
    559  1.5  christos AcpiDmDumpMtmr (
    560  1.5  christos     ACPI_TABLE_HEADER       *Table);
    561  1.5  christos 
    562  1.5  christos void
    563  1.8  christos AcpiDmDumpNfit (
    564  1.8  christos     ACPI_TABLE_HEADER       *Table);
    565  1.8  christos 
    566  1.8  christos void
    567  1.5  christos AcpiDmDumpPcct (
    568  1.5  christos     ACPI_TABLE_HEADER       *Table);
    569  1.5  christos 
    570  1.5  christos void
    571  1.5  christos AcpiDmDumpPmtt (
    572  1.5  christos     ACPI_TABLE_HEADER       *Table);
    573  1.5  christos 
    574  1.1    jruoho UINT32
    575  1.1    jruoho AcpiDmDumpRsdp (
    576  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    577  1.1    jruoho 
    578  1.1    jruoho void
    579  1.1    jruoho AcpiDmDumpRsdt (
    580  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    581  1.1    jruoho 
    582  1.5  christos UINT32
    583  1.5  christos AcpiDmDumpS3pt (
    584  1.5  christos     ACPI_TABLE_HEADER       *Table);
    585  1.5  christos 
    586  1.1    jruoho void
    587  1.4    jruoho AcpiDmDumpSlic (
    588  1.4    jruoho     ACPI_TABLE_HEADER       *Table);
    589  1.4    jruoho 
    590  1.4    jruoho void
    591  1.1    jruoho AcpiDmDumpSlit (
    592  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    593  1.1    jruoho 
    594  1.1    jruoho void
    595  1.1    jruoho AcpiDmDumpSrat (
    596  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    597  1.1    jruoho 
    598  1.1    jruoho void
    599  1.8  christos AcpiDmDumpStao (
    600  1.8  christos     ACPI_TABLE_HEADER       *Table);
    601  1.8  christos 
    602  1.8  christos void
    603  1.8  christos AcpiDmDumpTcpa (
    604  1.8  christos     ACPI_TABLE_HEADER       *Table);
    605  1.8  christos 
    606  1.8  christos void
    607  1.5  christos AcpiDmDumpVrtc (
    608  1.5  christos     ACPI_TABLE_HEADER       *Table);
    609  1.5  christos 
    610  1.5  christos void
    611  1.1    jruoho AcpiDmDumpWdat (
    612  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    613  1.1    jruoho 
    614  1.1    jruoho void
    615  1.8  christos AcpiDmDumpWpbt (
    616  1.8  christos     ACPI_TABLE_HEADER       *Table);
    617  1.8  christos 
    618  1.8  christos void
    619  1.1    jruoho AcpiDmDumpXsdt (
    620  1.1    jruoho     ACPI_TABLE_HEADER       *Table);
    621  1.1    jruoho 
    622  1.1    jruoho 
    623  1.1    jruoho /*
    624  1.1    jruoho  * dmwalk
    625  1.1    jruoho  */
    626  1.1    jruoho void
    627  1.1    jruoho AcpiDmDisassemble (
    628  1.1    jruoho     ACPI_WALK_STATE         *WalkState,
    629  1.1    jruoho     ACPI_PARSE_OBJECT       *Origin,
    630  1.1    jruoho     UINT32                  NumOpcodes);
    631  1.1    jruoho 
    632  1.1    jruoho void
    633  1.1    jruoho AcpiDmWalkParseTree (
    634  1.1    jruoho     ACPI_PARSE_OBJECT       *Op,
    635  1.1    jruoho     ASL_WALK_CALLBACK       DescendingCallback,
    636  1.1    jruoho     ASL_WALK_CALLBACK       AscendingCallback,
    637  1.1    jruoho     void                    *Context);
    638  1.1    jruoho 
    639  1.1    jruoho 
    640  1.1    jruoho /*
    641  1.1    jruoho  * dmopcode
    642  1.1    jruoho  */
    643  1.1    jruoho void
    644  1.1    jruoho AcpiDmDisassembleOneOp (
    645  1.1    jruoho     ACPI_WALK_STATE         *WalkState,
    646  1.1    jruoho     ACPI_OP_WALK_INFO       *Info,
    647  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    648  1.1    jruoho 
    649  1.1    jruoho UINT32
    650  1.1    jruoho AcpiDmListType (
    651  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    652  1.1    jruoho 
    653  1.1    jruoho void
    654  1.1    jruoho AcpiDmMethodFlags (
    655  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    656  1.1    jruoho 
    657  1.1    jruoho void
    658  1.6  christos AcpiDmDisplayTargetPathname (
    659  1.6  christos     ACPI_PARSE_OBJECT       *Op);
    660  1.6  christos 
    661  1.6  christos void
    662  1.6  christos AcpiDmNotifyDescription (
    663  1.6  christos     ACPI_PARSE_OBJECT       *Op);
    664  1.6  christos 
    665  1.6  christos void
    666  1.5  christos AcpiDmPredefinedDescription (
    667  1.5  christos     ACPI_PARSE_OBJECT       *Op);
    668  1.5  christos 
    669  1.5  christos void
    670  1.5  christos AcpiDmFieldPredefinedDescription (
    671  1.5  christos     ACPI_PARSE_OBJECT       *Op);
    672  1.5  christos 
    673  1.5  christos void
    674  1.1    jruoho AcpiDmFieldFlags (
    675  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    676  1.1    jruoho 
    677  1.1    jruoho void
    678  1.1    jruoho AcpiDmAddressSpace (
    679  1.1    jruoho     UINT8                   SpaceId);
    680  1.1    jruoho 
    681  1.1    jruoho void
    682  1.1    jruoho AcpiDmRegionFlags (
    683  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    684  1.1    jruoho 
    685  1.1    jruoho void
    686  1.1    jruoho AcpiDmMatchOp (
    687  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    688  1.1    jruoho 
    689  1.1    jruoho 
    690  1.1    jruoho /*
    691  1.1    jruoho  * dmnames
    692  1.1    jruoho  */
    693  1.1    jruoho UINT32
    694  1.1    jruoho AcpiDmDumpName (
    695  1.1    jruoho     UINT32                  Name);
    696  1.1    jruoho 
    697  1.1    jruoho ACPI_STATUS
    698  1.1    jruoho AcpiPsDisplayObjectPathname (
    699  1.1    jruoho     ACPI_WALK_STATE         *WalkState,
    700  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    701  1.1    jruoho 
    702  1.1    jruoho void
    703  1.1    jruoho AcpiDmNamestring (
    704  1.1    jruoho     char                    *Name);
    705  1.1    jruoho 
    706  1.1    jruoho 
    707  1.1    jruoho /*
    708  1.1    jruoho  * dmbuffer
    709  1.1    jruoho  */
    710  1.1    jruoho void
    711  1.1    jruoho AcpiDmDisasmByteList (
    712  1.1    jruoho     UINT32                  Level,
    713  1.1    jruoho     UINT8                   *ByteData,
    714  1.1    jruoho     UINT32                  ByteCount);
    715  1.1    jruoho 
    716  1.1    jruoho void
    717  1.1    jruoho AcpiDmByteList (
    718  1.1    jruoho     ACPI_OP_WALK_INFO       *Info,
    719  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    720  1.1    jruoho 
    721  1.1    jruoho void
    722  1.6  christos AcpiDmCheckForHardwareId (
    723  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    724  1.1    jruoho 
    725  1.1    jruoho void
    726  1.6  christos AcpiDmDecompressEisaId (
    727  1.1    jruoho     UINT32                  EncodedId);
    728  1.1    jruoho 
    729  1.1    jruoho BOOLEAN
    730  1.6  christos AcpiDmIsUuidBuffer (
    731  1.6  christos     ACPI_PARSE_OBJECT       *Op);
    732  1.6  christos 
    733  1.6  christos BOOLEAN
    734  1.1    jruoho AcpiDmIsUnicodeBuffer (
    735  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    736  1.1    jruoho 
    737  1.1    jruoho BOOLEAN
    738  1.1    jruoho AcpiDmIsStringBuffer (
    739  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    740  1.1    jruoho 
    741  1.5  christos BOOLEAN
    742  1.5  christos AcpiDmIsPldBuffer (
    743  1.5  christos     ACPI_PARSE_OBJECT       *Op);
    744  1.5  christos 
    745  1.5  christos 
    746  1.5  christos /*
    747  1.5  christos  * dmdeferred
    748  1.5  christos  */
    749  1.5  christos ACPI_STATUS
    750  1.5  christos AcpiDmParseDeferredOps (
    751  1.5  christos     ACPI_PARSE_OBJECT       *Root);
    752  1.5  christos 
    753  1.1    jruoho 
    754  1.1    jruoho /*
    755  1.1    jruoho  * dmextern
    756  1.1    jruoho  */
    757  1.3    jruoho ACPI_STATUS
    758  1.3    jruoho AcpiDmAddToExternalFileList (
    759  1.3    jruoho     char                    *PathList);
    760  1.3    jruoho 
    761  1.3    jruoho void
    762  1.3    jruoho AcpiDmClearExternalFileList (
    763  1.3    jruoho     void);
    764  1.3    jruoho 
    765  1.1    jruoho void
    766  1.5  christos AcpiDmAddOpToExternalList (
    767  1.1    jruoho     ACPI_PARSE_OBJECT       *Op,
    768  1.1    jruoho     char                    *Path,
    769  1.1    jruoho     UINT8                   Type,
    770  1.5  christos     UINT32                  Value,
    771  1.5  christos     UINT16                  Flags);
    772  1.5  christos 
    773  1.5  christos void
    774  1.5  christos AcpiDmAddNodeToExternalList (
    775  1.5  christos     ACPI_NAMESPACE_NODE     *Node,
    776  1.5  christos     UINT8                   Type,
    777  1.5  christos     UINT32                  Value,
    778  1.5  christos     UINT16                  Flags);
    779  1.1    jruoho 
    780  1.1    jruoho void
    781  1.1    jruoho AcpiDmAddExternalsToNamespace (
    782  1.1    jruoho     void);
    783  1.1    jruoho 
    784  1.1    jruoho UINT32
    785  1.1    jruoho AcpiDmGetExternalMethodCount (
    786  1.1    jruoho     void);
    787  1.1    jruoho 
    788  1.1    jruoho void
    789  1.1    jruoho AcpiDmClearExternalList (
    790  1.1    jruoho     void);
    791  1.1    jruoho 
    792  1.1    jruoho void
    793  1.1    jruoho AcpiDmEmitExternals (
    794  1.1    jruoho     void);
    795  1.1    jruoho 
    796  1.5  christos void
    797  1.5  christos AcpiDmUnresolvedWarning (
    798  1.5  christos     UINT8                   Type);
    799  1.5  christos 
    800  1.5  christos void
    801  1.5  christos AcpiDmGetExternalsFromFile (
    802  1.5  christos     void);
    803  1.1    jruoho 
    804  1.1    jruoho /*
    805  1.1    jruoho  * dmresrc
    806  1.1    jruoho  */
    807  1.1    jruoho void
    808  1.1    jruoho AcpiDmDumpInteger8 (
    809  1.1    jruoho     UINT8                   Value,
    810  1.2    jruoho     const char              *Name);
    811  1.1    jruoho 
    812  1.1    jruoho void
    813  1.1    jruoho AcpiDmDumpInteger16 (
    814  1.1    jruoho     UINT16                  Value,
    815  1.2    jruoho     const char              *Name);
    816  1.1    jruoho 
    817  1.1    jruoho void
    818  1.1    jruoho AcpiDmDumpInteger32 (
    819  1.1    jruoho     UINT32                  Value,
    820  1.2    jruoho     const char              *Name);
    821  1.1    jruoho 
    822  1.1    jruoho void
    823  1.1    jruoho AcpiDmDumpInteger64 (
    824  1.1    jruoho     UINT64                  Value,
    825  1.2    jruoho     const char              *Name);
    826  1.1    jruoho 
    827  1.1    jruoho void
    828  1.1    jruoho AcpiDmResourceTemplate (
    829  1.1    jruoho     ACPI_OP_WALK_INFO       *Info,
    830  1.1    jruoho     ACPI_PARSE_OBJECT       *Op,
    831  1.1    jruoho     UINT8                   *ByteData,
    832  1.1    jruoho     UINT32                  ByteCount);
    833  1.1    jruoho 
    834  1.1    jruoho ACPI_STATUS
    835  1.1    jruoho AcpiDmIsResourceTemplate (
    836  1.5  christos     ACPI_WALK_STATE         *WalkState,
    837  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
    838  1.1    jruoho 
    839  1.1    jruoho void
    840  1.1    jruoho AcpiDmBitList (
    841  1.1    jruoho     UINT16                  Mask);
    842  1.1    jruoho 
    843  1.1    jruoho void
    844  1.1    jruoho AcpiDmDescriptorName (
    845  1.1    jruoho     void);
    846  1.1    jruoho 
    847  1.1    jruoho 
    848  1.1    jruoho /*
    849  1.1    jruoho  * dmresrcl
    850  1.1    jruoho  */
    851  1.1    jruoho void
    852  1.1    jruoho AcpiDmWordDescriptor (
    853  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    854  1.1    jruoho     AML_RESOURCE            *Resource,
    855  1.1    jruoho     UINT32                  Length,
    856  1.1    jruoho     UINT32                  Level);
    857  1.1    jruoho 
    858  1.1    jruoho void
    859  1.1    jruoho AcpiDmDwordDescriptor (
    860  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    861  1.1    jruoho     AML_RESOURCE            *Resource,
    862  1.1    jruoho     UINT32                  Length,
    863  1.1    jruoho     UINT32                  Level);
    864  1.1    jruoho 
    865  1.1    jruoho void
    866  1.1    jruoho AcpiDmExtendedDescriptor (
    867  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    868  1.1    jruoho     AML_RESOURCE            *Resource,
    869  1.1    jruoho     UINT32                  Length,
    870  1.1    jruoho     UINT32                  Level);
    871  1.1    jruoho 
    872  1.1    jruoho void
    873  1.1    jruoho AcpiDmQwordDescriptor (
    874  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    875  1.1    jruoho     AML_RESOURCE            *Resource,
    876  1.1    jruoho     UINT32                  Length,
    877  1.1    jruoho     UINT32                  Level);
    878  1.1    jruoho 
    879  1.1    jruoho void
    880  1.1    jruoho AcpiDmMemory24Descriptor (
    881  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    882  1.1    jruoho     AML_RESOURCE            *Resource,
    883  1.1    jruoho     UINT32                  Length,
    884  1.1    jruoho     UINT32                  Level);
    885  1.1    jruoho 
    886  1.1    jruoho void
    887  1.1    jruoho AcpiDmMemory32Descriptor (
    888  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    889  1.1    jruoho     AML_RESOURCE            *Resource,
    890  1.1    jruoho     UINT32                  Length,
    891  1.1    jruoho     UINT32                  Level);
    892  1.1    jruoho 
    893  1.1    jruoho void
    894  1.1    jruoho AcpiDmFixedMemory32Descriptor (
    895  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    896  1.1    jruoho     AML_RESOURCE            *Resource,
    897  1.1    jruoho     UINT32                  Length,
    898  1.1    jruoho     UINT32                  Level);
    899  1.1    jruoho 
    900  1.1    jruoho void
    901  1.1    jruoho AcpiDmGenericRegisterDescriptor (
    902  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    903  1.1    jruoho     AML_RESOURCE            *Resource,
    904  1.1    jruoho     UINT32                  Length,
    905  1.1    jruoho     UINT32                  Level);
    906  1.1    jruoho 
    907  1.1    jruoho void
    908  1.1    jruoho AcpiDmInterruptDescriptor (
    909  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    910  1.1    jruoho     AML_RESOURCE            *Resource,
    911  1.1    jruoho     UINT32                  Length,
    912  1.1    jruoho     UINT32                  Level);
    913  1.1    jruoho 
    914  1.1    jruoho void
    915  1.1    jruoho AcpiDmVendorLargeDescriptor (
    916  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    917  1.1    jruoho     AML_RESOURCE            *Resource,
    918  1.1    jruoho     UINT32                  Length,
    919  1.1    jruoho     UINT32                  Level);
    920  1.1    jruoho 
    921  1.1    jruoho void
    922  1.5  christos AcpiDmGpioDescriptor (
    923  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    924  1.5  christos     AML_RESOURCE            *Resource,
    925  1.5  christos     UINT32                  Length,
    926  1.5  christos     UINT32                  Level);
    927  1.5  christos 
    928  1.5  christos void
    929  1.5  christos AcpiDmSerialBusDescriptor (
    930  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    931  1.5  christos     AML_RESOURCE            *Resource,
    932  1.5  christos     UINT32                  Length,
    933  1.5  christos     UINT32                  Level);
    934  1.5  christos 
    935  1.5  christos void
    936  1.1    jruoho AcpiDmVendorCommon (
    937  1.2    jruoho     const char              *Name,
    938  1.1    jruoho     UINT8                   *ByteData,
    939  1.1    jruoho     UINT32                  Length,
    940  1.1    jruoho     UINT32                  Level);
    941  1.1    jruoho 
    942  1.1    jruoho 
    943  1.1    jruoho /*
    944  1.1    jruoho  * dmresrcs
    945  1.1    jruoho  */
    946  1.1    jruoho void
    947  1.1    jruoho AcpiDmIrqDescriptor (
    948  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    949  1.1    jruoho     AML_RESOURCE            *Resource,
    950  1.1    jruoho     UINT32                  Length,
    951  1.1    jruoho     UINT32                  Level);
    952  1.1    jruoho 
    953  1.1    jruoho void
    954  1.1    jruoho AcpiDmDmaDescriptor (
    955  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    956  1.1    jruoho     AML_RESOURCE            *Resource,
    957  1.1    jruoho     UINT32                  Length,
    958  1.1    jruoho     UINT32                  Level);
    959  1.1    jruoho 
    960  1.1    jruoho void
    961  1.5  christos AcpiDmFixedDmaDescriptor (
    962  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    963  1.5  christos     AML_RESOURCE            *Resource,
    964  1.5  christos     UINT32                  Length,
    965  1.5  christos     UINT32                  Level);
    966  1.5  christos 
    967  1.5  christos void
    968  1.1    jruoho AcpiDmIoDescriptor (
    969  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    970  1.1    jruoho     AML_RESOURCE            *Resource,
    971  1.1    jruoho     UINT32                  Length,
    972  1.1    jruoho     UINT32                  Level);
    973  1.1    jruoho 
    974  1.1    jruoho void
    975  1.1    jruoho AcpiDmFixedIoDescriptor (
    976  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    977  1.1    jruoho     AML_RESOURCE            *Resource,
    978  1.1    jruoho     UINT32                  Length,
    979  1.1    jruoho     UINT32                  Level);
    980  1.1    jruoho 
    981  1.1    jruoho void
    982  1.1    jruoho AcpiDmStartDependentDescriptor (
    983  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    984  1.1    jruoho     AML_RESOURCE            *Resource,
    985  1.1    jruoho     UINT32                  Length,
    986  1.1    jruoho     UINT32                  Level);
    987  1.1    jruoho 
    988  1.1    jruoho void
    989  1.1    jruoho AcpiDmEndDependentDescriptor (
    990  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    991  1.1    jruoho     AML_RESOURCE            *Resource,
    992  1.1    jruoho     UINT32                  Length,
    993  1.1    jruoho     UINT32                  Level);
    994  1.1    jruoho 
    995  1.1    jruoho void
    996  1.1    jruoho AcpiDmVendorSmallDescriptor (
    997  1.6  christos     ACPI_OP_WALK_INFO       *Info,
    998  1.1    jruoho     AML_RESOURCE            *Resource,
    999  1.1    jruoho     UINT32                  Length,
   1000  1.1    jruoho     UINT32                  Level);
   1001  1.1    jruoho 
   1002  1.1    jruoho 
   1003  1.1    jruoho /*
   1004  1.1    jruoho  * dmutils
   1005  1.1    jruoho  */
   1006  1.1    jruoho void
   1007  1.1    jruoho AcpiDmDecodeAttribute (
   1008  1.1    jruoho     UINT8                   Attribute);
   1009  1.1    jruoho 
   1010  1.1    jruoho void
   1011  1.1    jruoho AcpiDmIndent (
   1012  1.1    jruoho     UINT32                  Level);
   1013  1.1    jruoho 
   1014  1.1    jruoho BOOLEAN
   1015  1.1    jruoho AcpiDmCommaIfListMember (
   1016  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
   1017  1.1    jruoho 
   1018  1.1    jruoho void
   1019  1.1    jruoho AcpiDmCommaIfFieldMember (
   1020  1.1    jruoho     ACPI_PARSE_OBJECT       *Op);
   1021  1.1    jruoho 
   1022  1.1    jruoho 
   1023  1.1    jruoho /*
   1024  1.1    jruoho  * dmrestag
   1025  1.1    jruoho  */
   1026  1.1    jruoho void
   1027  1.1    jruoho AcpiDmFindResources (
   1028  1.1    jruoho     ACPI_PARSE_OBJECT       *Root);
   1029  1.1    jruoho 
   1030  1.1    jruoho void
   1031  1.1    jruoho AcpiDmCheckResourceReference (
   1032  1.1    jruoho     ACPI_PARSE_OBJECT       *Op,
   1033  1.1    jruoho     ACPI_WALK_STATE         *WalkState);
   1034  1.1    jruoho 
   1035  1.3    jruoho 
   1036  1.3    jruoho /*
   1037  1.7  christos  * dmcstyle
   1038  1.7  christos  */
   1039  1.7  christos BOOLEAN
   1040  1.7  christos AcpiDmCheckForSymbolicOpcode (
   1041  1.7  christos     ACPI_PARSE_OBJECT       *Op,
   1042  1.7  christos     ACPI_OP_WALK_INFO       *Info);
   1043  1.7  christos 
   1044  1.7  christos void
   1045  1.7  christos AcpiDmCloseOperator (
   1046  1.7  christos     ACPI_PARSE_OBJECT       *Op);
   1047  1.7  christos 
   1048  1.7  christos 
   1049  1.7  christos /*
   1050  1.9  christos  * dmtables
   1051  1.3    jruoho  */
   1052  1.3    jruoho void
   1053  1.3    jruoho AdDisassemblerHeader (
   1054  1.7  christos     char                    *Filename,
   1055  1.7  christos     UINT8                   TableType);
   1056  1.3    jruoho 
   1057  1.7  christos #define ACPI_IS_AML_TABLE   0
   1058  1.7  christos #define ACPI_IS_DATA_TABLE  1
   1059  1.3    jruoho 
   1060  1.9  christos 
   1061  1.9  christos /*
   1062  1.9  christos  * adisasm
   1063  1.9  christos  */
   1064  1.9  christos ACPI_STATUS
   1065  1.9  christos AdAmlDisassemble (
   1066  1.9  christos     BOOLEAN                 OutToFile,
   1067  1.9  christos     char                    *Filename,
   1068  1.9  christos     char                    *Prefix,
   1069  1.9  christos     char                    **OutFilename);
   1070  1.9  christos 
   1071  1.9  christos ACPI_STATUS
   1072  1.9  christos AdGetLocalTables (
   1073  1.9  christos     void);
   1074  1.9  christos 
   1075  1.9  christos ACPI_STATUS
   1076  1.9  christos AdParseTable (
   1077  1.9  christos     ACPI_TABLE_HEADER       *Table,
   1078  1.9  christos     ACPI_OWNER_ID           *OwnerId,
   1079  1.9  christos     BOOLEAN                 LoadTable,
   1080  1.9  christos     BOOLEAN                 External);
   1081  1.9  christos 
   1082  1.9  christos ACPI_STATUS
   1083  1.9  christos AdDisplayTables (
   1084  1.9  christos     char                    *Filename,
   1085  1.9  christos     ACPI_TABLE_HEADER       *Table);
   1086  1.9  christos 
   1087  1.9  christos ACPI_STATUS
   1088  1.9  christos AdDisplayStatistics (
   1089  1.9  christos     void);
   1090  1.9  christos 
   1091  1.1    jruoho #endif  /* __ACDISASM_H__ */
   1092