Print this page
update to acpica-unix2-20131218
acpica-unix2-20130823
PANKOVs restructure
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/uts/intel/sys/acpi/acglobal.h
+++ new/usr/src/common/acpica/include/acglobal.h
1 1 /******************************************************************************
2 2 *
3 3 * Name: acglobal.h - Declarations for global variables
4 4 *
5 5 *****************************************************************************/
6 6
7 7 /*
8 - * Copyright (C) 2000 - 2011, Intel Corp.
8 + * Copyright (C) 2000 - 2013, Intel Corp.
9 9 * All rights reserved.
10 10 *
11 11 * Redistribution and use in source and binary forms, with or without
12 12 * modification, are permitted provided that the following conditions
13 13 * are met:
14 14 * 1. Redistributions of source code must retain the above copyright
15 15 * notice, this list of conditions, and the following disclaimer,
16 16 * without modification.
17 17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18 18 * substantially similar to the "NO WARRANTY" disclaimer below
19 19 * ("Disclaimer") and any redistribution must be conditioned upon
20 20 * including a substantially similar Disclaimer requirement for further
21 21 * binary redistribution.
22 22 * 3. Neither the names of the above-listed copyright holders nor the names
23 23 * of any contributors may be used to endorse or promote products derived
24 24 * from this software without specific prior written permission.
25 25 *
26 26 * Alternatively, this software may be distributed under the terms of the
27 27 * GNU General Public License ("GPL") version 2 as published by the Free
28 28 * Software Foundation.
29 29 *
30 30 * NO WARRANTY
31 31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32 32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33 33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34 34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35 35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36 36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37 37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39 39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40 40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41 41 * POSSIBILITY OF SUCH DAMAGES.
42 42 */
43 43
44 44 #ifndef __ACGLOBAL_H__
45 45 #define __ACGLOBAL_H__
46 46
47 47
48 48 /*
49 49 * Ensure that the globals are actually defined and initialized only once.
50 50 *
51 51 * The use of these macros allows a single list of globals (here) in order
52 52 * to simplify maintenance of the code.
53 53 */
54 54 #ifdef DEFINE_ACPI_GLOBALS
55 55 #define ACPI_EXTERN
56 56 #define ACPI_INIT_GLOBAL(a,b) a=b
57 57 #else
58 58 #define ACPI_EXTERN extern
59 59 #define ACPI_INIT_GLOBAL(a,b) a
60 60 #endif
61 61
62 62
63 63 #ifdef DEFINE_ACPI_GLOBALS
64 64
↓ open down ↓ |
46 lines elided |
↑ open up ↑ |
65 65 /* Public globals, available from outside ACPICA subsystem */
66 66
67 67 /*****************************************************************************
68 68 *
69 69 * Runtime configuration (static defaults that can be overriden at runtime)
70 70 *
71 71 ****************************************************************************/
72 72
73 73 /*
74 74 * Enable "slack" in the AML interpreter? Default is FALSE, and the
75 - * interpreter strictly follows the ACPI specification. Setting to TRUE
75 + * interpreter strictly follows the ACPI specification. Setting to TRUE
76 76 * allows the interpreter to ignore certain errors and/or bad AML constructs.
77 77 *
78 78 * Currently, these features are enabled by this flag:
79 79 *
80 80 * 1) Allow "implicit return" of last value in a control method
81 81 * 2) Allow access beyond the end of an operation region
82 82 * 3) Allow access to uninitialized locals/args (auto-init to integer 0)
83 83 * 4) Allow ANY object type to be a source operand for the Store() operator
84 84 * 5) Allow unresolved references (invalid target name) in package objects
85 85 * 6) Enable warning messages for behavior that is not ACPI spec compliant
86 86 */
87 87 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_EnableInterpreterSlack, FALSE);
88 88
89 89 /*
90 90 * Automatically serialize ALL control methods? Default is FALSE, meaning
91 91 * to use the Serialized/NotSerialized method flags on a per method basis.
92 92 * Only change this if the ASL code is poorly written and cannot handle
93 93 * reentrancy even though methods are marked "NotSerialized".
94 94 */
95 95 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_AllMethodsSerialized, FALSE);
96 96
97 97 /*
98 98 * Create the predefined _OSI method in the namespace? Default is TRUE
99 99 * because ACPI CA is fully compatible with other ACPI implementations.
100 100 * Changing this will revert ACPI CA (and machine ASL) to pre-OSI behavior.
101 101 */
102 102 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_CreateOsiMethod, TRUE);
103 103
104 104 /*
105 105 * Optionally use default values for the ACPI register widths. Set this to
106 106 * TRUE to use the defaults, if an FADT contains incorrect widths/lengths.
107 107 */
108 108 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_UseDefaultRegisterWidths, TRUE);
109 109
110 110 /*
111 111 * Optionally enable output from the AML Debug Object.
112 112 */
113 113 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_EnableAmlDebugObject, FALSE);
↓ open down ↓ |
28 lines elided |
↑ open up ↑ |
114 114
115 115 /*
116 116 * Optionally copy the entire DSDT to local memory (instead of simply
117 117 * mapping it.) There are some BIOSs that corrupt or replace the original
118 118 * DSDT, creating the need for this option. Default is FALSE, do not copy
119 119 * the DSDT.
120 120 */
121 121 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_CopyDsdtLocally, FALSE);
122 122
123 123 /*
124 + * Optionally ignore an XSDT if present and use the RSDT instead.
125 + * Although the ACPI specification requires that an XSDT be used instead
126 + * of the RSDT, the XSDT has been found to be corrupt or ill-formed on
127 + * some machines. Default behavior is to use the XSDT if present.
128 + */
129 +UINT8 ACPI_INIT_GLOBAL (AcpiGbl_DoNotUseXsdt, FALSE);
130 +
131 +
132 +/*
133 + * Optionally use 32-bit FADT addresses if and when there is a conflict
134 + * (address mismatch) between the 32-bit and 64-bit versions of the
135 + * address. Although ACPICA adheres to the ACPI specification which
136 + * requires the use of the corresponding 64-bit address if it is non-zero,
137 + * some machines have been found to have a corrupted non-zero 64-bit
138 + * address. Default is FALSE, do not favor the 32-bit addresses.
139 + */
140 +UINT8 ACPI_INIT_GLOBAL (AcpiGbl_Use32BitFadtAddresses, FALSE);
141 +
142 +/*
124 143 * Optionally truncate I/O addresses to 16 bits. Provides compatibility
125 144 * with other ACPI implementations. NOTE: During ACPICA initialization,
126 145 * this value is set to TRUE if any Windows OSI strings have been
127 146 * requested by the BIOS.
128 147 */
129 148 UINT8 ACPI_INIT_GLOBAL (AcpiGbl_TruncateIoAddresses, FALSE);
130 149
150 +/*
151 + * Disable runtime checking and repair of values returned by control methods.
152 + * Use only if the repair is causing a problem on a particular machine.
153 + */
154 +UINT8 ACPI_INIT_GLOBAL (AcpiGbl_DisableAutoRepair, FALSE);
131 155
156 +/*
157 + * Optionally do not load any SSDTs from the RSDT/XSDT during initialization.
158 + * This can be useful for debugging ACPI problems on some machines.
159 + */
160 +UINT8 ACPI_INIT_GLOBAL (AcpiGbl_DisableSsdtTableLoad, FALSE);
161 +
162 +/*
163 + * We keep track of the latest version of Windows that has been requested by
164 + * the BIOS.
165 + */
166 +UINT8 ACPI_INIT_GLOBAL (AcpiGbl_OsiData, 0);
167 +
168 +
132 169 /* AcpiGbl_FADT is a local copy of the FADT, converted to a common format. */
133 170
134 171 ACPI_TABLE_FADT AcpiGbl_FADT;
135 172 UINT32 AcpiCurrentGpeCount;
136 173 UINT32 AcpiGbl_TraceFlags;
137 174 ACPI_NAME AcpiGbl_TraceMethodName;
138 175 BOOLEAN AcpiGbl_SystemAwakeAndRunning;
139 176
140 -#endif
177 +/*
178 + * ACPI 5.0 introduces the concept of a "reduced hardware platform", meaning
179 + * that the ACPI hardware is no longer required. A flag in the FADT indicates
180 + * a reduced HW machine, and that flag is duplicated here for convenience.
181 + */
182 +BOOLEAN AcpiGbl_ReducedHardware;
141 183
184 +#endif /* DEFINE_ACPI_GLOBALS */
185 +
186 +/* Do not disassemble buffers to resource descriptors */
187 +
188 +ACPI_EXTERN UINT8 ACPI_INIT_GLOBAL (AcpiGbl_NoResourceDisassembly, FALSE);
189 +
142 190 /*****************************************************************************
143 191 *
144 192 * ACPI Table globals
145 193 *
146 194 ****************************************************************************/
147 195
148 196 /*
149 197 * AcpiGbl_RootTableList is the master list of ACPI tables that were
150 198 * found in the RSDT/XSDT.
151 199 */
152 200 ACPI_EXTERN ACPI_TABLE_LIST AcpiGbl_RootTableList;
201 +
202 +#if (!ACPI_REDUCED_HARDWARE)
153 203 ACPI_EXTERN ACPI_TABLE_FACS *AcpiGbl_FACS;
154 204
205 +#endif /* !ACPI_REDUCED_HARDWARE */
206 +
155 207 /* These addresses are calculated from the FADT Event Block addresses */
156 208
157 209 ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1aStatus;
158 210 ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1aEnable;
159 211
160 212 ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1bStatus;
161 213 ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1bEnable;
162 214
163 215 /* DSDT information. Used to check for DSDT corruption */
164 216
165 217 ACPI_EXTERN ACPI_TABLE_HEADER *AcpiGbl_DSDT;
166 218 ACPI_EXTERN ACPI_TABLE_HEADER AcpiGbl_OriginalDsdtHeader;
167 219
168 220 /*
169 221 * Handle both ACPI 1.0 and ACPI 2.0 Integer widths. The integer width is
↓ open down ↓ |
5 lines elided |
↑ open up ↑ |
170 222 * determined by the revision of the DSDT: If the DSDT revision is less than
171 223 * 2, use only the lower 32 bits of the internal 64-bit Integer.
172 224 */
173 225 ACPI_EXTERN UINT8 AcpiGbl_IntegerBitWidth;
174 226 ACPI_EXTERN UINT8 AcpiGbl_IntegerByteWidth;
175 227 ACPI_EXTERN UINT8 AcpiGbl_IntegerNybbleWidth;
176 228
177 229
178 230 /*****************************************************************************
179 231 *
180 - * Mutual exlusion within ACPICA subsystem
232 + * Mutual exclusion within ACPICA subsystem
181 233 *
182 234 ****************************************************************************/
183 235
184 236 /*
185 237 * Predefined mutex objects. This array contains the
186 238 * actual OS mutex handles, indexed by the local ACPI_MUTEX_HANDLEs.
187 239 * (The table maps local handles to the real OS handles)
188 240 */
189 241 ACPI_EXTERN ACPI_MUTEX_INFO AcpiGbl_MutexInfo[ACPI_NUM_MUTEX];
190 242
191 243 /*
192 244 * Global lock mutex is an actual AML mutex object
193 245 * Global lock semaphore works in conjunction with the actual global lock
194 246 * Global lock spinlock is used for "pending" handshake
195 247 */
196 248 ACPI_EXTERN ACPI_OPERAND_OBJECT *AcpiGbl_GlobalLockMutex;
197 249 ACPI_EXTERN ACPI_SEMAPHORE AcpiGbl_GlobalLockSemaphore;
198 250 ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_GlobalLockPendingLock;
199 251 ACPI_EXTERN UINT16 AcpiGbl_GlobalLockHandle;
↓ open down ↓ |
9 lines elided |
↑ open up ↑ |
200 252 ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockAcquired;
201 253 ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockPresent;
202 254 ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockPending;
203 255
204 256 /*
205 257 * Spinlocks are used for interfaces that can be possibly called at
206 258 * interrupt level
207 259 */
208 260 ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_GpeLock; /* For GPE data structs and registers */
209 261 ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_HardwareLock; /* For ACPI H/W except GPE registers */
262 +ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_ReferenceCountLock;
210 263
211 264 /* Mutex for _OSI support */
212 265
213 266 ACPI_EXTERN ACPI_MUTEX AcpiGbl_OsiMutex;
214 267
215 268 /* Reader/Writer lock is used for namespace walk and dynamic table unload */
216 269
217 270 ACPI_EXTERN ACPI_RW_LOCK AcpiGbl_NamespaceRwLock;
218 271
219 272
220 273 /*****************************************************************************
221 274 *
222 275 * Miscellaneous globals
223 276 *
224 277 ****************************************************************************/
225 278
↓ open down ↓ |
6 lines elided |
↑ open up ↑ |
226 279 /* Object caches */
227 280
228 281 ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_NamespaceCache;
229 282 ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_StateCache;
230 283 ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_PsNodeCache;
231 284 ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_PsNodeExtCache;
232 285 ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_OperandCache;
233 286
234 287 /* Global handlers */
235 288
236 -ACPI_EXTERN ACPI_OBJECT_NOTIFY_HANDLER AcpiGbl_DeviceNotify;
237 -ACPI_EXTERN ACPI_OBJECT_NOTIFY_HANDLER AcpiGbl_SystemNotify;
289 +ACPI_EXTERN ACPI_GLOBAL_NOTIFY_HANDLER AcpiGbl_GlobalNotify[2];
238 290 ACPI_EXTERN ACPI_EXCEPTION_HANDLER AcpiGbl_ExceptionHandler;
239 291 ACPI_EXTERN ACPI_INIT_HANDLER AcpiGbl_InitHandler;
240 292 ACPI_EXTERN ACPI_TABLE_HANDLER AcpiGbl_TableHandler;
241 293 ACPI_EXTERN void *AcpiGbl_TableHandlerContext;
242 294 ACPI_EXTERN ACPI_WALK_STATE *AcpiGbl_BreakpointWalk;
243 295 ACPI_EXTERN ACPI_INTERFACE_HANDLER AcpiGbl_InterfaceHandler;
296 +ACPI_EXTERN ACPI_SCI_HANDLER_INFO *AcpiGbl_SciHandlerList;
244 297
245 298 /* Owner ID support */
246 299
247 300 ACPI_EXTERN UINT32 AcpiGbl_OwnerIdMask[ACPI_NUM_OWNERID_MASKS];
248 301 ACPI_EXTERN UINT8 AcpiGbl_LastOwnerIdIndex;
249 302 ACPI_EXTERN UINT8 AcpiGbl_NextOwnerIdOffset;
250 303
251 304 /* Initialization sequencing */
252 305
253 306 ACPI_EXTERN BOOLEAN AcpiGbl_RegMethodsExecuted;
254 307
255 308 /* Misc */
↓ open down ↓ |
2 lines elided |
↑ open up ↑ |
256 309
257 310 ACPI_EXTERN UINT32 AcpiGbl_OriginalMode;
258 311 ACPI_EXTERN UINT32 AcpiGbl_RsdpOriginalLocation;
259 312 ACPI_EXTERN UINT32 AcpiGbl_NsLookupCount;
260 313 ACPI_EXTERN UINT32 AcpiGbl_PsFindCount;
261 314 ACPI_EXTERN UINT16 AcpiGbl_Pm1EnableRegisterSave;
262 315 ACPI_EXTERN UINT8 AcpiGbl_DebuggerConfiguration;
263 316 ACPI_EXTERN BOOLEAN AcpiGbl_StepToNextCall;
264 317 ACPI_EXTERN BOOLEAN AcpiGbl_AcpiHardwarePresent;
265 318 ACPI_EXTERN BOOLEAN AcpiGbl_EventsInitialized;
266 -ACPI_EXTERN UINT8 AcpiGbl_OsiData;
267 319 ACPI_EXTERN ACPI_INTERFACE_INFO *AcpiGbl_SupportedInterfaces;
320 +ACPI_EXTERN ACPI_ADDRESS_RANGE *AcpiGbl_AddressRangeList[ACPI_ADDRESS_RANGE_MAX];
268 321
269 -
270 322 #ifndef DEFINE_ACPI_GLOBALS
271 323
272 -/* Exception codes */
273 -
274 -extern char const *AcpiGbl_ExceptionNames_Env[];
275 -extern char const *AcpiGbl_ExceptionNames_Pgm[];
276 -extern char const *AcpiGbl_ExceptionNames_Tbl[];
277 -extern char const *AcpiGbl_ExceptionNames_Aml[];
278 -extern char const *AcpiGbl_ExceptionNames_Ctrl[];
279 -
280 324 /* Other miscellaneous */
281 325
282 326 extern BOOLEAN AcpiGbl_Shutdown;
283 327 extern UINT32 AcpiGbl_StartupFlags;
284 328 extern const char *AcpiGbl_SleepStateNames[ACPI_S_STATE_COUNT];
285 329 extern const char *AcpiGbl_LowestDstateNames[ACPI_NUM_SxW_METHODS];
286 330 extern const char *AcpiGbl_HighestDstateNames[ACPI_NUM_SxD_METHODS];
287 331 extern const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES];
288 332 extern const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS];
289 333 #endif
290 334
291 335
292 336 #ifdef ACPI_DBG_TRACK_ALLOCATIONS
293 337
294 338 /* Lists for tracking memory allocations */
295 339
296 340 ACPI_EXTERN ACPI_MEMORY_LIST *AcpiGbl_GlobalList;
297 341 ACPI_EXTERN ACPI_MEMORY_LIST *AcpiGbl_NsNodeList;
298 342 ACPI_EXTERN BOOLEAN AcpiGbl_DisplayFinalMemStats;
299 343 ACPI_EXTERN BOOLEAN AcpiGbl_DisableMemTracking;
300 344 #endif
301 345
302 346
303 347 /*****************************************************************************
304 348 *
305 349 * Namespace globals
306 350 *
307 351 ****************************************************************************/
308 352
309 353 #if !defined (ACPI_NO_METHOD_EXECUTION) || defined (ACPI_CONSTANT_EVAL_ONLY)
310 354 #define NUM_PREDEFINED_NAMES 10
311 355 #else
312 356 #define NUM_PREDEFINED_NAMES 9
313 357 #endif
314 358
315 359 ACPI_EXTERN ACPI_NAMESPACE_NODE AcpiGbl_RootNodeStruct;
316 360 ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_RootNode;
317 361 ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_FadtGpeDevice;
318 362 ACPI_EXTERN ACPI_OPERAND_OBJECT *AcpiGbl_ModuleCodeList;
319 363
320 364
321 365 extern const UINT8 AcpiGbl_NsProperties [ACPI_NUM_NS_TYPES];
322 366 extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES];
323 367
324 368 #ifdef ACPI_DEBUG_OUTPUT
325 369 ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeCount;
326 370 ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeSize;
327 371 ACPI_EXTERN UINT32 AcpiGbl_MaxConcurrentNodeCount;
328 372 ACPI_EXTERN ACPI_SIZE *AcpiGbl_EntryStackPointer;
329 373 ACPI_EXTERN ACPI_SIZE *AcpiGbl_LowestStackPointer;
↓ open down ↓ |
40 lines elided |
↑ open up ↑ |
330 374 ACPI_EXTERN UINT32 AcpiGbl_DeepestNesting;
331 375 #endif
332 376
333 377
334 378 /*****************************************************************************
335 379 *
336 380 * Interpreter globals
337 381 *
338 382 ****************************************************************************/
339 383
340 -
341 384 ACPI_EXTERN ACPI_THREAD_STATE *AcpiGbl_CurrentWalkList;
342 385
343 386 /* Control method single step flag */
344 387
345 388 ACPI_EXTERN UINT8 AcpiGbl_CmSingleStep;
346 389
347 390
348 391 /*****************************************************************************
349 392 *
350 393 * Hardware globals
351 394 *
352 395 ****************************************************************************/
353 396
354 397 extern ACPI_BIT_REGISTER_INFO AcpiGbl_BitRegisterInfo[ACPI_NUM_BITREG];
↓ open down ↓ |
4 lines elided |
↑ open up ↑ |
355 398 ACPI_EXTERN UINT8 AcpiGbl_SleepTypeA;
356 399 ACPI_EXTERN UINT8 AcpiGbl_SleepTypeB;
357 400
358 401
359 402 /*****************************************************************************
360 403 *
361 404 * Event and GPE globals
362 405 *
363 406 ****************************************************************************/
364 407
408 +#if (!ACPI_REDUCED_HARDWARE)
409 +
365 410 ACPI_EXTERN UINT8 AcpiGbl_AllGpesInitialized;
366 411 ACPI_EXTERN ACPI_GPE_XRUPT_INFO *AcpiGbl_GpeXruptListHead;
367 412 ACPI_EXTERN ACPI_GPE_BLOCK_INFO *AcpiGbl_GpeFadtBlocks[ACPI_MAX_GPE_BLOCKS];
368 413 ACPI_EXTERN ACPI_GBL_EVENT_HANDLER AcpiGbl_GlobalEventHandler;
369 414 ACPI_EXTERN void *AcpiGbl_GlobalEventHandlerContext;
370 415 ACPI_EXTERN ACPI_FIXED_EVENT_HANDLER AcpiGbl_FixedEventHandlers[ACPI_NUM_FIXED_EVENTS];
371 416 extern ACPI_FIXED_EVENT_INFO AcpiGbl_FixedEventInfo[ACPI_NUM_FIXED_EVENTS];
372 417
418 +#endif /* !ACPI_REDUCED_HARDWARE */
373 419
374 420 /*****************************************************************************
375 421 *
376 422 * Debug support
377 423 *
378 424 ****************************************************************************/
379 425
380 426 /* Procedure nesting level for debug output */
381 427
382 428 extern UINT32 AcpiGbl_NestingLevel;
383 429
384 430 /* Event counters */
385 431
386 432 ACPI_EXTERN UINT32 AcpiMethodCount;
387 433 ACPI_EXTERN UINT32 AcpiGpeCount;
388 434 ACPI_EXTERN UINT32 AcpiSciCount;
389 435 ACPI_EXTERN UINT32 AcpiFixedEventCount[ACPI_NUM_FIXED_EVENTS];
390 436
↓ open down ↓ |
8 lines elided |
↑ open up ↑ |
391 437 /* Support for dynamic control method tracing mechanism */
392 438
393 439 ACPI_EXTERN UINT32 AcpiGbl_OriginalDbgLevel;
394 440 ACPI_EXTERN UINT32 AcpiGbl_OriginalDbgLayer;
395 441 ACPI_EXTERN UINT32 AcpiGbl_TraceDbgLevel;
396 442 ACPI_EXTERN UINT32 AcpiGbl_TraceDbgLayer;
397 443
398 444
399 445 /*****************************************************************************
400 446 *
401 - * Debugger globals
447 + * Debugger and Disassembler globals
402 448 *
403 449 ****************************************************************************/
404 450
405 451 ACPI_EXTERN UINT8 AcpiGbl_DbOutputFlags;
406 452
407 453 #ifdef ACPI_DISASSEMBLER
408 454
455 +ACPI_EXTERN BOOLEAN ACPI_INIT_GLOBAL (AcpiGbl_IgnoreNoopOperator, FALSE);
456 +
409 457 ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_disasm;
410 458 ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_verbose;
459 +ACPI_EXTERN BOOLEAN AcpiGbl_NumExternalMethods;
460 +ACPI_EXTERN UINT32 AcpiGbl_ResolvedExternalMethods;
411 461 ACPI_EXTERN ACPI_EXTERNAL_LIST *AcpiGbl_ExternalList;
412 462 ACPI_EXTERN ACPI_EXTERNAL_FILE *AcpiGbl_ExternalFileList;
413 463 #endif
414 464
415 465
416 466 #ifdef ACPI_DEBUGGER
417 467
418 468 extern BOOLEAN AcpiGbl_MethodExecuting;
419 469 extern BOOLEAN AcpiGbl_AbortMethod;
420 470 extern BOOLEAN AcpiGbl_DbTerminateThreads;
421 471
422 472 ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_tables;
423 473 ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_stats;
424 474 ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_ini_methods;
425 475 ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_NoRegionSupport;
426 -
427 -ACPI_EXTERN char *AcpiGbl_DbArgs[ACPI_DEBUGGER_MAX_ARGS];
428 -ACPI_EXTERN ACPI_OBJECT_TYPE AcpiGbl_DbArgTypes[ACPI_DEBUGGER_MAX_ARGS];
429 -ACPI_EXTERN char AcpiGbl_DbLineBuf[ACPI_DB_LINE_BUFFER_SIZE];
430 -ACPI_EXTERN char AcpiGbl_DbParsedBuf[ACPI_DB_LINE_BUFFER_SIZE];
431 -ACPI_EXTERN char AcpiGbl_DbScopeBuf[80];
432 -ACPI_EXTERN char AcpiGbl_DbDebugFilename[80];
433 476 ACPI_EXTERN BOOLEAN AcpiGbl_DbOutputToFile;
434 477 ACPI_EXTERN char *AcpiGbl_DbBuffer;
435 478 ACPI_EXTERN char *AcpiGbl_DbFilename;
436 479 ACPI_EXTERN UINT32 AcpiGbl_DbDebugLevel;
437 480 ACPI_EXTERN UINT32 AcpiGbl_DbConsoleDebugLevel;
438 481 ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_DbScopeNode;
439 482
483 +ACPI_EXTERN char *AcpiGbl_DbArgs[ACPI_DEBUGGER_MAX_ARGS];
484 +ACPI_EXTERN ACPI_OBJECT_TYPE AcpiGbl_DbArgTypes[ACPI_DEBUGGER_MAX_ARGS];
485 +
486 +/* These buffers should all be the same size */
487 +
488 +ACPI_EXTERN char AcpiGbl_DbLineBuf[ACPI_DB_LINE_BUFFER_SIZE];
489 +ACPI_EXTERN char AcpiGbl_DbParsedBuf[ACPI_DB_LINE_BUFFER_SIZE];
490 +ACPI_EXTERN char AcpiGbl_DbScopeBuf[ACPI_DB_LINE_BUFFER_SIZE];
491 +ACPI_EXTERN char AcpiGbl_DbDebugFilename[ACPI_DB_LINE_BUFFER_SIZE];
492 +
440 493 /*
441 494 * Statistic globals
442 495 */
443 496 ACPI_EXTERN UINT16 AcpiGbl_ObjTypeCount[ACPI_TYPE_NS_NODE_MAX+1];
444 497 ACPI_EXTERN UINT16 AcpiGbl_NodeTypeCount[ACPI_TYPE_NS_NODE_MAX+1];
445 498 ACPI_EXTERN UINT16 AcpiGbl_ObjTypeCountMisc;
446 499 ACPI_EXTERN UINT16 AcpiGbl_NodeTypeCountMisc;
447 500 ACPI_EXTERN UINT32 AcpiGbl_NumNodes;
448 501 ACPI_EXTERN UINT32 AcpiGbl_NumObjects;
449 502
450 503
451 504 ACPI_EXTERN UINT32 AcpiGbl_SizeOfParseTree;
452 505 ACPI_EXTERN UINT32 AcpiGbl_SizeOfMethodTrees;
453 506 ACPI_EXTERN UINT32 AcpiGbl_SizeOfNodeEntries;
454 507 ACPI_EXTERN UINT32 AcpiGbl_SizeOfAcpiObjects;
455 508
456 509 #endif /* ACPI_DEBUGGER */
457 510
511 +
512 +/*****************************************************************************
513 + *
514 + * Application globals
515 + *
516 + ****************************************************************************/
517 +
518 +#ifdef ACPI_APPLICATION
519 +
520 +ACPI_FILE ACPI_INIT_GLOBAL (AcpiGbl_DebugFile, NULL);
521 +
522 +#endif /* ACPI_APPLICATION */
523 +
524 +
525 +/*****************************************************************************
526 + *
527 + * Info/help support
528 + *
529 + ****************************************************************************/
530 +
531 +extern const AH_PREDEFINED_NAME AslPredefinedInfo[];
532 +
533 +
458 534 #endif /* __ACGLOBAL_H__ */
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX