aslcompiler.h revision 1.1.1.2.8.2 1 1.1.1.2.8.2 jruoho
2 1.1.1.2.8.2 jruoho /******************************************************************************
3 1.1.1.2.8.2 jruoho *
4 1.1.1.2.8.2 jruoho * Module Name: aslcompiler.h - common include file for iASL
5 1.1.1.2.8.2 jruoho *
6 1.1.1.2.8.2 jruoho *****************************************************************************/
7 1.1.1.2.8.2 jruoho
8 1.1.1.2.8.2 jruoho /*
9 1.1.1.2.8.2 jruoho * Copyright (C) 2000 - 2011, Intel Corp.
10 1.1.1.2.8.2 jruoho * All rights reserved.
11 1.1.1.2.8.2 jruoho *
12 1.1.1.2.8.2 jruoho * Redistribution and use in source and binary forms, with or without
13 1.1.1.2.8.2 jruoho * modification, are permitted provided that the following conditions
14 1.1.1.2.8.2 jruoho * are met:
15 1.1.1.2.8.2 jruoho * 1. Redistributions of source code must retain the above copyright
16 1.1.1.2.8.2 jruoho * notice, this list of conditions, and the following disclaimer,
17 1.1.1.2.8.2 jruoho * without modification.
18 1.1.1.2.8.2 jruoho * 2. Redistributions in binary form must reproduce at minimum a disclaimer
19 1.1.1.2.8.2 jruoho * substantially similar to the "NO WARRANTY" disclaimer below
20 1.1.1.2.8.2 jruoho * ("Disclaimer") and any redistribution must be conditioned upon
21 1.1.1.2.8.2 jruoho * including a substantially similar Disclaimer requirement for further
22 1.1.1.2.8.2 jruoho * binary redistribution.
23 1.1.1.2.8.2 jruoho * 3. Neither the names of the above-listed copyright holders nor the names
24 1.1.1.2.8.2 jruoho * of any contributors may be used to endorse or promote products derived
25 1.1.1.2.8.2 jruoho * from this software without specific prior written permission.
26 1.1.1.2.8.2 jruoho *
27 1.1.1.2.8.2 jruoho * Alternatively, this software may be distributed under the terms of the
28 1.1.1.2.8.2 jruoho * GNU General Public License ("GPL") version 2 as published by the Free
29 1.1.1.2.8.2 jruoho * Software Foundation.
30 1.1.1.2.8.2 jruoho *
31 1.1.1.2.8.2 jruoho * NO WARRANTY
32 1.1.1.2.8.2 jruoho * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33 1.1.1.2.8.2 jruoho * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34 1.1.1.2.8.2 jruoho * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
35 1.1.1.2.8.2 jruoho * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
36 1.1.1.2.8.2 jruoho * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
37 1.1.1.2.8.2 jruoho * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
38 1.1.1.2.8.2 jruoho * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39 1.1.1.2.8.2 jruoho * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
40 1.1.1.2.8.2 jruoho * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
41 1.1.1.2.8.2 jruoho * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
42 1.1.1.2.8.2 jruoho * POSSIBILITY OF SUCH DAMAGES.
43 1.1.1.2.8.2 jruoho */
44 1.1.1.2.8.2 jruoho
45 1.1.1.2.8.2 jruoho
46 1.1.1.2.8.2 jruoho #ifndef __ASLCOMPILER_H
47 1.1.1.2.8.2 jruoho #define __ASLCOMPILER_H
48 1.1.1.2.8.2 jruoho
49 1.1.1.2.8.2 jruoho #include "acpi.h"
50 1.1.1.2.8.2 jruoho #include "accommon.h"
51 1.1.1.2.8.2 jruoho #include "amlresrc.h"
52 1.1.1.2.8.2 jruoho #include "acdebug.h"
53 1.1.1.2.8.2 jruoho
54 1.1.1.2.8.2 jruoho /* Microsoft-specific */
55 1.1.1.2.8.2 jruoho
56 1.1.1.2.8.2 jruoho #if (defined WIN32 || defined WIN64)
57 1.1.1.2.8.2 jruoho
58 1.1.1.2.8.2 jruoho /* warn : used #pragma pack */
59 1.1.1.2.8.2 jruoho #pragma warning(disable:4103)
60 1.1.1.2.8.2 jruoho
61 1.1.1.2.8.2 jruoho /* warn : named type definition in parentheses */
62 1.1.1.2.8.2 jruoho #pragma warning(disable:4115)
63 1.1.1.2.8.2 jruoho #endif
64 1.1.1.2.8.2 jruoho
65 1.1.1.2.8.2 jruoho #include <stdio.h>
66 1.1.1.2.8.2 jruoho #include <stdlib.h>
67 1.1.1.2.8.2 jruoho #include <stdarg.h>
68 1.1.1.2.8.2 jruoho #include <string.h>
69 1.1.1.2.8.2 jruoho #include <errno.h>
70 1.1.1.2.8.2 jruoho #include <ctype.h>
71 1.1.1.2.8.2 jruoho
72 1.1.1.2.8.2 jruoho /* Compiler headers */
73 1.1.1.2.8.2 jruoho
74 1.1.1.2.8.2 jruoho #include "asldefine.h"
75 1.1.1.2.8.2 jruoho #include "asltypes.h"
76 1.1.1.2.8.2 jruoho #include "aslmessages.h"
77 1.1.1.2.8.2 jruoho #include "aslglobal.h"
78 1.1.1.2.8.2 jruoho
79 1.1.1.2.8.2 jruoho
80 1.1.1.2.8.2 jruoho /*******************************************************************************
81 1.1.1.2.8.2 jruoho *
82 1.1.1.2.8.2 jruoho * Compiler prototypes
83 1.1.1.2.8.2 jruoho *
84 1.1.1.2.8.2 jruoho ******************************************************************************/
85 1.1.1.2.8.2 jruoho
86 1.1.1.2.8.2 jruoho /*
87 1.1.1.2.8.2 jruoho * parser - generated from flex/bison, lex/yacc, etc.
88 1.1.1.2.8.2 jruoho */
89 1.1.1.2.8.2 jruoho int
90 1.1.1.2.8.2 jruoho AslCompilerparse(
91 1.1.1.2.8.2 jruoho void);
92 1.1.1.2.8.2 jruoho
93 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
94 1.1.1.2.8.2 jruoho AslDoError (
95 1.1.1.2.8.2 jruoho void);
96 1.1.1.2.8.2 jruoho
97 1.1.1.2.8.2 jruoho int
98 1.1.1.2.8.2 jruoho AslCompilerlex(
99 1.1.1.2.8.2 jruoho void);
100 1.1.1.2.8.2 jruoho
101 1.1.1.2.8.2 jruoho void
102 1.1.1.2.8.2 jruoho ResetCurrentLineBuffer (
103 1.1.1.2.8.2 jruoho void);
104 1.1.1.2.8.2 jruoho
105 1.1.1.2.8.2 jruoho void
106 1.1.1.2.8.2 jruoho InsertLineBuffer (
107 1.1.1.2.8.2 jruoho int SourceChar);
108 1.1.1.2.8.2 jruoho
109 1.1.1.2.8.2 jruoho int
110 1.1.1.2.8.2 jruoho AslPopInputFileStack (
111 1.1.1.2.8.2 jruoho void);
112 1.1.1.2.8.2 jruoho
113 1.1.1.2.8.2 jruoho void
114 1.1.1.2.8.2 jruoho AslPushInputFileStack (
115 1.1.1.2.8.2 jruoho FILE *InputFile,
116 1.1.1.2.8.2 jruoho char *Filename);
117 1.1.1.2.8.2 jruoho
118 1.1.1.2.8.2 jruoho /*
119 1.1.1.2.8.2 jruoho * aslstartup - entered from main()
120 1.1.1.2.8.2 jruoho */
121 1.1.1.2.8.2 jruoho void
122 1.1.1.2.8.2 jruoho AslInitializeGlobals (
123 1.1.1.2.8.2 jruoho void);
124 1.1.1.2.8.2 jruoho
125 1.1.1.2.8.2 jruoho typedef
126 1.1.1.2.8.2 jruoho ACPI_STATUS (*ASL_PATHNAME_CALLBACK) (
127 1.1.1.2.8.2 jruoho char *);
128 1.1.1.2.8.2 jruoho
129 1.1.1.2.8.2 jruoho ACPI_STATUS
130 1.1.1.2.8.2 jruoho AslDoOnePathname (
131 1.1.1.2.8.2 jruoho char *Pathname,
132 1.1.1.2.8.2 jruoho ASL_PATHNAME_CALLBACK Callback);
133 1.1.1.2.8.2 jruoho
134 1.1.1.2.8.2 jruoho ACPI_STATUS
135 1.1.1.2.8.2 jruoho AslDoOneFile (
136 1.1.1.2.8.2 jruoho char *Filename);
137 1.1.1.2.8.2 jruoho
138 1.1.1.2.8.2 jruoho /*
139 1.1.1.2.8.2 jruoho * aslcompile - compile mainline
140 1.1.1.2.8.2 jruoho */
141 1.1.1.2.8.2 jruoho void
142 1.1.1.2.8.2 jruoho AslCompilerSignon (
143 1.1.1.2.8.2 jruoho UINT32 FileId);
144 1.1.1.2.8.2 jruoho
145 1.1.1.2.8.2 jruoho void
146 1.1.1.2.8.2 jruoho AslCompilerFileHeader (
147 1.1.1.2.8.2 jruoho UINT32 FileId);
148 1.1.1.2.8.2 jruoho
149 1.1.1.2.8.2 jruoho int
150 1.1.1.2.8.2 jruoho CmDoCompile (
151 1.1.1.2.8.2 jruoho void);
152 1.1.1.2.8.2 jruoho
153 1.1.1.2.8.2 jruoho void
154 1.1.1.2.8.2 jruoho CmDoOutputFiles (
155 1.1.1.2.8.2 jruoho void);
156 1.1.1.2.8.2 jruoho
157 1.1.1.2.8.2 jruoho void
158 1.1.1.2.8.2 jruoho CmCleanupAndExit (
159 1.1.1.2.8.2 jruoho void);
160 1.1.1.2.8.2 jruoho
161 1.1.1.2.8.2 jruoho ACPI_STATUS
162 1.1.1.2.8.2 jruoho FlCheckForAscii (
163 1.1.1.2.8.2 jruoho ASL_FILE_INFO *FileInfo);
164 1.1.1.2.8.2 jruoho
165 1.1.1.2.8.2 jruoho
166 1.1.1.2.8.2 jruoho /*
167 1.1.1.2.8.2 jruoho * aslwalks - semantic analysis and parse tree walks
168 1.1.1.2.8.2 jruoho */
169 1.1.1.2.8.2 jruoho ACPI_STATUS
170 1.1.1.2.8.2 jruoho AnOtherSemanticAnalysisWalkBegin (
171 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
172 1.1.1.2.8.2 jruoho UINT32 Level,
173 1.1.1.2.8.2 jruoho void *Context);
174 1.1.1.2.8.2 jruoho
175 1.1.1.2.8.2 jruoho ACPI_STATUS
176 1.1.1.2.8.2 jruoho AnOtherSemanticAnalysisWalkEnd (
177 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
178 1.1.1.2.8.2 jruoho UINT32 Level,
179 1.1.1.2.8.2 jruoho void *Context);
180 1.1.1.2.8.2 jruoho
181 1.1.1.2.8.2 jruoho ACPI_STATUS
182 1.1.1.2.8.2 jruoho AnOperandTypecheckWalkEnd (
183 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
184 1.1.1.2.8.2 jruoho UINT32 Level,
185 1.1.1.2.8.2 jruoho void *Context);
186 1.1.1.2.8.2 jruoho
187 1.1.1.2.8.2 jruoho ACPI_STATUS
188 1.1.1.2.8.2 jruoho AnMethodAnalysisWalkBegin (
189 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
190 1.1.1.2.8.2 jruoho UINT32 Level,
191 1.1.1.2.8.2 jruoho void *Context);
192 1.1.1.2.8.2 jruoho
193 1.1.1.2.8.2 jruoho ACPI_STATUS
194 1.1.1.2.8.2 jruoho AnMethodAnalysisWalkEnd (
195 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
196 1.1.1.2.8.2 jruoho UINT32 Level,
197 1.1.1.2.8.2 jruoho void *Context);
198 1.1.1.2.8.2 jruoho
199 1.1.1.2.8.2 jruoho ACPI_STATUS
200 1.1.1.2.8.2 jruoho AnMethodTypingWalkEnd (
201 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
202 1.1.1.2.8.2 jruoho UINT32 Level,
203 1.1.1.2.8.2 jruoho void *Context);
204 1.1.1.2.8.2 jruoho
205 1.1.1.2.8.2 jruoho
206 1.1.1.2.8.2 jruoho /*
207 1.1.1.2.8.2 jruoho * aslbtypes - bitfield data types
208 1.1.1.2.8.2 jruoho */
209 1.1.1.2.8.2 jruoho UINT32
210 1.1.1.2.8.2 jruoho AnMapObjTypeToBtype (
211 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
212 1.1.1.2.8.2 jruoho
213 1.1.1.2.8.2 jruoho UINT32
214 1.1.1.2.8.2 jruoho AnMapArgTypeToBtype (
215 1.1.1.2.8.2 jruoho UINT32 ArgType);
216 1.1.1.2.8.2 jruoho
217 1.1.1.2.8.2 jruoho UINT32
218 1.1.1.2.8.2 jruoho AnGetBtype (
219 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
220 1.1.1.2.8.2 jruoho
221 1.1.1.2.8.2 jruoho void
222 1.1.1.2.8.2 jruoho AnFormatBtype (
223 1.1.1.2.8.2 jruoho char *Buffer,
224 1.1.1.2.8.2 jruoho UINT32 Btype);
225 1.1.1.2.8.2 jruoho
226 1.1.1.2.8.2 jruoho
227 1.1.1.2.8.2 jruoho /*
228 1.1.1.2.8.2 jruoho * aslanalyze - Support functions for parse tree walks
229 1.1.1.2.8.2 jruoho */
230 1.1.1.2.8.2 jruoho void
231 1.1.1.2.8.2 jruoho AnCheckId (
232 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
233 1.1.1.2.8.2 jruoho ACPI_NAME Type);
234 1.1.1.2.8.2 jruoho
235 1.1.1.2.8.2 jruoho /* Values for Type argument above */
236 1.1.1.2.8.2 jruoho
237 1.1.1.2.8.2 jruoho #define ASL_TYPE_HID 0
238 1.1.1.2.8.2 jruoho #define ASL_TYPE_CID 1
239 1.1.1.2.8.2 jruoho
240 1.1.1.2.8.2 jruoho BOOLEAN
241 1.1.1.2.8.2 jruoho AnIsInternalMethod (
242 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
243 1.1.1.2.8.2 jruoho
244 1.1.1.2.8.2 jruoho UINT32
245 1.1.1.2.8.2 jruoho AnGetInternalMethodReturnType (
246 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
247 1.1.1.2.8.2 jruoho
248 1.1.1.2.8.2 jruoho BOOLEAN
249 1.1.1.2.8.2 jruoho AnLastStatementIsReturn (
250 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
251 1.1.1.2.8.2 jruoho
252 1.1.1.2.8.2 jruoho void
253 1.1.1.2.8.2 jruoho AnCheckMethodReturnValue (
254 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
255 1.1.1.2.8.2 jruoho const ACPI_OPCODE_INFO *OpInfo,
256 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *ArgOp,
257 1.1.1.2.8.2 jruoho UINT32 RequiredBtypes,
258 1.1.1.2.8.2 jruoho UINT32 ThisNodeBtype);
259 1.1.1.2.8.2 jruoho
260 1.1.1.2.8.2 jruoho BOOLEAN
261 1.1.1.2.8.2 jruoho AnIsResultUsed (
262 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
263 1.1.1.2.8.2 jruoho
264 1.1.1.2.8.2 jruoho void
265 1.1.1.2.8.2 jruoho ApCheckForGpeNameConflict (
266 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
267 1.1.1.2.8.2 jruoho
268 1.1.1.2.8.2 jruoho
269 1.1.1.2.8.2 jruoho /*
270 1.1.1.2.8.2 jruoho * aslerror - error handling/reporting
271 1.1.1.2.8.2 jruoho */
272 1.1.1.2.8.2 jruoho void
273 1.1.1.2.8.2 jruoho AslError (
274 1.1.1.2.8.2 jruoho UINT8 Level,
275 1.1.1.2.8.2 jruoho UINT8 MessageId,
276 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
277 1.1.1.2.8.2 jruoho char *ExtraMessage);
278 1.1.1.2.8.2 jruoho
279 1.1.1.2.8.2 jruoho void
280 1.1.1.2.8.2 jruoho AslCoreSubsystemError (
281 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
282 1.1.1.2.8.2 jruoho ACPI_STATUS Status,
283 1.1.1.2.8.2 jruoho char *ExtraMessage,
284 1.1.1.2.8.2 jruoho BOOLEAN Abort);
285 1.1.1.2.8.2 jruoho
286 1.1.1.2.8.2 jruoho int
287 1.1.1.2.8.2 jruoho AslCompilererror(
288 1.1.1.2.8.2 jruoho char *s);
289 1.1.1.2.8.2 jruoho
290 1.1.1.2.8.2 jruoho void
291 1.1.1.2.8.2 jruoho AslCommonError (
292 1.1.1.2.8.2 jruoho UINT8 Level,
293 1.1.1.2.8.2 jruoho UINT8 MessageId,
294 1.1.1.2.8.2 jruoho UINT32 CurrentLineNumber,
295 1.1.1.2.8.2 jruoho UINT32 LogicalLineNumber,
296 1.1.1.2.8.2 jruoho UINT32 LogicalByteOffset,
297 1.1.1.2.8.2 jruoho UINT32 Column,
298 1.1.1.2.8.2 jruoho char *Filename,
299 1.1.1.2.8.2 jruoho char *ExtraMessage);
300 1.1.1.2.8.2 jruoho
301 1.1.1.2.8.2 jruoho void
302 1.1.1.2.8.2 jruoho AePrintException (
303 1.1.1.2.8.2 jruoho UINT32 FileId,
304 1.1.1.2.8.2 jruoho ASL_ERROR_MSG *Enode,
305 1.1.1.2.8.2 jruoho char *Header);
306 1.1.1.2.8.2 jruoho
307 1.1.1.2.8.2 jruoho void
308 1.1.1.2.8.2 jruoho AePrintErrorLog (
309 1.1.1.2.8.2 jruoho UINT32 FileId);
310 1.1.1.2.8.2 jruoho
311 1.1.1.2.8.2 jruoho void
312 1.1.1.2.8.2 jruoho AeClearErrorLog (
313 1.1.1.2.8.2 jruoho void);
314 1.1.1.2.8.2 jruoho
315 1.1.1.2.8.2 jruoho ACPI_PHYSICAL_ADDRESS
316 1.1.1.2.8.2 jruoho AeLocalGetRootPointer (
317 1.1.1.2.8.2 jruoho void);
318 1.1.1.2.8.2 jruoho
319 1.1.1.2.8.2 jruoho
320 1.1.1.2.8.2 jruoho /*
321 1.1.1.2.8.2 jruoho * asllisting - generate all "listing" type files
322 1.1.1.2.8.2 jruoho */
323 1.1.1.2.8.2 jruoho void
324 1.1.1.2.8.2 jruoho LsDoListings (
325 1.1.1.2.8.2 jruoho void);
326 1.1.1.2.8.2 jruoho
327 1.1.1.2.8.2 jruoho void
328 1.1.1.2.8.2 jruoho LsWriteNodeToAsmListing (
329 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
330 1.1.1.2.8.2 jruoho
331 1.1.1.2.8.2 jruoho void
332 1.1.1.2.8.2 jruoho LsWriteNode (
333 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
334 1.1.1.2.8.2 jruoho UINT32 FileId);
335 1.1.1.2.8.2 jruoho
336 1.1.1.2.8.2 jruoho void
337 1.1.1.2.8.2 jruoho LsDoHexOutput (
338 1.1.1.2.8.2 jruoho void);
339 1.1.1.2.8.2 jruoho
340 1.1.1.2.8.2 jruoho void
341 1.1.1.2.8.2 jruoho LsDumpParseTree (
342 1.1.1.2.8.2 jruoho void);
343 1.1.1.2.8.2 jruoho
344 1.1.1.2.8.2 jruoho /*
345 1.1.1.2.8.2 jruoho * aslfold - constant folding
346 1.1.1.2.8.2 jruoho */
347 1.1.1.2.8.2 jruoho ACPI_STATUS
348 1.1.1.2.8.2 jruoho OpcAmlConstantWalk (
349 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
350 1.1.1.2.8.2 jruoho UINT32 Level,
351 1.1.1.2.8.2 jruoho void *Context);
352 1.1.1.2.8.2 jruoho
353 1.1.1.2.8.2 jruoho
354 1.1.1.2.8.2 jruoho /*
355 1.1.1.2.8.2 jruoho * aslopcodes - generate AML opcodes
356 1.1.1.2.8.2 jruoho */
357 1.1.1.2.8.2 jruoho ACPI_STATUS
358 1.1.1.2.8.2 jruoho OpcAmlOpcodeWalk (
359 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
360 1.1.1.2.8.2 jruoho UINT32 Level,
361 1.1.1.2.8.2 jruoho void *Context);
362 1.1.1.2.8.2 jruoho
363 1.1.1.2.8.2 jruoho ACPI_STATUS
364 1.1.1.2.8.2 jruoho OpcAmlOpcodeUpdateWalk (
365 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
366 1.1.1.2.8.2 jruoho UINT32 Level,
367 1.1.1.2.8.2 jruoho void *Context);
368 1.1.1.2.8.2 jruoho
369 1.1.1.2.8.2 jruoho void
370 1.1.1.2.8.2 jruoho OpcGenerateAmlOpcode (
371 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
372 1.1.1.2.8.2 jruoho
373 1.1.1.2.8.2 jruoho UINT32
374 1.1.1.2.8.2 jruoho OpcSetOptimalIntegerSize (
375 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
376 1.1.1.2.8.2 jruoho
377 1.1.1.2.8.2 jruoho void
378 1.1.1.2.8.2 jruoho OpcGetIntegerWidth (
379 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
380 1.1.1.2.8.2 jruoho
381 1.1.1.2.8.2 jruoho
382 1.1.1.2.8.2 jruoho /*
383 1.1.1.2.8.2 jruoho * asloperands - generate AML operands for the AML opcodes
384 1.1.1.2.8.2 jruoho */
385 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
386 1.1.1.2.8.2 jruoho UtGetArg (
387 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
388 1.1.1.2.8.2 jruoho UINT32 Argn);
389 1.1.1.2.8.2 jruoho
390 1.1.1.2.8.2 jruoho void
391 1.1.1.2.8.2 jruoho OpnGenerateAmlOperands (
392 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
393 1.1.1.2.8.2 jruoho
394 1.1.1.2.8.2 jruoho void
395 1.1.1.2.8.2 jruoho OpnDoPackage (
396 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
397 1.1.1.2.8.2 jruoho
398 1.1.1.2.8.2 jruoho
399 1.1.1.2.8.2 jruoho /*
400 1.1.1.2.8.2 jruoho * aslopt - optmization
401 1.1.1.2.8.2 jruoho */
402 1.1.1.2.8.2 jruoho void
403 1.1.1.2.8.2 jruoho OptOptimizeNamePath (
404 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
405 1.1.1.2.8.2 jruoho UINT32 Flags,
406 1.1.1.2.8.2 jruoho ACPI_WALK_STATE *WalkState,
407 1.1.1.2.8.2 jruoho char *AmlNameString,
408 1.1.1.2.8.2 jruoho ACPI_NAMESPACE_NODE *TargetNode);
409 1.1.1.2.8.2 jruoho
410 1.1.1.2.8.2 jruoho
411 1.1.1.2.8.2 jruoho /*
412 1.1.1.2.8.2 jruoho * aslcodegen - code generation
413 1.1.1.2.8.2 jruoho */
414 1.1.1.2.8.2 jruoho void
415 1.1.1.2.8.2 jruoho CgGenerateAmlOutput (
416 1.1.1.2.8.2 jruoho void);
417 1.1.1.2.8.2 jruoho
418 1.1.1.2.8.2 jruoho
419 1.1.1.2.8.2 jruoho /*
420 1.1.1.2.8.2 jruoho * aslfile
421 1.1.1.2.8.2 jruoho */
422 1.1.1.2.8.2 jruoho void
423 1.1.1.2.8.2 jruoho FlOpenFile (
424 1.1.1.2.8.2 jruoho UINT32 FileId,
425 1.1.1.2.8.2 jruoho char *Filename,
426 1.1.1.2.8.2 jruoho char *Mode);
427 1.1.1.2.8.2 jruoho
428 1.1.1.2.8.2 jruoho
429 1.1.1.2.8.2 jruoho /*
430 1.1.1.2.8.2 jruoho * asllength - calculate/adjust AML package lengths
431 1.1.1.2.8.2 jruoho */
432 1.1.1.2.8.2 jruoho ACPI_STATUS
433 1.1.1.2.8.2 jruoho LnPackageLengthWalk (
434 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
435 1.1.1.2.8.2 jruoho UINT32 Level,
436 1.1.1.2.8.2 jruoho void *Context);
437 1.1.1.2.8.2 jruoho
438 1.1.1.2.8.2 jruoho ACPI_STATUS
439 1.1.1.2.8.2 jruoho LnInitLengthsWalk (
440 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
441 1.1.1.2.8.2 jruoho UINT32 Level,
442 1.1.1.2.8.2 jruoho void *Context);
443 1.1.1.2.8.2 jruoho
444 1.1.1.2.8.2 jruoho void
445 1.1.1.2.8.2 jruoho CgGenerateAmlLengths (
446 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
447 1.1.1.2.8.2 jruoho
448 1.1.1.2.8.2 jruoho
449 1.1.1.2.8.2 jruoho /*
450 1.1.1.2.8.2 jruoho * aslmap - opcode mappings and reserved method names
451 1.1.1.2.8.2 jruoho */
452 1.1.1.2.8.2 jruoho ACPI_OBJECT_TYPE
453 1.1.1.2.8.2 jruoho AslMapNamedOpcodeToDataType (
454 1.1.1.2.8.2 jruoho UINT16 Opcode);
455 1.1.1.2.8.2 jruoho
456 1.1.1.2.8.2 jruoho
457 1.1.1.2.8.2 jruoho /*
458 1.1.1.2.8.2 jruoho * aslpredef - ACPI predefined names support
459 1.1.1.2.8.2 jruoho */
460 1.1.1.2.8.2 jruoho void
461 1.1.1.2.8.2 jruoho ApCheckForPredefinedMethod (
462 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
463 1.1.1.2.8.2 jruoho ASL_METHOD_INFO *MethodInfo);
464 1.1.1.2.8.2 jruoho
465 1.1.1.2.8.2 jruoho void
466 1.1.1.2.8.2 jruoho ApCheckPredefinedReturnValue (
467 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
468 1.1.1.2.8.2 jruoho ASL_METHOD_INFO *MethodInfo);
469 1.1.1.2.8.2 jruoho
470 1.1.1.2.8.2 jruoho UINT32
471 1.1.1.2.8.2 jruoho ApCheckForPredefinedName (
472 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
473 1.1.1.2.8.2 jruoho char *Name);
474 1.1.1.2.8.2 jruoho
475 1.1.1.2.8.2 jruoho void
476 1.1.1.2.8.2 jruoho ApCheckForPredefinedObject (
477 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
478 1.1.1.2.8.2 jruoho char *Name);
479 1.1.1.2.8.2 jruoho
480 1.1.1.2.8.2 jruoho void
481 1.1.1.2.8.2 jruoho ApDisplayReservedNames (
482 1.1.1.2.8.2 jruoho void);
483 1.1.1.2.8.2 jruoho
484 1.1.1.2.8.2 jruoho
485 1.1.1.2.8.2 jruoho /*
486 1.1.1.2.8.2 jruoho * asltransform - parse tree transformations
487 1.1.1.2.8.2 jruoho */
488 1.1.1.2.8.2 jruoho ACPI_STATUS
489 1.1.1.2.8.2 jruoho TrAmlTransformWalk (
490 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
491 1.1.1.2.8.2 jruoho UINT32 Level,
492 1.1.1.2.8.2 jruoho void *Context);
493 1.1.1.2.8.2 jruoho
494 1.1.1.2.8.2 jruoho
495 1.1.1.2.8.2 jruoho /*
496 1.1.1.2.8.2 jruoho * asltree - parse tree support
497 1.1.1.2.8.2 jruoho */
498 1.1.1.2.8.2 jruoho ACPI_STATUS
499 1.1.1.2.8.2 jruoho TrWalkParseTree (
500 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
501 1.1.1.2.8.2 jruoho UINT32 Visitation,
502 1.1.1.2.8.2 jruoho ASL_WALK_CALLBACK DescendingCallback,
503 1.1.1.2.8.2 jruoho ASL_WALK_CALLBACK AscendingCallback,
504 1.1.1.2.8.2 jruoho void *Context);
505 1.1.1.2.8.2 jruoho
506 1.1.1.2.8.2 jruoho /* Values for "Visitation" parameter above */
507 1.1.1.2.8.2 jruoho
508 1.1.1.2.8.2 jruoho #define ASL_WALK_VISIT_DOWNWARD 0x01
509 1.1.1.2.8.2 jruoho #define ASL_WALK_VISIT_UPWARD 0x02
510 1.1.1.2.8.2 jruoho #define ASL_WALK_VISIT_TWICE (ASL_WALK_VISIT_DOWNWARD | ASL_WALK_VISIT_UPWARD)
511 1.1.1.2.8.2 jruoho
512 1.1.1.2.8.2 jruoho
513 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
514 1.1.1.2.8.2 jruoho TrAllocateNode (
515 1.1.1.2.8.2 jruoho UINT32 ParseOpcode);
516 1.1.1.2.8.2 jruoho
517 1.1.1.2.8.2 jruoho void
518 1.1.1.2.8.2 jruoho TrReleaseNode (
519 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
520 1.1.1.2.8.2 jruoho
521 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
522 1.1.1.2.8.2 jruoho TrUpdateNode (
523 1.1.1.2.8.2 jruoho UINT32 ParseOpcode,
524 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
525 1.1.1.2.8.2 jruoho
526 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
527 1.1.1.2.8.2 jruoho TrCreateNode (
528 1.1.1.2.8.2 jruoho UINT32 ParseOpcode,
529 1.1.1.2.8.2 jruoho UINT32 NumChildren,
530 1.1.1.2.8.2 jruoho ...);
531 1.1.1.2.8.2 jruoho
532 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
533 1.1.1.2.8.2 jruoho TrCreateLeafNode (
534 1.1.1.2.8.2 jruoho UINT32 ParseOpcode);
535 1.1.1.2.8.2 jruoho
536 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
537 1.1.1.2.8.2 jruoho TrCreateValuedLeafNode (
538 1.1.1.2.8.2 jruoho UINT32 ParseOpcode,
539 1.1.1.2.8.2 jruoho UINT64 Value);
540 1.1.1.2.8.2 jruoho
541 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
542 1.1.1.2.8.2 jruoho TrCreateConstantLeafNode (
543 1.1.1.2.8.2 jruoho UINT32 ParseOpcode);
544 1.1.1.2.8.2 jruoho
545 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
546 1.1.1.2.8.2 jruoho TrLinkChildren (
547 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
548 1.1.1.2.8.2 jruoho UINT32 NumChildren,
549 1.1.1.2.8.2 jruoho ...);
550 1.1.1.2.8.2 jruoho
551 1.1.1.2.8.2 jruoho void
552 1.1.1.2.8.2 jruoho TrSetEndLineNumber (
553 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
554 1.1.1.2.8.2 jruoho
555 1.1.1.2.8.2 jruoho void
556 1.1.1.2.8.2 jruoho TrWalkTree (
557 1.1.1.2.8.2 jruoho void);
558 1.1.1.2.8.2 jruoho
559 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
560 1.1.1.2.8.2 jruoho TrLinkPeerNode (
561 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op1,
562 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op2);
563 1.1.1.2.8.2 jruoho
564 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
565 1.1.1.2.8.2 jruoho TrLinkChildNode (
566 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op1,
567 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op2);
568 1.1.1.2.8.2 jruoho
569 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
570 1.1.1.2.8.2 jruoho TrSetNodeFlags (
571 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
572 1.1.1.2.8.2 jruoho UINT32 Flags);
573 1.1.1.2.8.2 jruoho
574 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
575 1.1.1.2.8.2 jruoho TrLinkPeerNodes (
576 1.1.1.2.8.2 jruoho UINT32 NumPeers,
577 1.1.1.2.8.2 jruoho ...);
578 1.1.1.2.8.2 jruoho
579 1.1.1.2.8.2 jruoho
580 1.1.1.2.8.2 jruoho /*
581 1.1.1.2.8.2 jruoho * aslfiles - File I/O support
582 1.1.1.2.8.2 jruoho */
583 1.1.1.2.8.2 jruoho void
584 1.1.1.2.8.2 jruoho AslAbort (
585 1.1.1.2.8.2 jruoho void);
586 1.1.1.2.8.2 jruoho
587 1.1.1.2.8.2 jruoho void
588 1.1.1.2.8.2 jruoho FlAddIncludeDirectory (
589 1.1.1.2.8.2 jruoho char *Dir);
590 1.1.1.2.8.2 jruoho
591 1.1.1.2.8.2 jruoho void
592 1.1.1.2.8.2 jruoho FlOpenIncludeFile (
593 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
594 1.1.1.2.8.2 jruoho
595 1.1.1.2.8.2 jruoho void
596 1.1.1.2.8.2 jruoho FlFileError (
597 1.1.1.2.8.2 jruoho UINT32 FileId,
598 1.1.1.2.8.2 jruoho UINT8 ErrorId);
599 1.1.1.2.8.2 jruoho
600 1.1.1.2.8.2 jruoho UINT32
601 1.1.1.2.8.2 jruoho FlGetFileSize (
602 1.1.1.2.8.2 jruoho UINT32 FileId);
603 1.1.1.2.8.2 jruoho
604 1.1.1.2.8.2 jruoho ACPI_STATUS
605 1.1.1.2.8.2 jruoho FlReadFile (
606 1.1.1.2.8.2 jruoho UINT32 FileId,
607 1.1.1.2.8.2 jruoho void *Buffer,
608 1.1.1.2.8.2 jruoho UINT32 Length);
609 1.1.1.2.8.2 jruoho
610 1.1.1.2.8.2 jruoho void
611 1.1.1.2.8.2 jruoho FlWriteFile (
612 1.1.1.2.8.2 jruoho UINT32 FileId,
613 1.1.1.2.8.2 jruoho void *Buffer,
614 1.1.1.2.8.2 jruoho UINT32 Length);
615 1.1.1.2.8.2 jruoho
616 1.1.1.2.8.2 jruoho void
617 1.1.1.2.8.2 jruoho FlSeekFile (
618 1.1.1.2.8.2 jruoho UINT32 FileId,
619 1.1.1.2.8.2 jruoho long Offset);
620 1.1.1.2.8.2 jruoho
621 1.1.1.2.8.2 jruoho void
622 1.1.1.2.8.2 jruoho FlCloseFile (
623 1.1.1.2.8.2 jruoho UINT32 FileId);
624 1.1.1.2.8.2 jruoho
625 1.1.1.2.8.2 jruoho void
626 1.1.1.2.8.2 jruoho FlPrintFile (
627 1.1.1.2.8.2 jruoho UINT32 FileId,
628 1.1.1.2.8.2 jruoho char *Format,
629 1.1.1.2.8.2 jruoho ...);
630 1.1.1.2.8.2 jruoho
631 1.1.1.2.8.2 jruoho void
632 1.1.1.2.8.2 jruoho FlSetLineNumber (
633 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
634 1.1.1.2.8.2 jruoho
635 1.1.1.2.8.2 jruoho ACPI_STATUS
636 1.1.1.2.8.2 jruoho FlOpenInputFile (
637 1.1.1.2.8.2 jruoho char *InputFilename);
638 1.1.1.2.8.2 jruoho
639 1.1.1.2.8.2 jruoho ACPI_STATUS
640 1.1.1.2.8.2 jruoho FlOpenAmlOutputFile (
641 1.1.1.2.8.2 jruoho char *InputFilename);
642 1.1.1.2.8.2 jruoho
643 1.1.1.2.8.2 jruoho ACPI_STATUS
644 1.1.1.2.8.2 jruoho FlOpenMiscOutputFiles (
645 1.1.1.2.8.2 jruoho char *InputFilename);
646 1.1.1.2.8.2 jruoho
647 1.1.1.2.8.2 jruoho
648 1.1.1.2.8.2 jruoho /*
649 1.1.1.2.8.2 jruoho * asload - load namespace in prep for cross reference
650 1.1.1.2.8.2 jruoho */
651 1.1.1.2.8.2 jruoho ACPI_STATUS
652 1.1.1.2.8.2 jruoho LdLoadNamespace (
653 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *RootOp);
654 1.1.1.2.8.2 jruoho
655 1.1.1.2.8.2 jruoho
656 1.1.1.2.8.2 jruoho /*
657 1.1.1.2.8.2 jruoho * asllookup - namespace cross reference
658 1.1.1.2.8.2 jruoho */
659 1.1.1.2.8.2 jruoho ACPI_STATUS
660 1.1.1.2.8.2 jruoho LkCrossReferenceNamespace (
661 1.1.1.2.8.2 jruoho void);
662 1.1.1.2.8.2 jruoho
663 1.1.1.2.8.2 jruoho void
664 1.1.1.2.8.2 jruoho LkFindUnreferencedObjects (
665 1.1.1.2.8.2 jruoho void);
666 1.1.1.2.8.2 jruoho
667 1.1.1.2.8.2 jruoho ACPI_STATUS
668 1.1.1.2.8.2 jruoho LsDisplayNamespace (
669 1.1.1.2.8.2 jruoho void);
670 1.1.1.2.8.2 jruoho
671 1.1.1.2.8.2 jruoho void
672 1.1.1.2.8.2 jruoho LsSetupNsList (
673 1.1.1.2.8.2 jruoho void *Handle);
674 1.1.1.2.8.2 jruoho
675 1.1.1.2.8.2 jruoho
676 1.1.1.2.8.2 jruoho /*
677 1.1.1.2.8.2 jruoho * aslutils - common compiler utilites
678 1.1.1.2.8.2 jruoho */
679 1.1.1.2.8.2 jruoho void
680 1.1.1.2.8.2 jruoho DbgPrint (
681 1.1.1.2.8.2 jruoho UINT32 Type,
682 1.1.1.2.8.2 jruoho char *Format,
683 1.1.1.2.8.2 jruoho ...);
684 1.1.1.2.8.2 jruoho
685 1.1.1.2.8.2 jruoho /* Type values for above */
686 1.1.1.2.8.2 jruoho
687 1.1.1.2.8.2 jruoho #define ASL_DEBUG_OUTPUT 0
688 1.1.1.2.8.2 jruoho #define ASL_PARSE_OUTPUT 1
689 1.1.1.2.8.2 jruoho #define ASL_TREE_OUTPUT 2
690 1.1.1.2.8.2 jruoho
691 1.1.1.2.8.2 jruoho void
692 1.1.1.2.8.2 jruoho UtDisplaySupportedTables (
693 1.1.1.2.8.2 jruoho void);
694 1.1.1.2.8.2 jruoho
695 1.1.1.2.8.2 jruoho void
696 1.1.1.2.8.2 jruoho UtDisplayConstantOpcodes (
697 1.1.1.2.8.2 jruoho void);
698 1.1.1.2.8.2 jruoho
699 1.1.1.2.8.2 jruoho UINT8
700 1.1.1.2.8.2 jruoho UtBeginEvent (
701 1.1.1.2.8.2 jruoho char *Name);
702 1.1.1.2.8.2 jruoho
703 1.1.1.2.8.2 jruoho void
704 1.1.1.2.8.2 jruoho UtEndEvent (
705 1.1.1.2.8.2 jruoho UINT8 Event);
706 1.1.1.2.8.2 jruoho
707 1.1.1.2.8.2 jruoho void *
708 1.1.1.2.8.2 jruoho UtLocalCalloc (
709 1.1.1.2.8.2 jruoho UINT32 Size);
710 1.1.1.2.8.2 jruoho
711 1.1.1.2.8.2 jruoho void
712 1.1.1.2.8.2 jruoho UtPrintFormattedName (
713 1.1.1.2.8.2 jruoho UINT16 ParseOpcode,
714 1.1.1.2.8.2 jruoho UINT32 Level);
715 1.1.1.2.8.2 jruoho
716 1.1.1.2.8.2 jruoho void
717 1.1.1.2.8.2 jruoho UtDisplaySummary (
718 1.1.1.2.8.2 jruoho UINT32 FileId);
719 1.1.1.2.8.2 jruoho
720 1.1.1.2.8.2 jruoho UINT8
721 1.1.1.2.8.2 jruoho UtHexCharToValue (
722 1.1.1.2.8.2 jruoho int HexChar);
723 1.1.1.2.8.2 jruoho
724 1.1.1.2.8.2 jruoho void
725 1.1.1.2.8.2 jruoho UtConvertByteToHex (
726 1.1.1.2.8.2 jruoho UINT8 RawByte,
727 1.1.1.2.8.2 jruoho UINT8 *Buffer);
728 1.1.1.2.8.2 jruoho
729 1.1.1.2.8.2 jruoho void
730 1.1.1.2.8.2 jruoho UtConvertByteToAsmHex (
731 1.1.1.2.8.2 jruoho UINT8 RawByte,
732 1.1.1.2.8.2 jruoho UINT8 *Buffer);
733 1.1.1.2.8.2 jruoho
734 1.1.1.2.8.2 jruoho char *
735 1.1.1.2.8.2 jruoho UtGetOpName (
736 1.1.1.2.8.2 jruoho UINT32 ParseOpcode);
737 1.1.1.2.8.2 jruoho
738 1.1.1.2.8.2 jruoho void
739 1.1.1.2.8.2 jruoho UtSetParseOpName (
740 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
741 1.1.1.2.8.2 jruoho
742 1.1.1.2.8.2 jruoho char *
743 1.1.1.2.8.2 jruoho UtGetStringBuffer (
744 1.1.1.2.8.2 jruoho UINT32 Length);
745 1.1.1.2.8.2 jruoho
746 1.1.1.2.8.2 jruoho ACPI_STATUS
747 1.1.1.2.8.2 jruoho UtInternalizeName (
748 1.1.1.2.8.2 jruoho char *ExternalName,
749 1.1.1.2.8.2 jruoho char **ConvertedName);
750 1.1.1.2.8.2 jruoho
751 1.1.1.2.8.2 jruoho void
752 1.1.1.2.8.2 jruoho UtAttachNamepathToOwner (
753 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
754 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *NameNode);
755 1.1.1.2.8.2 jruoho
756 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
757 1.1.1.2.8.2 jruoho UtCheckIntegerRange (
758 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
759 1.1.1.2.8.2 jruoho UINT32 LowValue,
760 1.1.1.2.8.2 jruoho UINT32 HighValue);
761 1.1.1.2.8.2 jruoho
762 1.1.1.2.8.2 jruoho UINT64
763 1.1.1.2.8.2 jruoho UtDoConstant (
764 1.1.1.2.8.2 jruoho char *String);
765 1.1.1.2.8.2 jruoho
766 1.1.1.2.8.2 jruoho /*
767 1.1.1.2.8.2 jruoho * asluuid - UUID support
768 1.1.1.2.8.2 jruoho */
769 1.1.1.2.8.2 jruoho ACPI_STATUS
770 1.1.1.2.8.2 jruoho AuValidateUuid (
771 1.1.1.2.8.2 jruoho char *InString);
772 1.1.1.2.8.2 jruoho
773 1.1.1.2.8.2 jruoho ACPI_STATUS
774 1.1.1.2.8.2 jruoho AuConvertStringToUuid (
775 1.1.1.2.8.2 jruoho char *InString,
776 1.1.1.2.8.2 jruoho char *UuIdBuffer);
777 1.1.1.2.8.2 jruoho
778 1.1.1.2.8.2 jruoho ACPI_STATUS
779 1.1.1.2.8.2 jruoho AuConvertUuidToString (
780 1.1.1.2.8.2 jruoho char *UuIdBuffer,
781 1.1.1.2.8.2 jruoho char *OutString);
782 1.1.1.2.8.2 jruoho
783 1.1.1.2.8.2 jruoho /*
784 1.1.1.2.8.2 jruoho * aslresource - Resource template generation utilities
785 1.1.1.2.8.2 jruoho */
786 1.1.1.2.8.2 jruoho void
787 1.1.1.2.8.2 jruoho RsSmallAddressCheck (
788 1.1.1.2.8.2 jruoho UINT8 Type,
789 1.1.1.2.8.2 jruoho UINT32 Minimum,
790 1.1.1.2.8.2 jruoho UINT32 Maximum,
791 1.1.1.2.8.2 jruoho UINT32 Length,
792 1.1.1.2.8.2 jruoho UINT32 Alignment,
793 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *MinOp,
794 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *MaxOp,
795 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *LengthOp,
796 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *AlignOp,
797 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
798 1.1.1.2.8.2 jruoho
799 1.1.1.2.8.2 jruoho void
800 1.1.1.2.8.2 jruoho RsLargeAddressCheck (
801 1.1.1.2.8.2 jruoho UINT64 Minimum,
802 1.1.1.2.8.2 jruoho UINT64 Maximum,
803 1.1.1.2.8.2 jruoho UINT64 Length,
804 1.1.1.2.8.2 jruoho UINT64 Granularity,
805 1.1.1.2.8.2 jruoho UINT8 Flags,
806 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *MinOp,
807 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *MaxOp,
808 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *LengthOp,
809 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *GranOp,
810 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
811 1.1.1.2.8.2 jruoho
812 1.1.1.2.8.2 jruoho UINT16
813 1.1.1.2.8.2 jruoho RsGetStringDataLength (
814 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *InitializerOp);
815 1.1.1.2.8.2 jruoho
816 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
817 1.1.1.2.8.2 jruoho RsAllocateResourceNode (
818 1.1.1.2.8.2 jruoho UINT32 Size);
819 1.1.1.2.8.2 jruoho
820 1.1.1.2.8.2 jruoho void
821 1.1.1.2.8.2 jruoho RsCreateBitField (
822 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
823 1.1.1.2.8.2 jruoho char *Name,
824 1.1.1.2.8.2 jruoho UINT32 ByteOffset,
825 1.1.1.2.8.2 jruoho UINT32 BitOffset);
826 1.1.1.2.8.2 jruoho
827 1.1.1.2.8.2 jruoho void
828 1.1.1.2.8.2 jruoho RsCreateByteField (
829 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
830 1.1.1.2.8.2 jruoho char *Name,
831 1.1.1.2.8.2 jruoho UINT32 ByteOffset);
832 1.1.1.2.8.2 jruoho
833 1.1.1.2.8.2 jruoho void
834 1.1.1.2.8.2 jruoho RsSetFlagBits (
835 1.1.1.2.8.2 jruoho UINT8 *Flags,
836 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
837 1.1.1.2.8.2 jruoho UINT8 Position,
838 1.1.1.2.8.2 jruoho UINT8 DefaultBit);
839 1.1.1.2.8.2 jruoho
840 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *
841 1.1.1.2.8.2 jruoho RsCompleteNodeAndGetNext (
842 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
843 1.1.1.2.8.2 jruoho
844 1.1.1.2.8.2 jruoho void
845 1.1.1.2.8.2 jruoho RsCheckListForDuplicates (
846 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
847 1.1.1.2.8.2 jruoho
848 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
849 1.1.1.2.8.2 jruoho RsDoOneResourceDescriptor (
850 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *DescriptorTypeOp,
851 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset,
852 1.1.1.2.8.2 jruoho UINT8 *State);
853 1.1.1.2.8.2 jruoho
854 1.1.1.2.8.2 jruoho /* Values for State above */
855 1.1.1.2.8.2 jruoho
856 1.1.1.2.8.2 jruoho #define ACPI_RSTATE_NORMAL 0
857 1.1.1.2.8.2 jruoho #define ACPI_RSTATE_START_DEPENDENT 1
858 1.1.1.2.8.2 jruoho #define ACPI_RSTATE_DEPENDENT_LIST 2
859 1.1.1.2.8.2 jruoho
860 1.1.1.2.8.2 jruoho UINT32
861 1.1.1.2.8.2 jruoho RsLinkDescriptorChain (
862 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE **PreviousRnode,
863 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *Rnode);
864 1.1.1.2.8.2 jruoho
865 1.1.1.2.8.2 jruoho void
866 1.1.1.2.8.2 jruoho RsDoResourceTemplate (
867 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op);
868 1.1.1.2.8.2 jruoho
869 1.1.1.2.8.2 jruoho
870 1.1.1.2.8.2 jruoho /*
871 1.1.1.2.8.2 jruoho * aslrestype1 - Miscellaneous Small descriptors
872 1.1.1.2.8.2 jruoho */
873 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
874 1.1.1.2.8.2 jruoho RsDoEndTagDescriptor (
875 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
876 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
877 1.1.1.2.8.2 jruoho
878 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
879 1.1.1.2.8.2 jruoho RsDoEndDependentDescriptor (
880 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
881 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
882 1.1.1.2.8.2 jruoho
883 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
884 1.1.1.2.8.2 jruoho RsDoMemory24Descriptor (
885 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
886 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
887 1.1.1.2.8.2 jruoho
888 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
889 1.1.1.2.8.2 jruoho RsDoMemory32Descriptor (
890 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
891 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
892 1.1.1.2.8.2 jruoho
893 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
894 1.1.1.2.8.2 jruoho RsDoMemory32FixedDescriptor (
895 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
896 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
897 1.1.1.2.8.2 jruoho
898 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
899 1.1.1.2.8.2 jruoho RsDoStartDependentDescriptor (
900 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
901 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
902 1.1.1.2.8.2 jruoho
903 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
904 1.1.1.2.8.2 jruoho RsDoStartDependentNoPriDescriptor (
905 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
906 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
907 1.1.1.2.8.2 jruoho
908 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
909 1.1.1.2.8.2 jruoho RsDoVendorSmallDescriptor (
910 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
911 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
912 1.1.1.2.8.2 jruoho
913 1.1.1.2.8.2 jruoho
914 1.1.1.2.8.2 jruoho /*
915 1.1.1.2.8.2 jruoho * aslrestype1i - I/O-related Small descriptors
916 1.1.1.2.8.2 jruoho */
917 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
918 1.1.1.2.8.2 jruoho RsDoDmaDescriptor (
919 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
920 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
921 1.1.1.2.8.2 jruoho
922 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
923 1.1.1.2.8.2 jruoho RsDoFixedIoDescriptor (
924 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
925 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
926 1.1.1.2.8.2 jruoho
927 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
928 1.1.1.2.8.2 jruoho RsDoIoDescriptor (
929 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
930 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
931 1.1.1.2.8.2 jruoho
932 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
933 1.1.1.2.8.2 jruoho RsDoIrqDescriptor (
934 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
935 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
936 1.1.1.2.8.2 jruoho
937 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
938 1.1.1.2.8.2 jruoho RsDoIrqNoFlagsDescriptor (
939 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
940 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
941 1.1.1.2.8.2 jruoho
942 1.1.1.2.8.2 jruoho
943 1.1.1.2.8.2 jruoho /*
944 1.1.1.2.8.2 jruoho * aslrestype2 - Large resource descriptors
945 1.1.1.2.8.2 jruoho */
946 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
947 1.1.1.2.8.2 jruoho RsDoInterruptDescriptor (
948 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
949 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
950 1.1.1.2.8.2 jruoho
951 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
952 1.1.1.2.8.2 jruoho RsDoVendorLargeDescriptor (
953 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
954 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
955 1.1.1.2.8.2 jruoho
956 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
957 1.1.1.2.8.2 jruoho RsDoGeneralRegisterDescriptor (
958 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
959 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
960 1.1.1.2.8.2 jruoho
961 1.1.1.2.8.2 jruoho
962 1.1.1.2.8.2 jruoho /*
963 1.1.1.2.8.2 jruoho * aslrestype2d - DWord address descriptors
964 1.1.1.2.8.2 jruoho */
965 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
966 1.1.1.2.8.2 jruoho RsDoDwordIoDescriptor (
967 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
968 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
969 1.1.1.2.8.2 jruoho
970 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
971 1.1.1.2.8.2 jruoho RsDoDwordMemoryDescriptor (
972 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
973 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
974 1.1.1.2.8.2 jruoho
975 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
976 1.1.1.2.8.2 jruoho RsDoDwordSpaceDescriptor (
977 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
978 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
979 1.1.1.2.8.2 jruoho
980 1.1.1.2.8.2 jruoho
981 1.1.1.2.8.2 jruoho /*
982 1.1.1.2.8.2 jruoho * aslrestype2e - Extended address descriptors
983 1.1.1.2.8.2 jruoho */
984 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
985 1.1.1.2.8.2 jruoho RsDoExtendedIoDescriptor (
986 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
987 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
988 1.1.1.2.8.2 jruoho
989 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
990 1.1.1.2.8.2 jruoho RsDoExtendedMemoryDescriptor (
991 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
992 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
993 1.1.1.2.8.2 jruoho
994 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
995 1.1.1.2.8.2 jruoho RsDoExtendedSpaceDescriptor (
996 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
997 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
998 1.1.1.2.8.2 jruoho
999 1.1.1.2.8.2 jruoho
1000 1.1.1.2.8.2 jruoho /*
1001 1.1.1.2.8.2 jruoho * aslrestype2q - QWord address descriptors
1002 1.1.1.2.8.2 jruoho */
1003 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
1004 1.1.1.2.8.2 jruoho RsDoQwordIoDescriptor (
1005 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
1006 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
1007 1.1.1.2.8.2 jruoho
1008 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
1009 1.1.1.2.8.2 jruoho RsDoQwordMemoryDescriptor (
1010 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
1011 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
1012 1.1.1.2.8.2 jruoho
1013 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
1014 1.1.1.2.8.2 jruoho RsDoQwordSpaceDescriptor (
1015 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
1016 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
1017 1.1.1.2.8.2 jruoho
1018 1.1.1.2.8.2 jruoho
1019 1.1.1.2.8.2 jruoho /*
1020 1.1.1.2.8.2 jruoho * aslrestype2w - Word address descriptors
1021 1.1.1.2.8.2 jruoho */
1022 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
1023 1.1.1.2.8.2 jruoho RsDoWordIoDescriptor (
1024 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
1025 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
1026 1.1.1.2.8.2 jruoho
1027 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
1028 1.1.1.2.8.2 jruoho RsDoWordSpaceDescriptor (
1029 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
1030 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
1031 1.1.1.2.8.2 jruoho
1032 1.1.1.2.8.2 jruoho ASL_RESOURCE_NODE *
1033 1.1.1.2.8.2 jruoho RsDoWordBusNumberDescriptor (
1034 1.1.1.2.8.2 jruoho ACPI_PARSE_OBJECT *Op,
1035 1.1.1.2.8.2 jruoho UINT32 CurrentByteOffset);
1036 1.1.1.2.8.2 jruoho
1037 1.1.1.2.8.2 jruoho /*
1038 1.1.1.2.8.2 jruoho * Entry to data table compiler subsystem
1039 1.1.1.2.8.2 jruoho */
1040 1.1.1.2.8.2 jruoho ACPI_STATUS
1041 1.1.1.2.8.2 jruoho DtDoCompile(
1042 1.1.1.2.8.2 jruoho void);
1043 1.1.1.2.8.2 jruoho
1044 1.1.1.2.8.2 jruoho ACPI_STATUS
1045 1.1.1.2.8.2 jruoho DtCreateTemplates (
1046 1.1.1.2.8.2 jruoho char *Signature);
1047 1.1.1.2.8.2 jruoho
1048 1.1.1.2.8.2 jruoho #endif /* __ASLCOMPILER_H */
1049 1.1.1.2.8.2 jruoho
1050