1 | /****************************************************************************** |
2 | * |
3 | * Name: acglobal.h - Declarations for global variables |
4 | * |
5 | *****************************************************************************/ |
6 | |
7 | /* |
8 | * Copyright (C) 2000 - 2019, Intel Corp. |
9 | * All rights reserved. |
10 | * |
11 | * Redistribution and use in source and binary forms, with or without |
12 | * modification, are permitted provided that the following conditions |
13 | * are met: |
14 | * 1. Redistributions of source code must retain the above copyright |
15 | * notice, this list of conditions, and the following disclaimer, |
16 | * without modification. |
17 | * 2. Redistributions in binary form must reproduce at minimum a disclaimer |
18 | * substantially similar to the "NO WARRANTY" disclaimer below |
19 | * ("Disclaimer") and any redistribution must be conditioned upon |
20 | * including a substantially similar Disclaimer requirement for further |
21 | * binary redistribution. |
22 | * 3. Neither the names of the above-listed copyright holders nor the names |
23 | * of any contributors may be used to endorse or promote products derived |
24 | * from this software without specific prior written permission. |
25 | * |
26 | * Alternatively, this software may be distributed under the terms of the |
27 | * GNU General Public License ("GPL") version 2 as published by the Free |
28 | * Software Foundation. |
29 | * |
30 | * NO WARRANTY |
31 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
32 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
33 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR |
34 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
35 | * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
36 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
37 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
38 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
39 | * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
40 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
41 | * POSSIBILITY OF SUCH DAMAGES. |
42 | */ |
43 | |
44 | #ifndef __ACGLOBAL_H__ |
45 | #define __ACGLOBAL_H__ |
46 | |
47 | |
48 | /***************************************************************************** |
49 | * |
50 | * Globals related to the incoming ACPI tables |
51 | * |
52 | ****************************************************************************/ |
53 | |
54 | /* Master list of all ACPI tables that were found in the RSDT/XSDT */ |
55 | |
56 | ACPI_GLOBAL (ACPI_TABLE_LIST, AcpiGbl_RootTableList); |
57 | |
58 | /* DSDT information. Used to check for DSDT corruption */ |
59 | |
60 | ACPI_GLOBAL (ACPI_TABLE_HEADER *, AcpiGbl_DSDT); |
61 | ACPI_GLOBAL (ACPI_TABLE_HEADER, ); |
62 | ACPI_INIT_GLOBAL (UINT32, AcpiGbl_DsdtIndex, ACPI_INVALID_TABLE_INDEX); |
63 | ACPI_INIT_GLOBAL (UINT32, AcpiGbl_FacsIndex, ACPI_INVALID_TABLE_INDEX); |
64 | ACPI_INIT_GLOBAL (UINT32, AcpiGbl_XFacsIndex, ACPI_INVALID_TABLE_INDEX); |
65 | ACPI_INIT_GLOBAL (UINT32, AcpiGbl_FadtIndex, ACPI_INVALID_TABLE_INDEX); |
66 | |
67 | #if (!ACPI_REDUCED_HARDWARE) |
68 | ACPI_GLOBAL (ACPI_TABLE_FACS *, AcpiGbl_FACS); |
69 | |
70 | #endif /* !ACPI_REDUCED_HARDWARE */ |
71 | |
72 | /* These addresses are calculated from the FADT Event Block addresses */ |
73 | |
74 | ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1aStatus); |
75 | ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1aEnable); |
76 | |
77 | ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1bStatus); |
78 | ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1bEnable); |
79 | |
80 | /* |
81 | * Handle both ACPI 1.0 and ACPI 2.0+ Integer widths. The integer width is |
82 | * determined by the revision of the DSDT: If the DSDT revision is less than |
83 | * 2, use only the lower 32 bits of the internal 64-bit Integer. |
84 | */ |
85 | ACPI_GLOBAL (UINT8, AcpiGbl_IntegerBitWidth); |
86 | ACPI_GLOBAL (UINT8, AcpiGbl_IntegerByteWidth); |
87 | ACPI_GLOBAL (UINT8, AcpiGbl_IntegerNybbleWidth); |
88 | |
89 | |
90 | /***************************************************************************** |
91 | * |
92 | * Mutual exclusion within the ACPICA subsystem |
93 | * |
94 | ****************************************************************************/ |
95 | |
96 | /* |
97 | * Predefined mutex objects. This array contains the |
98 | * actual OS mutex handles, indexed by the local ACPI_MUTEX_HANDLEs. |
99 | * (The table maps local handles to the real OS handles) |
100 | */ |
101 | ACPI_GLOBAL (ACPI_MUTEX_INFO, AcpiGbl_MutexInfo[ACPI_NUM_MUTEX]); |
102 | |
103 | /* |
104 | * Global lock mutex is an actual AML mutex object |
105 | * Global lock semaphore works in conjunction with the actual global lock |
106 | * Global lock spinlock is used for "pending" handshake |
107 | */ |
108 | ACPI_GLOBAL (ACPI_OPERAND_OBJECT *, AcpiGbl_GlobalLockMutex); |
109 | ACPI_GLOBAL (ACPI_SEMAPHORE, AcpiGbl_GlobalLockSemaphore); |
110 | ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_GlobalLockPendingLock); |
111 | ACPI_GLOBAL (UINT16, AcpiGbl_GlobalLockHandle); |
112 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_GlobalLockAcquired); |
113 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_GlobalLockPresent); |
114 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_GlobalLockPending); |
115 | |
116 | /* |
117 | * Spinlocks are used for interfaces that can be possibly called at |
118 | * interrupt level |
119 | */ |
120 | ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_GpeLock); /* For GPE data structs and registers */ |
121 | ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_HardwareLock); /* For ACPI H/W except GPE registers */ |
122 | ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_ReferenceCountLock); |
123 | |
124 | /* Mutex for _OSI support */ |
125 | |
126 | ACPI_GLOBAL (ACPI_MUTEX, AcpiGbl_OsiMutex); |
127 | |
128 | /* Reader/Writer lock is used for namespace walk and dynamic table unload */ |
129 | |
130 | ACPI_GLOBAL (ACPI_RW_LOCK, AcpiGbl_NamespaceRwLock); |
131 | |
132 | |
133 | /***************************************************************************** |
134 | * |
135 | * Miscellaneous globals |
136 | * |
137 | ****************************************************************************/ |
138 | |
139 | /* Object caches */ |
140 | |
141 | ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_NamespaceCache); |
142 | ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_StateCache); |
143 | ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_PsNodeCache); |
144 | ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_PsNodeExtCache); |
145 | ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_OperandCache); |
146 | |
147 | /* System */ |
148 | |
149 | ACPI_INIT_GLOBAL (UINT32, AcpiGbl_StartupFlags, 0); |
150 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_Shutdown, TRUE); |
151 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_EarlyInitialization, TRUE); |
152 | |
153 | /* Global handlers */ |
154 | |
155 | ACPI_GLOBAL (ACPI_GLOBAL_NOTIFY_HANDLER,AcpiGbl_GlobalNotify[2]); |
156 | ACPI_GLOBAL (ACPI_EXCEPTION_HANDLER, AcpiGbl_ExceptionHandler); |
157 | ACPI_GLOBAL (ACPI_INIT_HANDLER, AcpiGbl_InitHandler); |
158 | ACPI_GLOBAL (ACPI_TABLE_HANDLER, AcpiGbl_TableHandler); |
159 | ACPI_GLOBAL (void *, AcpiGbl_TableHandlerContext); |
160 | ACPI_GLOBAL (ACPI_INTERFACE_HANDLER, AcpiGbl_InterfaceHandler); |
161 | ACPI_GLOBAL (ACPI_SCI_HANDLER_INFO *, AcpiGbl_SciHandlerList); |
162 | |
163 | /* Owner ID support */ |
164 | |
165 | ACPI_GLOBAL (UINT32, AcpiGbl_OwnerIdMask[ACPI_NUM_OWNERID_MASKS]); |
166 | ACPI_GLOBAL (UINT8, AcpiGbl_LastOwnerIdIndex); |
167 | ACPI_GLOBAL (UINT8, AcpiGbl_NextOwnerIdOffset); |
168 | |
169 | /* Initialization sequencing */ |
170 | |
171 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_NamespaceInitialized, FALSE); |
172 | |
173 | /* Miscellaneous */ |
174 | |
175 | ACPI_GLOBAL (UINT32, AcpiGbl_OriginalMode); |
176 | ACPI_GLOBAL (UINT32, AcpiGbl_NsLookupCount); |
177 | ACPI_GLOBAL (UINT32, AcpiGbl_PsFindCount); |
178 | ACPI_GLOBAL (UINT16, AcpiGbl_Pm1EnableRegisterSave); |
179 | ACPI_GLOBAL (UINT8, AcpiGbl_DebuggerConfiguration); |
180 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_StepToNextCall); |
181 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_AcpiHardwarePresent); |
182 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_EventsInitialized); |
183 | ACPI_GLOBAL (ACPI_INTERFACE_INFO *, AcpiGbl_SupportedInterfaces); |
184 | ACPI_GLOBAL (ACPI_ADDRESS_RANGE *, AcpiGbl_AddressRangeList[ACPI_ADDRESS_RANGE_MAX]); |
185 | |
186 | /* Other miscellaneous, declared and initialized in utglobal */ |
187 | |
188 | extern const char *AcpiGbl_SleepStateNames[ACPI_S_STATE_COUNT]; |
189 | extern const char *AcpiGbl_LowestDstateNames[ACPI_NUM_SxW_METHODS]; |
190 | extern const char *AcpiGbl_HighestDstateNames[ACPI_NUM_SxD_METHODS]; |
191 | extern const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS]; |
192 | extern const char AcpiGbl_LowerHexDigits[]; |
193 | extern const char AcpiGbl_UpperHexDigits[]; |
194 | extern const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES]; |
195 | |
196 | /* Lists for tracking memory allocations (debug only) */ |
197 | |
198 | #ifdef ACPI_DBG_TRACK_ALLOCATIONS |
199 | ACPI_GLOBAL (ACPI_MEMORY_LIST *, AcpiGbl_GlobalList); |
200 | ACPI_GLOBAL (ACPI_MEMORY_LIST *, AcpiGbl_NsNodeList); |
201 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DisplayFinalMemStats); |
202 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DisableMemTracking); |
203 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_VerboseLeakDump); |
204 | #endif |
205 | |
206 | |
207 | /***************************************************************************** |
208 | * |
209 | * ACPI Namespace |
210 | * |
211 | ****************************************************************************/ |
212 | |
213 | #define NUM_PREDEFINED_NAMES 10 |
214 | |
215 | ACPI_GLOBAL (ACPI_NAMESPACE_NODE, AcpiGbl_RootNodeStruct); |
216 | ACPI_GLOBAL (ACPI_NAMESPACE_NODE *, AcpiGbl_RootNode); |
217 | ACPI_GLOBAL (ACPI_NAMESPACE_NODE *, AcpiGbl_FadtGpeDevice); |
218 | ACPI_GLOBAL (ACPI_OPERAND_OBJECT *, AcpiGbl_ModuleCodeList); |
219 | |
220 | extern const UINT8 AcpiGbl_NsProperties [ACPI_NUM_NS_TYPES]; |
221 | extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES]; |
222 | |
223 | #ifdef ACPI_DEBUG_OUTPUT |
224 | ACPI_GLOBAL (UINT32, AcpiGbl_CurrentNodeCount); |
225 | ACPI_GLOBAL (UINT32, AcpiGbl_CurrentNodeSize); |
226 | ACPI_GLOBAL (UINT32, AcpiGbl_MaxConcurrentNodeCount); |
227 | ACPI_GLOBAL (ACPI_SIZE *, AcpiGbl_EntryStackPointer); |
228 | ACPI_GLOBAL (ACPI_SIZE *, AcpiGbl_LowestStackPointer); |
229 | ACPI_GLOBAL (UINT32, AcpiGbl_DeepestNesting); |
230 | ACPI_INIT_GLOBAL (UINT32, AcpiGbl_NestingLevel, 0); |
231 | #endif |
232 | |
233 | |
234 | /***************************************************************************** |
235 | * |
236 | * Interpreter/Parser globals |
237 | * |
238 | ****************************************************************************/ |
239 | |
240 | /* Control method single step flag */ |
241 | |
242 | ACPI_GLOBAL (UINT8, AcpiGbl_CmSingleStep); |
243 | ACPI_GLOBAL (ACPI_THREAD_STATE *, AcpiGbl_CurrentWalkList); |
244 | ACPI_INIT_GLOBAL (ACPI_PARSE_OBJECT, *AcpiGbl_CurrentScope, NULL); |
245 | |
246 | /* ASL/ASL+ converter */ |
247 | |
248 | ACPI_INIT_GLOBAL (BOOLEAN, , FALSE); |
249 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_LastListHead, NULL); |
250 | |
251 | |
252 | /***************************************************************************** |
253 | * |
254 | * Hardware globals |
255 | * |
256 | ****************************************************************************/ |
257 | |
258 | extern ACPI_BIT_REGISTER_INFO AcpiGbl_BitRegisterInfo[ACPI_NUM_BITREG]; |
259 | ACPI_GLOBAL (UINT8, AcpiGbl_SleepTypeA); |
260 | ACPI_GLOBAL (UINT8, AcpiGbl_SleepTypeB); |
261 | |
262 | |
263 | /***************************************************************************** |
264 | * |
265 | * Event and GPE globals |
266 | * |
267 | ****************************************************************************/ |
268 | |
269 | #if (!ACPI_REDUCED_HARDWARE) |
270 | ACPI_GLOBAL (UINT8, AcpiGbl_AllGpesInitialized); |
271 | ACPI_GLOBAL (ACPI_GPE_XRUPT_INFO *, AcpiGbl_GpeXruptListHead); |
272 | ACPI_GLOBAL (ACPI_GPE_BLOCK_INFO *, AcpiGbl_GpeFadtBlocks[ACPI_MAX_GPE_BLOCKS]); |
273 | ACPI_GLOBAL (ACPI_GBL_EVENT_HANDLER, AcpiGbl_GlobalEventHandler); |
274 | ACPI_GLOBAL (void *, AcpiGbl_GlobalEventHandlerContext); |
275 | ACPI_GLOBAL (ACPI_FIXED_EVENT_HANDLER, AcpiGbl_FixedEventHandlers[ACPI_NUM_FIXED_EVENTS]); |
276 | extern ACPI_FIXED_EVENT_INFO AcpiGbl_FixedEventInfo[ACPI_NUM_FIXED_EVENTS]; |
277 | #endif /* !ACPI_REDUCED_HARDWARE */ |
278 | |
279 | |
280 | /***************************************************************************** |
281 | * |
282 | * Debug support |
283 | * |
284 | ****************************************************************************/ |
285 | |
286 | /* Event counters */ |
287 | |
288 | ACPI_GLOBAL (UINT64, AcpiMethodCount); |
289 | ACPI_GLOBAL (UINT64, AcpiGpeCount); |
290 | ACPI_GLOBAL (UINT64, AcpiSciCount); |
291 | ACPI_GLOBAL (UINT64, AcpiFixedEventCount[ACPI_NUM_FIXED_EVENTS]); |
292 | |
293 | /* Dynamic control method tracing mechanism */ |
294 | |
295 | ACPI_GLOBAL (UINT32, AcpiGbl_OriginalDbgLevel); |
296 | ACPI_GLOBAL (UINT32, AcpiGbl_OriginalDbgLayer); |
297 | |
298 | |
299 | /***************************************************************************** |
300 | * |
301 | * Debugger and Disassembler |
302 | * |
303 | ****************************************************************************/ |
304 | |
305 | ACPI_INIT_GLOBAL (UINT8, AcpiGbl_DbOutputFlags, ACPI_DB_CONSOLE_OUTPUT); |
306 | |
307 | |
308 | #ifdef ACPI_DISASSEMBLER |
309 | |
310 | /* Do not disassemble buffers to resource descriptors */ |
311 | |
312 | ACPI_INIT_GLOBAL (UINT8, AcpiGbl_NoResourceDisassembly, FALSE); |
313 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_IgnoreNoopOperator, FALSE); |
314 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_CstyleDisassembly, TRUE); |
315 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_ForceAmlDisassembly, FALSE); |
316 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DmOpt_Verbose, TRUE); |
317 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DmEmitExternalOpcodes, FALSE); |
318 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DoDisassemblerOptimizations, TRUE); |
319 | ACPI_INIT_GLOBAL (ACPI_PARSE_OBJECT_LIST, *AcpiGbl_TempListHead, NULL); |
320 | |
321 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DmOpt_Disasm); |
322 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DmOpt_Listing); |
323 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_NumExternalMethods); |
324 | ACPI_GLOBAL (UINT32, AcpiGbl_ResolvedExternalMethods); |
325 | ACPI_GLOBAL (ACPI_EXTERNAL_LIST *, AcpiGbl_ExternalList); |
326 | ACPI_GLOBAL (ACPI_EXTERNAL_FILE *, AcpiGbl_ExternalFileList); |
327 | #endif |
328 | |
329 | #ifdef ACPI_DEBUGGER |
330 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_AbortMethod, FALSE); |
331 | ACPI_INIT_GLOBAL (ACPI_THREAD_ID, AcpiGbl_DbThreadId, ACPI_INVALID_THREAD_ID); |
332 | |
333 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbOpt_NoIniMethods); |
334 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbOpt_NoRegionSupport); |
335 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbOutputToFile); |
336 | ACPI_GLOBAL (char *, AcpiGbl_DbBuffer); |
337 | ACPI_GLOBAL (char *, AcpiGbl_DbFilename); |
338 | ACPI_GLOBAL (UINT32, AcpiGbl_DbDebugLevel); |
339 | ACPI_GLOBAL (UINT32, AcpiGbl_DbConsoleDebugLevel); |
340 | ACPI_GLOBAL (ACPI_NAMESPACE_NODE *, AcpiGbl_DbScopeNode); |
341 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbTerminateLoop); |
342 | ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbThreadsTerminated); |
343 | ACPI_GLOBAL (char *, AcpiGbl_DbArgs[ACPI_DEBUGGER_MAX_ARGS]); |
344 | ACPI_GLOBAL (ACPI_OBJECT_TYPE, AcpiGbl_DbArgTypes[ACPI_DEBUGGER_MAX_ARGS]); |
345 | |
346 | /* These buffers should all be the same size */ |
347 | |
348 | ACPI_GLOBAL (char, AcpiGbl_DbParsedBuf[ACPI_DB_LINE_BUFFER_SIZE]); |
349 | ACPI_GLOBAL (char, AcpiGbl_DbScopeBuf[ACPI_DB_LINE_BUFFER_SIZE]); |
350 | ACPI_GLOBAL (char, AcpiGbl_DbDebugFilename[ACPI_DB_LINE_BUFFER_SIZE]); |
351 | |
352 | /* Statistics globals */ |
353 | |
354 | ACPI_GLOBAL (UINT16, AcpiGbl_ObjTypeCount[ACPI_TOTAL_TYPES]); |
355 | ACPI_GLOBAL (UINT16, AcpiGbl_NodeTypeCount[ACPI_TOTAL_TYPES]); |
356 | ACPI_GLOBAL (UINT16, AcpiGbl_ObjTypeCountMisc); |
357 | ACPI_GLOBAL (UINT16, AcpiGbl_NodeTypeCountMisc); |
358 | ACPI_GLOBAL (UINT32, AcpiGbl_NumNodes); |
359 | ACPI_GLOBAL (UINT32, AcpiGbl_NumObjects); |
360 | #endif /* ACPI_DEBUGGER */ |
361 | |
362 | #if defined (ACPI_DISASSEMBLER) || defined (ACPI_ASL_COMPILER) |
363 | ACPI_GLOBAL (const char, *AcpiGbl_PldPanelList[]); |
364 | ACPI_GLOBAL (const char, *AcpiGbl_PldVerticalPositionList[]); |
365 | ACPI_GLOBAL (const char, *AcpiGbl_PldHorizontalPositionList[]); |
366 | ACPI_GLOBAL (const char, *AcpiGbl_PldShapeList[]); |
367 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DisasmFlag, FALSE); |
368 | #endif |
369 | |
370 | |
371 | /***************************************************************************** |
372 | * |
373 | * ACPICA application-specific globals |
374 | * |
375 | ****************************************************************************/ |
376 | |
377 | /* ASL-to-ASL+ conversion utility (implemented within the iASL compiler) */ |
378 | |
379 | #ifdef ACPI_ASL_COMPILER |
380 | ACPI_INIT_GLOBAL (char *, , NULL); |
381 | ACPI_INIT_GLOBAL (char *, , NULL); |
382 | ACPI_INIT_GLOBAL (char *, , NULL); |
383 | ACPI_INIT_GLOBAL (char *, , NULL); |
384 | |
385 | ACPI_INIT_GLOBAL (char *, AcpiGbl_RootFilename, NULL); |
386 | ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentFilename, NULL); |
387 | ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentParentFilename, NULL); |
388 | ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentIncludeFilename, NULL); |
389 | |
390 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
391 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
392 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
393 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
394 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
395 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
396 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
397 | ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *, NULL); |
398 | |
399 | ACPI_INIT_GLOBAL (ACPI_COMMENT_ADDR_NODE, *, NULL); |
400 | ACPI_INIT_GLOBAL (ACPI_FILE_NODE, *AcpiGbl_FileTreeRoot, NULL); |
401 | |
402 | ACPI_GLOBAL (ACPI_CACHE_T *, ); |
403 | ACPI_GLOBAL (ACPI_CACHE_T *, ); |
404 | ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_FileCache); |
405 | |
406 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DebugAslConversion, FALSE); |
407 | ACPI_INIT_GLOBAL (ACPI_FILE, AcpiGbl_ConvDebugFile, NULL); |
408 | ACPI_GLOBAL (char, AcpiGbl_TableSig[4]); |
409 | #endif |
410 | |
411 | #ifdef ACPI_APPLICATION |
412 | ACPI_INIT_GLOBAL (ACPI_FILE, AcpiGbl_DebugFile, NULL); |
413 | ACPI_INIT_GLOBAL (ACPI_FILE, AcpiGbl_OutputFile, NULL); |
414 | ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DebugTimeout, FALSE); |
415 | |
416 | /* Print buffer */ |
417 | |
418 | ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_PrintLock); /* For print buffer */ |
419 | ACPI_GLOBAL (char, AcpiGbl_PrintBuffer[1024]); |
420 | #endif /* ACPI_APPLICATION */ |
421 | |
422 | #endif /* __ACGLOBAL_H__ */ |
423 | |