aslcompiler.h revision 1.24 1 1.1 jruoho /******************************************************************************
2 1.1 jruoho *
3 1.1 jruoho * Module Name: aslcompiler.h - common include file for iASL
4 1.1 jruoho *
5 1.1 jruoho *****************************************************************************/
6 1.1 jruoho
7 1.23 christos /******************************************************************************
8 1.23 christos *
9 1.23 christos * 1. Copyright Notice
10 1.23 christos *
11 1.24 christos * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
12 1.1 jruoho * All rights reserved.
13 1.1 jruoho *
14 1.23 christos * 2. License
15 1.23 christos *
16 1.23 christos * 2.1. This is your license from Intel Corp. under its intellectual property
17 1.23 christos * rights. You may have additional license terms from the party that provided
18 1.23 christos * you this software, covering your right to use that party's intellectual
19 1.23 christos * property rights.
20 1.23 christos *
21 1.23 christos * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
22 1.23 christos * copy of the source code appearing in this file ("Covered Code") an
23 1.23 christos * irrevocable, perpetual, worldwide license under Intel's copyrights in the
24 1.23 christos * base code distributed originally by Intel ("Original Intel Code") to copy,
25 1.23 christos * make derivatives, distribute, use and display any portion of the Covered
26 1.23 christos * Code in any form, with the right to sublicense such rights; and
27 1.23 christos *
28 1.23 christos * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
29 1.23 christos * license (with the right to sublicense), under only those claims of Intel
30 1.23 christos * patents that are infringed by the Original Intel Code, to make, use, sell,
31 1.23 christos * offer to sell, and import the Covered Code and derivative works thereof
32 1.23 christos * solely to the minimum extent necessary to exercise the above copyright
33 1.23 christos * license, and in no event shall the patent license extend to any additions
34 1.23 christos * to or modifications of the Original Intel Code. No other license or right
35 1.23 christos * is granted directly or by implication, estoppel or otherwise;
36 1.23 christos *
37 1.23 christos * The above copyright and patent license is granted only if the following
38 1.23 christos * conditions are met:
39 1.23 christos *
40 1.23 christos * 3. Conditions
41 1.23 christos *
42 1.23 christos * 3.1. Redistribution of Source with Rights to Further Distribute Source.
43 1.23 christos * Redistribution of source code of any substantial portion of the Covered
44 1.23 christos * Code or modification with rights to further distribute source must include
45 1.23 christos * the above Copyright Notice, the above License, this list of Conditions,
46 1.23 christos * and the following Disclaimer and Export Compliance provision. In addition,
47 1.23 christos * Licensee must cause all Covered Code to which Licensee contributes to
48 1.23 christos * contain a file documenting the changes Licensee made to create that Covered
49 1.23 christos * Code and the date of any change. Licensee must include in that file the
50 1.23 christos * documentation of any changes made by any predecessor Licensee. Licensee
51 1.23 christos * must include a prominent statement that the modification is derived,
52 1.23 christos * directly or indirectly, from Original Intel Code.
53 1.23 christos *
54 1.23 christos * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
55 1.23 christos * Redistribution of source code of any substantial portion of the Covered
56 1.23 christos * Code or modification without rights to further distribute source must
57 1.23 christos * include the following Disclaimer and Export Compliance provision in the
58 1.23 christos * documentation and/or other materials provided with distribution. In
59 1.23 christos * addition, Licensee may not authorize further sublicense of source of any
60 1.23 christos * portion of the Covered Code, and must include terms to the effect that the
61 1.23 christos * license from Licensee to its licensee is limited to the intellectual
62 1.23 christos * property embodied in the software Licensee provides to its licensee, and
63 1.23 christos * not to intellectual property embodied in modifications its licensee may
64 1.23 christos * make.
65 1.23 christos *
66 1.23 christos * 3.3. Redistribution of Executable. Redistribution in executable form of any
67 1.23 christos * substantial portion of the Covered Code or modification must reproduce the
68 1.23 christos * above Copyright Notice, and the following Disclaimer and Export Compliance
69 1.23 christos * provision in the documentation and/or other materials provided with the
70 1.23 christos * distribution.
71 1.23 christos *
72 1.23 christos * 3.4. Intel retains all right, title, and interest in and to the Original
73 1.23 christos * Intel Code.
74 1.23 christos *
75 1.23 christos * 3.5. Neither the name Intel nor any other trademark owned or controlled by
76 1.23 christos * Intel shall be used in advertising or otherwise to promote the sale, use or
77 1.23 christos * other dealings in products derived from or relating to the Covered Code
78 1.23 christos * without prior written authorization from Intel.
79 1.23 christos *
80 1.23 christos * 4. Disclaimer and Export Compliance
81 1.23 christos *
82 1.23 christos * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
83 1.23 christos * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
84 1.23 christos * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
85 1.23 christos * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
86 1.23 christos * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
87 1.23 christos * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
88 1.23 christos * PARTICULAR PURPOSE.
89 1.23 christos *
90 1.23 christos * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
91 1.23 christos * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
92 1.23 christos * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
93 1.23 christos * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
94 1.23 christos * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
95 1.23 christos * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
96 1.23 christos * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
97 1.23 christos * LIMITED REMEDY.
98 1.23 christos *
99 1.23 christos * 4.3. Licensee shall not export, either directly or indirectly, any of this
100 1.23 christos * software or system incorporating such software without first obtaining any
101 1.23 christos * required license or other approval from the U. S. Department of Commerce or
102 1.23 christos * any other agency or department of the United States Government. In the
103 1.23 christos * event Licensee exports any such software from the United States or
104 1.23 christos * re-exports any such software from a foreign destination, Licensee shall
105 1.23 christos * ensure that the distribution and export/re-export of the software is in
106 1.23 christos * compliance with all laws, regulations, orders, or other restrictions of the
107 1.23 christos * U.S. Export Administration Regulations. Licensee agrees that neither it nor
108 1.23 christos * any of its subsidiaries will export/re-export any technical data, process,
109 1.23 christos * software, or service, directly or indirectly, to any country for which the
110 1.23 christos * United States government or any agency thereof requires an export license,
111 1.23 christos * other governmental approval, or letter of assurance, without first obtaining
112 1.23 christos * such license, approval or letter.
113 1.23 christos *
114 1.23 christos *****************************************************************************
115 1.23 christos *
116 1.23 christos * Alternatively, you may choose to be licensed under the terms of the
117 1.23 christos * following license:
118 1.23 christos *
119 1.2 christos * Redistribution and use in source and binary forms, with or without
120 1.2 christos * modification, are permitted provided that the following conditions
121 1.2 christos * are met:
122 1.2 christos * 1. Redistributions of source code must retain the above copyright
123 1.2 christos * notice, this list of conditions, and the following disclaimer,
124 1.2 christos * without modification.
125 1.2 christos * 2. Redistributions in binary form must reproduce at minimum a disclaimer
126 1.2 christos * substantially similar to the "NO WARRANTY" disclaimer below
127 1.2 christos * ("Disclaimer") and any redistribution must be conditioned upon
128 1.2 christos * including a substantially similar Disclaimer requirement for further
129 1.2 christos * binary redistribution.
130 1.2 christos * 3. Neither the names of the above-listed copyright holders nor the names
131 1.2 christos * of any contributors may be used to endorse or promote products derived
132 1.2 christos * from this software without specific prior written permission.
133 1.2 christos *
134 1.2 christos * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
135 1.2 christos * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
136 1.18 christos * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
137 1.2 christos * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
138 1.23 christos * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
139 1.23 christos * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
140 1.23 christos * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
141 1.23 christos * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
142 1.23 christos * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
143 1.23 christos * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
144 1.23 christos * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
145 1.23 christos *
146 1.23 christos * Alternatively, you may choose to be licensed under the terms of the
147 1.23 christos * GNU General Public License ("GPL") version 2 as published by the Free
148 1.23 christos * Software Foundation.
149 1.23 christos *
150 1.23 christos *****************************************************************************/
151 1.1 jruoho
152 1.1 jruoho #ifndef __ASLCOMPILER_H
153 1.1 jruoho #define __ASLCOMPILER_H
154 1.1 jruoho
155 1.2 christos #include "acpi.h"
156 1.2 christos #include "accommon.h"
157 1.2 christos #include "amlresrc.h"
158 1.2 christos #include "acdebug.h"
159 1.1 jruoho
160 1.1 jruoho /* Microsoft-specific */
161 1.1 jruoho
162 1.1 jruoho #if (defined WIN32 || defined WIN64)
163 1.1 jruoho
164 1.1 jruoho /* warn : used #pragma pack */
165 1.1 jruoho #pragma warning(disable:4103)
166 1.1 jruoho
167 1.1 jruoho /* warn : named type definition in parentheses */
168 1.1 jruoho #pragma warning(disable:4115)
169 1.1 jruoho #endif
170 1.1 jruoho
171 1.1 jruoho #include <stdio.h>
172 1.1 jruoho #include <stdlib.h>
173 1.1 jruoho #include <string.h>
174 1.1 jruoho #include <errno.h>
175 1.1 jruoho #include <ctype.h>
176 1.1 jruoho
177 1.1 jruoho /* Compiler headers */
178 1.1 jruoho
179 1.1 jruoho #include "asldefine.h"
180 1.1 jruoho #include "asltypes.h"
181 1.2 christos #include "aslmessages.h"
182 1.1 jruoho #include "aslglobal.h"
183 1.2 christos #include "preprocess.h"
184 1.10 christos #include "dtcompiler.h"
185 1.1 jruoho
186 1.1 jruoho
187 1.1 jruoho /*******************************************************************************
188 1.1 jruoho *
189 1.1 jruoho * Compiler prototypes
190 1.1 jruoho *
191 1.1 jruoho ******************************************************************************/
192 1.1 jruoho
193 1.1 jruoho /*
194 1.2 christos * Main ASL parser - generated from flex/bison, lex/yacc, etc.
195 1.1 jruoho */
196 1.1 jruoho ACPI_PARSE_OBJECT *
197 1.1 jruoho AslDoError (
198 1.1 jruoho void);
199 1.1 jruoho
200 1.1 jruoho int
201 1.1 jruoho AslCompilerlex(
202 1.1 jruoho void);
203 1.1 jruoho
204 1.1 jruoho void
205 1.2 christos AslResetCurrentLineBuffer (
206 1.1 jruoho void);
207 1.1 jruoho
208 1.1 jruoho void
209 1.2 christos AslInsertLineBuffer (
210 1.1 jruoho int SourceChar);
211 1.1 jruoho
212 1.1 jruoho int
213 1.1 jruoho AslPopInputFileStack (
214 1.1 jruoho void);
215 1.1 jruoho
216 1.1 jruoho void
217 1.1 jruoho AslPushInputFileStack (
218 1.1 jruoho FILE *InputFile,
219 1.1 jruoho char *Filename);
220 1.1 jruoho
221 1.2 christos void
222 1.2 christos AslParserCleanup (
223 1.2 christos void);
224 1.2 christos
225 1.2 christos
226 1.1 jruoho /*
227 1.2 christos * aslstartup - entered from main()
228 1.1 jruoho */
229 1.2 christos void
230 1.2 christos AslInitializeGlobals (
231 1.2 christos void);
232 1.2 christos
233 1.2 christos typedef
234 1.2 christos ACPI_STATUS (*ASL_PATHNAME_CALLBACK) (
235 1.2 christos char *);
236 1.1 jruoho
237 1.1 jruoho ACPI_STATUS
238 1.1 jruoho AslDoOneFile (
239 1.1 jruoho char *Filename);
240 1.1 jruoho
241 1.2 christos ACPI_STATUS
242 1.2 christos AslCheckForErrorExit (
243 1.2 christos void);
244 1.2 christos
245 1.2 christos
246 1.1 jruoho /*
247 1.1 jruoho * aslcompile - compile mainline
248 1.1 jruoho */
249 1.1 jruoho void
250 1.1 jruoho AslCompilerSignon (
251 1.1 jruoho UINT32 FileId);
252 1.1 jruoho
253 1.1 jruoho void
254 1.1 jruoho AslCompilerFileHeader (
255 1.1 jruoho UINT32 FileId);
256 1.1 jruoho
257 1.14 christos ACPI_STATUS
258 1.14 christos CmDoCompile (
259 1.14 christos void);
260 1.14 christos
261 1.1 jruoho int
262 1.14 christos CmDoAslMiddleAndBackEnd (
263 1.1 jruoho void);
264 1.1 jruoho
265 1.1 jruoho void
266 1.1 jruoho CmDoOutputFiles (
267 1.1 jruoho void);
268 1.1 jruoho
269 1.15 christos int
270 1.1 jruoho CmCleanupAndExit (
271 1.1 jruoho void);
272 1.1 jruoho
273 1.14 christos ACPI_STATUS
274 1.14 christos AslDoDisassembly (
275 1.14 christos void);
276 1.14 christos
277 1.10 christos
278 1.10 christos /*
279 1.10 christos * aslallocate - memory allocation
280 1.10 christos */
281 1.10 christos void *
282 1.10 christos UtLocalCalloc (
283 1.10 christos UINT32 Size);
284 1.10 christos
285 1.10 christos void
286 1.10 christos UtExpandLineBuffers (
287 1.10 christos void);
288 1.10 christos
289 1.10 christos void
290 1.10 christos UtReallocLineBuffers (
291 1.10 christos char **Buffer,
292 1.10 christos UINT32 OldSize,
293 1.10 christos UINT32 NewSize);
294 1.10 christos
295 1.10 christos void
296 1.10 christos UtFreeLineBuffers (
297 1.10 christos void);
298 1.10 christos
299 1.10 christos
300 1.10 christos /*
301 1.10 christos * aslcache - local cache support
302 1.10 christos */
303 1.10 christos char *
304 1.10 christos UtLocalCacheCalloc (
305 1.10 christos UINT32 Length);
306 1.10 christos
307 1.10 christos ACPI_PARSE_OBJECT *
308 1.10 christos UtParseOpCacheCalloc (
309 1.10 christos void);
310 1.10 christos
311 1.10 christos DT_SUBTABLE *
312 1.10 christos UtSubtableCacheCalloc (
313 1.10 christos void);
314 1.10 christos
315 1.10 christos DT_FIELD *
316 1.10 christos UtFieldCacheCalloc (
317 1.10 christos void);
318 1.10 christos
319 1.2 christos void
320 1.10 christos UtDeleteLocalCaches (
321 1.2 christos void);
322 1.2 christos
323 1.2 christos
324 1.2 christos /*
325 1.2 christos * aslascii - ascii support
326 1.2 christos */
327 1.2 christos ACPI_STATUS
328 1.4 christos FlIsFileAsciiSource (
329 1.2 christos char *Filename,
330 1.2 christos BOOLEAN DisplayErrors);
331 1.1 jruoho
332 1.1 jruoho
333 1.1 jruoho /*
334 1.2 christos * aslwalks - semantic analysis and parse tree walks
335 1.1 jruoho */
336 1.1 jruoho ACPI_STATUS
337 1.1 jruoho AnOtherSemanticAnalysisWalkBegin (
338 1.1 jruoho ACPI_PARSE_OBJECT *Op,
339 1.1 jruoho UINT32 Level,
340 1.1 jruoho void *Context);
341 1.1 jruoho
342 1.1 jruoho ACPI_STATUS
343 1.1 jruoho AnOtherSemanticAnalysisWalkEnd (
344 1.1 jruoho ACPI_PARSE_OBJECT *Op,
345 1.1 jruoho UINT32 Level,
346 1.1 jruoho void *Context);
347 1.1 jruoho
348 1.1 jruoho ACPI_STATUS
349 1.2 christos AnOperandTypecheckWalkEnd (
350 1.1 jruoho ACPI_PARSE_OBJECT *Op,
351 1.1 jruoho UINT32 Level,
352 1.1 jruoho void *Context);
353 1.1 jruoho
354 1.1 jruoho ACPI_STATUS
355 1.2 christos AnMethodTypingWalkEnd (
356 1.1 jruoho ACPI_PARSE_OBJECT *Op,
357 1.1 jruoho UINT32 Level,
358 1.1 jruoho void *Context);
359 1.1 jruoho
360 1.2 christos
361 1.2 christos /*
362 1.2 christos * aslmethod - Control method analysis walk
363 1.2 christos */
364 1.1 jruoho ACPI_STATUS
365 1.2 christos MtMethodAnalysisWalkBegin (
366 1.1 jruoho ACPI_PARSE_OBJECT *Op,
367 1.1 jruoho UINT32 Level,
368 1.1 jruoho void *Context);
369 1.1 jruoho
370 1.1 jruoho ACPI_STATUS
371 1.2 christos MtMethodAnalysisWalkEnd (
372 1.1 jruoho ACPI_PARSE_OBJECT *Op,
373 1.1 jruoho UINT32 Level,
374 1.1 jruoho void *Context);
375 1.1 jruoho
376 1.16 christos UINT32
377 1.16 christos MtProcessTypeOp (
378 1.16 christos ACPI_PARSE_OBJECT *TypeOp);
379 1.16 christos
380 1.16 christos UINT8
381 1.16 christos MtProcessParameterTypeList (
382 1.16 christos ACPI_PARSE_OBJECT *ParamTypeOp,
383 1.16 christos UINT32 *TypeList);
384 1.16 christos
385 1.2 christos
386 1.2 christos /*
387 1.2 christos * aslbtypes - bitfield data types
388 1.2 christos */
389 1.2 christos UINT32
390 1.2 christos AnMapObjTypeToBtype (
391 1.2 christos ACPI_PARSE_OBJECT *Op);
392 1.2 christos
393 1.2 christos UINT32
394 1.2 christos AnMapArgTypeToBtype (
395 1.2 christos UINT32 ArgType);
396 1.2 christos
397 1.2 christos UINT32
398 1.2 christos AnGetBtype (
399 1.2 christos ACPI_PARSE_OBJECT *Op);
400 1.2 christos
401 1.2 christos void
402 1.2 christos AnFormatBtype (
403 1.2 christos char *Buffer,
404 1.2 christos UINT32 Btype);
405 1.2 christos
406 1.2 christos
407 1.2 christos /*
408 1.2 christos * aslanalyze - Support functions for parse tree walks
409 1.2 christos */
410 1.2 christos void
411 1.2 christos AnCheckId (
412 1.1 jruoho ACPI_PARSE_OBJECT *Op,
413 1.2 christos ACPI_NAME Type);
414 1.2 christos
415 1.2 christos /* Values for Type argument above */
416 1.2 christos
417 1.2 christos #define ASL_TYPE_HID 0
418 1.2 christos #define ASL_TYPE_CID 1
419 1.2 christos
420 1.2 christos BOOLEAN
421 1.2 christos AnIsInternalMethod (
422 1.2 christos ACPI_PARSE_OBJECT *Op);
423 1.2 christos
424 1.2 christos UINT32
425 1.2 christos AnGetInternalMethodReturnType (
426 1.2 christos ACPI_PARSE_OBJECT *Op);
427 1.2 christos
428 1.2 christos BOOLEAN
429 1.2 christos AnLastStatementIsReturn (
430 1.2 christos ACPI_PARSE_OBJECT *Op);
431 1.1 jruoho
432 1.2 christos void
433 1.2 christos AnCheckMethodReturnValue (
434 1.1 jruoho ACPI_PARSE_OBJECT *Op,
435 1.2 christos const ACPI_OPCODE_INFO *OpInfo,
436 1.2 christos ACPI_PARSE_OBJECT *ArgOp,
437 1.2 christos UINT32 RequiredBtypes,
438 1.2 christos UINT32 ThisNodeBtype);
439 1.2 christos
440 1.2 christos BOOLEAN
441 1.2 christos AnIsResultUsed (
442 1.2 christos ACPI_PARSE_OBJECT *Op);
443 1.2 christos
444 1.2 christos void
445 1.2 christos ApCheckForGpeNameConflict (
446 1.2 christos ACPI_PARSE_OBJECT *Op);
447 1.2 christos
448 1.2 christos void
449 1.2 christos ApCheckRegMethod (
450 1.2 christos ACPI_PARSE_OBJECT *Op);
451 1.2 christos
452 1.2 christos BOOLEAN
453 1.2 christos ApFindNameInScope (
454 1.2 christos char *Name,
455 1.2 christos ACPI_PARSE_OBJECT *Op);
456 1.1 jruoho
457 1.5 christos BOOLEAN
458 1.5 christos ApFindNameInDeviceTree (
459 1.5 christos char *Name,
460 1.5 christos ACPI_PARSE_OBJECT *Op);
461 1.1 jruoho
462 1.1 jruoho /*
463 1.1 jruoho * aslerror - error handling/reporting
464 1.1 jruoho */
465 1.1 jruoho void
466 1.2 christos AslAbort (
467 1.2 christos void);
468 1.2 christos
469 1.2 christos void
470 1.10 christos AslDualParseOpError (
471 1.10 christos UINT8 Level,
472 1.10 christos UINT16 MainMessageId,
473 1.10 christos ACPI_PARSE_OBJECT *MainOp,
474 1.10 christos char *MainMessage,
475 1.10 christos UINT16 SecondMessageId,
476 1.10 christos ACPI_PARSE_OBJECT *SecondOp,
477 1.10 christos char *SecondaryMessage);
478 1.10 christos
479 1.10 christos void
480 1.1 jruoho AslError (
481 1.1 jruoho UINT8 Level,
482 1.2 christos UINT16 MessageId,
483 1.1 jruoho ACPI_PARSE_OBJECT *Op,
484 1.1 jruoho char *ExtraMessage);
485 1.1 jruoho
486 1.9 christos void
487 1.9 christos AslCheckExpectedExceptions (
488 1.9 christos void);
489 1.9 christos
490 1.9 christos ACPI_STATUS
491 1.16 christos AslLogExpectedException (
492 1.9 christos char *MessageIdString);
493 1.9 christos
494 1.2 christos ACPI_STATUS
495 1.13 christos AslElevateException (
496 1.13 christos char *MessageIdString);
497 1.13 christos
498 1.13 christos ACPI_STATUS
499 1.2 christos AslDisableException (
500 1.2 christos char *MessageIdString);
501 1.2 christos
502 1.2 christos BOOLEAN
503 1.9 christos AslIsExceptionIgnored (
504 1.16 christos char *Filename,
505 1.16 christos UINT32 LineNumber,
506 1.2 christos UINT8 Level,
507 1.2 christos UINT16 MessageId);
508 1.2 christos
509 1.1 jruoho void
510 1.16 christos AslLogExpectedExceptionByLine (
511 1.16 christos char *MessageIdString);
512 1.16 christos
513 1.16 christos void
514 1.1 jruoho AslCoreSubsystemError (
515 1.1 jruoho ACPI_PARSE_OBJECT *Op,
516 1.1 jruoho ACPI_STATUS Status,
517 1.1 jruoho char *ExtraMessage,
518 1.1 jruoho BOOLEAN Abort);
519 1.1 jruoho
520 1.1 jruoho int
521 1.1 jruoho AslCompilererror(
522 1.2 christos const char *s);
523 1.1 jruoho
524 1.1 jruoho void
525 1.1 jruoho AslCommonError (
526 1.1 jruoho UINT8 Level,
527 1.2 christos UINT16 MessageId,
528 1.1 jruoho UINT32 CurrentLineNumber,
529 1.1 jruoho UINT32 LogicalLineNumber,
530 1.1 jruoho UINT32 LogicalByteOffset,
531 1.1 jruoho UINT32 Column,
532 1.1 jruoho char *Filename,
533 1.1 jruoho char *ExtraMessage);
534 1.1 jruoho
535 1.1 jruoho void
536 1.2 christos AslCommonError2 (
537 1.2 christos UINT8 Level,
538 1.2 christos UINT16 MessageId,
539 1.2 christos UINT32 LineNumber,
540 1.2 christos UINT32 Column,
541 1.2 christos char *SourceLine,
542 1.2 christos char *Filename,
543 1.2 christos char *ExtraMessage);
544 1.2 christos
545 1.2 christos void
546 1.1 jruoho AePrintException (
547 1.1 jruoho UINT32 FileId,
548 1.1 jruoho ASL_ERROR_MSG *Enode,
549 1.1 jruoho char *Header);
550 1.1 jruoho
551 1.1 jruoho void
552 1.1 jruoho AePrintErrorLog (
553 1.1 jruoho UINT32 FileId);
554 1.1 jruoho
555 1.1 jruoho void
556 1.1 jruoho AeClearErrorLog (
557 1.1 jruoho void);
558 1.1 jruoho
559 1.1 jruoho
560 1.1 jruoho /*
561 1.1 jruoho * asllisting - generate all "listing" type files
562 1.1 jruoho */
563 1.1 jruoho void
564 1.1 jruoho LsDoListings (
565 1.1 jruoho void);
566 1.1 jruoho
567 1.1 jruoho void
568 1.1 jruoho LsWriteNodeToAsmListing (
569 1.1 jruoho ACPI_PARSE_OBJECT *Op);
570 1.1 jruoho
571 1.1 jruoho void
572 1.1 jruoho LsWriteNode (
573 1.1 jruoho ACPI_PARSE_OBJECT *Op,
574 1.1 jruoho UINT32 FileId);
575 1.1 jruoho
576 1.1 jruoho void
577 1.2 christos LsDumpParseTree (
578 1.2 christos void);
579 1.2 christos
580 1.2 christos
581 1.2 christos /*
582 1.2 christos * asllistsup - Listing file support utilities
583 1.2 christos */
584 1.2 christos void
585 1.2 christos LsDumpAscii (
586 1.2 christos UINT32 FileId,
587 1.2 christos UINT32 Count,
588 1.2 christos UINT8 *Buffer);
589 1.2 christos
590 1.2 christos void
591 1.2 christos LsDumpAsciiInComment (
592 1.2 christos UINT32 FileId,
593 1.2 christos UINT32 Count,
594 1.2 christos UINT8 *Buffer);
595 1.2 christos
596 1.2 christos void
597 1.2 christos LsCheckException (
598 1.2 christos UINT32 LineNumber,
599 1.2 christos UINT32 FileId);
600 1.2 christos
601 1.2 christos void
602 1.2 christos LsFlushListingBuffer (
603 1.2 christos UINT32 FileId);
604 1.2 christos
605 1.2 christos void
606 1.2 christos LsWriteListingHexBytes (
607 1.2 christos UINT8 *Buffer,
608 1.2 christos UINT32 Length,
609 1.2 christos UINT32 FileId);
610 1.2 christos
611 1.2 christos void
612 1.2 christos LsWriteSourceLines (
613 1.2 christos UINT32 ToLineNumber,
614 1.2 christos UINT32 ToLogicalLineNumber,
615 1.2 christos UINT32 FileId);
616 1.2 christos
617 1.2 christos UINT32
618 1.2 christos LsWriteOneSourceLine (
619 1.2 christos UINT32 FileId);
620 1.2 christos
621 1.2 christos void
622 1.2 christos LsPushNode (
623 1.2 christos char *Filename);
624 1.2 christos
625 1.2 christos ASL_LISTING_NODE *
626 1.2 christos LsPopNode (
627 1.1 jruoho void);
628 1.1 jruoho
629 1.2 christos
630 1.2 christos /*
631 1.2 christos * aslhex - generate all "hex" output files (C, ASM, ASL)
632 1.2 christos */
633 1.1 jruoho void
634 1.2 christos HxDoHexOutput (
635 1.1 jruoho void);
636 1.1 jruoho
637 1.2 christos
638 1.1 jruoho /*
639 1.1 jruoho * aslfold - constant folding
640 1.1 jruoho */
641 1.1 jruoho ACPI_STATUS
642 1.1 jruoho OpcAmlConstantWalk (
643 1.1 jruoho ACPI_PARSE_OBJECT *Op,
644 1.1 jruoho UINT32 Level,
645 1.1 jruoho void *Context);
646 1.1 jruoho
647 1.1 jruoho
648 1.1 jruoho /*
649 1.2 christos * aslmessages - exception strings
650 1.2 christos */
651 1.2 christos const char *
652 1.2 christos AeDecodeMessageId (
653 1.2 christos UINT16 MessageId);
654 1.2 christos
655 1.2 christos const char *
656 1.2 christos AeDecodeExceptionLevel (
657 1.2 christos UINT8 Level);
658 1.2 christos
659 1.2 christos UINT16
660 1.2 christos AeBuildFullExceptionCode (
661 1.2 christos UINT8 Level,
662 1.2 christos UINT16 MessageId);
663 1.2 christos
664 1.2 christos /*
665 1.2 christos * asloffset - generate C offset file for BIOS support
666 1.2 christos */
667 1.2 christos ACPI_STATUS
668 1.2 christos LsAmlOffsetWalk (
669 1.2 christos ACPI_PARSE_OBJECT *Op,
670 1.2 christos UINT32 Level,
671 1.2 christos void *Context);
672 1.2 christos
673 1.2 christos void
674 1.2 christos LsDoOffsetTableHeader (
675 1.2 christos UINT32 FileId);
676 1.2 christos
677 1.2 christos void
678 1.2 christos LsDoOffsetTableFooter (
679 1.2 christos UINT32 FileId);
680 1.2 christos
681 1.2 christos
682 1.2 christos /*
683 1.1 jruoho * aslopcodes - generate AML opcodes
684 1.1 jruoho */
685 1.1 jruoho ACPI_STATUS
686 1.1 jruoho OpcAmlOpcodeWalk (
687 1.1 jruoho ACPI_PARSE_OBJECT *Op,
688 1.1 jruoho UINT32 Level,
689 1.1 jruoho void *Context);
690 1.1 jruoho
691 1.1 jruoho ACPI_STATUS
692 1.1 jruoho OpcAmlOpcodeUpdateWalk (
693 1.1 jruoho ACPI_PARSE_OBJECT *Op,
694 1.1 jruoho UINT32 Level,
695 1.1 jruoho void *Context);
696 1.1 jruoho
697 1.1 jruoho void
698 1.1 jruoho OpcGenerateAmlOpcode (
699 1.1 jruoho ACPI_PARSE_OBJECT *Op);
700 1.1 jruoho
701 1.1 jruoho UINT32
702 1.1 jruoho OpcSetOptimalIntegerSize (
703 1.1 jruoho ACPI_PARSE_OBJECT *Op);
704 1.1 jruoho
705 1.1 jruoho void
706 1.1 jruoho OpcGetIntegerWidth (
707 1.1 jruoho ACPI_PARSE_OBJECT *Op);
708 1.1 jruoho
709 1.1 jruoho
710 1.1 jruoho /*
711 1.1 jruoho * asloperands - generate AML operands for the AML opcodes
712 1.1 jruoho */
713 1.1 jruoho ACPI_PARSE_OBJECT *
714 1.1 jruoho UtGetArg (
715 1.1 jruoho ACPI_PARSE_OBJECT *Op,
716 1.1 jruoho UINT32 Argn);
717 1.1 jruoho
718 1.1 jruoho void
719 1.1 jruoho OpnGenerateAmlOperands (
720 1.1 jruoho ACPI_PARSE_OBJECT *Op);
721 1.1 jruoho
722 1.1 jruoho void
723 1.1 jruoho OpnDoPackage (
724 1.1 jruoho ACPI_PARSE_OBJECT *Op);
725 1.1 jruoho
726 1.1 jruoho
727 1.1 jruoho /*
728 1.14 christos * aslopt - optimization
729 1.1 jruoho */
730 1.1 jruoho void
731 1.1 jruoho OptOptimizeNamePath (
732 1.1 jruoho ACPI_PARSE_OBJECT *Op,
733 1.1 jruoho UINT32 Flags,
734 1.1 jruoho ACPI_WALK_STATE *WalkState,
735 1.1 jruoho char *AmlNameString,
736 1.1 jruoho ACPI_NAMESPACE_NODE *TargetNode);
737 1.1 jruoho
738 1.1 jruoho
739 1.1 jruoho /*
740 1.5 christos * aslpld - ToPLD macro support
741 1.5 christos */
742 1.5 christos void
743 1.5 christos OpcDoPld (
744 1.5 christos ACPI_PARSE_OBJECT *Op);
745 1.5 christos
746 1.5 christos
747 1.5 christos /*
748 1.2 christos * aslprintf - Printf/Fprintf macros
749 1.2 christos */
750 1.2 christos void
751 1.2 christos OpcDoPrintf (
752 1.2 christos ACPI_PARSE_OBJECT *Op);
753 1.2 christos
754 1.2 christos void
755 1.2 christos OpcDoFprintf (
756 1.2 christos ACPI_PARSE_OBJECT *Op);
757 1.2 christos
758 1.2 christos
759 1.2 christos /*
760 1.2 christos * aslprune - parse tree pruner
761 1.2 christos */
762 1.2 christos void
763 1.2 christos AslPruneParseTree (
764 1.2 christos UINT32 PruneDepth,
765 1.2 christos UINT32 Type);
766 1.2 christos
767 1.2 christos
768 1.2 christos /*
769 1.1 jruoho * aslcodegen - code generation
770 1.1 jruoho */
771 1.1 jruoho void
772 1.1 jruoho CgGenerateAmlOutput (
773 1.1 jruoho void);
774 1.1 jruoho
775 1.8 christos void
776 1.8 christos CgLocalWriteAmlData (
777 1.8 christos ACPI_PARSE_OBJECT *Op,
778 1.8 christos void *Buffer,
779 1.8 christos UINT32 Length);
780 1.8 christos
781 1.1 jruoho
782 1.1 jruoho /*
783 1.1 jruoho * aslfile
784 1.1 jruoho */
785 1.1 jruoho void
786 1.1 jruoho FlOpenFile (
787 1.1 jruoho UINT32 FileId,
788 1.1 jruoho char *Filename,
789 1.1 jruoho char *Mode);
790 1.1 jruoho
791 1.1 jruoho
792 1.1 jruoho /*
793 1.1 jruoho * asllength - calculate/adjust AML package lengths
794 1.1 jruoho */
795 1.1 jruoho ACPI_STATUS
796 1.1 jruoho LnPackageLengthWalk (
797 1.1 jruoho ACPI_PARSE_OBJECT *Op,
798 1.1 jruoho UINT32 Level,
799 1.1 jruoho void *Context);
800 1.1 jruoho
801 1.1 jruoho ACPI_STATUS
802 1.1 jruoho LnInitLengthsWalk (
803 1.1 jruoho ACPI_PARSE_OBJECT *Op,
804 1.1 jruoho UINT32 Level,
805 1.1 jruoho void *Context);
806 1.1 jruoho
807 1.1 jruoho void
808 1.1 jruoho CgGenerateAmlLengths (
809 1.1 jruoho ACPI_PARSE_OBJECT *Op);
810 1.1 jruoho
811 1.1 jruoho
812 1.1 jruoho /*
813 1.1 jruoho * aslmap - opcode mappings and reserved method names
814 1.1 jruoho */
815 1.1 jruoho ACPI_OBJECT_TYPE
816 1.1 jruoho AslMapNamedOpcodeToDataType (
817 1.1 jruoho UINT16 Opcode);
818 1.1 jruoho
819 1.1 jruoho
820 1.1 jruoho /*
821 1.1 jruoho * aslpredef - ACPI predefined names support
822 1.1 jruoho */
823 1.2 christos BOOLEAN
824 1.1 jruoho ApCheckForPredefinedMethod (
825 1.1 jruoho ACPI_PARSE_OBJECT *Op,
826 1.1 jruoho ASL_METHOD_INFO *MethodInfo);
827 1.1 jruoho
828 1.1 jruoho void
829 1.1 jruoho ApCheckPredefinedReturnValue (
830 1.1 jruoho ACPI_PARSE_OBJECT *Op,
831 1.1 jruoho ASL_METHOD_INFO *MethodInfo);
832 1.1 jruoho
833 1.1 jruoho UINT32
834 1.1 jruoho ApCheckForPredefinedName (
835 1.1 jruoho ACPI_PARSE_OBJECT *Op,
836 1.1 jruoho char *Name);
837 1.1 jruoho
838 1.1 jruoho void
839 1.1 jruoho ApCheckForPredefinedObject (
840 1.1 jruoho ACPI_PARSE_OBJECT *Op,
841 1.1 jruoho char *Name);
842 1.1 jruoho
843 1.2 christos ACPI_STATUS
844 1.2 christos ApCheckObjectType (
845 1.2 christos const char *PredefinedName,
846 1.2 christos ACPI_PARSE_OBJECT *Op,
847 1.2 christos UINT32 ExpectedBtypes,
848 1.2 christos UINT32 PackageIndex);
849 1.2 christos
850 1.1 jruoho void
851 1.1 jruoho ApDisplayReservedNames (
852 1.1 jruoho void);
853 1.1 jruoho
854 1.1 jruoho
855 1.1 jruoho /*
856 1.2 christos * aslprepkg - ACPI predefined names support for packages
857 1.2 christos */
858 1.2 christos void
859 1.2 christos ApCheckPackage (
860 1.2 christos ACPI_PARSE_OBJECT *ParentOp,
861 1.2 christos const ACPI_PREDEFINED_INFO *Predefined);
862 1.2 christos
863 1.2 christos
864 1.2 christos /*
865 1.1 jruoho * asltransform - parse tree transformations
866 1.1 jruoho */
867 1.1 jruoho ACPI_STATUS
868 1.5 christos TrAmlTransformWalkBegin (
869 1.5 christos ACPI_PARSE_OBJECT *Op,
870 1.5 christos UINT32 Level,
871 1.5 christos void *Context);
872 1.5 christos
873 1.5 christos ACPI_STATUS
874 1.5 christos TrAmlTransformWalkEnd (
875 1.1 jruoho ACPI_PARSE_OBJECT *Op,
876 1.1 jruoho UINT32 Level,
877 1.1 jruoho void *Context);
878 1.1 jruoho
879 1.1 jruoho
880 1.1 jruoho /*
881 1.5 christos * aslexternal - External opcode support
882 1.5 christos */
883 1.5 christos ACPI_STATUS
884 1.5 christos ExAmlExternalWalkBegin (
885 1.5 christos ACPI_PARSE_OBJECT *Op,
886 1.5 christos UINT32 Level,
887 1.5 christos void *Context);
888 1.5 christos
889 1.5 christos ACPI_STATUS
890 1.5 christos ExAmlExternalWalkEnd (
891 1.5 christos ACPI_PARSE_OBJECT *Op,
892 1.5 christos UINT32 Level,
893 1.5 christos void *Context);
894 1.5 christos
895 1.5 christos void
896 1.5 christos ExDoExternal (
897 1.5 christos ACPI_PARSE_OBJECT *Op);
898 1.5 christos
899 1.1 jruoho /* Values for "Visitation" parameter above */
900 1.1 jruoho
901 1.14 christos #define ASL_WALK_VISIT_DOWNWARD 0x01
902 1.14 christos #define ASL_WALK_VISIT_UPWARD 0x02
903 1.14 christos #define ASL_WALK_VISIT_DB_SEPARATELY 0x04
904 1.14 christos #define ASL_WALK_VISIT_TWICE (ASL_WALK_VISIT_DOWNWARD | ASL_WALK_VISIT_UPWARD)
905 1.1 jruoho
906 1.1 jruoho
907 1.9 christos /*
908 1.9 christos * aslparseop.c - Parse op create/allocate/cache
909 1.9 christos */
910 1.1 jruoho ACPI_PARSE_OBJECT *
911 1.9 christos TrCreateOp (
912 1.1 jruoho UINT32 ParseOpcode,
913 1.1 jruoho UINT32 NumChildren,
914 1.1 jruoho ...);
915 1.1 jruoho
916 1.1 jruoho ACPI_PARSE_OBJECT *
917 1.9 christos TrCreateLeafOp (
918 1.1 jruoho UINT32 ParseOpcode);
919 1.1 jruoho
920 1.1 jruoho ACPI_PARSE_OBJECT *
921 1.9 christos TrCreateNullTargetOp (
922 1.2 christos void);
923 1.2 christos
924 1.2 christos ACPI_PARSE_OBJECT *
925 1.9 christos TrCreateAssignmentOp (
926 1.2 christos ACPI_PARSE_OBJECT *Target,
927 1.2 christos ACPI_PARSE_OBJECT *Source);
928 1.2 christos
929 1.2 christos ACPI_PARSE_OBJECT *
930 1.9 christos TrCreateTargetOp (
931 1.2 christos ACPI_PARSE_OBJECT *OriginalOp,
932 1.2 christos ACPI_PARSE_OBJECT *ParentOp);
933 1.2 christos
934 1.2 christos ACPI_PARSE_OBJECT *
935 1.9 christos TrCreateValuedLeafOp (
936 1.1 jruoho UINT32 ParseOpcode,
937 1.1 jruoho UINT64 Value);
938 1.1 jruoho
939 1.1 jruoho ACPI_PARSE_OBJECT *
940 1.9 christos TrCreateConstantLeafOp (
941 1.2 christos UINT32 ParseOpcode);
942 1.2 christos
943 1.2 christos ACPI_PARSE_OBJECT *
944 1.9 christos TrAllocateOp (
945 1.9 christos UINT32 ParseOpcode);
946 1.9 christos
947 1.9 christos void
948 1.9 christos TrPrintOpFlags (
949 1.9 christos UINT32 Flags,
950 1.9 christos UINT32 OutputLevel);
951 1.9 christos
952 1.9 christos
953 1.9 christos /*
954 1.9 christos * asltree.c - Parse tree management
955 1.9 christos */
956 1.9 christos void
957 1.9 christos TrSetOpParent (
958 1.1 jruoho ACPI_PARSE_OBJECT *Op,
959 1.9 christos ACPI_PARSE_OBJECT *ParentOp);
960 1.9 christos
961 1.9 christos ACPI_PARSE_OBJECT *
962 1.9 christos TrSetOpIntegerValue (
963 1.9 christos UINT32 ParseOpcode,
964 1.9 christos ACPI_PARSE_OBJECT *Op);
965 1.1 jruoho
966 1.1 jruoho void
967 1.9 christos TrSetOpEndLineNumber (
968 1.1 jruoho ACPI_PARSE_OBJECT *Op);
969 1.1 jruoho
970 1.1 jruoho void
971 1.9 christos TrSetOpCurrentFilename (
972 1.4 christos ACPI_PARSE_OBJECT *Op);
973 1.4 christos
974 1.4 christos void
975 1.9 christos TrSetOpIntegerWidth (
976 1.9 christos ACPI_PARSE_OBJECT *TableSignature,
977 1.9 christos ACPI_PARSE_OBJECT *Revision);
978 1.9 christos
979 1.9 christos ACPI_PARSE_OBJECT *
980 1.9 christos TrLinkOpChildren (
981 1.9 christos ACPI_PARSE_OBJECT *Op,
982 1.9 christos UINT32 NumChildren,
983 1.9 christos ...);
984 1.1 jruoho
985 1.1 jruoho ACPI_PARSE_OBJECT *
986 1.9 christos TrLinkPeerOp (
987 1.1 jruoho ACPI_PARSE_OBJECT *Op1,
988 1.1 jruoho ACPI_PARSE_OBJECT *Op2);
989 1.1 jruoho
990 1.1 jruoho ACPI_PARSE_OBJECT *
991 1.9 christos TrLinkChildOp (
992 1.1 jruoho ACPI_PARSE_OBJECT *Op1,
993 1.1 jruoho ACPI_PARSE_OBJECT *Op2);
994 1.1 jruoho
995 1.1 jruoho ACPI_PARSE_OBJECT *
996 1.9 christos TrSetOpFlags (
997 1.1 jruoho ACPI_PARSE_OBJECT *Op,
998 1.1 jruoho UINT32 Flags);
999 1.1 jruoho
1000 1.1 jruoho ACPI_PARSE_OBJECT *
1001 1.9 christos TrSetOpAmlLength (
1002 1.2 christos ACPI_PARSE_OBJECT *Op,
1003 1.2 christos UINT32 Length);
1004 1.2 christos
1005 1.2 christos ACPI_PARSE_OBJECT *
1006 1.9 christos TrLinkPeerOps (
1007 1.1 jruoho UINT32 NumPeers,
1008 1.1 jruoho ...);
1009 1.1 jruoho
1010 1.9 christos ACPI_STATUS
1011 1.9 christos TrWalkParseTree (
1012 1.9 christos ACPI_PARSE_OBJECT *Op,
1013 1.9 christos UINT32 Visitation,
1014 1.9 christos ASL_WALK_CALLBACK DescendingCallback,
1015 1.9 christos ASL_WALK_CALLBACK AscendingCallback,
1016 1.9 christos void *Context);
1017 1.9 christos
1018 1.1 jruoho
1019 1.1 jruoho /*
1020 1.1 jruoho * aslfiles - File I/O support
1021 1.1 jruoho */
1022 1.1 jruoho void
1023 1.1 jruoho FlAddIncludeDirectory (
1024 1.1 jruoho char *Dir);
1025 1.1 jruoho
1026 1.2 christos char *
1027 1.2 christos FlMergePathnames (
1028 1.2 christos char *PrefixDir,
1029 1.2 christos char *FilePathname);
1030 1.2 christos
1031 1.1 jruoho void
1032 1.1 jruoho FlOpenIncludeFile (
1033 1.1 jruoho ACPI_PARSE_OBJECT *Op);
1034 1.1 jruoho
1035 1.1 jruoho void
1036 1.1 jruoho FlFileError (
1037 1.1 jruoho UINT32 FileId,
1038 1.1 jruoho UINT8 ErrorId);
1039 1.1 jruoho
1040 1.1 jruoho UINT32
1041 1.1 jruoho FlGetFileSize (
1042 1.1 jruoho UINT32 FileId);
1043 1.1 jruoho
1044 1.1 jruoho ACPI_STATUS
1045 1.1 jruoho FlReadFile (
1046 1.1 jruoho UINT32 FileId,
1047 1.1 jruoho void *Buffer,
1048 1.1 jruoho UINT32 Length);
1049 1.1 jruoho
1050 1.1 jruoho void
1051 1.1 jruoho FlWriteFile (
1052 1.1 jruoho UINT32 FileId,
1053 1.1 jruoho void *Buffer,
1054 1.1 jruoho UINT32 Length);
1055 1.1 jruoho
1056 1.1 jruoho void
1057 1.1 jruoho FlSeekFile (
1058 1.1 jruoho UINT32 FileId,
1059 1.1 jruoho long Offset);
1060 1.1 jruoho
1061 1.1 jruoho void
1062 1.14 christos FlSeekFileSet (
1063 1.14 christos UINT32 FileId,
1064 1.14 christos long Offset);
1065 1.14 christos
1066 1.14 christos void
1067 1.1 jruoho FlCloseFile (
1068 1.1 jruoho UINT32 FileId);
1069 1.1 jruoho
1070 1.15 christos ACPI_PRINTF_LIKE (2)
1071 1.1 jruoho void
1072 1.1 jruoho FlPrintFile (
1073 1.1 jruoho UINT32 FileId,
1074 1.1 jruoho char *Format,
1075 1.1 jruoho ...);
1076 1.1 jruoho
1077 1.1 jruoho void
1078 1.2 christos FlDeleteFile (
1079 1.2 christos UINT32 FileId);
1080 1.2 christos
1081 1.2 christos void
1082 1.1 jruoho FlSetLineNumber (
1083 1.2 christos UINT32 LineNumber);
1084 1.2 christos
1085 1.2 christos void
1086 1.2 christos FlSetFilename (
1087 1.2 christos char *Filename);
1088 1.1 jruoho
1089 1.1 jruoho ACPI_STATUS
1090 1.1 jruoho FlOpenInputFile (
1091 1.1 jruoho char *InputFilename);
1092 1.1 jruoho
1093 1.1 jruoho ACPI_STATUS
1094 1.1 jruoho FlOpenAmlOutputFile (
1095 1.1 jruoho char *InputFilename);
1096 1.1 jruoho
1097 1.1 jruoho ACPI_STATUS
1098 1.1 jruoho FlOpenMiscOutputFiles (
1099 1.1 jruoho char *InputFilename);
1100 1.1 jruoho
1101 1.14 christos ACPI_STATUS
1102 1.14 christos FlInitOneFile (
1103 1.14 christos char *InputFilename);
1104 1.14 christos
1105 1.14 christos ASL_FILE_SWITCH_STATUS
1106 1.14 christos FlSwitchFileSet (
1107 1.14 christos char *InputFilename);
1108 1.14 christos
1109 1.14 christos FILE *
1110 1.14 christos FlGetFileHandle (
1111 1.14 christos UINT32 OutFileId,
1112 1.14 christos UINT32 InFileId,
1113 1.14 christos char *Filename);
1114 1.14 christos
1115 1.14 christos ASL_GLOBAL_FILE_NODE *
1116 1.14 christos FlGetFileNode (
1117 1.14 christos UINT32 FileId,
1118 1.14 christos char *Filename);
1119 1.14 christos
1120 1.14 christos ASL_GLOBAL_FILE_NODE *
1121 1.14 christos FlGetCurrentFileNode (
1122 1.14 christos void);
1123 1.14 christos
1124 1.14 christos
1125 1.2 christos /*
1126 1.2 christos * aslhwmap - hardware map summary
1127 1.2 christos */
1128 1.2 christos void
1129 1.2 christos MpEmitMappingInfo (
1130 1.2 christos void);
1131 1.2 christos
1132 1.1 jruoho
1133 1.1 jruoho /*
1134 1.1 jruoho * asload - load namespace in prep for cross reference
1135 1.1 jruoho */
1136 1.1 jruoho ACPI_STATUS
1137 1.1 jruoho LdLoadNamespace (
1138 1.1 jruoho ACPI_PARSE_OBJECT *RootOp);
1139 1.1 jruoho
1140 1.1 jruoho /*
1141 1.2 christos * asllookup - namespace lookup functions
1142 1.2 christos */
1143 1.2 christos void
1144 1.2 christos LkFindUnreferencedObjects (
1145 1.2 christos void);
1146 1.2 christos
1147 1.14 christos
1148 1.2 christos /*
1149 1.6 christos * aslhelp - help screens
1150 1.2 christos */
1151 1.2 christos void
1152 1.2 christos Usage (
1153 1.2 christos void);
1154 1.2 christos
1155 1.2 christos void
1156 1.2 christos AslFilenameHelp (
1157 1.2 christos void);
1158 1.2 christos
1159 1.6 christos void
1160 1.6 christos AslDisassemblyHelp (
1161 1.6 christos void);
1162 1.6 christos
1163 1.2 christos
1164 1.2 christos /*
1165 1.2 christos * aslnamesp - namespace output file generation
1166 1.1 jruoho */
1167 1.1 jruoho ACPI_STATUS
1168 1.2 christos NsDisplayNamespace (
1169 1.1 jruoho void);
1170 1.1 jruoho
1171 1.1 jruoho void
1172 1.2 christos NsSetupNamespaceListing (
1173 1.2 christos void *Handle);
1174 1.2 christos
1175 1.14 christos
1176 1.2 christos /*
1177 1.2 christos * asloptions - command line processing
1178 1.2 christos */
1179 1.2 christos int
1180 1.2 christos AslCommandLine (
1181 1.2 christos int argc,
1182 1.2 christos char **argv);
1183 1.1 jruoho
1184 1.14 christos
1185 1.2 christos /*
1186 1.2 christos * aslxref - namespace cross reference
1187 1.2 christos */
1188 1.1 jruoho ACPI_STATUS
1189 1.2 christos XfCrossReferenceNamespace (
1190 1.1 jruoho void);
1191 1.1 jruoho
1192 1.1 jruoho
1193 1.1 jruoho /*
1194 1.5 christos * aslxrefout
1195 1.5 christos */
1196 1.5 christos void
1197 1.5 christos OtPrintHeaders (
1198 1.5 christos char *Message);
1199 1.5 christos
1200 1.5 christos void
1201 1.5 christos OtCreateXrefFile (
1202 1.5 christos void);
1203 1.5 christos
1204 1.5 christos void
1205 1.5 christos OtXrefWalkPart1 (
1206 1.5 christos ACPI_PARSE_OBJECT *Op,
1207 1.5 christos UINT32 Level,
1208 1.5 christos ASL_METHOD_INFO *MethodInfo);
1209 1.5 christos
1210 1.5 christos
1211 1.5 christos /*
1212 1.14 christos * aslutils - common compiler utilities
1213 1.1 jruoho */
1214 1.15 christos ACPI_PRINTF_LIKE(2)
1215 1.1 jruoho void
1216 1.1 jruoho DbgPrint (
1217 1.1 jruoho UINT32 Type,
1218 1.1 jruoho char *Format,
1219 1.1 jruoho ...);
1220 1.1 jruoho
1221 1.1 jruoho /* Type values for above */
1222 1.1 jruoho
1223 1.1 jruoho #define ASL_DEBUG_OUTPUT 0
1224 1.1 jruoho #define ASL_PARSE_OUTPUT 1
1225 1.1 jruoho #define ASL_TREE_OUTPUT 2
1226 1.1 jruoho
1227 1.19 christos BOOLEAN
1228 1.19 christos UtIsIdInteger (
1229 1.19 christos UINT8 *Target);
1230 1.19 christos
1231 1.5 christos UINT8
1232 1.5 christos UtIsBigEndianMachine (
1233 1.5 christos void);
1234 1.5 christos
1235 1.4 christos BOOLEAN
1236 1.4 christos UtQueryForOverwrite (
1237 1.4 christos char *Pathname);
1238 1.4 christos
1239 1.1 jruoho void
1240 1.5 christos UtDumpStringOp (
1241 1.5 christos ACPI_PARSE_OBJECT *Op,
1242 1.5 christos UINT32 Level);
1243 1.5 christos
1244 1.5 christos void
1245 1.5 christos UtDumpIntegerOp (
1246 1.5 christos ACPI_PARSE_OBJECT *Op,
1247 1.5 christos UINT32 Level,
1248 1.5 christos UINT32 IntegerLength);
1249 1.5 christos
1250 1.5 christos void
1251 1.5 christos UtDumpBasicOp (
1252 1.5 christos ACPI_PARSE_OBJECT *Op,
1253 1.5 christos UINT32 Level);
1254 1.5 christos
1255 1.16 christos ACPI_NAMESPACE_NODE *
1256 1.16 christos UtGetParentMethodNode (
1257 1.12 christos ACPI_NAMESPACE_NODE *Node);
1258 1.12 christos
1259 1.16 christos ACPI_PARSE_OBJECT *
1260 1.16 christos UtGetParentMethodOp (
1261 1.16 christos ACPI_PARSE_OBJECT *Op);
1262 1.16 christos
1263 1.12 christos BOOLEAN
1264 1.12 christos UtNodeIsDescendantOf (
1265 1.12 christos ACPI_NAMESPACE_NODE *Node1,
1266 1.12 christos ACPI_NAMESPACE_NODE *Node2);
1267 1.12 christos
1268 1.5 christos void
1269 1.2 christos UtDisplaySupportedTables (
1270 1.2 christos void);
1271 1.2 christos
1272 1.2 christos void
1273 1.1 jruoho UtDisplayConstantOpcodes (
1274 1.1 jruoho void);
1275 1.1 jruoho
1276 1.1 jruoho UINT8
1277 1.1 jruoho UtBeginEvent (
1278 1.1 jruoho char *Name);
1279 1.1 jruoho
1280 1.1 jruoho void
1281 1.1 jruoho UtEndEvent (
1282 1.1 jruoho UINT8 Event);
1283 1.1 jruoho
1284 1.1 jruoho void
1285 1.1 jruoho UtDisplaySummary (
1286 1.1 jruoho UINT32 FileId);
1287 1.1 jruoho
1288 1.1 jruoho void
1289 1.14 christos UtDisplayOneSummary (
1290 1.14 christos UINT32 FileId,
1291 1.14 christos BOOLEAN DisplayErrorSummary);
1292 1.14 christos
1293 1.14 christos void
1294 1.1 jruoho UtConvertByteToHex (
1295 1.1 jruoho UINT8 RawByte,
1296 1.1 jruoho UINT8 *Buffer);
1297 1.1 jruoho
1298 1.1 jruoho void
1299 1.1 jruoho UtConvertByteToAsmHex (
1300 1.1 jruoho UINT8 RawByte,
1301 1.1 jruoho UINT8 *Buffer);
1302 1.1 jruoho
1303 1.1 jruoho char *
1304 1.1 jruoho UtGetOpName (
1305 1.1 jruoho UINT32 ParseOpcode);
1306 1.1 jruoho
1307 1.1 jruoho void
1308 1.1 jruoho UtSetParseOpName (
1309 1.1 jruoho ACPI_PARSE_OBJECT *Op);
1310 1.1 jruoho
1311 1.1 jruoho ACPI_STATUS
1312 1.1 jruoho UtInternalizeName (
1313 1.1 jruoho char *ExternalName,
1314 1.1 jruoho char **ConvertedName);
1315 1.1 jruoho
1316 1.15 christos BOOLEAN
1317 1.15 christos UtNameContainsAllPrefix (
1318 1.15 christos ACPI_PARSE_OBJECT *Op);
1319 1.15 christos
1320 1.1 jruoho void
1321 1.1 jruoho UtAttachNamepathToOwner (
1322 1.1 jruoho ACPI_PARSE_OBJECT *Op,
1323 1.1 jruoho ACPI_PARSE_OBJECT *NameNode);
1324 1.1 jruoho
1325 1.1 jruoho ACPI_PARSE_OBJECT *
1326 1.1 jruoho UtCheckIntegerRange (
1327 1.1 jruoho ACPI_PARSE_OBJECT *Op,
1328 1.1 jruoho UINT32 LowValue,
1329 1.1 jruoho UINT32 HighValue);
1330 1.1 jruoho
1331 1.1 jruoho UINT64
1332 1.1 jruoho UtDoConstant (
1333 1.1 jruoho char *String);
1334 1.1 jruoho
1335 1.15 christos char *
1336 1.15 christos AcpiUtStrdup (
1337 1.15 christos char *String);
1338 1.15 christos
1339 1.15 christos char *
1340 1.15 christos AcpiUtStrcat (
1341 1.15 christos char *String1,
1342 1.15 christos char *String2);
1343 1.15 christos
1344 1.2 christos
1345 1.2 christos /*
1346 1.2 christos * asluuid - UUID support
1347 1.2 christos */
1348 1.2 christos ACPI_STATUS
1349 1.2 christos AuValidateUuid (
1350 1.2 christos char *InString);
1351 1.2 christos
1352 1.2 christos ACPI_STATUS
1353 1.2 christos AuConvertUuidToString (
1354 1.2 christos char *UuIdBuffer,
1355 1.2 christos char *OutString);
1356 1.1 jruoho
1357 1.14 christos
1358 1.1 jruoho /*
1359 1.1 jruoho * aslresource - Resource template generation utilities
1360 1.1 jruoho */
1361 1.1 jruoho void
1362 1.1 jruoho RsSmallAddressCheck (
1363 1.1 jruoho UINT8 Type,
1364 1.1 jruoho UINT32 Minimum,
1365 1.1 jruoho UINT32 Maximum,
1366 1.1 jruoho UINT32 Length,
1367 1.1 jruoho UINT32 Alignment,
1368 1.1 jruoho ACPI_PARSE_OBJECT *MinOp,
1369 1.1 jruoho ACPI_PARSE_OBJECT *MaxOp,
1370 1.1 jruoho ACPI_PARSE_OBJECT *LengthOp,
1371 1.2 christos ACPI_PARSE_OBJECT *AlignOp,
1372 1.2 christos ACPI_PARSE_OBJECT *Op);
1373 1.1 jruoho
1374 1.1 jruoho void
1375 1.1 jruoho RsLargeAddressCheck (
1376 1.1 jruoho UINT64 Minimum,
1377 1.1 jruoho UINT64 Maximum,
1378 1.1 jruoho UINT64 Length,
1379 1.1 jruoho UINT64 Granularity,
1380 1.1 jruoho UINT8 Flags,
1381 1.1 jruoho ACPI_PARSE_OBJECT *MinOp,
1382 1.1 jruoho ACPI_PARSE_OBJECT *MaxOp,
1383 1.1 jruoho ACPI_PARSE_OBJECT *LengthOp,
1384 1.2 christos ACPI_PARSE_OBJECT *GranOp,
1385 1.2 christos ACPI_PARSE_OBJECT *Op);
1386 1.1 jruoho
1387 1.1 jruoho UINT16
1388 1.1 jruoho RsGetStringDataLength (
1389 1.1 jruoho ACPI_PARSE_OBJECT *InitializerOp);
1390 1.1 jruoho
1391 1.1 jruoho ASL_RESOURCE_NODE *
1392 1.1 jruoho RsAllocateResourceNode (
1393 1.1 jruoho UINT32 Size);
1394 1.1 jruoho
1395 1.1 jruoho void
1396 1.2 christos RsCreateResourceField (
1397 1.1 jruoho ACPI_PARSE_OBJECT *Op,
1398 1.1 jruoho char *Name,
1399 1.1 jruoho UINT32 ByteOffset,
1400 1.2 christos UINT32 BitOffset,
1401 1.2 christos UINT32 BitLength);
1402 1.1 jruoho
1403 1.1 jruoho void
1404 1.2 christos RsSetFlagBits (
1405 1.2 christos UINT8 *Flags,
1406 1.1 jruoho ACPI_PARSE_OBJECT *Op,
1407 1.2 christos UINT8 Position,
1408 1.2 christos UINT8 DefaultBit);
1409 1.1 jruoho
1410 1.1 jruoho void
1411 1.2 christos RsSetFlagBits16 (
1412 1.2 christos UINT16 *Flags,
1413 1.1 jruoho ACPI_PARSE_OBJECT *Op,
1414 1.1 jruoho UINT8 Position,
1415 1.1 jruoho UINT8 DefaultBit);
1416 1.1 jruoho
1417 1.1 jruoho ACPI_PARSE_OBJECT *
1418 1.1 jruoho RsCompleteNodeAndGetNext (
1419 1.1 jruoho ACPI_PARSE_OBJECT *Op);
1420 1.1 jruoho
1421 1.1 jruoho void
1422 1.1 jruoho RsCheckListForDuplicates (
1423 1.1 jruoho ACPI_PARSE_OBJECT *Op);
1424 1.1 jruoho
1425 1.1 jruoho ASL_RESOURCE_NODE *
1426 1.1 jruoho RsDoOneResourceDescriptor (
1427 1.2 christos ASL_RESOURCE_INFO *Info,
1428 1.1 jruoho UINT8 *State);
1429 1.1 jruoho
1430 1.1 jruoho /* Values for State above */
1431 1.1 jruoho
1432 1.1 jruoho #define ACPI_RSTATE_NORMAL 0
1433 1.1 jruoho #define ACPI_RSTATE_START_DEPENDENT 1
1434 1.1 jruoho #define ACPI_RSTATE_DEPENDENT_LIST 2
1435 1.1 jruoho
1436 1.1 jruoho UINT32
1437 1.1 jruoho RsLinkDescriptorChain (
1438 1.1 jruoho ASL_RESOURCE_NODE **PreviousRnode,
1439 1.1 jruoho ASL_RESOURCE_NODE *Rnode);
1440 1.1 jruoho
1441 1.1 jruoho void
1442 1.1 jruoho RsDoResourceTemplate (
1443 1.1 jruoho ACPI_PARSE_OBJECT *Op);
1444 1.1 jruoho
1445 1.1 jruoho
1446 1.1 jruoho /*
1447 1.1 jruoho * aslrestype1 - Miscellaneous Small descriptors
1448 1.1 jruoho */
1449 1.1 jruoho ASL_RESOURCE_NODE *
1450 1.1 jruoho RsDoEndTagDescriptor (
1451 1.2 christos ASL_RESOURCE_INFO *Info);
1452 1.1 jruoho
1453 1.1 jruoho ASL_RESOURCE_NODE *
1454 1.1 jruoho RsDoEndDependentDescriptor (
1455 1.2 christos ASL_RESOURCE_INFO *Info);
1456 1.1 jruoho
1457 1.1 jruoho ASL_RESOURCE_NODE *
1458 1.1 jruoho RsDoMemory24Descriptor (
1459 1.2 christos ASL_RESOURCE_INFO *Info);
1460 1.1 jruoho
1461 1.1 jruoho ASL_RESOURCE_NODE *
1462 1.1 jruoho RsDoMemory32Descriptor (
1463 1.2 christos ASL_RESOURCE_INFO *Info);
1464 1.1 jruoho
1465 1.1 jruoho ASL_RESOURCE_NODE *
1466 1.1 jruoho RsDoMemory32FixedDescriptor (
1467 1.2 christos ASL_RESOURCE_INFO *Info);
1468 1.1 jruoho
1469 1.1 jruoho ASL_RESOURCE_NODE *
1470 1.1 jruoho RsDoStartDependentDescriptor (
1471 1.2 christos ASL_RESOURCE_INFO *Info);
1472 1.1 jruoho
1473 1.1 jruoho ASL_RESOURCE_NODE *
1474 1.1 jruoho RsDoStartDependentNoPriDescriptor (
1475 1.2 christos ASL_RESOURCE_INFO *Info);
1476 1.1 jruoho
1477 1.1 jruoho ASL_RESOURCE_NODE *
1478 1.1 jruoho RsDoVendorSmallDescriptor (
1479 1.2 christos ASL_RESOURCE_INFO *Info);
1480 1.1 jruoho
1481 1.1 jruoho
1482 1.1 jruoho /*
1483 1.1 jruoho * aslrestype1i - I/O-related Small descriptors
1484 1.1 jruoho */
1485 1.1 jruoho ASL_RESOURCE_NODE *
1486 1.1 jruoho RsDoDmaDescriptor (
1487 1.2 christos ASL_RESOURCE_INFO *Info);
1488 1.2 christos
1489 1.2 christos ASL_RESOURCE_NODE *
1490 1.2 christos RsDoFixedDmaDescriptor (
1491 1.2 christos ASL_RESOURCE_INFO *Info);
1492 1.1 jruoho
1493 1.1 jruoho ASL_RESOURCE_NODE *
1494 1.1 jruoho RsDoFixedIoDescriptor (
1495 1.2 christos ASL_RESOURCE_INFO *Info);
1496 1.1 jruoho
1497 1.1 jruoho ASL_RESOURCE_NODE *
1498 1.1 jruoho RsDoIoDescriptor (
1499 1.2 christos ASL_RESOURCE_INFO *Info);
1500 1.1 jruoho
1501 1.1 jruoho ASL_RESOURCE_NODE *
1502 1.1 jruoho RsDoIrqDescriptor (
1503 1.2 christos ASL_RESOURCE_INFO *Info);
1504 1.1 jruoho
1505 1.1 jruoho ASL_RESOURCE_NODE *
1506 1.1 jruoho RsDoIrqNoFlagsDescriptor (
1507 1.2 christos ASL_RESOURCE_INFO *Info);
1508 1.1 jruoho
1509 1.1 jruoho
1510 1.1 jruoho /*
1511 1.1 jruoho * aslrestype2 - Large resource descriptors
1512 1.1 jruoho */
1513 1.1 jruoho ASL_RESOURCE_NODE *
1514 1.1 jruoho RsDoInterruptDescriptor (
1515 1.2 christos ASL_RESOURCE_INFO *Info);
1516 1.1 jruoho
1517 1.1 jruoho ASL_RESOURCE_NODE *
1518 1.1 jruoho RsDoVendorLargeDescriptor (
1519 1.2 christos ASL_RESOURCE_INFO *Info);
1520 1.1 jruoho
1521 1.1 jruoho ASL_RESOURCE_NODE *
1522 1.1 jruoho RsDoGeneralRegisterDescriptor (
1523 1.2 christos ASL_RESOURCE_INFO *Info);
1524 1.2 christos
1525 1.2 christos ASL_RESOURCE_NODE *
1526 1.2 christos RsDoGpioIntDescriptor (
1527 1.2 christos ASL_RESOURCE_INFO *Info);
1528 1.2 christos
1529 1.2 christos ASL_RESOURCE_NODE *
1530 1.2 christos RsDoGpioIoDescriptor (
1531 1.2 christos ASL_RESOURCE_INFO *Info);
1532 1.2 christos
1533 1.2 christos ASL_RESOURCE_NODE *
1534 1.2 christos RsDoI2cSerialBusDescriptor (
1535 1.2 christos ASL_RESOURCE_INFO *Info);
1536 1.2 christos
1537 1.2 christos ASL_RESOURCE_NODE *
1538 1.2 christos RsDoSpiSerialBusDescriptor (
1539 1.2 christos ASL_RESOURCE_INFO *Info);
1540 1.1 jruoho
1541 1.2 christos ASL_RESOURCE_NODE *
1542 1.2 christos RsDoUartSerialBusDescriptor (
1543 1.2 christos ASL_RESOURCE_INFO *Info);
1544 1.1 jruoho
1545 1.9 christos ASL_RESOURCE_NODE *
1546 1.18 christos RsDoCsi2SerialBusDescriptor (
1547 1.18 christos ASL_RESOURCE_INFO *Info);
1548 1.18 christos
1549 1.18 christos ASL_RESOURCE_NODE *
1550 1.9 christos RsDoPinFunctionDescriptor (
1551 1.9 christos ASL_RESOURCE_INFO *Info);
1552 1.9 christos
1553 1.9 christos ASL_RESOURCE_NODE *
1554 1.9 christos RsDoPinConfigDescriptor (
1555 1.9 christos ASL_RESOURCE_INFO *Info);
1556 1.9 christos
1557 1.9 christos ASL_RESOURCE_NODE *
1558 1.9 christos RsDoPinGroupDescriptor (
1559 1.9 christos ASL_RESOURCE_INFO *Info);
1560 1.9 christos
1561 1.9 christos ASL_RESOURCE_NODE *
1562 1.9 christos RsDoPinGroupFunctionDescriptor (
1563 1.9 christos ASL_RESOURCE_INFO *Info);
1564 1.9 christos
1565 1.9 christos ASL_RESOURCE_NODE *
1566 1.9 christos RsDoPinGroupConfigDescriptor (
1567 1.9 christos ASL_RESOURCE_INFO *Info);
1568 1.9 christos
1569 1.21 christos ASL_RESOURCE_NODE *
1570 1.21 christos RsDoClockInputDescriptor (
1571 1.21 christos ASL_RESOURCE_INFO *Info);
1572 1.14 christos
1573 1.1 jruoho /*
1574 1.1 jruoho * aslrestype2d - DWord address descriptors
1575 1.1 jruoho */
1576 1.1 jruoho ASL_RESOURCE_NODE *
1577 1.1 jruoho RsDoDwordIoDescriptor (
1578 1.2 christos ASL_RESOURCE_INFO *Info);
1579 1.1 jruoho
1580 1.1 jruoho ASL_RESOURCE_NODE *
1581 1.1 jruoho RsDoDwordMemoryDescriptor (
1582 1.2 christos ASL_RESOURCE_INFO *Info);
1583 1.1 jruoho
1584 1.1 jruoho ASL_RESOURCE_NODE *
1585 1.22 christos RsDoDwordPccDescriptor (
1586 1.22 christos ASL_RESOURCE_INFO *Info);
1587 1.22 christos
1588 1.22 christos ASL_RESOURCE_NODE *
1589 1.1 jruoho RsDoDwordSpaceDescriptor (
1590 1.2 christos ASL_RESOURCE_INFO *Info);
1591 1.1 jruoho
1592 1.1 jruoho /*
1593 1.1 jruoho * aslrestype2e - Extended address descriptors
1594 1.1 jruoho */
1595 1.1 jruoho ASL_RESOURCE_NODE *
1596 1.1 jruoho RsDoExtendedIoDescriptor (
1597 1.2 christos ASL_RESOURCE_INFO *Info);
1598 1.1 jruoho
1599 1.1 jruoho ASL_RESOURCE_NODE *
1600 1.1 jruoho RsDoExtendedMemoryDescriptor (
1601 1.2 christos ASL_RESOURCE_INFO *Info);
1602 1.1 jruoho
1603 1.1 jruoho ASL_RESOURCE_NODE *
1604 1.1 jruoho RsDoExtendedSpaceDescriptor (
1605 1.2 christos ASL_RESOURCE_INFO *Info);
1606 1.1 jruoho
1607 1.1 jruoho
1608 1.1 jruoho /*
1609 1.1 jruoho * aslrestype2q - QWord address descriptors
1610 1.1 jruoho */
1611 1.1 jruoho ASL_RESOURCE_NODE *
1612 1.1 jruoho RsDoQwordIoDescriptor (
1613 1.2 christos ASL_RESOURCE_INFO *Info);
1614 1.1 jruoho
1615 1.1 jruoho ASL_RESOURCE_NODE *
1616 1.1 jruoho RsDoQwordMemoryDescriptor (
1617 1.2 christos ASL_RESOURCE_INFO *Info);
1618 1.1 jruoho
1619 1.1 jruoho ASL_RESOURCE_NODE *
1620 1.22 christos RsDoQwordPccDescriptor (
1621 1.22 christos ASL_RESOURCE_INFO *Info);
1622 1.22 christos
1623 1.22 christos ASL_RESOURCE_NODE *
1624 1.1 jruoho RsDoQwordSpaceDescriptor (
1625 1.2 christos ASL_RESOURCE_INFO *Info);
1626 1.1 jruoho
1627 1.1 jruoho
1628 1.1 jruoho /*
1629 1.1 jruoho * aslrestype2w - Word address descriptors
1630 1.1 jruoho */
1631 1.1 jruoho ASL_RESOURCE_NODE *
1632 1.1 jruoho RsDoWordIoDescriptor (
1633 1.2 christos ASL_RESOURCE_INFO *Info);
1634 1.1 jruoho
1635 1.1 jruoho ASL_RESOURCE_NODE *
1636 1.22 christos RsDoWordPccDescriptor (
1637 1.22 christos ASL_RESOURCE_INFO *Info);
1638 1.22 christos
1639 1.22 christos ASL_RESOURCE_NODE *
1640 1.1 jruoho RsDoWordSpaceDescriptor (
1641 1.2 christos ASL_RESOURCE_INFO *Info);
1642 1.1 jruoho
1643 1.1 jruoho ASL_RESOURCE_NODE *
1644 1.1 jruoho RsDoWordBusNumberDescriptor (
1645 1.2 christos ASL_RESOURCE_INFO *Info);
1646 1.2 christos
1647 1.1 jruoho
1648 1.1 jruoho /*
1649 1.1 jruoho * Entry to data table compiler subsystem
1650 1.1 jruoho */
1651 1.1 jruoho ACPI_STATUS
1652 1.1 jruoho DtDoCompile(
1653 1.1 jruoho void);
1654 1.1 jruoho
1655 1.2 christos ACPI_STATUS
1656 1.2 christos DtCreateTemplates (
1657 1.4 christos char **argv);
1658 1.2 christos
1659 1.8 christos
1660 1.8 christos /*
1661 1.8 christos * ASL/ASL+ converter debug
1662 1.8 christos */
1663 1.15 christos ACPI_PRINTF_LIKE (1)
1664 1.8 christos void
1665 1.8 christos CvDbgPrint (
1666 1.8 christos char *Fmt,
1667 1.8 christos ...);
1668 1.8 christos
1669 1.8 christos
1670 1.1 jruoho #endif /* __ASLCOMPILER_H */
1671