1 | /****************************************************************************** |
---|
2 | * |
---|
3 | * Name: acconfig.h - Global configuration constants |
---|
4 | * |
---|
5 | *****************************************************************************/ |
---|
6 | |
---|
7 | /* |
---|
8 | * Copyright (C) 2000 - 2005, R. Byron Moore |
---|
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 _ACCONFIG_H |
---|
45 | #define _ACCONFIG_H |
---|
46 | |
---|
47 | |
---|
48 | /****************************************************************************** |
---|
49 | * |
---|
50 | * Configuration options |
---|
51 | * |
---|
52 | *****************************************************************************/ |
---|
53 | |
---|
54 | /* |
---|
55 | * ACPI_DEBUG_OUTPUT - This switch enables all the debug facilities of the |
---|
56 | * ACPI subsystem. This includes the DEBUG_PRINT output |
---|
57 | * statements. When disabled, all DEBUG_PRINT |
---|
58 | * statements are compiled out. |
---|
59 | * |
---|
60 | * ACPI_APPLICATION - Use this switch if the subsystem is going to be run |
---|
61 | * at the application level. |
---|
62 | * |
---|
63 | */ |
---|
64 | |
---|
65 | /* Version string */ |
---|
66 | |
---|
67 | #define ACPI_CA_VERSION 0x20050211 |
---|
68 | |
---|
69 | /* |
---|
70 | * OS name, used for the _OS object. The _OS object is essentially obsolete, |
---|
71 | * but there is a large base of ASL/AML code in existing machines that check |
---|
72 | * for the string below. The use of this string usually guarantees that |
---|
73 | * the ASL will execute down the most tested code path. Also, there is some |
---|
74 | * code that will not execute the _OSI method unless _OS matches the string |
---|
75 | * below. Therefore, change this string at your own risk. |
---|
76 | */ |
---|
77 | #define ACPI_OS_NAME "Microsoft Windows NT" |
---|
78 | |
---|
79 | /* Maximum objects in the various object caches */ |
---|
80 | |
---|
81 | #define ACPI_MAX_STATE_CACHE_DEPTH 64 /* State objects */ |
---|
82 | #define ACPI_MAX_PARSE_CACHE_DEPTH 96 /* Parse tree objects */ |
---|
83 | #define ACPI_MAX_EXTPARSE_CACHE_DEPTH 64 /* Parse tree objects */ |
---|
84 | #define ACPI_MAX_OBJECT_CACHE_DEPTH 64 /* Interpreter operand objects */ |
---|
85 | #define ACPI_MAX_WALK_CACHE_DEPTH 4 /* Objects for parse tree walks */ |
---|
86 | |
---|
87 | /* |
---|
88 | * Should the subystem abort the loading of an ACPI table if the |
---|
89 | * table checksum is incorrect? |
---|
90 | */ |
---|
91 | #define ACPI_CHECKSUM_ABORT FALSE |
---|
92 | |
---|
93 | |
---|
94 | /****************************************************************************** |
---|
95 | * |
---|
96 | * Subsystem Constants |
---|
97 | * |
---|
98 | *****************************************************************************/ |
---|
99 | |
---|
100 | /* Version of ACPI supported */ |
---|
101 | |
---|
102 | #define ACPI_CA_SUPPORT_LEVEL 3 |
---|
103 | |
---|
104 | /* String size constants */ |
---|
105 | |
---|
106 | #define ACPI_MAX_STRING_LENGTH 512 |
---|
107 | #define ACPI_PATHNAME_MAX 256 /* A full namespace pathname */ |
---|
108 | |
---|
109 | /* Maximum count for a semaphore object */ |
---|
110 | |
---|
111 | #define ACPI_MAX_SEMAPHORE_COUNT 256 |
---|
112 | |
---|
113 | /* Max reference count (for debug only) */ |
---|
114 | |
---|
115 | #define ACPI_MAX_REFERENCE_COUNT 0x400 |
---|
116 | |
---|
117 | /* Size of cached memory mapping for system memory operation region */ |
---|
118 | |
---|
119 | #define ACPI_SYSMEM_REGION_WINDOW_SIZE 4096 |
---|
120 | |
---|
121 | |
---|
122 | /****************************************************************************** |
---|
123 | * |
---|
124 | * ACPI Specification constants (Do not change unless the specification changes) |
---|
125 | * |
---|
126 | *****************************************************************************/ |
---|
127 | |
---|
128 | /* Number of distinct GPE register blocks and register width */ |
---|
129 | |
---|
130 | #define ACPI_MAX_GPE_BLOCKS 2 |
---|
131 | #define ACPI_GPE_REGISTER_WIDTH 8 |
---|
132 | |
---|
133 | /* |
---|
134 | * Method info (in WALK_STATE), containing local variables and argumetns |
---|
135 | */ |
---|
136 | #define ACPI_METHOD_NUM_LOCALS 8 |
---|
137 | #define ACPI_METHOD_MAX_LOCAL 7 |
---|
138 | |
---|
139 | #define ACPI_METHOD_NUM_ARGS 7 |
---|
140 | #define ACPI_METHOD_MAX_ARG 6 |
---|
141 | |
---|
142 | /* Maximum length of resulting string when converting from a buffer */ |
---|
143 | |
---|
144 | #define ACPI_MAX_STRING_CONVERSION 200 |
---|
145 | |
---|
146 | /* Length of _HID, _UID, and _CID values */ |
---|
147 | |
---|
148 | #define ACPI_DEVICE_ID_LENGTH 0x09 |
---|
149 | #define ACPI_MAX_CID_LENGTH 48 |
---|
150 | |
---|
151 | /* |
---|
152 | * Operand Stack (in WALK_STATE), Must be large enough to contain METHOD_MAX_ARG |
---|
153 | */ |
---|
154 | #define ACPI_OBJ_NUM_OPERANDS 8 |
---|
155 | #define ACPI_OBJ_MAX_OPERAND 7 |
---|
156 | |
---|
157 | /* Names within the namespace are 4 bytes long */ |
---|
158 | |
---|
159 | #define ACPI_NAME_SIZE 4 |
---|
160 | #define ACPI_PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 char for separator */ |
---|
161 | #define ACPI_PATH_SEPARATOR '.' |
---|
162 | |
---|
163 | /* Constants used in searching for the RSDP in low memory */ |
---|
164 | |
---|
165 | #define ACPI_EBDA_PTR_LOCATION 0x0000040E /* Physical Address */ |
---|
166 | #define ACPI_EBDA_PTR_LENGTH 2 |
---|
167 | #define ACPI_EBDA_WINDOW_SIZE 1024 |
---|
168 | #define ACPI_HI_RSDP_WINDOW_BASE 0x000E0000 /* Physical Address */ |
---|
169 | #define ACPI_HI_RSDP_WINDOW_SIZE 0x00020000 |
---|
170 | #define ACPI_RSDP_SCAN_STEP 16 |
---|
171 | |
---|
172 | /* Operation regions */ |
---|
173 | |
---|
174 | #define ACPI_NUM_PREDEFINED_REGIONS 8 |
---|
175 | #define ACPI_USER_REGION_BEGIN 0x80 |
---|
176 | |
---|
177 | /* Maximum space_ids for Operation Regions */ |
---|
178 | |
---|
179 | #define ACPI_MAX_ADDRESS_SPACE 255 |
---|
180 | |
---|
181 | /* Array sizes. Used for range checking also */ |
---|
182 | |
---|
183 | #define ACPI_NUM_ACCESS_TYPES 6 |
---|
184 | #define ACPI_NUM_UPDATE_RULES 3 |
---|
185 | #define ACPI_NUM_LOCK_RULES 2 |
---|
186 | #define ACPI_NUM_MATCH_OPS 6 |
---|
187 | #define ACPI_NUM_OPCODES 256 |
---|
188 | #define ACPI_NUM_FIELD_NAMES 2 |
---|
189 | |
---|
190 | /* RSDP checksums */ |
---|
191 | |
---|
192 | #define ACPI_RSDP_CHECKSUM_LENGTH 20 |
---|
193 | #define ACPI_RSDP_XCHECKSUM_LENGTH 36 |
---|
194 | |
---|
195 | /* SMBus bidirectional buffer size */ |
---|
196 | |
---|
197 | #define ACPI_SMBUS_BUFFER_SIZE 34 |
---|
198 | |
---|
199 | /* Number of strings associated with the _OSI reserved method */ |
---|
200 | |
---|
201 | #define ACPI_NUM_OSI_STRINGS 9 |
---|
202 | |
---|
203 | |
---|
204 | /****************************************************************************** |
---|
205 | * |
---|
206 | * ACPI AML Debugger |
---|
207 | * |
---|
208 | *****************************************************************************/ |
---|
209 | |
---|
210 | #define ACPI_DEBUGGER_MAX_ARGS 8 /* Must be max method args + 1 */ |
---|
211 | |
---|
212 | #define ACPI_DEBUGGER_COMMAND_PROMPT '-' |
---|
213 | #define ACPI_DEBUGGER_EXECUTE_PROMPT '%' |
---|
214 | |
---|
215 | |
---|
216 | #endif /* _ACCONFIG_H */ |
---|
217 | |
---|