Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /****************************************************************************** |
2 | * | |
3 | * Name: acconfig.h - Global configuration constants | |
4 | * | |
5 | *****************************************************************************/ | |
6 | ||
7 | /* | |
6c9deb72 | 8 | * Copyright (C) 2000 - 2007, R. Byron Moore |
1da177e4 LT |
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 | ||
1da177e4 LT |
47 | /****************************************************************************** |
48 | * | |
49 | * Configuration options | |
50 | * | |
51 | *****************************************************************************/ | |
52 | ||
53 | /* | |
54 | * ACPI_DEBUG_OUTPUT - This switch enables all the debug facilities of the | |
55 | * ACPI subsystem. This includes the DEBUG_PRINT output | |
56 | * statements. When disabled, all DEBUG_PRINT | |
57 | * statements are compiled out. | |
58 | * | |
59 | * ACPI_APPLICATION - Use this switch if the subsystem is going to be run | |
60 | * at the application level. | |
61 | * | |
62 | */ | |
63 | ||
bda663d3 | 64 | /* Current ACPICA subsystem version in YYYYMMDD format */ |
1da177e4 | 65 | |
5763d3c7 | 66 | #define ACPI_CA_VERSION 0x20070126 |
1da177e4 LT |
67 | |
68 | /* | |
69 | * OS name, used for the _OS object. The _OS object is essentially obsolete, | |
70 | * but there is a large base of ASL/AML code in existing machines that check | |
71 | * for the string below. The use of this string usually guarantees that | |
72 | * the ASL will execute down the most tested code path. Also, there is some | |
73 | * code that will not execute the _OSI method unless _OS matches the string | |
74 | * below. Therefore, change this string at your own risk. | |
75 | */ | |
76 | #define ACPI_OS_NAME "Microsoft Windows NT" | |
77 | ||
78 | /* Maximum objects in the various object caches */ | |
79 | ||
4be44fcd LB |
80 | #define ACPI_MAX_STATE_CACHE_DEPTH 96 /* State objects */ |
81 | #define ACPI_MAX_PARSE_CACHE_DEPTH 96 /* Parse tree objects */ | |
82 | #define ACPI_MAX_EXTPARSE_CACHE_DEPTH 96 /* Parse tree objects */ | |
83 | #define ACPI_MAX_OBJECT_CACHE_DEPTH 96 /* Interpreter operand objects */ | |
61686124 | 84 | #define ACPI_MAX_NAMESPACE_CACHE_DEPTH 96 /* Namespace objects */ |
1da177e4 LT |
85 | |
86 | /* | |
b8e4d893 | 87 | * Should the subsystem abort the loading of an ACPI table if the |
1da177e4 LT |
88 | * table checksum is incorrect? |
89 | */ | |
90 | #define ACPI_CHECKSUM_ABORT FALSE | |
91 | ||
1da177e4 LT |
92 | /****************************************************************************** |
93 | * | |
94 | * Subsystem Constants | |
95 | * | |
96 | *****************************************************************************/ | |
97 | ||
98 | /* Version of ACPI supported */ | |
99 | ||
100 | #define ACPI_CA_SUPPORT_LEVEL 3 | |
101 | ||
1da177e4 LT |
102 | /* Maximum count for a semaphore object */ |
103 | ||
104 | #define ACPI_MAX_SEMAPHORE_COUNT 256 | |
105 | ||
8313524a | 106 | /* Maximum object reference count (detects object deletion issues) */ |
1da177e4 | 107 | |
9a654b52 | 108 | #define ACPI_MAX_REFERENCE_COUNT 0x1000 |
1da177e4 LT |
109 | |
110 | /* Size of cached memory mapping for system memory operation region */ | |
111 | ||
112 | #define ACPI_SYSMEM_REGION_WINDOW_SIZE 4096 | |
113 | ||
28f55ebc BM |
114 | /* owner_id tracking. 8 entries allows for 255 owner_ids */ |
115 | ||
116 | #define ACPI_NUM_OWNERID_MASKS 8 | |
117 | ||
f3d2e786 BM |
118 | /* Size of the root table array is increased by this increment */ |
119 | ||
120 | #define ACPI_ROOT_TABLE_SIZE_INCREMENT 4 | |
121 | ||
1da177e4 LT |
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 | ||
44f6c012 RM |
133 | /* Method info (in WALK_STATE), containing local variables and argumetns */ |
134 | ||
1da177e4 LT |
135 | #define ACPI_METHOD_NUM_LOCALS 8 |
136 | #define ACPI_METHOD_MAX_LOCAL 7 | |
137 | ||
138 | #define ACPI_METHOD_NUM_ARGS 7 | |
139 | #define ACPI_METHOD_MAX_ARG 6 | |
140 | ||
c51a4de8 | 141 | /* Length of _HID, _UID, _CID, and UUID values */ |
1da177e4 LT |
142 | |
143 | #define ACPI_DEVICE_ID_LENGTH 0x09 | |
144 | #define ACPI_MAX_CID_LENGTH 48 | |
c51a4de8 | 145 | #define ACPI_UUID_LENGTH 16 |
1da177e4 LT |
146 | |
147 | /* | |
148 | * Operand Stack (in WALK_STATE), Must be large enough to contain METHOD_MAX_ARG | |
149 | */ | |
150 | #define ACPI_OBJ_NUM_OPERANDS 8 | |
151 | #define ACPI_OBJ_MAX_OPERAND 7 | |
152 | ||
153 | /* Names within the namespace are 4 bytes long */ | |
154 | ||
155 | #define ACPI_NAME_SIZE 4 | |
4be44fcd | 156 | #define ACPI_PATH_SEGMENT_LENGTH 5 /* 4 chars for name + 1 char for separator */ |
1da177e4 LT |
157 | #define ACPI_PATH_SEPARATOR '.' |
158 | ||
f3d2e786 BM |
159 | /* Sizes for ACPI table headers */ |
160 | ||
0eaa14c0 BM |
161 | #define ACPI_OEM_ID_SIZE 6 |
162 | #define ACPI_OEM_TABLE_ID_SIZE 8 | |
f3d2e786 | 163 | |
1da177e4 LT |
164 | /* Constants used in searching for the RSDP in low memory */ |
165 | ||
4be44fcd | 166 | #define ACPI_EBDA_PTR_LOCATION 0x0000040E /* Physical Address */ |
1da177e4 LT |
167 | #define ACPI_EBDA_PTR_LENGTH 2 |
168 | #define ACPI_EBDA_WINDOW_SIZE 1024 | |
4be44fcd | 169 | #define ACPI_HI_RSDP_WINDOW_BASE 0x000E0000 /* Physical Address */ |
1da177e4 LT |
170 | #define ACPI_HI_RSDP_WINDOW_SIZE 0x00020000 |
171 | #define ACPI_RSDP_SCAN_STEP 16 | |
172 | ||
173 | /* Operation regions */ | |
174 | ||
175 | #define ACPI_NUM_PREDEFINED_REGIONS 8 | |
176 | #define ACPI_USER_REGION_BEGIN 0x80 | |
177 | ||
178 | /* Maximum space_ids for Operation Regions */ | |
179 | ||
180 | #define ACPI_MAX_ADDRESS_SPACE 255 | |
181 | ||
182 | /* Array sizes. Used for range checking also */ | |
183 | ||
4c90ece2 | 184 | #define ACPI_MAX_MATCH_OPCODE 5 |
1da177e4 LT |
185 | |
186 | /* RSDP checksums */ | |
187 | ||
188 | #define ACPI_RSDP_CHECKSUM_LENGTH 20 | |
189 | #define ACPI_RSDP_XCHECKSUM_LENGTH 36 | |
190 | ||
191 | /* SMBus bidirectional buffer size */ | |
192 | ||
193 | #define ACPI_SMBUS_BUFFER_SIZE 34 | |
194 | ||
1da177e4 LT |
195 | /****************************************************************************** |
196 | * | |
197 | * ACPI AML Debugger | |
198 | * | |
199 | *****************************************************************************/ | |
200 | ||
4be44fcd | 201 | #define ACPI_DEBUGGER_MAX_ARGS 8 /* Must be max method args + 1 */ |
1da177e4 LT |
202 | |
203 | #define ACPI_DEBUGGER_COMMAND_PROMPT '-' | |
204 | #define ACPI_DEBUGGER_EXECUTE_PROMPT '%' | |
205 | ||
4be44fcd | 206 | #endif /* _ACCONFIG_H */ |