xref: /freebsd/sys/contrib/dev/acpica/include/acdisasm.h (revision cfd1ed46817c680fa7822bc523b054ff644055dc)
1a9f12690SJung-uk Kim /******************************************************************************
2a9f12690SJung-uk Kim  *
3a9f12690SJung-uk Kim  * Name: acdisasm.h - AML disassembler
4a9f12690SJung-uk Kim  *
5a9f12690SJung-uk Kim  *****************************************************************************/
6a9f12690SJung-uk Kim 
70d84335fSJung-uk Kim /******************************************************************************
80d84335fSJung-uk Kim  *
90d84335fSJung-uk Kim  * 1. Copyright Notice
100d84335fSJung-uk Kim  *
1129f37e9bSJung-uk Kim  * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
12a9f12690SJung-uk Kim  * All rights reserved.
13a9f12690SJung-uk Kim  *
140d84335fSJung-uk Kim  * 2. License
150d84335fSJung-uk Kim  *
160d84335fSJung-uk Kim  * 2.1. This is your license from Intel Corp. under its intellectual property
170d84335fSJung-uk Kim  * rights. You may have additional license terms from the party that provided
180d84335fSJung-uk Kim  * you this software, covering your right to use that party's intellectual
190d84335fSJung-uk Kim  * property rights.
200d84335fSJung-uk Kim  *
210d84335fSJung-uk Kim  * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
220d84335fSJung-uk Kim  * copy of the source code appearing in this file ("Covered Code") an
230d84335fSJung-uk Kim  * irrevocable, perpetual, worldwide license under Intel's copyrights in the
240d84335fSJung-uk Kim  * base code distributed originally by Intel ("Original Intel Code") to copy,
250d84335fSJung-uk Kim  * make derivatives, distribute, use and display any portion of the Covered
260d84335fSJung-uk Kim  * Code in any form, with the right to sublicense such rights; and
270d84335fSJung-uk Kim  *
280d84335fSJung-uk Kim  * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
290d84335fSJung-uk Kim  * license (with the right to sublicense), under only those claims of Intel
300d84335fSJung-uk Kim  * patents that are infringed by the Original Intel Code, to make, use, sell,
310d84335fSJung-uk Kim  * offer to sell, and import the Covered Code and derivative works thereof
320d84335fSJung-uk Kim  * solely to the minimum extent necessary to exercise the above copyright
330d84335fSJung-uk Kim  * license, and in no event shall the patent license extend to any additions
340d84335fSJung-uk Kim  * to or modifications of the Original Intel Code. No other license or right
350d84335fSJung-uk Kim  * is granted directly or by implication, estoppel or otherwise;
360d84335fSJung-uk Kim  *
370d84335fSJung-uk Kim  * The above copyright and patent license is granted only if the following
380d84335fSJung-uk Kim  * conditions are met:
390d84335fSJung-uk Kim  *
400d84335fSJung-uk Kim  * 3. Conditions
410d84335fSJung-uk Kim  *
420d84335fSJung-uk Kim  * 3.1. Redistribution of Source with Rights to Further Distribute Source.
430d84335fSJung-uk Kim  * Redistribution of source code of any substantial portion of the Covered
440d84335fSJung-uk Kim  * Code or modification with rights to further distribute source must include
450d84335fSJung-uk Kim  * the above Copyright Notice, the above License, this list of Conditions,
460d84335fSJung-uk Kim  * and the following Disclaimer and Export Compliance provision. In addition,
470d84335fSJung-uk Kim  * Licensee must cause all Covered Code to which Licensee contributes to
480d84335fSJung-uk Kim  * contain a file documenting the changes Licensee made to create that Covered
490d84335fSJung-uk Kim  * Code and the date of any change. Licensee must include in that file the
500d84335fSJung-uk Kim  * documentation of any changes made by any predecessor Licensee. Licensee
510d84335fSJung-uk Kim  * must include a prominent statement that the modification is derived,
520d84335fSJung-uk Kim  * directly or indirectly, from Original Intel Code.
530d84335fSJung-uk Kim  *
540d84335fSJung-uk Kim  * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
550d84335fSJung-uk Kim  * Redistribution of source code of any substantial portion of the Covered
560d84335fSJung-uk Kim  * Code or modification without rights to further distribute source must
570d84335fSJung-uk Kim  * include the following Disclaimer and Export Compliance provision in the
580d84335fSJung-uk Kim  * documentation and/or other materials provided with distribution. In
590d84335fSJung-uk Kim  * addition, Licensee may not authorize further sublicense of source of any
600d84335fSJung-uk Kim  * portion of the Covered Code, and must include terms to the effect that the
610d84335fSJung-uk Kim  * license from Licensee to its licensee is limited to the intellectual
620d84335fSJung-uk Kim  * property embodied in the software Licensee provides to its licensee, and
630d84335fSJung-uk Kim  * not to intellectual property embodied in modifications its licensee may
640d84335fSJung-uk Kim  * make.
650d84335fSJung-uk Kim  *
660d84335fSJung-uk Kim  * 3.3. Redistribution of Executable. Redistribution in executable form of any
670d84335fSJung-uk Kim  * substantial portion of the Covered Code or modification must reproduce the
680d84335fSJung-uk Kim  * above Copyright Notice, and the following Disclaimer and Export Compliance
690d84335fSJung-uk Kim  * provision in the documentation and/or other materials provided with the
700d84335fSJung-uk Kim  * distribution.
710d84335fSJung-uk Kim  *
720d84335fSJung-uk Kim  * 3.4. Intel retains all right, title, and interest in and to the Original
730d84335fSJung-uk Kim  * Intel Code.
740d84335fSJung-uk Kim  *
750d84335fSJung-uk Kim  * 3.5. Neither the name Intel nor any other trademark owned or controlled by
760d84335fSJung-uk Kim  * Intel shall be used in advertising or otherwise to promote the sale, use or
770d84335fSJung-uk Kim  * other dealings in products derived from or relating to the Covered Code
780d84335fSJung-uk Kim  * without prior written authorization from Intel.
790d84335fSJung-uk Kim  *
800d84335fSJung-uk Kim  * 4. Disclaimer and Export Compliance
810d84335fSJung-uk Kim  *
820d84335fSJung-uk Kim  * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
830d84335fSJung-uk Kim  * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
840d84335fSJung-uk Kim  * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
850d84335fSJung-uk Kim  * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
860d84335fSJung-uk Kim  * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
870d84335fSJung-uk Kim  * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
880d84335fSJung-uk Kim  * PARTICULAR PURPOSE.
890d84335fSJung-uk Kim  *
900d84335fSJung-uk Kim  * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
910d84335fSJung-uk Kim  * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
920d84335fSJung-uk Kim  * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
930d84335fSJung-uk Kim  * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
940d84335fSJung-uk Kim  * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
950d84335fSJung-uk Kim  * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
960d84335fSJung-uk Kim  * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
970d84335fSJung-uk Kim  * LIMITED REMEDY.
980d84335fSJung-uk Kim  *
990d84335fSJung-uk Kim  * 4.3. Licensee shall not export, either directly or indirectly, any of this
1000d84335fSJung-uk Kim  * software or system incorporating such software without first obtaining any
1010d84335fSJung-uk Kim  * required license or other approval from the U. S. Department of Commerce or
1020d84335fSJung-uk Kim  * any other agency or department of the United States Government. In the
1030d84335fSJung-uk Kim  * event Licensee exports any such software from the United States or
1040d84335fSJung-uk Kim  * re-exports any such software from a foreign destination, Licensee shall
1050d84335fSJung-uk Kim  * ensure that the distribution and export/re-export of the software is in
1060d84335fSJung-uk Kim  * compliance with all laws, regulations, orders, or other restrictions of the
1070d84335fSJung-uk Kim  * U.S. Export Administration Regulations. Licensee agrees that neither it nor
1080d84335fSJung-uk Kim  * any of its subsidiaries will export/re-export any technical data, process,
1090d84335fSJung-uk Kim  * software, or service, directly or indirectly, to any country for which the
1100d84335fSJung-uk Kim  * United States government or any agency thereof requires an export license,
1110d84335fSJung-uk Kim  * other governmental approval, or letter of assurance, without first obtaining
1120d84335fSJung-uk Kim  * such license, approval or letter.
1130d84335fSJung-uk Kim  *
1140d84335fSJung-uk Kim  *****************************************************************************
1150d84335fSJung-uk Kim  *
1160d84335fSJung-uk Kim  * Alternatively, you may choose to be licensed under the terms of the
1170d84335fSJung-uk Kim  * following license:
1180d84335fSJung-uk Kim  *
119d244b227SJung-uk Kim  * Redistribution and use in source and binary forms, with or without
120d244b227SJung-uk Kim  * modification, are permitted provided that the following conditions
121d244b227SJung-uk Kim  * are met:
122d244b227SJung-uk Kim  * 1. Redistributions of source code must retain the above copyright
123d244b227SJung-uk Kim  *    notice, this list of conditions, and the following disclaimer,
124d244b227SJung-uk Kim  *    without modification.
125d244b227SJung-uk Kim  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
126d244b227SJung-uk Kim  *    substantially similar to the "NO WARRANTY" disclaimer below
127d244b227SJung-uk Kim  *    ("Disclaimer") and any redistribution must be conditioned upon
128d244b227SJung-uk Kim  *    including a substantially similar Disclaimer requirement for further
129d244b227SJung-uk Kim  *    binary redistribution.
130d244b227SJung-uk Kim  * 3. Neither the names of the above-listed copyright holders nor the names
131d244b227SJung-uk Kim  *    of any contributors may be used to endorse or promote products derived
132d244b227SJung-uk Kim  *    from this software without specific prior written permission.
133a9f12690SJung-uk Kim  *
1340d84335fSJung-uk Kim  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1350d84335fSJung-uk Kim  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1360d84335fSJung-uk Kim  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
1370d84335fSJung-uk Kim  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
1380d84335fSJung-uk Kim  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
1390d84335fSJung-uk Kim  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
1400d84335fSJung-uk Kim  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
1410d84335fSJung-uk Kim  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
1420d84335fSJung-uk Kim  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
1430d84335fSJung-uk Kim  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
1440d84335fSJung-uk Kim  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1450d84335fSJung-uk Kim  *
1460d84335fSJung-uk Kim  * Alternatively, you may choose to be licensed under the terms of the
147d244b227SJung-uk Kim  * GNU General Public License ("GPL") version 2 as published by the Free
148d244b227SJung-uk Kim  * Software Foundation.
149a9f12690SJung-uk Kim  *
1500d84335fSJung-uk Kim  *****************************************************************************/
151a9f12690SJung-uk Kim 
152a9f12690SJung-uk Kim #ifndef __ACDISASM_H__
153a9f12690SJung-uk Kim #define __ACDISASM_H__
154a9f12690SJung-uk Kim 
155ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/include/amlresrc.h>
156a9f12690SJung-uk Kim 
157a9f12690SJung-uk Kim 
158a9f12690SJung-uk Kim #define BLOCK_NONE              0
159a9f12690SJung-uk Kim #define BLOCK_PAREN             1
160a9f12690SJung-uk Kim #define BLOCK_BRACE             2
161a9f12690SJung-uk Kim #define BLOCK_COMMA_LIST        4
162a9f12690SJung-uk Kim #define ACPI_DEFAULT_RESNAME    *(UINT32 *) "__RD"
163a9f12690SJung-uk Kim 
164d244b227SJung-uk Kim /*
165d244b227SJung-uk Kim  * Raw table data header. Used by disassembler and data table compiler.
166d244b227SJung-uk Kim  * Do not change.
167d244b227SJung-uk Kim  */
168d244b227SJung-uk Kim #define ACPI_RAW_TABLE_DATA_HEADER      "Raw Table Data"
169d244b227SJung-uk Kim 
170a9f12690SJung-uk Kim 
171a371a5fdSJung-uk Kim typedef struct acpi_dmtable_info
172a9f12690SJung-uk Kim {
173a9f12690SJung-uk Kim     UINT8                       Opcode;
174ec3fc72fSJung-uk Kim     UINT16                      Offset;
175a9f12690SJung-uk Kim     char                        *Name;
176a88e22b7SJung-uk Kim     UINT8                       Flags;
177a9f12690SJung-uk Kim 
178a9f12690SJung-uk Kim } ACPI_DMTABLE_INFO;
179a9f12690SJung-uk Kim 
180313a0c13SJung-uk Kim /* Values for Flags field above */
181313a0c13SJung-uk Kim 
182a88e22b7SJung-uk Kim #define DT_LENGTH                       0x01    /* Field is a subtable length */
183a88e22b7SJung-uk Kim #define DT_FLAG                         0x02    /* Field is a flag value */
184a88e22b7SJung-uk Kim #define DT_NON_ZERO                     0x04    /* Field must be non-zero */
185313a0c13SJung-uk Kim #define DT_OPTIONAL                     0x08    /* Field is optional */
186313a0c13SJung-uk Kim #define DT_DESCRIBES_OPTIONAL           0x10    /* Field describes an optional field (length, etc.) */
187313a0c13SJung-uk Kim #define DT_COUNT                        0x20    /* Currently not used */
188a88e22b7SJung-uk Kim 
189a9f12690SJung-uk Kim /*
190a9f12690SJung-uk Kim  * Values for Opcode above.
1913f0275a0SJung-uk Kim  * Note: 0-7 must not change, they are used as a flag shift value. Other
1923f0275a0SJung-uk Kim  * than those, new values can be added wherever appropriate.
193a9f12690SJung-uk Kim  */
1943f0275a0SJung-uk Kim typedef enum
1953f0275a0SJung-uk Kim {
1963f0275a0SJung-uk Kim     /* Simple Data Types */
1973f0275a0SJung-uk Kim 
1983f0275a0SJung-uk Kim     ACPI_DMT_FLAG0          = 0,
1993f0275a0SJung-uk Kim     ACPI_DMT_FLAG1          = 1,
2003f0275a0SJung-uk Kim     ACPI_DMT_FLAG2          = 2,
2013f0275a0SJung-uk Kim     ACPI_DMT_FLAG3          = 3,
2023f0275a0SJung-uk Kim     ACPI_DMT_FLAG4          = 4,
2033f0275a0SJung-uk Kim     ACPI_DMT_FLAG5          = 5,
2043f0275a0SJung-uk Kim     ACPI_DMT_FLAG6          = 6,
2053f0275a0SJung-uk Kim     ACPI_DMT_FLAG7          = 7,
2063f0275a0SJung-uk Kim     ACPI_DMT_FLAGS0,
2073f0275a0SJung-uk Kim     ACPI_DMT_FLAGS1,
2083f0275a0SJung-uk Kim     ACPI_DMT_FLAGS2,
2093f0275a0SJung-uk Kim     ACPI_DMT_FLAGS4,
210af051161SJung-uk Kim     ACPI_DMT_FLAGS4_0,
211af051161SJung-uk Kim     ACPI_DMT_FLAGS4_4,
212af051161SJung-uk Kim     ACPI_DMT_FLAGS4_8,
213af051161SJung-uk Kim     ACPI_DMT_FLAGS4_12,
214af051161SJung-uk Kim     ACPI_DMT_FLAGS16_16,
2153f0275a0SJung-uk Kim     ACPI_DMT_UINT8,
2163f0275a0SJung-uk Kim     ACPI_DMT_UINT16,
2173f0275a0SJung-uk Kim     ACPI_DMT_UINT24,
2183f0275a0SJung-uk Kim     ACPI_DMT_UINT32,
2193f0275a0SJung-uk Kim     ACPI_DMT_UINT40,
2203f0275a0SJung-uk Kim     ACPI_DMT_UINT48,
2213f0275a0SJung-uk Kim     ACPI_DMT_UINT56,
2223f0275a0SJung-uk Kim     ACPI_DMT_UINT64,
2233f0275a0SJung-uk Kim     ACPI_DMT_BUF7,
2248d744e47SJung-uk Kim     ACPI_DMT_BUF10,
225493deb39SJung-uk Kim     ACPI_DMT_BUF12,
2263f0275a0SJung-uk Kim     ACPI_DMT_BUF16,
2273f0275a0SJung-uk Kim     ACPI_DMT_BUF128,
2283f0275a0SJung-uk Kim     ACPI_DMT_SIG,
2293f0275a0SJung-uk Kim     ACPI_DMT_STRING,
2303f0275a0SJung-uk Kim     ACPI_DMT_NAME4,
2313f0275a0SJung-uk Kim     ACPI_DMT_NAME6,
2323f0275a0SJung-uk Kim     ACPI_DMT_NAME8,
2333f0275a0SJung-uk Kim 
2343f0275a0SJung-uk Kim     /* Types that are decoded to strings and miscellaneous */
2353f0275a0SJung-uk Kim 
2363f0275a0SJung-uk Kim     ACPI_DMT_ACCWIDTH,
2373f0275a0SJung-uk Kim     ACPI_DMT_CHKSUM,
2383f0275a0SJung-uk Kim     ACPI_DMT_GAS,
2393f0275a0SJung-uk Kim     ACPI_DMT_SPACEID,
2403f0275a0SJung-uk Kim     ACPI_DMT_UNICODE,
2413f0275a0SJung-uk Kim     ACPI_DMT_UUID,
2423f0275a0SJung-uk Kim 
2433f0275a0SJung-uk Kim     /* Types used only for the Data Table Compiler */
2443f0275a0SJung-uk Kim 
2453f0275a0SJung-uk Kim     ACPI_DMT_BUFFER,
2467cf3e94aSJung-uk Kim     ACPI_DMT_RAW_BUFFER,  /* Large, multiple line buffer */
2473f0275a0SJung-uk Kim     ACPI_DMT_DEVICE_PATH,
2483f0275a0SJung-uk Kim     ACPI_DMT_LABEL,
2493f0275a0SJung-uk Kim     ACPI_DMT_PCI_PATH,
2503f0275a0SJung-uk Kim 
2513f0275a0SJung-uk Kim     /* Types that are specific to particular ACPI tables */
2523f0275a0SJung-uk Kim 
2533f0275a0SJung-uk Kim     ACPI_DMT_ASF,
254*cfd1ed46SJung-uk Kim     ACPI_DMT_CEDT,
2553f0275a0SJung-uk Kim     ACPI_DMT_DMAR,
256313a0c13SJung-uk Kim     ACPI_DMT_DMAR_SCOPE,
2573f0275a0SJung-uk Kim     ACPI_DMT_EINJACT,
2583f0275a0SJung-uk Kim     ACPI_DMT_EINJINST,
2593f0275a0SJung-uk Kim     ACPI_DMT_ERSTACT,
2603f0275a0SJung-uk Kim     ACPI_DMT_ERSTINST,
2613f0275a0SJung-uk Kim     ACPI_DMT_FADTPM,
262313a0c13SJung-uk Kim     ACPI_DMT_GTDT,
2633f0275a0SJung-uk Kim     ACPI_DMT_HEST,
2643f0275a0SJung-uk Kim     ACPI_DMT_HESTNTFY,
2653f0275a0SJung-uk Kim     ACPI_DMT_HESTNTYP,
266af051161SJung-uk Kim     ACPI_DMT_HMAT,
267a371a5fdSJung-uk Kim     ACPI_DMT_IORTMEM,
2683f0275a0SJung-uk Kim     ACPI_DMT_IVRS,
269313a0c13SJung-uk Kim     ACPI_DMT_LPIT,
2703f0275a0SJung-uk Kim     ACPI_DMT_MADT,
271a371a5fdSJung-uk Kim     ACPI_DMT_NFIT,
272313a0c13SJung-uk Kim     ACPI_DMT_PCCT,
273*cfd1ed46SJung-uk Kim     ACPI_DMT_PHAT,
2743f0275a0SJung-uk Kim     ACPI_DMT_PMTT,
275*cfd1ed46SJung-uk Kim     ACPI_DMT_PMTT_VENDOR,
276af051161SJung-uk Kim     ACPI_DMT_PPTT,
2775f9b24faSJung-uk Kim     ACPI_DMT_SDEI,
27867d9aa44SJung-uk Kim     ACPI_DMT_SDEV,
2793f0275a0SJung-uk Kim     ACPI_DMT_SLIC,
2803f0275a0SJung-uk Kim     ACPI_DMT_SRAT,
28167d9aa44SJung-uk Kim     ACPI_DMT_TPM2,
282*cfd1ed46SJung-uk Kim     ACPI_DMT_VIOT,
2833f0275a0SJung-uk Kim 
2843f0275a0SJung-uk Kim     /* Special opcodes */
2853f0275a0SJung-uk Kim 
2863f0275a0SJung-uk Kim     ACPI_DMT_EXTRA_TEXT,
2873f0275a0SJung-uk Kim     ACPI_DMT_EXIT
2883f0275a0SJung-uk Kim 
2893f0275a0SJung-uk Kim } ACPI_ENTRY_TYPES;
290a9f12690SJung-uk Kim 
291a9f12690SJung-uk Kim typedef
292a9f12690SJung-uk Kim void (*ACPI_DMTABLE_HANDLER) (
293a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
294a9f12690SJung-uk Kim 
295a88e22b7SJung-uk Kim typedef
296a88e22b7SJung-uk Kim ACPI_STATUS (*ACPI_CMTABLE_HANDLER) (
297a88e22b7SJung-uk Kim     void                    **PFieldList);
298a88e22b7SJung-uk Kim 
299a9f12690SJung-uk Kim typedef struct acpi_dmtable_data
300a9f12690SJung-uk Kim {
301a9f12690SJung-uk Kim     char                    *Signature;
302a9f12690SJung-uk Kim     ACPI_DMTABLE_INFO       *TableInfo;
303a9f12690SJung-uk Kim     ACPI_DMTABLE_HANDLER    TableHandler;
304a88e22b7SJung-uk Kim     ACPI_CMTABLE_HANDLER    CmTableHandler;
305a88e22b7SJung-uk Kim     const unsigned char     *Template;
306a9f12690SJung-uk Kim 
307a9f12690SJung-uk Kim } ACPI_DMTABLE_DATA;
308a9f12690SJung-uk Kim 
309a9f12690SJung-uk Kim 
310a9f12690SJung-uk Kim typedef struct acpi_op_walk_info
311a9f12690SJung-uk Kim {
31270e6ab8fSJung-uk Kim     ACPI_WALK_STATE         *WalkState;
31370e6ab8fSJung-uk Kim     ACPI_PARSE_OBJECT       *MappingOp;
31470e6ab8fSJung-uk Kim     UINT8                   *PreviousAml;
31570e6ab8fSJung-uk Kim     UINT8                   *StartAml;
316a9f12690SJung-uk Kim     UINT32                  Level;
317a9f12690SJung-uk Kim     UINT32                  LastLevel;
318a9f12690SJung-uk Kim     UINT32                  Count;
319a9f12690SJung-uk Kim     UINT32                  BitOffset;
320a9f12690SJung-uk Kim     UINT32                  Flags;
32170e6ab8fSJung-uk Kim     UINT32                  AmlOffset;
322a9f12690SJung-uk Kim 
323a9f12690SJung-uk Kim } ACPI_OP_WALK_INFO;
324a9f12690SJung-uk Kim 
325a88e22b7SJung-uk Kim /*
326a88e22b7SJung-uk Kim  * TBD - another copy of this is in asltypes.h, fix
327a88e22b7SJung-uk Kim  */
328a88e22b7SJung-uk Kim #ifndef ASL_WALK_CALLBACK_DEFINED
329a9f12690SJung-uk Kim typedef
330a9f12690SJung-uk Kim ACPI_STATUS (*ASL_WALK_CALLBACK) (
331a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT           *Op,
332a9f12690SJung-uk Kim     UINT32                      Level,
333a9f12690SJung-uk Kim     void                        *Context);
334a88e22b7SJung-uk Kim #define ASL_WALK_CALLBACK_DEFINED
335a88e22b7SJung-uk Kim #endif
336a88e22b7SJung-uk Kim 
3373f0275a0SJung-uk Kim typedef
3383f0275a0SJung-uk Kim void (*ACPI_RESOURCE_HANDLER) (
339313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
3403f0275a0SJung-uk Kim     AML_RESOURCE            *Resource,
3413f0275a0SJung-uk Kim     UINT32                  Length,
3423f0275a0SJung-uk Kim     UINT32                  Level);
343a9f12690SJung-uk Kim 
344a9f12690SJung-uk Kim typedef struct acpi_resource_tag
345a9f12690SJung-uk Kim {
346a9f12690SJung-uk Kim     UINT32                  BitIndex;
347a9f12690SJung-uk Kim     char                    *Tag;
348a9f12690SJung-uk Kim 
349a9f12690SJung-uk Kim } ACPI_RESOURCE_TAG;
350a9f12690SJung-uk Kim 
351a9f12690SJung-uk Kim /* Strings used for decoding flags to ASL keywords */
352a9f12690SJung-uk Kim 
353a9f12690SJung-uk Kim extern const char               *AcpiGbl_WordDecode[];
354a9f12690SJung-uk Kim extern const char               *AcpiGbl_IrqDecode[];
355a9f12690SJung-uk Kim extern const char               *AcpiGbl_LockRule[];
356a9f12690SJung-uk Kim extern const char               *AcpiGbl_AccessTypes[];
357a9f12690SJung-uk Kim extern const char               *AcpiGbl_UpdateRules[];
358a9f12690SJung-uk Kim extern const char               *AcpiGbl_MatchOps[];
359a9f12690SJung-uk Kim 
360a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf0[];
361a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf1[];
362a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf1a[];
363a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf2[];
364a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf2a[];
365a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf3[];
366a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf4[];
367a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsfHdr[];
368a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoBoot[];
369a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoBert[];
3703f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoBgrt[];
371*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedtHdr[];
372*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedt0[];
373a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCpep[];
374a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCpep0[];
3751df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt0[];
3761df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt1[];
377efcc2a30SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt2[];
378a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt2a[];
3791df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2[];
3801df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Device[];
3811df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Addr[];
3821df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Size[];
3831df130f1SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2Name[];
384313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbg2OemData[];
385a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDbgp[];
386a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar[];
387a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmarHdr[];
388a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmarScope[];
389a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar0[];
390a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar1[];
391a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar2[];
392d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar3[];
393313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDmar4[];
3943f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm[];
395a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm0[];
396a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm0a[];
397a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm1[];
398a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm1a[];
399a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoDrtm2[];
400a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEcdt[];
401a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEinj[];
402a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoEinj0[];
403a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErst[];
404a88e22b7SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoErst0[];
405a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFacs[];
406a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt1[];
4071cc50d6bSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt2[];
408a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt3[];
4093f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt5[];
410a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFadt6[];
4113f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt[];
4123f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdtHdr[];
4133f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt0[];
4143f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoFpdt1[];
415a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGas[];
4163f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt[];
417313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdtHdr[];
418cd6518c7SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdtEl2[];
419313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt0[];
420313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt0a[];
421313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGtdt1[];
422a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHeader[];
423a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest[];
424a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest0[];
425a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest1[];
426d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest2[];
427a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest6[];
428a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest7[];
429a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest8[];
430a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest9[];
431f8146b88SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest10[];
432af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHest11[];
433a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHestNotify[];
434d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHestBank[];
435a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHpet[];
436313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpitHdr[];
437313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpit0[];
438313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoLpit1[];
439af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat[];
440af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat0[];
441af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1[];
442af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1a[];
443af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1b[];
444af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat1c[];
445af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat2[];
446af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmat2a[];
447af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoHmatHdr[];
448a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort[];
449a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort0[];
450a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort0a[];
451a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort1[];
452a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort1a[];
453a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort2[];
454a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3[];
455a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3a[];
456a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3b[];
457a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort3c[];
458f8146b88SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort4[];
4593d90091dSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort5[];
460*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort6[];
461*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIort6a[];
462a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortAcc[];
463a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortHdr[];
464*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortHdr3[];
465a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortMap[];
466a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIortPad[];
467d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs[];
468d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs0[];
4693ee58df5SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs01[];
470d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs1[];
471d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs4[];
472d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8a[];
473d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8b[];
474d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrs8c[];
475*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHid[];
476*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHid1[];
477d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoIvrsHdr[];
478a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt[];
479a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt0[];
480a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt1[];
481a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt2[];
482a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt3[];
483a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt4[];
484a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt5[];
485a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt6[];
486a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt7[];
487a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt8[];
488a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt9[];
489a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt10[];
4903f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11[];
4913f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt12[];
492313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt13[];
493313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt14[];
494a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt15[];
495*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt16[];
496a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadtHdr[];
497a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMcfg[];
498a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMcfg0[];
499ca3cf4faSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMchi[];
5003f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst[];
5013f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0[];
5023f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0A[];
5033f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst0B[];
5043f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst1[];
5053f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMpst2[];
506d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMsct[];
507d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMsct0[];
508a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit[];
509a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfitHdr[];
510a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit0[];
511a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit1[];
512a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit2[];
513a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit2a[];
514a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit3[];
515a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit3a[];
516a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit4[];
517a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit5[];
518a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6[];
519a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6a[];
520b7b7e711SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit7[];
52167d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPdtt[];
522*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhatHdr[];
523*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat0[];
524*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat0a[];
525*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat1[];
526*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat1a[];
527*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat1b[];
5283f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt[];
5293f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt0[];
5303f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt1[];
5313f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmtt2[];
532*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmttVendor[];
5333f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPmttHdr[];
5343f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct[];
535313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcctHdr[];
5363f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct0[];
537313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct1[];
538f8146b88SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct2[];
539af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct3[];
540af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct4[];
541*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPcct5[];
54267d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPdtt0[];
543af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt0[];
544af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt0a[];
545af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt1[];
546*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt1a[];
547af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPptt2[];
548af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPpttHdr[];
549493deb39SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRasf[];
550a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRsdp1[];
551a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRsdp2[];
5523f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt[];
5533f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3ptHdr[];
5543f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt0[];
5553f0275a0SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoS3pt1[];
556a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSbst[];
5575f9b24faSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdei[];
55867d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev[];
55967d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevHdr[];
56067d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev0[];
56167d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev0a[];
562*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev0b[];
563*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevSecCompHdr[];
564*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevSecCompId[];
565*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdevSecCompMem[];
56667d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev1[];
56767d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev1a[];
56867d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSdev1b[];
5697cf3e94aSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSlic[];
570a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSlit[];
571a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSpcr[];
572a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSpmi[];
573a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat[];
574a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSratHdr[];
575a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat0[];
576a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat1[];
577a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat2[];
578313a0c13SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat3[];
579af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat4[];
580cd6518c7SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat5[];
581a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStao[];
582a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStaoStr[];
583fe0f0bbbSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaHdr[];
584fe0f0bbbSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaClient[];
585fe0f0bbbSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTcpaServer[];
586efcc2a30SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm2[];
58767d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm2a[];
58867d9aa44SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm211[];
5894a38ee6dSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm23[];
5904a38ee6dSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoTpm23a[];
591d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoUefi[];
592*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot[];
593*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViotHeader[];
594*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot1[];
595*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot2[];
596*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot3[];
597*cfd1ed46SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoViot4[];
598d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWaet[];
599d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdat[];
600d6dd1baeSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdat0[];
601a88e22b7SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWddt[];
602a9f12690SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWdrt[];
603a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWpbt[];
604a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWpbt0[];
605af051161SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoWsmt[];
606a371a5fdSJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoXenv[];
607a9f12690SJung-uk Kim 
608d244b227SJung-uk Kim extern ACPI_DMTABLE_INFO        AcpiDmTableInfoGeneric[][2];
609d244b227SJung-uk Kim 
610a9f12690SJung-uk Kim /*
611a371a5fdSJung-uk Kim  * dmtable and ahtable
612a9f12690SJung-uk Kim  */
613a371a5fdSJung-uk Kim extern const ACPI_DMTABLE_DATA  AcpiDmTableData[];
6146f1f1a63SJung-uk Kim extern const AH_TABLE           AcpiGbl_SupportedTables[];
615a88e22b7SJung-uk Kim 
616a88e22b7SJung-uk Kim UINT8
617a88e22b7SJung-uk Kim AcpiDmGenerateChecksum (
618a88e22b7SJung-uk Kim     void                    *Table,
619a88e22b7SJung-uk Kim     UINT32                  Length,
620a88e22b7SJung-uk Kim     UINT8                   OriginalChecksum);
621a88e22b7SJung-uk Kim 
622a371a5fdSJung-uk Kim const ACPI_DMTABLE_DATA *
623a88e22b7SJung-uk Kim AcpiDmGetTableData (
624a88e22b7SJung-uk Kim     char                    *Signature);
625a88e22b7SJung-uk Kim 
626a9f12690SJung-uk Kim void
627a9f12690SJung-uk Kim AcpiDmDumpDataTable (
628a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
629a9f12690SJung-uk Kim 
630a9f12690SJung-uk Kim ACPI_STATUS
631a9f12690SJung-uk Kim AcpiDmDumpTable (
632a9f12690SJung-uk Kim     UINT32                  TableLength,
633a9f12690SJung-uk Kim     UINT32                  TableOffset,
634a9f12690SJung-uk Kim     void                    *Table,
63567d9aa44SJung-uk Kim     UINT32                  SubtableLength,
636a9f12690SJung-uk Kim     ACPI_DMTABLE_INFO        *Info);
637a9f12690SJung-uk Kim 
638a9f12690SJung-uk Kim void
639a9f12690SJung-uk Kim AcpiDmLineHeader (
640a9f12690SJung-uk Kim     UINT32                  Offset,
641a9f12690SJung-uk Kim     UINT32                  ByteLength,
642a9f12690SJung-uk Kim     char                    *Name);
643a9f12690SJung-uk Kim 
644a9f12690SJung-uk Kim void
645a9f12690SJung-uk Kim AcpiDmLineHeader2 (
646a9f12690SJung-uk Kim     UINT32                  Offset,
647a9f12690SJung-uk Kim     UINT32                  ByteLength,
648a9f12690SJung-uk Kim     char                    *Name,
649a9f12690SJung-uk Kim     UINT32                  Value);
650a9f12690SJung-uk Kim 
651a9f12690SJung-uk Kim 
652a9f12690SJung-uk Kim /*
653a9f12690SJung-uk Kim  * dmtbdump
654a9f12690SJung-uk Kim  */
655a9f12690SJung-uk Kim void
6567cf3e94aSJung-uk Kim AcpiDmDumpBuffer (
6577cf3e94aSJung-uk Kim     void                    *Table,
6587cf3e94aSJung-uk Kim     UINT32                  BufferOffset,
6597cf3e94aSJung-uk Kim     UINT32                  Length,
6607cf3e94aSJung-uk Kim     UINT32                  AbsoluteOffset,
661a371a5fdSJung-uk Kim     char                    *Header);
662a371a5fdSJung-uk Kim 
663a371a5fdSJung-uk Kim void
664a371a5fdSJung-uk Kim AcpiDmDumpUnicode (
665a371a5fdSJung-uk Kim     void                    *Table,
666a371a5fdSJung-uk Kim     UINT32                  BufferOffset,
667a371a5fdSJung-uk Kim     UINT32                  ByteLength);
6687cf3e94aSJung-uk Kim 
6697cf3e94aSJung-uk Kim void
670a9f12690SJung-uk Kim AcpiDmDumpAsf (
671a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
672a9f12690SJung-uk Kim 
673a9f12690SJung-uk Kim void
674*cfd1ed46SJung-uk Kim AcpiDmDumpCedt (
675*cfd1ed46SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
676*cfd1ed46SJung-uk Kim 
677*cfd1ed46SJung-uk Kim void
678a9f12690SJung-uk Kim AcpiDmDumpCpep (
679a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
680a9f12690SJung-uk Kim 
681a9f12690SJung-uk Kim void
6821df130f1SJung-uk Kim AcpiDmDumpCsrt (
6831df130f1SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
6841df130f1SJung-uk Kim 
6851df130f1SJung-uk Kim void
6861df130f1SJung-uk Kim AcpiDmDumpDbg2 (
6871df130f1SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
6881df130f1SJung-uk Kim 
6891df130f1SJung-uk Kim void
690a9f12690SJung-uk Kim AcpiDmDumpDmar (
691a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
692a9f12690SJung-uk Kim 
693a9f12690SJung-uk Kim void
694a371a5fdSJung-uk Kim AcpiDmDumpDrtm (
695a371a5fdSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
696a371a5fdSJung-uk Kim 
697a371a5fdSJung-uk Kim void
698a9f12690SJung-uk Kim AcpiDmDumpEinj (
699a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
700a9f12690SJung-uk Kim 
701a9f12690SJung-uk Kim void
702a9f12690SJung-uk Kim AcpiDmDumpErst (
703a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
704a9f12690SJung-uk Kim 
705a9f12690SJung-uk Kim void
706a9f12690SJung-uk Kim AcpiDmDumpFadt (
707a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
708a9f12690SJung-uk Kim 
709a9f12690SJung-uk Kim void
7103f0275a0SJung-uk Kim AcpiDmDumpFpdt (
7113f0275a0SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
7123f0275a0SJung-uk Kim 
7133f0275a0SJung-uk Kim void
714313a0c13SJung-uk Kim AcpiDmDumpGtdt (
715313a0c13SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
716313a0c13SJung-uk Kim 
717313a0c13SJung-uk Kim void
718a9f12690SJung-uk Kim AcpiDmDumpHest (
719a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
720a9f12690SJung-uk Kim 
721a9f12690SJung-uk Kim void
722af051161SJung-uk Kim AcpiDmDumpHmat (
723af051161SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
724af051161SJung-uk Kim 
725af051161SJung-uk Kim void
726a371a5fdSJung-uk Kim AcpiDmDumpIort (
727a371a5fdSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
728a371a5fdSJung-uk Kim 
729a371a5fdSJung-uk Kim void
730d6dd1baeSJung-uk Kim AcpiDmDumpIvrs (
731d6dd1baeSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
732d6dd1baeSJung-uk Kim 
733d6dd1baeSJung-uk Kim void
734313a0c13SJung-uk Kim AcpiDmDumpLpit (
735313a0c13SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
736313a0c13SJung-uk Kim 
737313a0c13SJung-uk Kim void
738a9f12690SJung-uk Kim AcpiDmDumpMadt (
739a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
740a9f12690SJung-uk Kim 
741d6dd1baeSJung-uk Kim void
7423f0275a0SJung-uk Kim AcpiDmDumpMcfg (
7433f0275a0SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
7443f0275a0SJung-uk Kim 
7453f0275a0SJung-uk Kim void
7463f0275a0SJung-uk Kim AcpiDmDumpMpst (
7473f0275a0SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
7483f0275a0SJung-uk Kim 
7493f0275a0SJung-uk Kim void
750d6dd1baeSJung-uk Kim AcpiDmDumpMsct (
751d6dd1baeSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
752d6dd1baeSJung-uk Kim 
7533f0275a0SJung-uk Kim void
754a371a5fdSJung-uk Kim AcpiDmDumpNfit (
755a371a5fdSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
756a371a5fdSJung-uk Kim 
757a371a5fdSJung-uk Kim void
7583f0275a0SJung-uk Kim AcpiDmDumpPcct (
7593f0275a0SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
7603f0275a0SJung-uk Kim 
7613f0275a0SJung-uk Kim void
76267d9aa44SJung-uk Kim AcpiDmDumpPdtt (
76367d9aa44SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
76467d9aa44SJung-uk Kim 
76567d9aa44SJung-uk Kim void
766*cfd1ed46SJung-uk Kim AcpiDmDumpPhat (
767*cfd1ed46SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
768*cfd1ed46SJung-uk Kim 
769*cfd1ed46SJung-uk Kim void
7703f0275a0SJung-uk Kim AcpiDmDumpPmtt (
7713f0275a0SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
7723f0275a0SJung-uk Kim 
773af051161SJung-uk Kim void
774af051161SJung-uk Kim AcpiDmDumpPptt (
775af051161SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
776af051161SJung-uk Kim 
777a9f12690SJung-uk Kim UINT32
778a9f12690SJung-uk Kim AcpiDmDumpRsdp (
779a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
780a9f12690SJung-uk Kim 
781a9f12690SJung-uk Kim void
782a9f12690SJung-uk Kim AcpiDmDumpRsdt (
783a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
784a9f12690SJung-uk Kim 
7853f0275a0SJung-uk Kim UINT32
7863f0275a0SJung-uk Kim AcpiDmDumpS3pt (
7873f0275a0SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
7883f0275a0SJung-uk Kim 
789a9f12690SJung-uk Kim void
79067d9aa44SJung-uk Kim AcpiDmDumpSdev (
79167d9aa44SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
79267d9aa44SJung-uk Kim 
79367d9aa44SJung-uk Kim void
794dcbce41eSJung-uk Kim AcpiDmDumpSlic (
795dcbce41eSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
796dcbce41eSJung-uk Kim 
797dcbce41eSJung-uk Kim void
798a9f12690SJung-uk Kim AcpiDmDumpSlit (
799a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
800a9f12690SJung-uk Kim 
801a9f12690SJung-uk Kim void
802a9f12690SJung-uk Kim AcpiDmDumpSrat (
803a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
804a9f12690SJung-uk Kim 
805a9f12690SJung-uk Kim void
806a371a5fdSJung-uk Kim AcpiDmDumpStao (
807a371a5fdSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
808a371a5fdSJung-uk Kim 
809a371a5fdSJung-uk Kim void
810fe0f0bbbSJung-uk Kim AcpiDmDumpTcpa (
811fe0f0bbbSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
812fe0f0bbbSJung-uk Kim 
813fe0f0bbbSJung-uk Kim void
81467d9aa44SJung-uk Kim AcpiDmDumpTpm2 (
81567d9aa44SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
81667d9aa44SJung-uk Kim 
81767d9aa44SJung-uk Kim void
818*cfd1ed46SJung-uk Kim AcpiDmDumpViot (
819*cfd1ed46SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
820*cfd1ed46SJung-uk Kim 
821*cfd1ed46SJung-uk Kim void
822d6dd1baeSJung-uk Kim AcpiDmDumpWdat (
823d6dd1baeSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
824d6dd1baeSJung-uk Kim 
825d6dd1baeSJung-uk Kim void
826a371a5fdSJung-uk Kim AcpiDmDumpWpbt (
827a371a5fdSJung-uk Kim     ACPI_TABLE_HEADER       *Table);
828a371a5fdSJung-uk Kim 
829a371a5fdSJung-uk Kim void
830a9f12690SJung-uk Kim AcpiDmDumpXsdt (
831a9f12690SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
832a9f12690SJung-uk Kim 
833a9f12690SJung-uk Kim 
834a9f12690SJung-uk Kim /*
835a9f12690SJung-uk Kim  * dmwalk
836a9f12690SJung-uk Kim  */
837a9f12690SJung-uk Kim void
838a9f12690SJung-uk Kim AcpiDmDisassemble (
839a9f12690SJung-uk Kim     ACPI_WALK_STATE         *WalkState,
840a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Origin,
841a9f12690SJung-uk Kim     UINT32                  NumOpcodes);
842a9f12690SJung-uk Kim 
843a9f12690SJung-uk Kim void
844a9f12690SJung-uk Kim AcpiDmWalkParseTree (
845a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op,
846a9f12690SJung-uk Kim     ASL_WALK_CALLBACK       DescendingCallback,
847a9f12690SJung-uk Kim     ASL_WALK_CALLBACK       AscendingCallback,
848a9f12690SJung-uk Kim     void                    *Context);
849a9f12690SJung-uk Kim 
850a9f12690SJung-uk Kim 
851a9f12690SJung-uk Kim /*
852a9f12690SJung-uk Kim  * dmopcode
853a9f12690SJung-uk Kim  */
854a9f12690SJung-uk Kim void
855a9f12690SJung-uk Kim AcpiDmDisassembleOneOp (
856a9f12690SJung-uk Kim     ACPI_WALK_STATE         *WalkState,
857a9f12690SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
858a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
859a9f12690SJung-uk Kim 
860a9f12690SJung-uk Kim UINT32
861a9f12690SJung-uk Kim AcpiDmListType (
862a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
863a9f12690SJung-uk Kim 
864a9f12690SJung-uk Kim void
865a9f12690SJung-uk Kim AcpiDmMethodFlags (
866a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
867a9f12690SJung-uk Kim 
868a9f12690SJung-uk Kim void
869313a0c13SJung-uk Kim AcpiDmDisplayTargetPathname (
870313a0c13SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
871313a0c13SJung-uk Kim 
872313a0c13SJung-uk Kim void
873313a0c13SJung-uk Kim AcpiDmNotifyDescription (
874313a0c13SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
875313a0c13SJung-uk Kim 
876313a0c13SJung-uk Kim void
877f38b0f21SJung-uk Kim AcpiDmPredefinedDescription (
878f38b0f21SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
879f38b0f21SJung-uk Kim 
880f38b0f21SJung-uk Kim void
881f38b0f21SJung-uk Kim AcpiDmFieldPredefinedDescription (
882f38b0f21SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
883f38b0f21SJung-uk Kim 
884f38b0f21SJung-uk Kim void
885a9f12690SJung-uk Kim AcpiDmFieldFlags (
886a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
887a9f12690SJung-uk Kim 
888a9f12690SJung-uk Kim void
889a9f12690SJung-uk Kim AcpiDmAddressSpace (
890a9f12690SJung-uk Kim     UINT8                   SpaceId);
891a9f12690SJung-uk Kim 
892a9f12690SJung-uk Kim void
893a9f12690SJung-uk Kim AcpiDmRegionFlags (
894a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
895a9f12690SJung-uk Kim 
896a9f12690SJung-uk Kim void
897a9f12690SJung-uk Kim AcpiDmMatchOp (
898a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
899a9f12690SJung-uk Kim 
900a9f12690SJung-uk Kim 
901a9f12690SJung-uk Kim /*
902a9f12690SJung-uk Kim  * dmnames
903a9f12690SJung-uk Kim  */
904a9f12690SJung-uk Kim UINT32
905a9f12690SJung-uk Kim AcpiDmDumpName (
906a9f12690SJung-uk Kim     UINT32                  Name);
907a9f12690SJung-uk Kim 
908a9f12690SJung-uk Kim ACPI_STATUS
909a9f12690SJung-uk Kim AcpiPsDisplayObjectPathname (
910a9f12690SJung-uk Kim     ACPI_WALK_STATE         *WalkState,
911a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
912a9f12690SJung-uk Kim 
913a9f12690SJung-uk Kim void
914a9f12690SJung-uk Kim AcpiDmNamestring (
915a9f12690SJung-uk Kim     char                    *Name);
916a9f12690SJung-uk Kim 
917a9f12690SJung-uk Kim 
918a9f12690SJung-uk Kim /*
919a9f12690SJung-uk Kim  * dmbuffer
920a9f12690SJung-uk Kim  */
921a9f12690SJung-uk Kim void
922a9f12690SJung-uk Kim AcpiDmDisasmByteList (
923a9f12690SJung-uk Kim     UINT32                  Level,
924a9f12690SJung-uk Kim     UINT8                   *ByteData,
925a9f12690SJung-uk Kim     UINT32                  ByteCount);
926a9f12690SJung-uk Kim 
927a9f12690SJung-uk Kim void
928a9f12690SJung-uk Kim AcpiDmByteList (
929a9f12690SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
930a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
931a9f12690SJung-uk Kim 
932a9f12690SJung-uk Kim void
933313a0c13SJung-uk Kim AcpiDmCheckForHardwareId (
934a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
935a9f12690SJung-uk Kim 
936a9f12690SJung-uk Kim void
937313a0c13SJung-uk Kim AcpiDmDecompressEisaId (
938a9f12690SJung-uk Kim     UINT32                  EncodedId);
939a9f12690SJung-uk Kim 
940a9f12690SJung-uk Kim BOOLEAN
941313a0c13SJung-uk Kim AcpiDmIsUuidBuffer (
942313a0c13SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
943313a0c13SJung-uk Kim 
944313a0c13SJung-uk Kim BOOLEAN
945a9f12690SJung-uk Kim AcpiDmIsUnicodeBuffer (
946a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
947a9f12690SJung-uk Kim 
948a9f12690SJung-uk Kim BOOLEAN
949a9f12690SJung-uk Kim AcpiDmIsStringBuffer (
950a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
951a9f12690SJung-uk Kim 
9521df130f1SJung-uk Kim BOOLEAN
9531df130f1SJung-uk Kim AcpiDmIsPldBuffer (
9541df130f1SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
9551df130f1SJung-uk Kim 
956a9f12690SJung-uk Kim 
957a9f12690SJung-uk Kim /*
958ed17e06eSJung-uk Kim  * dmdeferred
959ed17e06eSJung-uk Kim  */
960ed17e06eSJung-uk Kim ACPI_STATUS
961ed17e06eSJung-uk Kim AcpiDmParseDeferredOps (
962ed17e06eSJung-uk Kim     ACPI_PARSE_OBJECT       *Root);
963ed17e06eSJung-uk Kim 
964ed17e06eSJung-uk Kim 
965ed17e06eSJung-uk Kim /*
966f556842eSJung-uk Kim  * dmextern
967f556842eSJung-uk Kim  */
968709fac06SJung-uk Kim ACPI_STATUS
969709fac06SJung-uk Kim AcpiDmAddToExternalFileList (
970709fac06SJung-uk Kim     char                    *PathList);
971709fac06SJung-uk Kim 
972709fac06SJung-uk Kim void
973709fac06SJung-uk Kim AcpiDmClearExternalFileList (
974709fac06SJung-uk Kim     void);
975709fac06SJung-uk Kim 
976f556842eSJung-uk Kim void
977313a0c13SJung-uk Kim AcpiDmAddOpToExternalList (
978f556842eSJung-uk Kim     ACPI_PARSE_OBJECT       *Op,
979f556842eSJung-uk Kim     char                    *Path,
980f556842eSJung-uk Kim     UINT8                   Type,
981313a0c13SJung-uk Kim     UINT32                  Value,
982313a0c13SJung-uk Kim     UINT16                  Flags);
983313a0c13SJung-uk Kim 
984313a0c13SJung-uk Kim void
985af051161SJung-uk Kim AcpiDmCreateSubobjectForExternal (
986af051161SJung-uk Kim     UINT8                   Type,
987af051161SJung-uk Kim     ACPI_NAMESPACE_NODE     **Node,
988af051161SJung-uk Kim     UINT32                  Value);
989af051161SJung-uk Kim 
990af051161SJung-uk Kim void
991313a0c13SJung-uk Kim AcpiDmAddNodeToExternalList (
992313a0c13SJung-uk Kim     ACPI_NAMESPACE_NODE     *Node,
993313a0c13SJung-uk Kim     UINT8                   Type,
994313a0c13SJung-uk Kim     UINT32                  Value,
995313a0c13SJung-uk Kim     UINT16                  Flags);
996f556842eSJung-uk Kim 
997f556842eSJung-uk Kim void
998af051161SJung-uk Kim AcpiDmAddExternalListToNamespace (
999f556842eSJung-uk Kim     void);
1000f556842eSJung-uk Kim 
1001af051161SJung-uk Kim void
1002af051161SJung-uk Kim AcpiDmAddOneExternalToNamespace (
1003af051161SJung-uk Kim     char                    *Path,
1004af051161SJung-uk Kim     UINT8                   Type,
1005af051161SJung-uk Kim     UINT32                  Value);
1006af051161SJung-uk Kim 
1007f556842eSJung-uk Kim UINT32
1008af051161SJung-uk Kim AcpiDmGetUnresolvedExternalMethodCount (
1009f556842eSJung-uk Kim     void);
1010f556842eSJung-uk Kim 
1011f556842eSJung-uk Kim void
1012f556842eSJung-uk Kim AcpiDmClearExternalList (
1013f556842eSJung-uk Kim     void);
1014f556842eSJung-uk Kim 
1015f556842eSJung-uk Kim void
1016f556842eSJung-uk Kim AcpiDmEmitExternals (
1017f556842eSJung-uk Kim     void);
1018f556842eSJung-uk Kim 
10199c48c75eSJung-uk Kim void
10200d84335fSJung-uk Kim AcpiDmEmitExternal (
10210d84335fSJung-uk Kim     ACPI_PARSE_OBJECT       *NameOp,
10220d84335fSJung-uk Kim     ACPI_PARSE_OBJECT       *TypeOp);
10230d84335fSJung-uk Kim 
10240d84335fSJung-uk Kim void
10259c48c75eSJung-uk Kim AcpiDmUnresolvedWarning (
10269c48c75eSJung-uk Kim     UINT8                   Type);
10279c48c75eSJung-uk Kim 
102879c6d946SJung-uk Kim void
102979c6d946SJung-uk Kim AcpiDmGetExternalsFromFile (
103079c6d946SJung-uk Kim     void);
1031f556842eSJung-uk Kim 
1032af051161SJung-uk Kim void
1033af051161SJung-uk Kim AcpiDmMarkExternalConflict (
1034af051161SJung-uk Kim     ACPI_NAMESPACE_NODE     *Node);
1035af051161SJung-uk Kim 
1036af051161SJung-uk Kim 
1037f556842eSJung-uk Kim /*
1038a9f12690SJung-uk Kim  * dmresrc
1039a9f12690SJung-uk Kim  */
1040a9f12690SJung-uk Kim void
1041a9f12690SJung-uk Kim AcpiDmDumpInteger8 (
1042a9f12690SJung-uk Kim     UINT8                   Value,
1043f8146b88SJung-uk Kim     const char              *Name);
1044a9f12690SJung-uk Kim 
1045a9f12690SJung-uk Kim void
1046a9f12690SJung-uk Kim AcpiDmDumpInteger16 (
1047a9f12690SJung-uk Kim     UINT16                  Value,
1048f8146b88SJung-uk Kim     const char              *Name);
1049a9f12690SJung-uk Kim 
1050a9f12690SJung-uk Kim void
1051a9f12690SJung-uk Kim AcpiDmDumpInteger32 (
1052a9f12690SJung-uk Kim     UINT32                  Value,
1053f8146b88SJung-uk Kim     const char              *Name);
1054a9f12690SJung-uk Kim 
1055a9f12690SJung-uk Kim void
1056a9f12690SJung-uk Kim AcpiDmDumpInteger64 (
1057a9f12690SJung-uk Kim     UINT64                  Value,
1058f8146b88SJung-uk Kim     const char              *Name);
1059a9f12690SJung-uk Kim 
1060a9f12690SJung-uk Kim void
1061a9f12690SJung-uk Kim AcpiDmResourceTemplate (
1062a9f12690SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1063a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op,
1064a9f12690SJung-uk Kim     UINT8                   *ByteData,
1065a9f12690SJung-uk Kim     UINT32                  ByteCount);
1066a9f12690SJung-uk Kim 
1067a9f12690SJung-uk Kim ACPI_STATUS
1068a9f12690SJung-uk Kim AcpiDmIsResourceTemplate (
1069ed17e06eSJung-uk Kim     ACPI_WALK_STATE         *WalkState,
1070a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
1071a9f12690SJung-uk Kim 
1072a9f12690SJung-uk Kim void
1073a9f12690SJung-uk Kim AcpiDmBitList (
1074a9f12690SJung-uk Kim     UINT16                  Mask);
1075a9f12690SJung-uk Kim 
1076a9f12690SJung-uk Kim void
1077a9f12690SJung-uk Kim AcpiDmDescriptorName (
1078a9f12690SJung-uk Kim     void);
1079a9f12690SJung-uk Kim 
1080a9f12690SJung-uk Kim 
1081a9f12690SJung-uk Kim /*
1082a9f12690SJung-uk Kim  * dmresrcl
1083a9f12690SJung-uk Kim  */
1084a9f12690SJung-uk Kim void
1085a9f12690SJung-uk Kim AcpiDmWordDescriptor (
1086313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1087a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1088a9f12690SJung-uk Kim     UINT32                  Length,
1089a9f12690SJung-uk Kim     UINT32                  Level);
1090a9f12690SJung-uk Kim 
1091a9f12690SJung-uk Kim void
1092a9f12690SJung-uk Kim AcpiDmDwordDescriptor (
1093313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1094a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1095a9f12690SJung-uk Kim     UINT32                  Length,
1096a9f12690SJung-uk Kim     UINT32                  Level);
1097a9f12690SJung-uk Kim 
1098a9f12690SJung-uk Kim void
1099a9f12690SJung-uk Kim AcpiDmExtendedDescriptor (
1100313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1101a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1102a9f12690SJung-uk Kim     UINT32                  Length,
1103a9f12690SJung-uk Kim     UINT32                  Level);
1104a9f12690SJung-uk Kim 
1105a9f12690SJung-uk Kim void
1106a9f12690SJung-uk Kim AcpiDmQwordDescriptor (
1107313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1108a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1109a9f12690SJung-uk Kim     UINT32                  Length,
1110a9f12690SJung-uk Kim     UINT32                  Level);
1111a9f12690SJung-uk Kim 
1112a9f12690SJung-uk Kim void
1113a9f12690SJung-uk Kim AcpiDmMemory24Descriptor (
1114313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1115a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1116a9f12690SJung-uk Kim     UINT32                  Length,
1117a9f12690SJung-uk Kim     UINT32                  Level);
1118a9f12690SJung-uk Kim 
1119a9f12690SJung-uk Kim void
1120a9f12690SJung-uk Kim AcpiDmMemory32Descriptor (
1121313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1122a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1123a9f12690SJung-uk Kim     UINT32                  Length,
1124a9f12690SJung-uk Kim     UINT32                  Level);
1125a9f12690SJung-uk Kim 
1126a9f12690SJung-uk Kim void
1127a9f12690SJung-uk Kim AcpiDmFixedMemory32Descriptor (
1128313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1129a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1130a9f12690SJung-uk Kim     UINT32                  Length,
1131a9f12690SJung-uk Kim     UINT32                  Level);
1132a9f12690SJung-uk Kim 
1133a9f12690SJung-uk Kim void
1134a9f12690SJung-uk Kim AcpiDmGenericRegisterDescriptor (
1135313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1136a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1137a9f12690SJung-uk Kim     UINT32                  Length,
1138a9f12690SJung-uk Kim     UINT32                  Level);
1139a9f12690SJung-uk Kim 
1140a9f12690SJung-uk Kim void
1141a9f12690SJung-uk Kim AcpiDmInterruptDescriptor (
1142313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1143a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1144a9f12690SJung-uk Kim     UINT32                  Length,
1145a9f12690SJung-uk Kim     UINT32                  Level);
1146a9f12690SJung-uk Kim 
1147a9f12690SJung-uk Kim void
1148a9f12690SJung-uk Kim AcpiDmVendorLargeDescriptor (
1149313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1150a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1151a9f12690SJung-uk Kim     UINT32                  Length,
1152a9f12690SJung-uk Kim     UINT32                  Level);
1153a9f12690SJung-uk Kim 
1154a9f12690SJung-uk Kim void
11553f0275a0SJung-uk Kim AcpiDmGpioDescriptor (
1156313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
11573f0275a0SJung-uk Kim     AML_RESOURCE            *Resource,
11583f0275a0SJung-uk Kim     UINT32                  Length,
11593f0275a0SJung-uk Kim     UINT32                  Level);
11603f0275a0SJung-uk Kim 
11613f0275a0SJung-uk Kim void
1162af051161SJung-uk Kim AcpiDmPinFunctionDescriptor (
1163af051161SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1164af051161SJung-uk Kim     AML_RESOURCE            *Resource,
1165af051161SJung-uk Kim     UINT32                  Length,
1166af051161SJung-uk Kim     UINT32                  Level);
1167af051161SJung-uk Kim 
1168af051161SJung-uk Kim void
1169af051161SJung-uk Kim AcpiDmPinConfigDescriptor (
1170af051161SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1171af051161SJung-uk Kim     AML_RESOURCE            *Resource,
1172af051161SJung-uk Kim     UINT32                  Length,
1173af051161SJung-uk Kim     UINT32                  Level);
1174af051161SJung-uk Kim 
1175af051161SJung-uk Kim void
1176af051161SJung-uk Kim AcpiDmPinGroupDescriptor (
1177af051161SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1178af051161SJung-uk Kim     AML_RESOURCE            *Resource,
1179af051161SJung-uk Kim     UINT32                  Length,
1180af051161SJung-uk Kim     UINT32                  Level);
1181af051161SJung-uk Kim 
1182af051161SJung-uk Kim void
1183af051161SJung-uk Kim AcpiDmPinGroupFunctionDescriptor (
1184af051161SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1185af051161SJung-uk Kim     AML_RESOURCE            *Resource,
1186af051161SJung-uk Kim     UINT32                  Length,
1187af051161SJung-uk Kim     UINT32                  Level);
1188af051161SJung-uk Kim 
1189af051161SJung-uk Kim void
1190af051161SJung-uk Kim AcpiDmPinGroupConfigDescriptor (
1191af051161SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1192af051161SJung-uk Kim     AML_RESOURCE            *Resource,
1193af051161SJung-uk Kim     UINT32                  Length,
1194af051161SJung-uk Kim     UINT32                  Level);
1195af051161SJung-uk Kim 
1196af051161SJung-uk Kim void
11973f0275a0SJung-uk Kim AcpiDmSerialBusDescriptor (
1198313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
11993f0275a0SJung-uk Kim     AML_RESOURCE            *Resource,
12003f0275a0SJung-uk Kim     UINT32                  Length,
12013f0275a0SJung-uk Kim     UINT32                  Level);
12023f0275a0SJung-uk Kim 
12033f0275a0SJung-uk Kim void
1204a9f12690SJung-uk Kim AcpiDmVendorCommon (
1205f8146b88SJung-uk Kim     const char              *Name,
1206a9f12690SJung-uk Kim     UINT8                   *ByteData,
1207a9f12690SJung-uk Kim     UINT32                  Length,
1208a9f12690SJung-uk Kim     UINT32                  Level);
1209a9f12690SJung-uk Kim 
1210a9f12690SJung-uk Kim 
1211a9f12690SJung-uk Kim /*
1212a9f12690SJung-uk Kim  * dmresrcs
1213a9f12690SJung-uk Kim  */
1214a9f12690SJung-uk Kim void
1215a9f12690SJung-uk Kim AcpiDmIrqDescriptor (
1216313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1217a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1218a9f12690SJung-uk Kim     UINT32                  Length,
1219a9f12690SJung-uk Kim     UINT32                  Level);
1220a9f12690SJung-uk Kim 
1221a9f12690SJung-uk Kim void
1222a9f12690SJung-uk Kim AcpiDmDmaDescriptor (
1223313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1224a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1225a9f12690SJung-uk Kim     UINT32                  Length,
1226a9f12690SJung-uk Kim     UINT32                  Level);
1227a9f12690SJung-uk Kim 
1228a9f12690SJung-uk Kim void
12293f0275a0SJung-uk Kim AcpiDmFixedDmaDescriptor (
1230313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
12313f0275a0SJung-uk Kim     AML_RESOURCE            *Resource,
12323f0275a0SJung-uk Kim     UINT32                  Length,
12333f0275a0SJung-uk Kim     UINT32                  Level);
12343f0275a0SJung-uk Kim 
12353f0275a0SJung-uk Kim void
1236a9f12690SJung-uk Kim AcpiDmIoDescriptor (
1237313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1238a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1239a9f12690SJung-uk Kim     UINT32                  Length,
1240a9f12690SJung-uk Kim     UINT32                  Level);
1241a9f12690SJung-uk Kim 
1242a9f12690SJung-uk Kim void
1243a9f12690SJung-uk Kim AcpiDmFixedIoDescriptor (
1244313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1245a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1246a9f12690SJung-uk Kim     UINT32                  Length,
1247a9f12690SJung-uk Kim     UINT32                  Level);
1248a9f12690SJung-uk Kim 
1249a9f12690SJung-uk Kim void
1250a9f12690SJung-uk Kim AcpiDmStartDependentDescriptor (
1251313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1252a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1253a9f12690SJung-uk Kim     UINT32                  Length,
1254a9f12690SJung-uk Kim     UINT32                  Level);
1255a9f12690SJung-uk Kim 
1256a9f12690SJung-uk Kim void
1257a9f12690SJung-uk Kim AcpiDmEndDependentDescriptor (
1258313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1259a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1260a9f12690SJung-uk Kim     UINT32                  Length,
1261a9f12690SJung-uk Kim     UINT32                  Level);
1262a9f12690SJung-uk Kim 
1263a9f12690SJung-uk Kim void
1264a9f12690SJung-uk Kim AcpiDmVendorSmallDescriptor (
1265313a0c13SJung-uk Kim     ACPI_OP_WALK_INFO       *Info,
1266a9f12690SJung-uk Kim     AML_RESOURCE            *Resource,
1267a9f12690SJung-uk Kim     UINT32                  Length,
1268a9f12690SJung-uk Kim     UINT32                  Level);
1269a9f12690SJung-uk Kim 
1270a9f12690SJung-uk Kim 
1271a9f12690SJung-uk Kim /*
1272a9f12690SJung-uk Kim  * dmutils
1273a9f12690SJung-uk Kim  */
1274a9f12690SJung-uk Kim void
1275f556842eSJung-uk Kim AcpiDmDecodeAttribute (
1276f556842eSJung-uk Kim     UINT8                   Attribute);
1277f556842eSJung-uk Kim 
1278f556842eSJung-uk Kim void
1279f556842eSJung-uk Kim AcpiDmIndent (
1280f556842eSJung-uk Kim     UINT32                  Level);
1281f556842eSJung-uk Kim 
1282f556842eSJung-uk Kim BOOLEAN
1283f556842eSJung-uk Kim AcpiDmCommaIfListMember (
1284f556842eSJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
1285f556842eSJung-uk Kim 
1286f556842eSJung-uk Kim void
1287f556842eSJung-uk Kim AcpiDmCommaIfFieldMember (
1288f556842eSJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
1289f556842eSJung-uk Kim 
1290a9f12690SJung-uk Kim 
1291a9f12690SJung-uk Kim /*
1292a9f12690SJung-uk Kim  * dmrestag
1293a9f12690SJung-uk Kim  */
1294a9f12690SJung-uk Kim void
1295a9f12690SJung-uk Kim AcpiDmFindResources (
1296a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Root);
1297a9f12690SJung-uk Kim 
1298a9f12690SJung-uk Kim void
1299a9f12690SJung-uk Kim AcpiDmCheckResourceReference (
1300a9f12690SJung-uk Kim     ACPI_PARSE_OBJECT       *Op,
1301a9f12690SJung-uk Kim     ACPI_WALK_STATE         *WalkState);
1302a9f12690SJung-uk Kim 
1303a88e22b7SJung-uk Kim 
1304a88e22b7SJung-uk Kim /*
13051c0e1b6dSJung-uk Kim  * dmcstyle
13061c0e1b6dSJung-uk Kim  */
13071c0e1b6dSJung-uk Kim BOOLEAN
13081c0e1b6dSJung-uk Kim AcpiDmCheckForSymbolicOpcode (
13091c0e1b6dSJung-uk Kim     ACPI_PARSE_OBJECT       *Op,
13101c0e1b6dSJung-uk Kim     ACPI_OP_WALK_INFO       *Info);
13111c0e1b6dSJung-uk Kim 
13121c0e1b6dSJung-uk Kim void
13131c0e1b6dSJung-uk Kim AcpiDmCloseOperator (
13141c0e1b6dSJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
13151c0e1b6dSJung-uk Kim 
13161c0e1b6dSJung-uk Kim 
13171c0e1b6dSJung-uk Kim /*
1318f8146b88SJung-uk Kim  * dmtables
1319a88e22b7SJung-uk Kim  */
1320af051161SJung-uk Kim ACPI_STATUS
1321af051161SJung-uk Kim AcpiDmProcessSwitch (
1322af051161SJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
1323af051161SJung-uk Kim 
1324af051161SJung-uk Kim void
1325af051161SJung-uk Kim AcpiDmClearTempList(
1326af051161SJung-uk Kim     void);
1327af051161SJung-uk Kim 
1328af051161SJung-uk Kim /*
1329af051161SJung-uk Kim  * dmtables
1330af051161SJung-uk Kim  */
1331a88e22b7SJung-uk Kim void
1332a88e22b7SJung-uk Kim AdDisassemblerHeader (
13337cf3e94aSJung-uk Kim     char                    *Filename,
13347cf3e94aSJung-uk Kim     UINT8                   TableType);
13357cf3e94aSJung-uk Kim 
13367cf3e94aSJung-uk Kim #define ACPI_IS_AML_TABLE   0
13377cf3e94aSJung-uk Kim #define ACPI_IS_DATA_TABLE  1
1338a88e22b7SJung-uk Kim 
1339f8146b88SJung-uk Kim 
1340f8146b88SJung-uk Kim /*
1341f8146b88SJung-uk Kim  * adisasm
1342f8146b88SJung-uk Kim  */
1343f8146b88SJung-uk Kim ACPI_STATUS
1344f8146b88SJung-uk Kim AdAmlDisassemble (
1345f8146b88SJung-uk Kim     BOOLEAN                 OutToFile,
1346f8146b88SJung-uk Kim     char                    *Filename,
1347f8146b88SJung-uk Kim     char                    *Prefix,
1348f8146b88SJung-uk Kim     char                    **OutFilename);
1349f8146b88SJung-uk Kim 
1350f8146b88SJung-uk Kim ACPI_STATUS
1351f8146b88SJung-uk Kim AdGetLocalTables (
1352f8146b88SJung-uk Kim     void);
1353f8146b88SJung-uk Kim 
1354f8146b88SJung-uk Kim ACPI_STATUS
1355f8146b88SJung-uk Kim AdParseTable (
1356f8146b88SJung-uk Kim     ACPI_TABLE_HEADER       *Table,
1357f8146b88SJung-uk Kim     ACPI_OWNER_ID           *OwnerId,
1358f8146b88SJung-uk Kim     BOOLEAN                 LoadTable,
1359f8146b88SJung-uk Kim     BOOLEAN                 External);
1360f8146b88SJung-uk Kim 
1361f8146b88SJung-uk Kim ACPI_STATUS
1362f8146b88SJung-uk Kim AdDisplayTables (
1363f8146b88SJung-uk Kim     char                    *Filename,
1364f8146b88SJung-uk Kim     ACPI_TABLE_HEADER       *Table);
1365f8146b88SJung-uk Kim 
1366f8146b88SJung-uk Kim ACPI_STATUS
1367f8146b88SJung-uk Kim AdDisplayStatistics (
1368f8146b88SJung-uk Kim     void);
1369f8146b88SJung-uk Kim 
13700d84335fSJung-uk Kim 
13710d84335fSJung-uk Kim /*
13720d84335fSJung-uk Kim  * dmwalk
13730d84335fSJung-uk Kim  */
13740d84335fSJung-uk Kim UINT32
13750d84335fSJung-uk Kim AcpiDmBlockType (
13760d84335fSJung-uk Kim     ACPI_PARSE_OBJECT       *Op);
13770d84335fSJung-uk Kim 
13780d84335fSJung-uk Kim 
1379a9f12690SJung-uk Kim #endif  /* __ACDISASM_H__ */
1380