Rev 1498 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1498 | Rev 2216 | ||
---|---|---|---|
1 | /****************************************************************************** |
1 | /****************************************************************************** |
2 | * |
2 | * |
3 | * Name: acglobal.h - Declarations for global variables |
3 | * Name: acglobal.h - Declarations for global variables |
4 | * |
4 | * |
5 | *****************************************************************************/ |
5 | *****************************************************************************/ |
6 | 6 | ||
7 | /****************************************************************************** |
7 | /****************************************************************************** |
8 | * |
8 | * |
9 | * 1. Copyright Notice |
9 | * 1. Copyright Notice |
10 | * |
10 | * |
11 | * Some or all of this work - Copyright (c) 1999 - 2010, Intel Corp. |
11 | * Some or all of this work - Copyright (c) 1999 - 2011, Intel Corp. |
12 | * All rights reserved. |
12 | * All rights reserved. |
13 | * |
13 | * |
14 | * 2. License |
14 | * 2. License |
15 | * |
15 | * |
16 | * 2.1. This is your license from Intel Corp. under its intellectual property |
16 | * 2.1. This is your license from Intel Corp. under its intellectual property |
17 | * rights. You may have additional license terms from the party that provided |
17 | * rights. You may have additional license terms from the party that provided |
18 | * you this software, covering your right to use that party's intellectual |
18 | * you this software, covering your right to use that party's intellectual |
19 | * property rights. |
19 | * property rights. |
20 | * |
20 | * |
21 | * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a |
21 | * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a |
22 | * copy of the source code appearing in this file ("Covered Code") an |
22 | * copy of the source code appearing in this file ("Covered Code") an |
23 | * irrevocable, perpetual, worldwide license under Intel's copyrights in the |
23 | * irrevocable, perpetual, worldwide license under Intel's copyrights in the |
24 | * base code distributed originally by Intel ("Original Intel Code") to copy, |
24 | * base code distributed originally by Intel ("Original Intel Code") to copy, |
25 | * make derivatives, distribute, use and display any portion of the Covered |
25 | * make derivatives, distribute, use and display any portion of the Covered |
26 | * Code in any form, with the right to sublicense such rights; and |
26 | * Code in any form, with the right to sublicense such rights; and |
27 | * |
27 | * |
28 | * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent |
28 | * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent |
29 | * license (with the right to sublicense), under only those claims of Intel |
29 | * license (with the right to sublicense), under only those claims of Intel |
30 | * patents that are infringed by the Original Intel Code, to make, use, sell, |
30 | * patents that are infringed by the Original Intel Code, to make, use, sell, |
31 | * offer to sell, and import the Covered Code and derivative works thereof |
31 | * offer to sell, and import the Covered Code and derivative works thereof |
32 | * solely to the minimum extent necessary to exercise the above copyright |
32 | * solely to the minimum extent necessary to exercise the above copyright |
33 | * license, and in no event shall the patent license extend to any additions |
33 | * license, and in no event shall the patent license extend to any additions |
34 | * to or modifications of the Original Intel Code. No other license or right |
34 | * to or modifications of the Original Intel Code. No other license or right |
35 | * is granted directly or by implication, estoppel or otherwise; |
35 | * is granted directly or by implication, estoppel or otherwise; |
36 | * |
36 | * |
37 | * The above copyright and patent license is granted only if the following |
37 | * The above copyright and patent license is granted only if the following |
38 | * conditions are met: |
38 | * conditions are met: |
39 | * |
39 | * |
40 | * 3. Conditions |
40 | * 3. Conditions |
41 | * |
41 | * |
42 | * 3.1. Redistribution of Source with Rights to Further Distribute Source. |
42 | * 3.1. Redistribution of Source with Rights to Further Distribute Source. |
43 | * Redistribution of source code of any substantial portion of the Covered |
43 | * Redistribution of source code of any substantial portion of the Covered |
44 | * Code or modification with rights to further distribute source must include |
44 | * Code or modification with rights to further distribute source must include |
45 | * the above Copyright Notice, the above License, this list of Conditions, |
45 | * the above Copyright Notice, the above License, this list of Conditions, |
46 | * and the following Disclaimer and Export Compliance provision. In addition, |
46 | * and the following Disclaimer and Export Compliance provision. In addition, |
47 | * Licensee must cause all Covered Code to which Licensee contributes to |
47 | * Licensee must cause all Covered Code to which Licensee contributes to |
48 | * contain a file documenting the changes Licensee made to create that Covered |
48 | * contain a file documenting the changes Licensee made to create that Covered |
49 | * Code and the date of any change. Licensee must include in that file the |
49 | * Code and the date of any change. Licensee must include in that file the |
50 | * documentation of any changes made by any predecessor Licensee. Licensee |
50 | * documentation of any changes made by any predecessor Licensee. Licensee |
51 | * must include a prominent statement that the modification is derived, |
51 | * must include a prominent statement that the modification is derived, |
52 | * directly or indirectly, from Original Intel Code. |
52 | * directly or indirectly, from Original Intel Code. |
53 | * |
53 | * |
54 | * 3.2. Redistribution of Source with no Rights to Further Distribute Source. |
54 | * 3.2. Redistribution of Source with no Rights to Further Distribute Source. |
55 | * Redistribution of source code of any substantial portion of the Covered |
55 | * Redistribution of source code of any substantial portion of the Covered |
56 | * Code or modification without rights to further distribute source must |
56 | * Code or modification without rights to further distribute source must |
57 | * include the following Disclaimer and Export Compliance provision in the |
57 | * include the following Disclaimer and Export Compliance provision in the |
58 | * documentation and/or other materials provided with distribution. In |
58 | * documentation and/or other materials provided with distribution. In |
59 | * addition, Licensee may not authorize further sublicense of source of any |
59 | * addition, Licensee may not authorize further sublicense of source of any |
60 | * portion of the Covered Code, and must include terms to the effect that the |
60 | * portion of the Covered Code, and must include terms to the effect that the |
61 | * license from Licensee to its licensee is limited to the intellectual |
61 | * license from Licensee to its licensee is limited to the intellectual |
62 | * property embodied in the software Licensee provides to its licensee, and |
62 | * property embodied in the software Licensee provides to its licensee, and |
63 | * not to intellectual property embodied in modifications its licensee may |
63 | * not to intellectual property embodied in modifications its licensee may |
64 | * make. |
64 | * make. |
65 | * |
65 | * |
66 | * 3.3. Redistribution of Executable. Redistribution in executable form of any |
66 | * 3.3. Redistribution of Executable. Redistribution in executable form of any |
67 | * substantial portion of the Covered Code or modification must reproduce the |
67 | * substantial portion of the Covered Code or modification must reproduce the |
68 | * above Copyright Notice, and the following Disclaimer and Export Compliance |
68 | * above Copyright Notice, and the following Disclaimer and Export Compliance |
69 | * provision in the documentation and/or other materials provided with the |
69 | * provision in the documentation and/or other materials provided with the |
70 | * distribution. |
70 | * distribution. |
71 | * |
71 | * |
72 | * 3.4. Intel retains all right, title, and interest in and to the Original |
72 | * 3.4. Intel retains all right, title, and interest in and to the Original |
73 | * Intel Code. |
73 | * Intel Code. |
74 | * |
74 | * |
75 | * 3.5. Neither the name Intel nor any other trademark owned or controlled by |
75 | * 3.5. Neither the name Intel nor any other trademark owned or controlled by |
76 | * Intel shall be used in advertising or otherwise to promote the sale, use or |
76 | * Intel shall be used in advertising or otherwise to promote the sale, use or |
77 | * other dealings in products derived from or relating to the Covered Code |
77 | * other dealings in products derived from or relating to the Covered Code |
78 | * without prior written authorization from Intel. |
78 | * without prior written authorization from Intel. |
79 | * |
79 | * |
80 | * 4. Disclaimer and Export Compliance |
80 | * 4. Disclaimer and Export Compliance |
81 | * |
81 | * |
82 | * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED |
82 | * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED |
83 | * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE |
83 | * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE |
84 | * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE, |
84 | * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE, |
85 | * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY |
85 | * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY |
86 | * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY |
86 | * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY |
87 | * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A |
87 | * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A |
88 | * PARTICULAR PURPOSE. |
88 | * PARTICULAR PURPOSE. |
89 | * |
89 | * |
90 | * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES |
90 | * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES |
91 | * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR |
91 | * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR |
92 | * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT, |
92 | * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT, |
93 | * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY |
93 | * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY |
94 | * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL |
94 | * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL |
95 | * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS |
95 | * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS |
96 | * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY |
96 | * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY |
97 | * LIMITED REMEDY. |
97 | * LIMITED REMEDY. |
98 | * |
98 | * |
99 | * 4.3. Licensee shall not export, either directly or indirectly, any of this |
99 | * 4.3. Licensee shall not export, either directly or indirectly, any of this |
100 | * software or system incorporating such software without first obtaining any |
100 | * software or system incorporating such software without first obtaining any |
101 | * required license or other approval from the U. S. Department of Commerce or |
101 | * required license or other approval from the U. S. Department of Commerce or |
102 | * any other agency or department of the United States Government. In the |
102 | * any other agency or department of the United States Government. In the |
103 | * event Licensee exports any such software from the United States or |
103 | * event Licensee exports any such software from the United States or |
104 | * re-exports any such software from a foreign destination, Licensee shall |
104 | * re-exports any such software from a foreign destination, Licensee shall |
105 | * ensure that the distribution and export/re-export of the software is in |
105 | * ensure that the distribution and export/re-export of the software is in |
106 | * compliance with all laws, regulations, orders, or other restrictions of the |
106 | * compliance with all laws, regulations, orders, or other restrictions of the |
107 | * U.S. Export Administration Regulations. Licensee agrees that neither it nor |
107 | * U.S. Export Administration Regulations. Licensee agrees that neither it nor |
108 | * any of its subsidiaries will export/re-export any technical data, process, |
108 | * any of its subsidiaries will export/re-export any technical data, process, |
109 | * software, or service, directly or indirectly, to any country for which the |
109 | * software, or service, directly or indirectly, to any country for which the |
110 | * United States government or any agency thereof requires an export license, |
110 | * United States government or any agency thereof requires an export license, |
111 | * other governmental approval, or letter of assurance, without first obtaining |
111 | * other governmental approval, or letter of assurance, without first obtaining |
112 | * such license, approval or letter. |
112 | * such license, approval or letter. |
113 | * |
113 | * |
114 | *****************************************************************************/ |
114 | *****************************************************************************/ |
115 | 115 | ||
116 | #ifndef __ACGLOBAL_H__ |
116 | #ifndef __ACGLOBAL_H__ |
117 | #define __ACGLOBAL_H__ |
117 | #define __ACGLOBAL_H__ |
118 | 118 | ||
119 | 119 | ||
120 | /* |
120 | /* |
121 | * Ensure that the globals are actually defined and initialized only once. |
121 | * Ensure that the globals are actually defined and initialized only once. |
122 | * |
122 | * |
123 | * The use of these macros allows a single list of globals (here) in order |
123 | * The use of these macros allows a single list of globals (here) in order |
124 | * to simplify maintenance of the code. |
124 | * to simplify maintenance of the code. |
125 | */ |
125 | */ |
126 | #ifdef DEFINE_ACPI_GLOBALS |
126 | #ifdef DEFINE_ACPI_GLOBALS |
127 | #define ACPI_EXTERN |
127 | #define ACPI_EXTERN |
128 | #define ACPI_INIT_GLOBAL(a,b) a=b |
128 | #define ACPI_INIT_GLOBAL(a,b) a=b |
129 | #else |
129 | #else |
130 | #define ACPI_EXTERN extern |
130 | #define ACPI_EXTERN extern |
131 | #define ACPI_INIT_GLOBAL(a,b) a |
131 | #define ACPI_INIT_GLOBAL(a,b) a |
132 | #endif |
132 | #endif |
133 | 133 | ||
134 | 134 | ||
135 | #ifdef DEFINE_ACPI_GLOBALS |
135 | #ifdef DEFINE_ACPI_GLOBALS |
136 | 136 | ||
137 | /* Public globals, available from outside ACPICA subsystem */ |
137 | /* Public globals, available from outside ACPICA subsystem */ |
138 | 138 | ||
139 | /***************************************************************************** |
139 | /***************************************************************************** |
140 | * |
140 | * |
141 | * Runtime configuration (static defaults that can be overriden at runtime) |
141 | * Runtime configuration (static defaults that can be overriden at runtime) |
142 | * |
142 | * |
143 | ****************************************************************************/ |
143 | ****************************************************************************/ |
144 | 144 | ||
145 | /* |
145 | /* |
146 | * Enable "slack" in the AML interpreter? Default is FALSE, and the |
146 | * Enable "slack" in the AML interpreter? Default is FALSE, and the |
147 | * interpreter strictly follows the ACPI specification. Setting to TRUE |
147 | * interpreter strictly follows the ACPI specification. Setting to TRUE |
148 | * allows the interpreter to ignore certain errors and/or bad AML constructs. |
148 | * allows the interpreter to ignore certain errors and/or bad AML constructs. |
149 | * |
149 | * |
150 | * Currently, these features are enabled by this flag: |
150 | * Currently, these features are enabled by this flag: |
151 | * |
151 | * |
152 | * 1) Allow "implicit return" of last value in a control method |
152 | * 1) Allow "implicit return" of last value in a control method |
153 | * 2) Allow access beyond the end of an operation region |
153 | * 2) Allow access beyond the end of an operation region |
154 | * 3) Allow access to uninitialized locals/args (auto-init to integer 0) |
154 | * 3) Allow access to uninitialized locals/args (auto-init to integer 0) |
155 | * 4) Allow ANY object type to be a source operand for the Store() operator |
155 | * 4) Allow ANY object type to be a source operand for the Store() operator |
156 | * 5) Allow unresolved references (invalid target name) in package objects |
156 | * 5) Allow unresolved references (invalid target name) in package objects |
157 | * 6) Enable warning messages for behavior that is not ACPI spec compliant |
157 | * 6) Enable warning messages for behavior that is not ACPI spec compliant |
158 | */ |
158 | */ |
159 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_EnableInterpreterSlack, FALSE); |
159 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_EnableInterpreterSlack, FALSE); |
160 | 160 | ||
161 | /* |
161 | /* |
162 | * Automatically serialize ALL control methods? Default is FALSE, meaning |
162 | * Automatically serialize ALL control methods? Default is FALSE, meaning |
163 | * to use the Serialized/NotSerialized method flags on a per method basis. |
163 | * to use the Serialized/NotSerialized method flags on a per method basis. |
164 | * Only change this if the ASL code is poorly written and cannot handle |
164 | * Only change this if the ASL code is poorly written and cannot handle |
165 | * reentrancy even though methods are marked "NotSerialized". |
165 | * reentrancy even though methods are marked "NotSerialized". |
166 | */ |
166 | */ |
167 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_AllMethodsSerialized, FALSE); |
167 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_AllMethodsSerialized, FALSE); |
168 | 168 | ||
169 | /* |
169 | /* |
170 | * Create the predefined _OSI method in the namespace? Default is TRUE |
170 | * Create the predefined _OSI method in the namespace? Default is TRUE |
171 | * because ACPI CA is fully compatible with other ACPI implementations. |
171 | * because ACPI CA is fully compatible with other ACPI implementations. |
172 | * Changing this will revert ACPI CA (and machine ASL) to pre-OSI behavior. |
172 | * Changing this will revert ACPI CA (and machine ASL) to pre-OSI behavior. |
173 | */ |
173 | */ |
174 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_CreateOsiMethod, TRUE); |
174 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_CreateOsiMethod, TRUE); |
175 | 175 | ||
176 | /* |
176 | /* |
177 | * Disable wakeup GPEs during runtime? Default is TRUE because WAKE and |
- | |
178 | * RUNTIME GPEs should never be shared, and WAKE GPEs should typically only |
- | |
179 | * be enabled just before going to sleep. |
- | |
180 | */ |
- | |
181 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_LeaveWakeGpesDisabled, TRUE); |
- | |
182 | - | ||
183 | /* |
- | |
184 | * Optionally use default values for the ACPI register widths. Set this to |
177 | * Optionally use default values for the ACPI register widths. Set this to |
185 | * TRUE to use the defaults, if an FADT contains incorrect widths/lengths. |
178 | * TRUE to use the defaults, if an FADT contains incorrect widths/lengths. |
186 | */ |
179 | */ |
187 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_UseDefaultRegisterWidths, TRUE); |
180 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_UseDefaultRegisterWidths, TRUE); |
188 | 181 | ||
189 | /* |
182 | /* |
190 | * Optionally enable output from the AML Debug Object. |
183 | * Optionally enable output from the AML Debug Object. |
191 | */ |
184 | */ |
192 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_EnableAmlDebugObject, FALSE); |
185 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_EnableAmlDebugObject, FALSE); |
193 | 186 | ||
194 | /* |
187 | /* |
195 | * Optionally copy the entire DSDT to local memory (instead of simply |
188 | * Optionally copy the entire DSDT to local memory (instead of simply |
196 | * mapping it.) There are some BIOSs that corrupt or replace the original |
189 | * mapping it.) There are some BIOSs that corrupt or replace the original |
197 | * DSDT, creating the need for this option. Default is FALSE, do not copy |
190 | * DSDT, creating the need for this option. Default is FALSE, do not copy |
198 | * the DSDT. |
191 | * the DSDT. |
199 | */ |
192 | */ |
200 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_CopyDsdtLocally, FALSE); |
193 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_CopyDsdtLocally, FALSE); |
201 | 194 | ||
202 | /* |
195 | /* |
203 | * Optionally truncate I/O addresses to 16 bits. Provides compatibility |
196 | * Optionally truncate I/O addresses to 16 bits. Provides compatibility |
204 | * with other ACPI implementations. NOTE: During ACPICA initialization, |
197 | * with other ACPI implementations. NOTE: During ACPICA initialization, |
205 | * this value is set to TRUE if any Windows OSI strings have been |
198 | * this value is set to TRUE if any Windows OSI strings have been |
206 | * requested by the BIOS. |
199 | * requested by the BIOS. |
207 | */ |
200 | */ |
208 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_TruncateIoAddresses, FALSE); |
201 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_TruncateIoAddresses, FALSE); |
- | 202 | ||
- | 203 | /* |
|
- | 204 | * Disable runtime checking and repair of values returned by control methods. |
|
- | 205 | * Use only if the repair is causing a problem on a particular machine. |
|
- | 206 | */ |
|
- | 207 | UINT8 ACPI_INIT_GLOBAL (AcpiGbl_DisableAutoRepair, FALSE); |
|
209 | 208 | ||
210 | 209 | ||
211 | /* AcpiGbl_FADT is a local copy of the FADT, converted to a common format. */ |
210 | /* AcpiGbl_FADT is a local copy of the FADT, converted to a common format. */ |
212 | 211 | ||
213 | ACPI_TABLE_FADT AcpiGbl_FADT; |
212 | ACPI_TABLE_FADT AcpiGbl_FADT; |
214 | UINT32 AcpiCurrentGpeCount; |
213 | UINT32 AcpiCurrentGpeCount; |
215 | UINT32 AcpiGbl_TraceFlags; |
214 | UINT32 AcpiGbl_TraceFlags; |
216 | ACPI_NAME AcpiGbl_TraceMethodName; |
215 | ACPI_NAME AcpiGbl_TraceMethodName; |
- | 216 | BOOLEAN AcpiGbl_SystemAwakeAndRunning; |
|
217 | 217 | ||
218 | #endif |
218 | #endif |
219 | 219 | ||
220 | /***************************************************************************** |
220 | /***************************************************************************** |
221 | * |
221 | * |
222 | * ACPI Table globals |
222 | * ACPI Table globals |
223 | * |
223 | * |
224 | ****************************************************************************/ |
224 | ****************************************************************************/ |
225 | 225 | ||
226 | /* |
226 | /* |
227 | * AcpiGbl_RootTableList is the master list of ACPI tables that were |
227 | * AcpiGbl_RootTableList is the master list of ACPI tables that were |
228 | * found in the RSDT/XSDT. |
228 | * found in the RSDT/XSDT. |
229 | */ |
229 | */ |
230 | ACPI_EXTERN ACPI_TABLE_LIST AcpiGbl_RootTableList; |
230 | ACPI_EXTERN ACPI_TABLE_LIST AcpiGbl_RootTableList; |
231 | ACPI_EXTERN ACPI_TABLE_FACS *AcpiGbl_FACS; |
231 | ACPI_EXTERN ACPI_TABLE_FACS *AcpiGbl_FACS; |
232 | 232 | ||
233 | /* These addresses are calculated from the FADT Event Block addresses */ |
233 | /* These addresses are calculated from the FADT Event Block addresses */ |
234 | 234 | ||
235 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1aStatus; |
235 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1aStatus; |
236 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1aEnable; |
236 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1aEnable; |
237 | 237 | ||
238 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1bStatus; |
238 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1bStatus; |
239 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1bEnable; |
239 | ACPI_EXTERN ACPI_GENERIC_ADDRESS AcpiGbl_XPm1bEnable; |
240 | 240 | ||
241 | /* DSDT information. Used to check for DSDT corruption */ |
241 | /* DSDT information. Used to check for DSDT corruption */ |
242 | 242 | ||
243 | ACPI_EXTERN ACPI_TABLE_HEADER *AcpiGbl_DSDT; |
243 | ACPI_EXTERN ACPI_TABLE_HEADER *AcpiGbl_DSDT; |
244 | ACPI_EXTERN ACPI_TABLE_HEADER AcpiGbl_OriginalDsdtHeader; |
244 | ACPI_EXTERN ACPI_TABLE_HEADER AcpiGbl_OriginalDsdtHeader; |
245 | 245 | ||
246 | /* |
246 | /* |
247 | * Handle both ACPI 1.0 and ACPI 2.0 Integer widths. The integer width is |
247 | * Handle both ACPI 1.0 and ACPI 2.0 Integer widths. The integer width is |
248 | * determined by the revision of the DSDT: If the DSDT revision is less than |
248 | * determined by the revision of the DSDT: If the DSDT revision is less than |
249 | * 2, use only the lower 32 bits of the internal 64-bit Integer. |
249 | * 2, use only the lower 32 bits of the internal 64-bit Integer. |
250 | */ |
250 | */ |
251 | ACPI_EXTERN UINT8 AcpiGbl_IntegerBitWidth; |
251 | ACPI_EXTERN UINT8 AcpiGbl_IntegerBitWidth; |
252 | ACPI_EXTERN UINT8 AcpiGbl_IntegerByteWidth; |
252 | ACPI_EXTERN UINT8 AcpiGbl_IntegerByteWidth; |
253 | ACPI_EXTERN UINT8 AcpiGbl_IntegerNybbleWidth; |
253 | ACPI_EXTERN UINT8 AcpiGbl_IntegerNybbleWidth; |
254 | 254 | ||
255 | 255 | ||
256 | /***************************************************************************** |
256 | /***************************************************************************** |
257 | * |
257 | * |
258 | * Mutual exlusion within ACPICA subsystem |
258 | * Mutual exlusion within ACPICA subsystem |
259 | * |
259 | * |
260 | ****************************************************************************/ |
260 | ****************************************************************************/ |
261 | 261 | ||
262 | /* |
262 | /* |
263 | * Predefined mutex objects. This array contains the |
263 | * Predefined mutex objects. This array contains the |
264 | * actual OS mutex handles, indexed by the local ACPI_MUTEX_HANDLEs. |
264 | * actual OS mutex handles, indexed by the local ACPI_MUTEX_HANDLEs. |
265 | * (The table maps local handles to the real OS handles) |
265 | * (The table maps local handles to the real OS handles) |
266 | */ |
266 | */ |
267 | ACPI_EXTERN ACPI_MUTEX_INFO AcpiGbl_MutexInfo[ACPI_NUM_MUTEX]; |
267 | ACPI_EXTERN ACPI_MUTEX_INFO AcpiGbl_MutexInfo[ACPI_NUM_MUTEX]; |
268 | 268 | ||
269 | /* |
269 | /* |
270 | * Global lock mutex is an actual AML mutex object |
270 | * Global lock mutex is an actual AML mutex object |
271 | * Global lock semaphore works in conjunction with the HW global lock |
271 | * Global lock semaphore works in conjunction with the actual global lock |
- | 272 | * Global lock spinlock is used for "pending" handshake |
|
272 | */ |
273 | */ |
273 | ACPI_EXTERN ACPI_OPERAND_OBJECT *AcpiGbl_GlobalLockMutex; |
274 | ACPI_EXTERN ACPI_OPERAND_OBJECT *AcpiGbl_GlobalLockMutex; |
274 | ACPI_EXTERN ACPI_SEMAPHORE AcpiGbl_GlobalLockSemaphore; |
275 | ACPI_EXTERN ACPI_SEMAPHORE AcpiGbl_GlobalLockSemaphore; |
- | 276 | ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_GlobalLockPendingLock; |
|
275 | ACPI_EXTERN UINT16 AcpiGbl_GlobalLockHandle; |
277 | ACPI_EXTERN UINT16 AcpiGbl_GlobalLockHandle; |
276 | ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockAcquired; |
278 | ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockAcquired; |
277 | ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockPresent; |
279 | ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockPresent; |
- | 280 | ACPI_EXTERN BOOLEAN AcpiGbl_GlobalLockPending; |
|
278 | 281 | ||
279 | /* |
282 | /* |
280 | * Spinlocks are used for interfaces that can be possibly called at |
283 | * Spinlocks are used for interfaces that can be possibly called at |
281 | * interrupt level |
284 | * interrupt level |
282 | */ |
285 | */ |
283 | ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_GpeLock; /* For GPE data structs and registers */ |
286 | ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_GpeLock; /* For GPE data structs and registers */ |
284 | ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_HardwareLock; /* For ACPI H/W except GPE registers */ |
287 | ACPI_EXTERN ACPI_SPINLOCK AcpiGbl_HardwareLock; /* For ACPI H/W except GPE registers */ |
- | 288 | ||
- | 289 | /* Mutex for _OSI support */ |
|
- | 290 | ||
- | 291 | ACPI_EXTERN ACPI_MUTEX AcpiGbl_OsiMutex; |
|
285 | 292 | ||
286 | /* Reader/Writer lock is used for namespace walk and dynamic table unload */ |
293 | /* Reader/Writer lock is used for namespace walk and dynamic table unload */ |
287 | 294 | ||
288 | ACPI_EXTERN ACPI_RW_LOCK AcpiGbl_NamespaceRwLock; |
295 | ACPI_EXTERN ACPI_RW_LOCK AcpiGbl_NamespaceRwLock; |
289 | 296 | ||
290 | 297 | ||
291 | /***************************************************************************** |
298 | /***************************************************************************** |
292 | * |
299 | * |
293 | * Miscellaneous globals |
300 | * Miscellaneous globals |
294 | * |
301 | * |
295 | ****************************************************************************/ |
302 | ****************************************************************************/ |
296 | 303 | ||
297 | /* Object caches */ |
304 | /* Object caches */ |
298 | 305 | ||
299 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_NamespaceCache; |
306 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_NamespaceCache; |
300 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_StateCache; |
307 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_StateCache; |
301 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_PsNodeCache; |
308 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_PsNodeCache; |
302 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_PsNodeExtCache; |
309 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_PsNodeExtCache; |
303 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_OperandCache; |
310 | ACPI_EXTERN ACPI_CACHE_T *AcpiGbl_OperandCache; |
304 | 311 | ||
305 | /* Global handlers */ |
312 | /* Global handlers */ |
306 | 313 | ||
307 | ACPI_EXTERN ACPI_OBJECT_NOTIFY_HANDLER AcpiGbl_DeviceNotify; |
314 | ACPI_EXTERN ACPI_OBJECT_NOTIFY_HANDLER AcpiGbl_DeviceNotify; |
308 | ACPI_EXTERN ACPI_OBJECT_NOTIFY_HANDLER AcpiGbl_SystemNotify; |
315 | ACPI_EXTERN ACPI_OBJECT_NOTIFY_HANDLER AcpiGbl_SystemNotify; |
309 | ACPI_EXTERN ACPI_EXCEPTION_HANDLER AcpiGbl_ExceptionHandler; |
316 | ACPI_EXTERN ACPI_EXCEPTION_HANDLER AcpiGbl_ExceptionHandler; |
310 | ACPI_EXTERN ACPI_INIT_HANDLER AcpiGbl_InitHandler; |
317 | ACPI_EXTERN ACPI_INIT_HANDLER AcpiGbl_InitHandler; |
311 | ACPI_EXTERN ACPI_TABLE_HANDLER AcpiGbl_TableHandler; |
318 | ACPI_EXTERN ACPI_TABLE_HANDLER AcpiGbl_TableHandler; |
312 | ACPI_EXTERN void *AcpiGbl_TableHandlerContext; |
319 | ACPI_EXTERN void *AcpiGbl_TableHandlerContext; |
313 | ACPI_EXTERN ACPI_WALK_STATE *AcpiGbl_BreakpointWalk; |
320 | ACPI_EXTERN ACPI_WALK_STATE *AcpiGbl_BreakpointWalk; |
314 | - | ||
- | 321 | ACPI_EXTERN ACPI_INTERFACE_HANDLER AcpiGbl_InterfaceHandler; |
|
315 | 322 | ||
316 | /* Owner ID support */ |
323 | /* Owner ID support */ |
317 | 324 | ||
318 | ACPI_EXTERN UINT32 AcpiGbl_OwnerIdMask[ACPI_NUM_OWNERID_MASKS]; |
325 | ACPI_EXTERN UINT32 AcpiGbl_OwnerIdMask[ACPI_NUM_OWNERID_MASKS]; |
319 | ACPI_EXTERN UINT8 AcpiGbl_LastOwnerIdIndex; |
326 | ACPI_EXTERN UINT8 AcpiGbl_LastOwnerIdIndex; |
320 | ACPI_EXTERN UINT8 AcpiGbl_NextOwnerIdOffset; |
327 | ACPI_EXTERN UINT8 AcpiGbl_NextOwnerIdOffset; |
- | 328 | ||
- | 329 | /* Initialization sequencing */ |
|
- | 330 | ||
- | 331 | ACPI_EXTERN BOOLEAN AcpiGbl_RegMethodsExecuted; |
|
321 | 332 | ||
322 | /* Misc */ |
333 | /* Misc */ |
323 | 334 | ||
324 | ACPI_EXTERN UINT32 AcpiGbl_OriginalMode; |
335 | ACPI_EXTERN UINT32 AcpiGbl_OriginalMode; |
325 | ACPI_EXTERN UINT32 AcpiGbl_RsdpOriginalLocation; |
336 | ACPI_EXTERN UINT32 AcpiGbl_RsdpOriginalLocation; |
326 | ACPI_EXTERN UINT32 AcpiGbl_NsLookupCount; |
337 | ACPI_EXTERN UINT32 AcpiGbl_NsLookupCount; |
327 | ACPI_EXTERN UINT32 AcpiGbl_PsFindCount; |
338 | ACPI_EXTERN UINT32 AcpiGbl_PsFindCount; |
328 | ACPI_EXTERN UINT16 AcpiGbl_Pm1EnableRegisterSave; |
339 | ACPI_EXTERN UINT16 AcpiGbl_Pm1EnableRegisterSave; |
329 | ACPI_EXTERN UINT8 AcpiGbl_DebuggerConfiguration; |
340 | ACPI_EXTERN UINT8 AcpiGbl_DebuggerConfiguration; |
330 | ACPI_EXTERN BOOLEAN AcpiGbl_StepToNextCall; |
341 | ACPI_EXTERN BOOLEAN AcpiGbl_StepToNextCall; |
331 | ACPI_EXTERN BOOLEAN AcpiGbl_AcpiHardwarePresent; |
342 | ACPI_EXTERN BOOLEAN AcpiGbl_AcpiHardwarePresent; |
332 | ACPI_EXTERN BOOLEAN AcpiGbl_EventsInitialized; |
343 | ACPI_EXTERN BOOLEAN AcpiGbl_EventsInitialized; |
333 | ACPI_EXTERN BOOLEAN AcpiGbl_SystemAwakeAndRunning; |
- | |
334 | ACPI_EXTERN UINT8 AcpiGbl_OsiData; |
344 | ACPI_EXTERN UINT8 AcpiGbl_OsiData; |
- | 345 | ACPI_EXTERN ACPI_INTERFACE_INFO *AcpiGbl_SupportedInterfaces; |
|
335 | 346 | ||
336 | 347 | ||
337 | #ifndef DEFINE_ACPI_GLOBALS |
348 | #ifndef DEFINE_ACPI_GLOBALS |
338 | 349 | ||
339 | /* Exception codes */ |
350 | /* Exception codes */ |
340 | 351 | ||
341 | extern char const *AcpiGbl_ExceptionNames_Env[]; |
352 | extern char const *AcpiGbl_ExceptionNames_Env[]; |
342 | extern char const *AcpiGbl_ExceptionNames_Pgm[]; |
353 | extern char const *AcpiGbl_ExceptionNames_Pgm[]; |
343 | extern char const *AcpiGbl_ExceptionNames_Tbl[]; |
354 | extern char const *AcpiGbl_ExceptionNames_Tbl[]; |
344 | extern char const *AcpiGbl_ExceptionNames_Aml[]; |
355 | extern char const *AcpiGbl_ExceptionNames_Aml[]; |
345 | extern char const *AcpiGbl_ExceptionNames_Ctrl[]; |
356 | extern char const *AcpiGbl_ExceptionNames_Ctrl[]; |
346 | 357 | ||
347 | /* Other miscellaneous */ |
358 | /* Other miscellaneous */ |
348 | 359 | ||
349 | extern BOOLEAN AcpiGbl_Shutdown; |
360 | extern BOOLEAN AcpiGbl_Shutdown; |
350 | extern UINT32 AcpiGbl_StartupFlags; |
361 | extern UINT32 AcpiGbl_StartupFlags; |
351 | extern const char *AcpiGbl_SleepStateNames[ACPI_S_STATE_COUNT]; |
362 | extern const char *AcpiGbl_SleepStateNames[ACPI_S_STATE_COUNT]; |
352 | extern const char *AcpiGbl_LowestDstateNames[ACPI_NUM_SxW_METHODS]; |
363 | extern const char *AcpiGbl_LowestDstateNames[ACPI_NUM_SxW_METHODS]; |
353 | extern const char *AcpiGbl_HighestDstateNames[ACPI_NUM_SxD_METHODS]; |
364 | extern const char *AcpiGbl_HighestDstateNames[ACPI_NUM_SxD_METHODS]; |
354 | extern const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES]; |
365 | extern const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES]; |
355 | extern const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS]; |
366 | extern const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS]; |
356 | #endif |
367 | #endif |
357 | 368 | ||
358 | 369 | ||
359 | #ifdef ACPI_DBG_TRACK_ALLOCATIONS |
370 | #ifdef ACPI_DBG_TRACK_ALLOCATIONS |
360 | 371 | ||
361 | /* Lists for tracking memory allocations */ |
372 | /* Lists for tracking memory allocations */ |
362 | 373 | ||
363 | ACPI_EXTERN ACPI_MEMORY_LIST *AcpiGbl_GlobalList; |
374 | ACPI_EXTERN ACPI_MEMORY_LIST *AcpiGbl_GlobalList; |
364 | ACPI_EXTERN ACPI_MEMORY_LIST *AcpiGbl_NsNodeList; |
375 | ACPI_EXTERN ACPI_MEMORY_LIST *AcpiGbl_NsNodeList; |
365 | ACPI_EXTERN BOOLEAN AcpiGbl_DisplayFinalMemStats; |
376 | ACPI_EXTERN BOOLEAN AcpiGbl_DisplayFinalMemStats; |
366 | ACPI_EXTERN BOOLEAN AcpiGbl_DisableMemTracking; |
377 | ACPI_EXTERN BOOLEAN AcpiGbl_DisableMemTracking; |
367 | #endif |
378 | #endif |
368 | 379 | ||
369 | 380 | ||
370 | /***************************************************************************** |
381 | /***************************************************************************** |
371 | * |
382 | * |
372 | * Namespace globals |
383 | * Namespace globals |
373 | * |
384 | * |
374 | ****************************************************************************/ |
385 | ****************************************************************************/ |
375 | 386 | ||
376 | #if !defined (ACPI_NO_METHOD_EXECUTION) || defined (ACPI_CONSTANT_EVAL_ONLY) |
387 | #if !defined (ACPI_NO_METHOD_EXECUTION) || defined (ACPI_CONSTANT_EVAL_ONLY) |
377 | #define NUM_PREDEFINED_NAMES 10 |
388 | #define NUM_PREDEFINED_NAMES 10 |
378 | #else |
389 | #else |
379 | #define NUM_PREDEFINED_NAMES 9 |
390 | #define NUM_PREDEFINED_NAMES 9 |
380 | #endif |
391 | #endif |
381 | 392 | ||
382 | ACPI_EXTERN ACPI_NAMESPACE_NODE AcpiGbl_RootNodeStruct; |
393 | ACPI_EXTERN ACPI_NAMESPACE_NODE AcpiGbl_RootNodeStruct; |
383 | ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_RootNode; |
394 | ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_RootNode; |
384 | ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_FadtGpeDevice; |
395 | ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_FadtGpeDevice; |
385 | ACPI_EXTERN ACPI_OPERAND_OBJECT *AcpiGbl_ModuleCodeList; |
396 | ACPI_EXTERN ACPI_OPERAND_OBJECT *AcpiGbl_ModuleCodeList; |
386 | 397 | ||
387 | 398 | ||
388 | extern const UINT8 AcpiGbl_NsProperties [ACPI_NUM_NS_TYPES]; |
399 | extern const UINT8 AcpiGbl_NsProperties [ACPI_NUM_NS_TYPES]; |
389 | extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES]; |
400 | extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES]; |
390 | 401 | ||
391 | #ifdef ACPI_DEBUG_OUTPUT |
402 | #ifdef ACPI_DEBUG_OUTPUT |
392 | ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeCount; |
403 | ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeCount; |
393 | ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeSize; |
404 | ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeSize; |
394 | ACPI_EXTERN UINT32 AcpiGbl_MaxConcurrentNodeCount; |
405 | ACPI_EXTERN UINT32 AcpiGbl_MaxConcurrentNodeCount; |
395 | ACPI_EXTERN ACPI_SIZE *AcpiGbl_EntryStackPointer; |
406 | ACPI_EXTERN ACPI_SIZE *AcpiGbl_EntryStackPointer; |
396 | ACPI_EXTERN ACPI_SIZE *AcpiGbl_LowestStackPointer; |
407 | ACPI_EXTERN ACPI_SIZE *AcpiGbl_LowestStackPointer; |
397 | ACPI_EXTERN UINT32 AcpiGbl_DeepestNesting; |
408 | ACPI_EXTERN UINT32 AcpiGbl_DeepestNesting; |
398 | #endif |
409 | #endif |
399 | 410 | ||
400 | 411 | ||
401 | /***************************************************************************** |
412 | /***************************************************************************** |
402 | * |
413 | * |
403 | * Interpreter globals |
414 | * Interpreter globals |
404 | * |
415 | * |
405 | ****************************************************************************/ |
416 | ****************************************************************************/ |
406 | 417 | ||
407 | 418 | ||
408 | ACPI_EXTERN ACPI_THREAD_STATE *AcpiGbl_CurrentWalkList; |
419 | ACPI_EXTERN ACPI_THREAD_STATE *AcpiGbl_CurrentWalkList; |
409 | 420 | ||
410 | /* Control method single step flag */ |
421 | /* Control method single step flag */ |
411 | 422 | ||
412 | ACPI_EXTERN UINT8 AcpiGbl_CmSingleStep; |
423 | ACPI_EXTERN UINT8 AcpiGbl_CmSingleStep; |
413 | 424 | ||
414 | 425 | ||
415 | /***************************************************************************** |
426 | /***************************************************************************** |
416 | * |
427 | * |
417 | * Hardware globals |
428 | * Hardware globals |
418 | * |
429 | * |
419 | ****************************************************************************/ |
430 | ****************************************************************************/ |
420 | 431 | ||
421 | extern ACPI_BIT_REGISTER_INFO AcpiGbl_BitRegisterInfo[ACPI_NUM_BITREG]; |
432 | extern ACPI_BIT_REGISTER_INFO AcpiGbl_BitRegisterInfo[ACPI_NUM_BITREG]; |
422 | ACPI_EXTERN UINT8 AcpiGbl_SleepTypeA; |
433 | ACPI_EXTERN UINT8 AcpiGbl_SleepTypeA; |
423 | ACPI_EXTERN UINT8 AcpiGbl_SleepTypeB; |
434 | ACPI_EXTERN UINT8 AcpiGbl_SleepTypeB; |
424 | 435 | ||
425 | 436 | ||
426 | /***************************************************************************** |
437 | /***************************************************************************** |
427 | * |
438 | * |
428 | * Event and GPE globals |
439 | * Event and GPE globals |
429 | * |
440 | * |
430 | ****************************************************************************/ |
441 | ****************************************************************************/ |
431 | - | ||
432 | extern ACPI_FIXED_EVENT_INFO AcpiGbl_FixedEventInfo[ACPI_NUM_FIXED_EVENTS]; |
442 | |
433 | ACPI_EXTERN ACPI_FIXED_EVENT_HANDLER AcpiGbl_FixedEventHandlers[ACPI_NUM_FIXED_EVENTS]; |
443 | ACPI_EXTERN UINT8 AcpiGbl_AllGpesInitialized; |
434 | ACPI_EXTERN ACPI_GPE_XRUPT_INFO *AcpiGbl_GpeXruptListHead; |
444 | ACPI_EXTERN ACPI_GPE_XRUPT_INFO *AcpiGbl_GpeXruptListHead; |
- | 445 | ACPI_EXTERN ACPI_GPE_BLOCK_INFO *AcpiGbl_GpeFadtBlocks[ACPI_MAX_GPE_BLOCKS]; |
|
- | 446 | ACPI_EXTERN ACPI_GBL_EVENT_HANDLER AcpiGbl_GlobalEventHandler; |
|
- | 447 | ACPI_EXTERN void *AcpiGbl_GlobalEventHandlerContext; |
|
- | 448 | ACPI_EXTERN ACPI_FIXED_EVENT_HANDLER AcpiGbl_FixedEventHandlers[ACPI_NUM_FIXED_EVENTS]; |
|
435 | ACPI_EXTERN ACPI_GPE_BLOCK_INFO *AcpiGbl_GpeFadtBlocks[ACPI_MAX_GPE_BLOCKS]; |
449 | extern ACPI_FIXED_EVENT_INFO AcpiGbl_FixedEventInfo[ACPI_NUM_FIXED_EVENTS]; |
436 | 450 | ||
437 | 451 | ||
438 | /***************************************************************************** |
452 | /***************************************************************************** |
439 | * |
453 | * |
440 | * Debug support |
454 | * Debug support |
441 | * |
455 | * |
442 | ****************************************************************************/ |
456 | ****************************************************************************/ |
443 | 457 | ||
444 | /* Procedure nesting level for debug output */ |
458 | /* Procedure nesting level for debug output */ |
445 | 459 | ||
446 | extern UINT32 AcpiGbl_NestingLevel; |
460 | extern UINT32 AcpiGbl_NestingLevel; |
447 | 461 | ||
448 | /* Event counters */ |
462 | /* Event counters */ |
449 | 463 | ||
450 | ACPI_EXTERN UINT32 AcpiMethodCount; |
464 | ACPI_EXTERN UINT32 AcpiMethodCount; |
451 | ACPI_EXTERN UINT32 AcpiGpeCount; |
465 | ACPI_EXTERN UINT32 AcpiGpeCount; |
452 | ACPI_EXTERN UINT32 AcpiSciCount; |
466 | ACPI_EXTERN UINT32 AcpiSciCount; |
453 | ACPI_EXTERN UINT32 AcpiFixedEventCount[ACPI_NUM_FIXED_EVENTS]; |
467 | ACPI_EXTERN UINT32 AcpiFixedEventCount[ACPI_NUM_FIXED_EVENTS]; |
454 | 468 | ||
455 | /* Support for dynamic control method tracing mechanism */ |
469 | /* Support for dynamic control method tracing mechanism */ |
456 | 470 | ||
457 | ACPI_EXTERN UINT32 AcpiGbl_OriginalDbgLevel; |
471 | ACPI_EXTERN UINT32 AcpiGbl_OriginalDbgLevel; |
458 | ACPI_EXTERN UINT32 AcpiGbl_OriginalDbgLayer; |
472 | ACPI_EXTERN UINT32 AcpiGbl_OriginalDbgLayer; |
459 | ACPI_EXTERN UINT32 AcpiGbl_TraceDbgLevel; |
473 | ACPI_EXTERN UINT32 AcpiGbl_TraceDbgLevel; |
460 | ACPI_EXTERN UINT32 AcpiGbl_TraceDbgLayer; |
474 | ACPI_EXTERN UINT32 AcpiGbl_TraceDbgLayer; |
461 | 475 | ||
462 | 476 | ||
463 | /***************************************************************************** |
477 | /***************************************************************************** |
464 | * |
478 | * |
465 | * Debugger globals |
479 | * Debugger globals |
466 | * |
480 | * |
467 | ****************************************************************************/ |
481 | ****************************************************************************/ |
468 | 482 | ||
469 | ACPI_EXTERN UINT8 AcpiGbl_DbOutputFlags; |
483 | ACPI_EXTERN UINT8 AcpiGbl_DbOutputFlags; |
470 | 484 | ||
471 | #ifdef ACPI_DISASSEMBLER |
485 | #ifdef ACPI_DISASSEMBLER |
472 | 486 | ||
473 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_disasm; |
487 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_disasm; |
474 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_verbose; |
488 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_verbose; |
475 | ACPI_EXTERN ACPI_EXTERNAL_LIST *AcpiGbl_ExternalList; |
489 | ACPI_EXTERN ACPI_EXTERNAL_LIST *AcpiGbl_ExternalList; |
- | 490 | ACPI_EXTERN ACPI_EXTERNAL_FILE *AcpiGbl_ExternalFileList; |
|
476 | #endif |
491 | #endif |
477 | 492 | ||
478 | 493 | ||
479 | #ifdef ACPI_DEBUGGER |
494 | #ifdef ACPI_DEBUGGER |
480 | 495 | ||
481 | extern BOOLEAN AcpiGbl_MethodExecuting; |
496 | extern BOOLEAN AcpiGbl_MethodExecuting; |
482 | extern BOOLEAN AcpiGbl_AbortMethod; |
497 | extern BOOLEAN AcpiGbl_AbortMethod; |
483 | extern BOOLEAN AcpiGbl_DbTerminateThreads; |
498 | extern BOOLEAN AcpiGbl_DbTerminateThreads; |
484 | 499 | ||
485 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_tables; |
500 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_tables; |
486 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_stats; |
501 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_stats; |
487 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_ini_methods; |
502 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_ini_methods; |
488 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_NoRegionSupport; |
503 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_NoRegionSupport; |
489 | 504 | ||
490 | ACPI_EXTERN char *AcpiGbl_DbArgs[ACPI_DEBUGGER_MAX_ARGS]; |
505 | ACPI_EXTERN char *AcpiGbl_DbArgs[ACPI_DEBUGGER_MAX_ARGS]; |
- | 506 | ACPI_EXTERN ACPI_OBJECT_TYPE AcpiGbl_DbArgTypes[ACPI_DEBUGGER_MAX_ARGS]; |
|
491 | ACPI_EXTERN char AcpiGbl_DbLineBuf[80]; |
507 | ACPI_EXTERN char AcpiGbl_DbLineBuf[ACPI_DB_LINE_BUFFER_SIZE]; |
492 | ACPI_EXTERN char AcpiGbl_DbParsedBuf[80]; |
508 | ACPI_EXTERN char AcpiGbl_DbParsedBuf[ACPI_DB_LINE_BUFFER_SIZE]; |
493 | ACPI_EXTERN char AcpiGbl_DbScopeBuf[40]; |
509 | ACPI_EXTERN char AcpiGbl_DbScopeBuf[80]; |
494 | ACPI_EXTERN char AcpiGbl_DbDebugFilename[40]; |
510 | ACPI_EXTERN char AcpiGbl_DbDebugFilename[80]; |
495 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOutputToFile; |
511 | ACPI_EXTERN BOOLEAN AcpiGbl_DbOutputToFile; |
496 | ACPI_EXTERN char *AcpiGbl_DbBuffer; |
512 | ACPI_EXTERN char *AcpiGbl_DbBuffer; |
497 | ACPI_EXTERN char *AcpiGbl_DbFilename; |
513 | ACPI_EXTERN char *AcpiGbl_DbFilename; |
498 | ACPI_EXTERN UINT32 AcpiGbl_DbDebugLevel; |
514 | ACPI_EXTERN UINT32 AcpiGbl_DbDebugLevel; |
499 | ACPI_EXTERN UINT32 AcpiGbl_DbConsoleDebugLevel; |
515 | ACPI_EXTERN UINT32 AcpiGbl_DbConsoleDebugLevel; |
500 | ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_DbScopeNode; |
516 | ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_DbScopeNode; |
501 | 517 | ||
502 | /* |
518 | /* |
503 | * Statistic globals |
519 | * Statistic globals |
504 | */ |
520 | */ |
505 | ACPI_EXTERN UINT16 AcpiGbl_ObjTypeCount[ACPI_TYPE_NS_NODE_MAX+1]; |
521 | ACPI_EXTERN UINT16 AcpiGbl_ObjTypeCount[ACPI_TYPE_NS_NODE_MAX+1]; |
506 | ACPI_EXTERN UINT16 AcpiGbl_NodeTypeCount[ACPI_TYPE_NS_NODE_MAX+1]; |
522 | ACPI_EXTERN UINT16 AcpiGbl_NodeTypeCount[ACPI_TYPE_NS_NODE_MAX+1]; |
507 | ACPI_EXTERN UINT16 AcpiGbl_ObjTypeCountMisc; |
523 | ACPI_EXTERN UINT16 AcpiGbl_ObjTypeCountMisc; |
508 | ACPI_EXTERN UINT16 AcpiGbl_NodeTypeCountMisc; |
524 | ACPI_EXTERN UINT16 AcpiGbl_NodeTypeCountMisc; |
509 | ACPI_EXTERN UINT32 AcpiGbl_NumNodes; |
525 | ACPI_EXTERN UINT32 AcpiGbl_NumNodes; |
510 | ACPI_EXTERN UINT32 AcpiGbl_NumObjects; |
526 | ACPI_EXTERN UINT32 AcpiGbl_NumObjects; |
511 | 527 | ||
512 | 528 | ||
513 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfParseTree; |
529 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfParseTree; |
514 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfMethodTrees; |
530 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfMethodTrees; |
515 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfNodeEntries; |
531 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfNodeEntries; |
516 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfAcpiObjects; |
532 | ACPI_EXTERN UINT32 AcpiGbl_SizeOfAcpiObjects; |
517 | 533 | ||
518 | #endif /* ACPI_DEBUGGER */ |
534 | #endif /* ACPI_DEBUGGER */ |
519 | 535 | ||
520 | #endif /* __ACGLOBAL_H__ */ |
536 | #endif /* __ACGLOBAL_H__ */ |