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