astable.c revision 1.1.1.4 1 /******************************************************************************
2 *
3 * Module Name: astable - Tables used for source conversion
4 *
5 *****************************************************************************/
6
7 /*
8 * Copyright (C) 2000 - 2014, 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 #include "acpisrc.h"
45 #include "acapps.h"
46
47
48 /******************************************************************************
49 *
50 * Standard/Common translation tables
51 *
52 ******************************************************************************/
53
54
55 ACPI_STRING_TABLE StandardDataTypes[] = {
56
57 /* Declarations first */
58
59 {"UINT32 ", "unsigned int", REPLACE_SUBSTRINGS},
60 {"UINT16 ", "unsigned short", REPLACE_SUBSTRINGS},
61 {"UINT8 ", "unsigned char", REPLACE_SUBSTRINGS},
62 {"BOOLEAN ", "unsigned char", REPLACE_SUBSTRINGS},
63
64 /* Now do embedded typecasts */
65
66 {"UINT32", "unsigned int", REPLACE_SUBSTRINGS},
67 {"UINT16", "unsigned short", REPLACE_SUBSTRINGS},
68 {"UINT8", "unsigned char", REPLACE_SUBSTRINGS},
69 {"BOOLEAN", "unsigned char", REPLACE_SUBSTRINGS},
70
71 {"INT32 ", "int ", REPLACE_SUBSTRINGS},
72 {"INT32", "int", REPLACE_SUBSTRINGS},
73 {"INT16", "short", REPLACE_SUBSTRINGS},
74 {"INT8", "char", REPLACE_SUBSTRINGS},
75
76 /* Put back anything we broke (such as anything with _INT32_ in it) */
77
78 {"_int_", "_INT32_", REPLACE_SUBSTRINGS},
79 {"_unsigned int_", "_UINT32_", REPLACE_SUBSTRINGS},
80 {NULL, NULL, 0}
81 };
82
83
84 /******************************************************************************
85 *
86 * Linux-specific translation tables
87 *
88 ******************************************************************************/
89
90 char DualLicenseHeader[] =
91 "/*\n"
92 " * Copyright (C) 2000 - 2014, Intel Corp.\n"
93 " * All rights reserved.\n"
94 " *\n"
95 " * Redistribution and use in source and binary forms, with or without\n"
96 " * modification, are permitted provided that the following conditions\n"
97 " * are met:\n"
98 " * 1. Redistributions of source code must retain the above copyright\n"
99 " * notice, this list of conditions, and the following disclaimer,\n"
100 " * without modification.\n"
101 " * 2. Redistributions in binary form must reproduce at minimum a disclaimer\n"
102 " * substantially similar to the \"NO WARRANTY\" disclaimer below\n"
103 " * (\"Disclaimer\") and any redistribution must be conditioned upon\n"
104 " * including a substantially similar Disclaimer requirement for further\n"
105 " * binary redistribution.\n"
106 " * 3. Neither the names of the above-listed copyright holders nor the names\n"
107 " * of any contributors may be used to endorse or promote products derived\n"
108 " * from this software without specific prior written permission.\n"
109 " *\n"
110 " * Alternatively, this software may be distributed under the terms of the\n"
111 " * GNU General Public License (\"GPL\") version 2 as published by the Free\n"
112 " * Software Foundation.\n"
113 " *\n"
114 " * NO WARRANTY\n"
115 " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n"
116 " * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n"
117 " * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR\n"
118 " * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n"
119 " * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n"
120 " * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\n"
121 " * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\n"
122 " * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,\n"
123 " * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING\n"
124 " * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n"
125 " * POSSIBILITY OF SUCH DAMAGES.\n"
126 " */\n";
127
128 ACPI_STRING_TABLE LinuxDataTypes[] = {
129
130 /*
131 * Extra space is added after the type so there is room to add "struct", "union",
132 * etc. when the existing struct typedefs are eliminated.
133 */
134
135 /* Declarations first - ACPI types and standard C types */
136
137 {"INT64 ", "s64 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
138 {"UINT64 ", "u64 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
139 {"UINT32 ", "u32 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
140 {"INT32 ", "s32 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
141 {"UINT16 ", "u16 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
142 {"INT16 ", "s16 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
143 {"UINT8 ", "u8 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
144 {"BOOLEAN ", "u8 ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
145 {"char ", "char ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
146 {"void ", "void ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
147 {"char * ", "char * ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
148 {"void * ", "void * ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
149 {"int ", "int ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
150 {"FILE ", "FILE ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
151 {"size_t ", "size_t ", REPLACE_WHOLE_WORD | EXTRA_INDENT_C},
152
153 /* Now do embedded typecasts */
154
155 {"UINT64", "u64", REPLACE_WHOLE_WORD},
156 {"UINT32", "u32", REPLACE_WHOLE_WORD},
157 {"UINT16", "u16", REPLACE_WHOLE_WORD},
158 {"UINT8", "u8", REPLACE_WHOLE_WORD},
159 {"BOOLEAN", "u8", REPLACE_WHOLE_WORD},
160
161 {"INT64 ", "s64 ", REPLACE_WHOLE_WORD},
162 {"INT64", "s64", REPLACE_WHOLE_WORD},
163 {"INT32 ", "s32 ", REPLACE_WHOLE_WORD},
164 {"INT32", "s32", REPLACE_WHOLE_WORD},
165 {"INT16 ", "s16 ", REPLACE_WHOLE_WORD},
166 {"INT8 ", "s8 ", REPLACE_WHOLE_WORD},
167 {"INT16", "s16", REPLACE_WHOLE_WORD},
168 {"INT8", "s8", REPLACE_WHOLE_WORD},
169
170 {NULL, NULL, 0}
171 };
172
173 ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
174
175 {"ACPI_ADDRESS_RANGE", SRC_TYPE_STRUCT},
176 {"ACPI_ADR_SPACE_HANDLER", SRC_TYPE_SIMPLE},
177 {"ACPI_ADR_SPACE_SETUP", SRC_TYPE_SIMPLE},
178 {"ACPI_ADR_SPACE_TYPE", SRC_TYPE_SIMPLE},
179 {"ACPI_AML_OPERANDS", SRC_TYPE_UNION},
180 {"ACPI_BIT_REGISTER_INFO", SRC_TYPE_STRUCT},
181 {"ACPI_BUFFER", SRC_TYPE_STRUCT},
182 {"ACPI_BUS_ATTRIBUTE", SRC_TYPE_STRUCT},
183 {"ACPI_CACHE_T", SRC_TYPE_SIMPLE},
184 {"ACPI_CMTABLE_HANDLER", SRC_TYPE_SIMPLE},
185 {"ACPI_COMMON_FACS", SRC_TYPE_STRUCT},
186 {"ACPI_COMMON_STATE", SRC_TYPE_STRUCT},
187 {"ACPI_COMMON_DESCRIPTOR", SRC_TYPE_STRUCT},
188 {"ACPI_COMPATIBLE_ID", SRC_TYPE_STRUCT},
189 {"ACPI_CONNECTION_INFO", SRC_TYPE_STRUCT},
190 {"ACPI_CONTROL_STATE", SRC_TYPE_STRUCT},
191 {"ACPI_CONVERSION_TABLE", SRC_TYPE_STRUCT},
192 {"ACPI_CPU_FLAGS", SRC_TYPE_SIMPLE},
193 {"ACPI_CREATE_FIELD_INFO", SRC_TYPE_STRUCT},
194 {"ACPI_DB_ARGUMENT_INFO", SRC_TYPE_STRUCT},
195 {"ACPI_DB_COMMAND_HELP", SRC_TYPE_STRUCT},
196 {"ACPI_DB_COMMAND_INFO", SRC_TYPE_STRUCT},
197 {"ACPI_DB_EXECUTE_WALK", SRC_TYPE_STRUCT},
198 {"ACPI_DB_METHOD_INFO", SRC_TYPE_STRUCT},
199 {"ACPI_DEBUG_MEM_BLOCK", SRC_TYPE_STRUCT},
200 {"ACPI_DEBUG_MEM_HEADER", SRC_TYPE_STRUCT},
201 {"ACPI_DEBUG_PRINT_INFO", SRC_TYPE_STRUCT},
202 {"ACPI_DESCRIPTOR", SRC_TYPE_UNION},
203 {"ACPI_DEVICE_INFO", SRC_TYPE_STRUCT},
204 {"ACPI_DEVICE_WALK_INFO", SRC_TYPE_STRUCT},
205 {"ACPI_DMTABLE_DATA", SRC_TYPE_STRUCT},
206 {"ACPI_DMTABLE_INFO", SRC_TYPE_STRUCT},
207 {"ACPI_DMTABLE_HANDLER", SRC_TYPE_SIMPLE},
208 {"ACPI_EVALUATE_INFO", SRC_TYPE_STRUCT},
209 {"ACPI_EVENT_HANDLER", SRC_TYPE_SIMPLE},
210 {"ACPI_EVENT_STATUS", SRC_TYPE_SIMPLE},
211 {"ACPI_EVENT_TYPE", SRC_TYPE_SIMPLE},
212 {"ACPI_EXCEPTION_HANDLER", SRC_TYPE_SIMPLE},
213 {"ACPI_EXCEPTION_INFO", SRC_TYPE_STRUCT},
214 {"ACPI_EXDUMP_INFO", SRC_TYPE_STRUCT},
215 {"ACPI_EXECUTE_OP", SRC_TYPE_SIMPLE},
216 {"ACPI_EXECUTE_TYPE", SRC_TYPE_SIMPLE},
217 {"ACPI_EXTERNAL_LIST", SRC_TYPE_STRUCT},
218 {"ACPI_EXTERNAL_FILE", SRC_TYPE_STRUCT},
219 {"ACPI_FADT_INFO", SRC_TYPE_STRUCT},
220 {"ACPI_FADT_PM_INFO", SRC_TYPE_STRUCT},
221 {"ACPI_FIELD_INFO", SRC_TYPE_STRUCT},
222 {"ACPI_FIND_CONTEXT", SRC_TYPE_STRUCT},
223 {"ACPI_FIXED_EVENT_HANDLER", SRC_TYPE_STRUCT},
224 {"ACPI_FIXED_EVENT_INFO", SRC_TYPE_STRUCT},
225 {"ACPI_GBL_EVENT_HANDLER", SRC_TYPE_SIMPLE},
226 {"ACPI_GENERIC_ADDRESS", SRC_TYPE_STRUCT},
227 {"ACPI_GENERIC_STATE", SRC_TYPE_UNION},
228 {"ACPI_GET_DEVICES_INFO", SRC_TYPE_STRUCT},
229 {"ACPI_GLOBAL_NOTIFY_HANDLER", SRC_TYPE_STRUCT},
230 {"ACPI_GPE_BLOCK_INFO", SRC_TYPE_STRUCT},
231 {"ACPI_GPE_CALLBACK", SRC_TYPE_SIMPLE},
232 {"ACPI_GPE_DEVICE_INFO", SRC_TYPE_STRUCT},
233 {"ACPI_GPE_EVENT_INFO", SRC_TYPE_STRUCT},
234 {"ACPI_GPE_HANDLER", SRC_TYPE_SIMPLE},
235 {"ACPI_GPE_HANDLER_INFO", SRC_TYPE_STRUCT},
236 {"ACPI_GPE_INDEX_INFO", SRC_TYPE_STRUCT},
237 {"ACPI_GPE_NOTIFY_INFO", SRC_TYPE_STRUCT},
238 {"ACPI_GPE_REGISTER_INFO", SRC_TYPE_STRUCT},
239 {"ACPI_GPE_WALK_INFO", SRC_TYPE_STRUCT},
240 {"ACPI_GPE_XRUPT_INFO", SRC_TYPE_STRUCT},
241 {"ACPI_GPIO_INFO", SRC_TYPE_STRUCT},
242 {"ACPI_HANDLE", SRC_TYPE_SIMPLE},
243 {"ACPI_HANDLER_INFO", SRC_TYPE_STRUCT},
244 {"ACPI_INIT_HANDLER", SRC_TYPE_SIMPLE},
245 {"ACPI_INTERFACE_HANDLER", SRC_TYPE_SIMPLE},
246 {"ACPI_IDENTIFIER_TABLE", SRC_TYPE_STRUCT},
247 {"ACPI_INIT_WALK_INFO", SRC_TYPE_STRUCT},
248 {"ACPI_INTEGER", SRC_TYPE_SIMPLE},
249 {"ACPI_INTEGER_OVERLAY", SRC_TYPE_STRUCT},
250 {"ACPI_INTEGRITY_INFO", SRC_TYPE_STRUCT},
251 {"ACPI_INTERFACE_INFO", SRC_TYPE_STRUCT},
252 {"ACPI_INTERNAL_METHOD", SRC_TYPE_SIMPLE},
253 {"ACPI_INTERPRETER_MODE", SRC_TYPE_SIMPLE},
254 {"ACPI_IO_ADDRESS", SRC_TYPE_SIMPLE},
255 {"ACPI_IO_ATTRIBUTE", SRC_TYPE_STRUCT},
256 {"ACPI_LPIT_HEADER", SRC_TYPE_STRUCT},
257 {"ACPI_LPIT_IO", SRC_TYPE_STRUCT},
258 {"ACPI_LPIT_NATIVE", SRC_TYPE_STRUCT},
259 {"ACPI_MEM_SPACE_CONTEXT", SRC_TYPE_STRUCT},
260 {"ACPI_MEMORY_ATTRIBUTE", SRC_TYPE_STRUCT},
261 {"ACPI_MEMORY_LIST", SRC_TYPE_STRUCT},
262 {"ACPI_MTMR_ENTRY", SRC_TYPE_STRUCT},
263 {"ACPI_MUTEX", SRC_TYPE_SIMPLE},
264 {"ACPI_MUTEX_HANDLE", SRC_TYPE_SIMPLE},
265 {"ACPI_MUTEX_INFO", SRC_TYPE_STRUCT},
266 {"ACPI_NAME", SRC_TYPE_SIMPLE},
267 {"ACPI_NAME_INFO", SRC_TYPE_STRUCT},
268 {"ACPI_NAME_UNION", SRC_TYPE_UNION},
269 {"ACPI_NAMESPACE_NODE", SRC_TYPE_STRUCT},
270 {"ACPI_NAMESTRING_INFO", SRC_TYPE_STRUCT},
271 {"ACPI_NATIVE_INT", SRC_TYPE_SIMPLE},
272 {"ACPI_NATIVE_UINT", SRC_TYPE_SIMPLE},
273 {"ACPI_NOTIFY_HANDLER", SRC_TYPE_SIMPLE},
274 {"ACPI_NOTIFY_INFO", SRC_TYPE_STRUCT},
275 {"ACPI_NS_SEARCH_DATA", SRC_TYPE_STRUCT},
276 {"ACPI_OBJ_INFO_HEADER", SRC_TYPE_STRUCT},
277 {"ACPI_OBJECT", SRC_TYPE_UNION},
278 {"ACPI_OBJECT_ADDR_HANDLER", SRC_TYPE_STRUCT},
279 {"ACPI_OBJECT_BANK_FIELD", SRC_TYPE_STRUCT},
280 {"ACPI_OBJECT_BUFFER", SRC_TYPE_STRUCT},
281 {"ACPI_OBJECT_BUFFER_FIELD", SRC_TYPE_STRUCT},
282 {"ACPI_OBJECT_CACHE_LIST", SRC_TYPE_STRUCT},
283 {"ACPI_OBJECT_COMMON", SRC_TYPE_STRUCT},
284 {"ACPI_OBJECT_CONVERTER", SRC_TYPE_SIMPLE},
285 {"ACPI_OBJECT_DATA", SRC_TYPE_STRUCT},
286 {"ACPI_OBJECT_DEVICE", SRC_TYPE_STRUCT},
287 {"ACPI_OBJECT_EVENT", SRC_TYPE_STRUCT},
288 {"ACPI_OBJECT_EXTRA", SRC_TYPE_STRUCT},
289 {"ACPI_OBJECT_FIELD_COMMON", SRC_TYPE_STRUCT},
290 {"ACPI_OBJECT_HANDLER", SRC_TYPE_SIMPLE},
291 {"ACPI_OBJECT_INDEX_FIELD", SRC_TYPE_STRUCT},
292 {"ACPI_OBJECT_INTEGER", SRC_TYPE_STRUCT},
293 {"ACPI_OBJECT_LIST", SRC_TYPE_STRUCT},
294 {"ACPI_OBJECT_METHOD", SRC_TYPE_STRUCT},
295 {"ACPI_OBJECT_MUTEX", SRC_TYPE_STRUCT},
296 {"ACPI_OBJECT_NOTIFY_COMMON", SRC_TYPE_STRUCT},
297 {"ACPI_OBJECT_NOTIFY_HANDLER", SRC_TYPE_STRUCT},
298 {"ACPI_OBJECT_PACKAGE", SRC_TYPE_STRUCT},
299 {"ACPI_OBJECT_POWER_RESOURCE", SRC_TYPE_STRUCT},
300 {"ACPI_OBJECT_PROCESSOR", SRC_TYPE_STRUCT},
301 {"ACPI_OBJECT_REFERENCE", SRC_TYPE_STRUCT},
302 {"ACPI_OBJECT_REGION", SRC_TYPE_STRUCT},
303 {"ACPI_OBJECT_REGION_FIELD", SRC_TYPE_STRUCT},
304 {"ACPI_OBJECT_STRING", SRC_TYPE_STRUCT},
305 {"ACPI_OBJECT_THERMAL_ZONE", SRC_TYPE_STRUCT},
306 {"ACPI_OBJECT_TYPE", SRC_TYPE_SIMPLE},
307 {"ACPI_OBJECT_TYPE8", SRC_TYPE_SIMPLE},
308 {"ACPI_OP_WALK_INFO", SRC_TYPE_STRUCT},
309 {"ACPI_OPCODE_INFO", SRC_TYPE_STRUCT},
310 {"ACPI_OPERAND_OBJECT", SRC_TYPE_UNION},
311 {"ACPI_OSD_HANDLER", SRC_TYPE_SIMPLE},
312 {"ACPI_OSD_EXEC_CALLBACK", SRC_TYPE_SIMPLE},
313 {"ACPI_OWNER_ID", SRC_TYPE_SIMPLE},
314 {"ACPI_PACKAGE_INFO", SRC_TYPE_STRUCT},
315 {"ACPI_PACKAGE_INFO2", SRC_TYPE_STRUCT},
316 {"ACPI_PACKAGE_INFO3", SRC_TYPE_STRUCT},
317 {"ACPI_PARSE_DOWNWARDS", SRC_TYPE_SIMPLE},
318 {"ACPI_PARSE_OBJ_ASL", SRC_TYPE_STRUCT},
319 {"ACPI_PARSE_OBJ_COMMON", SRC_TYPE_STRUCT},
320 {"ACPI_PARSE_OBJ_NAMED", SRC_TYPE_STRUCT},
321 {"ACPI_PARSE_OBJECT", SRC_TYPE_UNION},
322 {"ACPI_PARSE_STATE", SRC_TYPE_STRUCT},
323 {"ACPI_PARSE_UPWARDS", SRC_TYPE_SIMPLE},
324 {"ACPI_PARSE_VALUE", SRC_TYPE_UNION},
325 {"ACPI_PCI_DEVICE", SRC_TYPE_STRUCT},
326 {"ACPI_PCI_ID", SRC_TYPE_STRUCT},
327 {"ACPI_PCI_ROUTING_TABLE", SRC_TYPE_STRUCT},
328 {"ACPI_PHYSICAL_ADDRESS", SRC_TYPE_SIMPLE},
329 {"ACPI_PKG_CALLBACK", SRC_TYPE_SIMPLE},
330 {"ACPI_PKG_INFO", SRC_TYPE_STRUCT},
331 {"ACPI_PKG_STATE", SRC_TYPE_STRUCT},
332 {"ACPI_PMTT_HEADER", SRC_TYPE_STRUCT},
333 {"ACPI_PNP_DEVICE_ID", SRC_TYPE_STRUCT},
334 {"ACPI_PNP_DEVICE_ID_LIST", SRC_TYPE_STRUCT},
335 {"ACPI_POINTER", SRC_TYPE_STRUCT},
336 {"ACPI_POINTERS", SRC_TYPE_UNION},
337 {"ACPI_PORT_INFO", SRC_TYPE_STRUCT},
338 {"ACPI_PREDEFINED_DATA", SRC_TYPE_STRUCT},
339 {"ACPI_PREDEFINED_INFO", SRC_TYPE_UNION},
340 {"ACPI_PREDEFINED_NAMES", SRC_TYPE_STRUCT},
341 {"ACPI_PSCOPE_STATE", SRC_TYPE_STRUCT},
342 {"ACPI_RASF_PARAMETER_BLOCK", SRC_TYPE_STRUCT},
343 {"ACPI_RASF_PATROL_SCRUB_PARAMETER", SRC_TYPE_STRUCT},
344 {"ACPI_RASF_SHARED_MEMORY", SRC_TYPE_STRUCT},
345 {"ACPI_REPAIR_FUNCTION", SRC_TYPE_SIMPLE},
346 {"ACPI_REPAIR_INFO", SRC_TYPE_STRUCT},
347 {"ACPI_RESOURCE", SRC_TYPE_STRUCT},
348 {"ACPI_RESOURCE_HANDLER", SRC_TYPE_SIMPLE},
349 {"ACPI_RESOURCE_ADDRESS", SRC_TYPE_STRUCT},
350 {"ACPI_RESOURCE_ADDRESS16", SRC_TYPE_STRUCT},
351 {"ACPI_RESOURCE_ADDRESS32", SRC_TYPE_STRUCT},
352 {"ACPI_RESOURCE_ADDRESS64", SRC_TYPE_STRUCT},
353 {"ACPI_RESOURCE_COMMON_SERIALBUS", SRC_TYPE_STRUCT},
354 {"ACPI_RESOURCE_EXTENDED_ADDRESS64", SRC_TYPE_STRUCT},
355 {"ACPI_RESOURCE_ATTRIBUTE", SRC_TYPE_UNION},
356 {"ACPI_RESOURCE_DATA", SRC_TYPE_UNION},
357 {"ACPI_RESOURCE_DMA", SRC_TYPE_STRUCT},
358 {"ACPI_RESOURCE_END_TAG", SRC_TYPE_STRUCT},
359 {"ACPI_RESOURCE_EXTENDED_IRQ", SRC_TYPE_STRUCT},
360 {"ACPI_RESOURCE_FIXED_DMA", SRC_TYPE_STRUCT},
361 {"ACPI_RESOURCE_FIXED_IO", SRC_TYPE_STRUCT},
362 {"ACPI_RESOURCE_FIXED_MEMORY32", SRC_TYPE_STRUCT},
363 {"ACPI_RESOURCE_GENERIC_REGISTER", SRC_TYPE_STRUCT},
364 {"ACPI_RESOURCE_GPIO", SRC_TYPE_STRUCT},
365 {"ACPI_RESOURCE_I2C_SERIALBUS", SRC_TYPE_STRUCT},
366 {"ACPI_RESOURCE_INFO", SRC_TYPE_STRUCT},
367 {"ACPI_RESOURCE_IO", SRC_TYPE_STRUCT},
368 {"ACPI_RESOURCE_IRQ", SRC_TYPE_STRUCT},
369 {"ACPI_RESOURCE_MEMORY24", SRC_TYPE_STRUCT},
370 {"ACPI_RESOURCE_MEMORY32", SRC_TYPE_STRUCT},
371 {"ACPI_RESOURCE_SOURCE", SRC_TYPE_STRUCT},
372 {"ACPI_RESOURCE_SPI_SERIALBUS", SRC_TYPE_STRUCT},
373 {"ACPI_RESOURCE_START_DEPENDENT", SRC_TYPE_STRUCT},
374 {"ACPI_RESOURCE_TAG", SRC_TYPE_STRUCT},
375 {"ACPI_RESOURCE_TYPE", SRC_TYPE_SIMPLE},
376 {"ACPI_RESOURCE_UART_SERIALBUS", SRC_TYPE_STRUCT},
377 {"ACPI_RESOURCE_VENDOR", SRC_TYPE_STRUCT},
378 {"ACPI_RESOURCE_VENDOR_TYPED", SRC_TYPE_STRUCT},
379 {"ACPI_RESULT_VALUES", SRC_TYPE_STRUCT},
380 {"ACPI_ROUND_UP_TO_32_BIT", SRC_TYPE_SIMPLE},
381 {"ACPI_RSCONVERT_INFO", SRC_TYPE_STRUCT},
382 {"ACPI_RSDUMP_INFO", SRC_TYPE_STRUCT},
383 {"ACPI_RW_LOCK", SRC_TYPE_STRUCT},
384 {"ACPI_S3PT_HEADER", SRC_TYPE_STRUCT},
385 {"ACPI_SCI_HANDLER", SRC_TYPE_SIMPLE},
386 {"ACPI_SCI_HANDLER_INFO", SRC_TYPE_STRUCT},
387 {"ACPI_SCOPE_STATE", SRC_TYPE_STRUCT},
388 {"ACPI_SEMAPHORE", SRC_TYPE_SIMPLE},
389 {"ACPI_SERIAL_INFO", SRC_TYPE_STRUCT},
390 {"ACPI_SIGNAL_FATAL_INFO", SRC_TYPE_STRUCT},
391 {"ACPI_SIMPLE_REPAIR_INFO", SRC_TYPE_STRUCT},
392 {"ACPI_SIZE", SRC_TYPE_SIMPLE},
393 {"ACPI_SLEEP_FUNCTION", SRC_TYPE_SIMPLE},
394 {"ACPI_SLEEP_FUNCTIONS", SRC_TYPE_STRUCT},
395 {"ACPI_SPINLOCK", SRC_TYPE_SIMPLE},
396 {"ACPI_STATISTICS", SRC_TYPE_STRUCT},
397 {"ACPI_STATUS", SRC_TYPE_SIMPLE},
398 {"ACPI_STRING", SRC_TYPE_SIMPLE},
399 {"ACPI_STRING_TABLE", SRC_TYPE_STRUCT},
400 {"ACPI_SUBTABLE_HEADER", SRC_TYPE_STRUCT},
401 {"ACPI_SYSTEM_INFO", SRC_TYPE_STRUCT},
402 {"ACPI_TABLE_DESC", SRC_TYPE_STRUCT},
403 {"ACPI_TABLE_HANDLER", SRC_TYPE_SIMPLE},
404 {"ACPI_TABLE_HEADER", SRC_TYPE_STRUCT},
405 {"ACPI_TABLE_INFO", SRC_TYPE_STRUCT},
406 {"ACPI_TABLE_LIST", SRC_TYPE_STRUCT},
407 {"ACPI_TABLE_LPIT", SRC_TYPE_STRUCT},
408 {"ACPI_TABLE_MTMR", SRC_TYPE_STRUCT},
409 {"ACPI_TABLE_SUPPORT", SRC_TYPE_STRUCT},
410 {"ACPI_TABLE_TYPE", SRC_TYPE_SIMPLE},
411 {"ACPI_TABLE_VRTC", SRC_TYPE_STRUCT},
412 {"ACPI_TAG_INFO", SRC_TYPE_STRUCT},
413 {"ACPI_THREAD_ID", SRC_TYPE_SIMPLE},
414 {"ACPI_THREAD_STATE", SRC_TYPE_STRUCT},
415 {"ACPI_TYPED_IDENTIFIER_TABLE", SRC_TYPE_STRUCT},
416 {"ACPI_UINTPTR_T", SRC_TYPE_SIMPLE},
417 {"ACPI_UPDATE_STATE", SRC_TYPE_STRUCT},
418 {"ACPI_UUID", SRC_TYPE_STRUCT},
419 {"ACPI_VENDOR_UUID", SRC_TYPE_STRUCT},
420 {"ACPI_VENDOR_WALK_INFO", SRC_TYPE_STRUCT},
421 {"ACPI_VRTC_ENTRY", SRC_TYPE_STRUCT},
422 {"ACPI_WALK_AML_CALLBACK", SRC_TYPE_SIMPLE},
423 {"ACPI_WALK_CALLBACK", SRC_TYPE_SIMPLE},
424 {"ACPI_WALK_RESOURCE_CALLBACK", SRC_TYPE_SIMPLE},
425 {"ACPI_WALK_INFO", SRC_TYPE_STRUCT},
426 {"ACPI_WALK_STATE", SRC_TYPE_STRUCT},
427 {"ACPI_WHEA_HEADER", SRC_TYPE_STRUCT},
428
429 /* Buffers related to predefined ACPI names (_PLD, etc.) */
430
431 {"ACPI_FDE_INFO", SRC_TYPE_STRUCT},
432 {"ACPI_GRT_INFO", SRC_TYPE_STRUCT},
433 {"ACPI_GTM_INFO", SRC_TYPE_STRUCT},
434 {"ACPI_PLD_INFO", SRC_TYPE_STRUCT},
435
436 /* Resources */
437
438 {"ACPI_RS_LENGTH", SRC_TYPE_SIMPLE},
439 {"ACPI_RSDESC_SIZE", SRC_TYPE_SIMPLE},
440
441 {"AML_RESOURCE", SRC_TYPE_UNION},
442 {"AML_RESOURCE_ADDRESS", SRC_TYPE_STRUCT},
443 {"AML_RESOURCE_ADDRESS16", SRC_TYPE_STRUCT},
444 {"AML_RESOURCE_ADDRESS32", SRC_TYPE_STRUCT},
445 {"AML_RESOURCE_ADDRESS64", SRC_TYPE_STRUCT},
446 {"AML_RESOURCE_COMMON_SERIALBUS", SRC_TYPE_STRUCT},
447 {"AML_RESOURCE_DMA", SRC_TYPE_STRUCT},
448 {"AML_RESOURCE_END_DEPENDENT", SRC_TYPE_STRUCT},
449 {"AML_RESOURCE_END_TAG", SRC_TYPE_STRUCT},
450 {"AML_RESOURCE_EXTENDED_ADDRESS64", SRC_TYPE_STRUCT},
451 {"AML_RESOURCE_EXTENDED_IRQ", SRC_TYPE_STRUCT},
452 {"AML_RESOURCE_FIXED_DMA", SRC_TYPE_STRUCT},
453 {"AML_RESOURCE_FIXED_IO", SRC_TYPE_STRUCT},
454 {"AML_RESOURCE_FIXED_MEMORY32", SRC_TYPE_STRUCT},
455 {"AML_RESOURCE_GENERIC_REGISTER", SRC_TYPE_STRUCT},
456 {"AML_RESOURCE_GPIO", SRC_TYPE_STRUCT},
457 {"AML_RESOURCE_IO", SRC_TYPE_STRUCT},
458 {"AML_RESOURCE_I2C_SERIALBUS", SRC_TYPE_STRUCT},
459 {"AML_RESOURCE_IRQ", SRC_TYPE_STRUCT},
460 {"AML_RESOURCE_IRQ_NOFLAGS", SRC_TYPE_STRUCT},
461 {"AML_RESOURCE_LARGE_HEADER", SRC_TYPE_STRUCT},
462 {"AML_RESOURCE_MEMORY24", SRC_TYPE_STRUCT},
463 {"AML_RESOURCE_MEMORY32", SRC_TYPE_STRUCT},
464 {"AML_RESOURCE_SMALL_HEADER", SRC_TYPE_STRUCT},
465 {"AML_RESOURCE_SPI_SERIALBUS", SRC_TYPE_STRUCT},
466 {"AML_RESOURCE_START_DEPENDENT", SRC_TYPE_STRUCT},
467 {"AML_RESOURCE_START_DEPENDENT_NOPRIO", SRC_TYPE_STRUCT},
468 {"AML_RESOURCE_UART_SERIALBUS", SRC_TYPE_STRUCT},
469 {"AML_RESOURCE_VENDOR_LARGE", SRC_TYPE_STRUCT},
470 {"AML_RESOURCE_VENDOR_SMALL", SRC_TYPE_STRUCT},
471 {"AS_BRACE_INFO", SRC_TYPE_STRUCT},
472 {"AS_SCAN_CALLBACK", SRC_TYPE_SIMPLE},
473
474 {"APIC_HEADER", SRC_TYPE_STRUCT},
475 {"AE_DEBUG_REGIONS", SRC_TYPE_STRUCT},
476 {"AE_REGION", SRC_TYPE_STRUCT},
477 {"AE_TABLE_DESC", SRC_TYPE_STRUCT},
478 {"ASL_ANALYSIS_WALK_INFO", SRC_TYPE_STRUCT},
479 {"ASL_ERROR_MSG", SRC_TYPE_STRUCT},
480 {"ASL_ERROR_MSG", SRC_TYPE_STRUCT},
481 {"ASL_EVENT_INFO", SRC_TYPE_STRUCT},
482 {"ASL_FILE_INFO", SRC_TYPE_STRUCT},
483 {"ASL_FILE_STATUS", SRC_TYPE_STRUCT},
484 {"ASL_INCLUDE_DIR", SRC_TYPE_STRUCT},
485 {"ASL_LISTING_NODE", SRC_TYPE_STRUCT},
486 {"ASL_MAPPING_ENTRY", SRC_TYPE_STRUCT},
487 {"ASL_METHOD_INFO", SRC_TYPE_STRUCT},
488 {"ASL_RESERVED_INFO", SRC_TYPE_STRUCT},
489 {"ASL_RESOURCE_INFO", SRC_TYPE_STRUCT},
490 {"ASL_RESOURCE_NODE", SRC_TYPE_STRUCT},
491 {"ASL_WALK_CALLBACK", SRC_TYPE_SIMPLE},
492 {"UINT64_OVERLAY", SRC_TYPE_UNION},
493 {"UINT64_STRUCT", SRC_TYPE_STRUCT},
494
495 /*
496 * Acpi table definition names.
497 */
498 {"ACPI_TABLE_ASF", SRC_TYPE_STRUCT},
499 {"ACPI_TABLE_BERT", SRC_TYPE_STRUCT},
500 {"ACPI_TABLE_BGRT", SRC_TYPE_STRUCT},
501 {"ACPI_TABLE_BOOT", SRC_TYPE_STRUCT},
502 {"ACPI_TABLE_CPEP", SRC_TYPE_STRUCT},
503 {"ACPI_TABLE_CSRT", SRC_TYPE_STRUCT},
504 {"ACPI_TABLE_DBG2", SRC_TYPE_STRUCT},
505 {"ACPI_TABLE_DBGP", SRC_TYPE_STRUCT},
506 {"ACPI_TABLE_DMAR", SRC_TYPE_STRUCT},
507 {"ACPI_TABLE_DRTM", SRC_TYPE_STRUCT},
508 {"ACPI_TABLE_ECDT", SRC_TYPE_STRUCT},
509 {"ACPI_TABLE_EINJ", SRC_TYPE_STRUCT},
510 {"ACPI_TABLE_ERST", SRC_TYPE_STRUCT},
511 {"ACPI_TABLE_FACS", SRC_TYPE_STRUCT},
512 {"ACPI_TABLE_FADT", SRC_TYPE_STRUCT},
513 {"ACPI_TABLE_FPDT", SRC_TYPE_STRUCT},
514 {"ACPI_TABLE_GTDT", SRC_TYPE_STRUCT},
515 {"ACPI_TABLE_HEST", SRC_TYPE_STRUCT},
516 {"ACPI_TABLE_HPET", SRC_TYPE_STRUCT},
517 {"ACPI_TABLE_IBFT", SRC_TYPE_STRUCT},
518 {"ACPI_TABLE_IVRS", SRC_TYPE_STRUCT},
519 {"ACPI_TABLE_MADT", SRC_TYPE_STRUCT},
520 {"ACPI_TABLE_MCFG", SRC_TYPE_STRUCT},
521 {"ACPI_TABLE_MCHI", SRC_TYPE_STRUCT},
522 {"ACPI_TABLE_MPST", SRC_TYPE_STRUCT},
523 {"ACPI_TABLE_MSCT", SRC_TYPE_STRUCT},
524 {"ACPI_TABLE_PCCT", SRC_TYPE_STRUCT},
525 {"ACPI_TABLE_RSDP", SRC_TYPE_STRUCT},
526 {"ACPI_TABLE_RSDT", SRC_TYPE_STRUCT},
527 {"ACPI_TABLE_MCHI", SRC_TYPE_STRUCT},
528 {"ACPI_TABLE_S3PT", SRC_TYPE_STRUCT},
529 {"ACPI_TABLE_SBST", SRC_TYPE_STRUCT},
530 {"ACPI_TABLE_SLIC", SRC_TYPE_STRUCT},
531 {"ACPI_TABLE_SLIT", SRC_TYPE_STRUCT},
532 {"ACPI_TABLE_SPCR", SRC_TYPE_STRUCT},
533 {"ACPI_TABLE_SPMI", SRC_TYPE_STRUCT},
534 {"ACPI_TABLE_SRAT", SRC_TYPE_STRUCT},
535 {"ACPI_TABLE_TCPA", SRC_TYPE_STRUCT},
536 {"ACPI_TABLE_TPM2", SRC_TYPE_STRUCT},
537 {"ACPI_TABLE_UEFI", SRC_TYPE_STRUCT},
538 {"ACPI_TABLE_WAET", SRC_TYPE_STRUCT},
539 {"ACPI_TABLE_WDAT", SRC_TYPE_STRUCT},
540 {"ACPI_TABLE_WDDT", SRC_TYPE_STRUCT},
541 {"ACPI_TABLE_WDRT", SRC_TYPE_STRUCT},
542 {"ACPI_TABLE_XSDT", SRC_TYPE_STRUCT},
543
544 {"ACPI_ASF_ADDRESS", SRC_TYPE_STRUCT},
545 {"ACPI_ASF_ALERT", SRC_TYPE_STRUCT},
546 {"ACPI_ASF_ALERT_DATA", SRC_TYPE_STRUCT},
547 {"ACPI_ASF_CONTROL_DATA", SRC_TYPE_STRUCT},
548 {"ACPI_ASF_HEADER", SRC_TYPE_STRUCT},
549 {"ACPI_ASF_INFO", SRC_TYPE_STRUCT},
550 {"ACPI_ASF_REMOTE", SRC_TYPE_STRUCT},
551 {"ACPI_ASF_RMCP", SRC_TYPE_STRUCT},
552 {"ACPI_BERT_REGION", SRC_TYPE_STRUCT},
553 {"ACPI_CPEP_POLLING", SRC_TYPE_STRUCT},
554 {"ACPI_CSRT_GROUP", SRC_TYPE_STRUCT},
555 {"ACPI_CSRT_DESCRIPTOR", SRC_TYPE_STRUCT},
556 {"ACPI_CSRT_SHARED_INFO", SRC_TYPE_STRUCT},
557 {"ACPI_DBG2_DEVICE", SRC_TYPE_STRUCT},
558 {"ACPI_DMAR_HEADER", SRC_TYPE_STRUCT},
559 {"ACPI_DMAR_DEVICE_SCOPE", SRC_TYPE_STRUCT},
560 {"ACPI_DMAR_ANDD", SRC_TYPE_STRUCT},
561 {"ACPI_DMAR_ATSR", SRC_TYPE_STRUCT},
562 {"ACPI_DMAR_RHSA", SRC_TYPE_STRUCT},
563 {"ACPI_DMAR_HARDWARE_UNIT", SRC_TYPE_STRUCT},
564 {"ACPI_DMAR_RESERVED_MEMORY", SRC_TYPE_STRUCT},
565 {"ACPI_EINJ_ENTRY", SRC_TYPE_STRUCT},
566 {"ACPI_EINJ_TRIGGER", SRC_TYPE_STRUCT},
567 {"ACPI_ERST_ENTRY", SRC_TYPE_STRUCT},
568 {"ACPI_ERST_INFO", SRC_TYPE_STRUCT},
569 {"ACPI_FPDT_HEADER", SRC_TYPE_STRUCT},
570 {"ACPI_FPDT_BOOT", SRC_TYPE_STRUCT},
571 {"ACPI_FPDT_S3PT_PTR", SRC_TYPE_STRUCT},
572 {"ACPI_GTDT_HEADER", SRC_TYPE_STRUCT},
573 {"ACPI_GTDT_TIMER_BLOCK", SRC_TYPE_STRUCT},
574 {"ACPI_GTDT_TIMER_ENTRY", SRC_TYPE_STRUCT},
575 {"ACPI_GTDT_WATCHDOG", SRC_TYPE_STRUCT},
576 {"ACPI_HEST_AER_COMMON", SRC_TYPE_STRUCT},
577 {"ACPI_HEST_HEADER", SRC_TYPE_STRUCT},
578 {"ACPI_HEST_NOTIFY", SRC_TYPE_STRUCT},
579 {"ACPI_HEST_IA_ERROR_BANK", SRC_TYPE_STRUCT},
580 {"ACPI_HEST_IA_MACHINE_CHECK", SRC_TYPE_STRUCT},
581 {"ACPI_HEST_IA_CORRECTED", SRC_TYPE_STRUCT},
582 {"ACPI_HEST_IA_NMI", SRC_TYPE_STRUCT},
583 {"ACPI_HEST_AER_ROOT", SRC_TYPE_STRUCT},
584 {"ACPI_HEST_AER", SRC_TYPE_STRUCT},
585 {"ACPI_HEST_AER_BRIDGE", SRC_TYPE_STRUCT},
586 {"ACPI_HEST_GENERIC", SRC_TYPE_STRUCT},
587 {"ACPI_HEST_GENERIC_STATUS", SRC_TYPE_STRUCT},
588 {"ACPI_HEST_GENERIC_DATA", SRC_TYPE_STRUCT},
589 {"ACPI_IBFT_HEADER", SRC_TYPE_STRUCT},
590 {"ACPI_IBFT_CONTROL", SRC_TYPE_STRUCT},
591 {"ACPI_IBFT_INITIATOR", SRC_TYPE_STRUCT},
592 {"ACPI_IBFT_NIC", SRC_TYPE_STRUCT},
593 {"ACPI_IBFT_TARGET", SRC_TYPE_STRUCT},
594 {"ACPI_IVRS_HEADER", SRC_TYPE_STRUCT},
595 {"ACPI_IVRS_HARDWARE", SRC_TYPE_STRUCT},
596 {"ACPI_IVRS_DE_HEADER", SRC_TYPE_STRUCT},
597 {"ACPI_IVRS_DEVICE4", SRC_TYPE_STRUCT},
598 {"ACPI_IVRS_DEVICE8A", SRC_TYPE_STRUCT},
599 {"ACPI_IVRS_DEVICE8B", SRC_TYPE_STRUCT},
600 {"ACPI_IVRS_DEVICE8C", SRC_TYPE_STRUCT},
601 {"ACPI_IVRS_MEMORY", SRC_TYPE_STRUCT},
602 {"ACPI_MADT_ADDRESS_OVERRIDE", SRC_TYPE_STRUCT},
603 {"ACPI_MADT_GENERIC_MSI_FRAME", SRC_TYPE_STRUCT},
604 {"ACPI_MADT_GENERIC_REDISTRIBUTOR", SRC_TYPE_STRUCT},
605 {"ACPI_MADT_HEADER", SRC_TYPE_STRUCT},
606 {"ACPI_MADT_IO_APIC", SRC_TYPE_STRUCT},
607 {"ACPI_MADT_IO_SAPIC", SRC_TYPE_STRUCT},
608 {"ACPI_MADT_LOCAL_APIC", SRC_TYPE_STRUCT},
609 {"ACPI_MADT_LOCAL_APIC_NMI", SRC_TYPE_STRUCT},
610 {"ACPI_MADT_LOCAL_APIC_OVERRIDE", SRC_TYPE_STRUCT},
611 {"ACPI_MADT_LOCAL_SAPIC", SRC_TYPE_STRUCT},
612 {"ACPI_MADT_LOCAL_X2APIC", SRC_TYPE_STRUCT},
613 {"ACPI_MADT_LOCAL_X2APIC_NMI", SRC_TYPE_STRUCT},
614 {"ACPI_MADT_GENERIC_DISTRIBUTOR", SRC_TYPE_STRUCT},
615 {"ACPI_MADT_GENERIC_INTERRUPT", SRC_TYPE_STRUCT},
616 {"ACPI_MADT_INTERRUPT_OVERRIDE", SRC_TYPE_STRUCT},
617 {"ACPI_MADT_INTERRUPT_SOURCE", SRC_TYPE_STRUCT},
618 {"ACPI_MADT_NMI_SOURCE", SRC_TYPE_STRUCT},
619 {"ACPI_MADT_PROCESSOR_APIC", SRC_TYPE_STRUCT},
620 {"ACPI_MPST_COMPONENT", SRC_TYPE_STRUCT},
621 {"ACPI_MPST_DATA_HDR", SRC_TYPE_STRUCT},
622 {"ACPI_MPST_POWER_DATA", SRC_TYPE_STRUCT},
623 {"ACPI_MPST_POWER_NODE", SRC_TYPE_STRUCT},
624 {"ACPI_MPST_POWER_STATE", SRC_TYPE_STRUCT},
625 {"ACPI_MCFG_ALLOCATION", SRC_TYPE_STRUCT},
626 {"ACPI_MSCT_PROXIMITY", SRC_TYPE_STRUCT},
627 {"ACPI_PCCT_HW_REDUCED", SRC_TYPE_STRUCT},
628 {"ACPI_PCCT_SHARED_MEMORY", SRC_TYPE_STRUCT},
629 {"ACPI_PCCT_SUBSPACE", SRC_TYPE_STRUCT},
630 {"ACPI_RSDP_COMMON", SRC_TYPE_STRUCT},
631 {"ACPI_RSDP_EXTENSION", SRC_TYPE_STRUCT},
632 {"ACPI_S3PT_RESUME", SRC_TYPE_STRUCT},
633 {"ACPI_S3PT_SUSPEND", SRC_TYPE_STRUCT},
634 {"ACPI_SLIC_HEADER", SRC_TYPE_STRUCT},
635 {"ACPI_SLIC_KEY", SRC_TYPE_STRUCT},
636 {"ACPI_SLIC_MARKER", SRC_TYPE_STRUCT},
637 {"ACPI_SRAT_CPU_AFFINITY", SRC_TYPE_STRUCT},
638 {"ACPI_SRAT_HEADER", SRC_TYPE_STRUCT},
639 {"ACPI_SRAT_MEM_AFFINITY", SRC_TYPE_STRUCT},
640 {"ACPI_SRAT_X2APIC_CPU_AFFINITY", SRC_TYPE_STRUCT},
641 {"ACPI_SRAT_GICC_AFFINITY", SRC_TYPE_STRUCT},
642 {"ACPI_TPM2_CONTROL", SRC_TYPE_STRUCT},
643 {"ACPI_WDAT_ENTRY", SRC_TYPE_STRUCT},
644
645 /* Data Table compiler */
646
647 {"DT_FIELD", SRC_TYPE_STRUCT},
648 {"DT_SUBTABLE", SRC_TYPE_STRUCT},
649 {"DT_WALK_CALLBACK", SRC_TYPE_SIMPLE},
650
651 /* iASL preprocessor */
652
653 {"PR_DEFINE_INFO", SRC_TYPE_STRUCT},
654 {"PR_DIRECTIVE_INFO", SRC_TYPE_STRUCT},
655 {"PR_FILE_NODE", SRC_TYPE_STRUCT},
656 {"PR_LINE_MAPPING", SRC_TYPE_STRUCT},
657 {"PR_MACRO_ARG", SRC_TYPE_STRUCT},
658 {"PR_OPERATOR_INFO", SRC_TYPE_STRUCT},
659
660 /* AcpiDump utility */
661
662 {"AP_DUMP_ACTION", SRC_TYPE_STRUCT},
663
664 /* AcpiHelp utility */
665
666 {"AH_AML_OPCODE", SRC_TYPE_STRUCT},
667 {"AH_ASL_OPERATOR", SRC_TYPE_STRUCT},
668 {"AH_ASL_KEYWORD", SRC_TYPE_STRUCT},
669 {"AH_DEVICE_ID", SRC_TYPE_STRUCT},
670 {"AH_PREDEFINED_NAME", SRC_TYPE_STRUCT},
671 {"AH_UUID", SRC_TYPE_STRUCT},
672
673 /* AcpiXtract utility */
674
675 {"AX_TABLE_INFO", SRC_TYPE_STRUCT},
676
677 /* OS service layers */
678
679 {"EXTERNAL_FIND_INFO", SRC_TYPE_STRUCT},
680 {"OSL_TABLE_INFO", SRC_TYPE_STRUCT},
681
682 {NULL, 0}
683 };
684
685
686 ACPI_IDENTIFIER_TABLE LinuxAddStruct[] = {
687 {"acpi_namespace_node"},
688 {"acpi_parse_object"},
689 {"acpi_table_desc"},
690 {"acpi_walk_state"},
691 {NULL}
692 };
693
694
695 ACPI_IDENTIFIER_TABLE LinuxEliminateMacros[] = {
696
697 {"ACPI_GET_ADDRESS"},
698 {"ACPI_VALID_ADDRESS"},
699 {NULL}
700 };
701
702
703 ACPI_IDENTIFIER_TABLE LinuxEliminateLines_C[] = {
704
705 {"#define __"},
706 {NULL}
707 };
708
709
710 ACPI_IDENTIFIER_TABLE LinuxEliminateLines_H[] = {
711
712 {NULL}
713 };
714
715
716 ACPI_IDENTIFIER_TABLE LinuxConditionalIdentifiers[] = {
717
718 /* {"ACPI_USE_STANDARD_HEADERS"}, */
719 {"WIN32"},
720 {"_MSC_VER"},
721 {NULL}
722 };
723
724
725 ACPI_STRING_TABLE LinuxSpecialStrings[] = {
726
727 /* Include file paths */
728
729 {"\"acpi.h\"", "<acpi/acpi.h>", REPLACE_WHOLE_WORD},
730 {"\"acpiosxf.h\"", "<acpi/acpiosxf.h>", REPLACE_WHOLE_WORD},
731 {"\"acpixf.h\"", "<acpi/acpixf.h>", REPLACE_WHOLE_WORD},
732 {"\"acbuffer.h\"", "<acpi/acbuffer.h>", REPLACE_WHOLE_WORD},
733 {"\"acconfig.h\"", "<acpi/acconfig.h>", REPLACE_WHOLE_WORD},
734 {"\"acexcep.h\"", "<acpi/acexcep.h>", REPLACE_WHOLE_WORD},
735 {"\"acnames.h\"", "<acpi/acnames.h>", REPLACE_WHOLE_WORD},
736 {"\"acoutput.h\"", "<acpi/acoutput.h>", REPLACE_WHOLE_WORD},
737 {"\"acrestyp.h\"", "<acpi/acrestyp.h>", REPLACE_WHOLE_WORD},
738 {"\"actbl.h\"", "<acpi/actbl.h>", REPLACE_WHOLE_WORD},
739 {"\"actbl1.h\"", "<acpi/actbl1.h>", REPLACE_WHOLE_WORD},
740 {"\"actbl2.h\"", "<acpi/actbl2.h>", REPLACE_WHOLE_WORD},
741 {"\"actbl3.h\"", "<acpi/actbl3.h>", REPLACE_WHOLE_WORD},
742 {"\"actypes.h\"", "<acpi/actypes.h>", REPLACE_WHOLE_WORD},
743 {"\"platform/acenv.h\"", "<acpi/platform/acenv.h>", REPLACE_WHOLE_WORD},
744 {"\"platform/acenvex.h\"", "<acpi/platform/acenvex.h>", REPLACE_WHOLE_WORD},
745 {"\"acgcc.h\"", "<acpi/platform/acgcc.h>", REPLACE_WHOLE_WORD},
746 {"\"aclinux.h\"", "<acpi/platform/aclinux.h>", REPLACE_WHOLE_WORD},
747 {"\"aclinuxex.h\"", "<acpi/platform/aclinuxex.h>", REPLACE_WHOLE_WORD},
748
749 {NULL, NULL, 0}
750 };
751
752
753 ACPI_IDENTIFIER_TABLE LinuxSpecialMacros[] = {
754
755 {"ACPI_DBG_DEPENDENT_RETURN_VOID"},
756 {"ACPI_EXPORT_SYMBOL"},
757 {"ACPI_EXPORT_SYMBOL_INIT"},
758 {"ACPI_EXTERNAL_RETURN_OK"},
759 {"ACPI_EXTERNAL_RETURN_PTR"},
760 {"ACPI_EXTERNAL_RETURN_STATUS"},
761 {"ACPI_EXTERNAL_RETURN_UINT32"},
762 {"ACPI_EXTERNAL_RETURN_VOID"},
763 {"ACPI_HW_DEPENDENT_RETURN_OK"},
764 {"ACPI_HW_DEPENDENT_RETURN_STATUS"},
765 {"ACPI_HW_DEPENDENT_RETURN_VOID"},
766 {"ACPI_MSG_DEPENDENT_RETURN_VOID"},
767
768 {NULL}
769 };
770
771
772 ACPI_CONVERSION_TABLE LinuxConversionTable = {
773
774 DualLicenseHeader,
775 FLG_NO_CARRIAGE_RETURNS | FLG_LOWERCASE_DIRNAMES,
776
777 AcpiIdentifiers,
778
779 /* C source files */
780
781 LinuxDataTypes,
782 LinuxEliminateLines_C,
783 NULL,
784 LinuxEliminateMacros,
785 AcpiIdentifiers,
786 NULL,
787 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
788 CVT_CHECK_BRACES | CVT_TRIM_LINES | CVT_BRACES_ON_SAME_LINE |
789 CVT_MIXED_CASE_TO_UNDERSCORES | CVT_LOWER_CASE_IDENTIFIERS |
790 CVT_REMOVE_DEBUG_MACROS | CVT_TRIM_WHITESPACE |
791 CVT_REMOVE_EMPTY_BLOCKS | CVT_SPACES_TO_TABS8),
792
793 /* C header files */
794
795 LinuxDataTypes,
796 LinuxEliminateLines_H,
797 LinuxConditionalIdentifiers,
798 NULL,
799 AcpiIdentifiers,
800 NULL,
801 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
802 CVT_TRIM_LINES | CVT_MIXED_CASE_TO_UNDERSCORES |
803 CVT_LOWER_CASE_IDENTIFIERS | CVT_TRIM_WHITESPACE |
804 CVT_REMOVE_EMPTY_BLOCKS| CVT_REDUCE_TYPEDEFS | CVT_SPACES_TO_TABS8),
805
806 /* Patch files */
807
808 LinuxDataTypes,
809 NULL,
810 NULL,
811 NULL,
812 AcpiIdentifiers,
813 NULL,
814 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
815 CVT_MIXED_CASE_TO_UNDERSCORES),
816 };
817
818
819 /******************************************************************************
820 *
821 * Code cleanup translation tables
822 *
823 ******************************************************************************/
824
825 ACPI_CONVERSION_TABLE CleanupConversionTable = {
826
827 NULL,
828 FLG_DEFAULT_FLAGS,
829 NULL,
830 /* C source files */
831
832 NULL,
833 NULL,
834 NULL,
835 NULL,
836 NULL,
837 NULL,
838 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
839 CVT_CHECK_BRACES | CVT_TRIM_LINES | CVT_TRIM_WHITESPACE),
840
841 /* C header files */
842
843 NULL,
844 NULL,
845 NULL,
846 NULL,
847 NULL,
848 NULL,
849 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
850 CVT_TRIM_LINES | CVT_TRIM_WHITESPACE),
851
852 /* Patch files */
853
854 NULL,
855 NULL,
856 NULL,
857 NULL,
858 NULL,
859 NULL,
860 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES),
861 };
862
863
864 ACPI_CONVERSION_TABLE StatsConversionTable = {
865
866 NULL,
867 FLG_NO_FILE_OUTPUT,
868 NULL,
869
870 /* C source files */
871
872 NULL,
873 NULL,
874 NULL,
875 NULL,
876 NULL,
877 NULL,
878 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
879 CVT_COUNT_SHORTMULTILINE_COMMENTS),
880
881 /* C header files */
882
883 NULL,
884 NULL,
885 NULL,
886 NULL,
887 NULL,
888 NULL,
889 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
890 CVT_COUNT_SHORTMULTILINE_COMMENTS),
891
892 /* Patch files */
893
894 NULL,
895 NULL,
896 NULL,
897 NULL,
898 NULL,
899 NULL,
900 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
901 CVT_COUNT_SHORTMULTILINE_COMMENTS),
902 };
903
904
905 /******************************************************************************
906 *
907 * Dual License injection translation table
908 *
909 ******************************************************************************/
910
911 ACPI_CONVERSION_TABLE LicenseConversionTable = {
912
913 DualLicenseHeader,
914 FLG_DEFAULT_FLAGS,
915 NULL,
916
917 /* C source files */
918
919 NULL,
920 NULL,
921 NULL,
922 NULL,
923 NULL,
924 NULL,
925 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
926 CVT_COUNT_SHORTMULTILINE_COMMENTS),
927
928 /* C header files */
929
930 NULL,
931 NULL,
932 NULL,
933 NULL,
934 NULL,
935 NULL,
936 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
937 CVT_COUNT_SHORTMULTILINE_COMMENTS),
938
939 /* Patch files */
940
941 NULL,
942 NULL,
943 NULL,
944 NULL,
945 NULL,
946 NULL,
947 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
948 CVT_COUNT_SHORTMULTILINE_COMMENTS),
949 };
950
951
952 /******************************************************************************
953 *
954 * Customizable translation tables
955 *
956 ******************************************************************************/
957
958 ACPI_STRING_TABLE CustomReplacements[] = {
959
960
961 {"(c) 1999 - 2013", "(c) 1999 - 2014", REPLACE_WHOLE_WORD}, /* Main ACPICA source */
962 {"(c) 2006 - 2013", "(c) 2006 - 2014", REPLACE_WHOLE_WORD}, /* Test suites */
963
964 #if 0
965 {"SUPPORT, ASSISTANCE", "SUPPORT, ASSISTANCE", REPLACE_WHOLE_WORD}, /* Fix intel header */
966
967 {"(ACPI_INTEGER)", "(UINT64)", REPLACE_WHOLE_WORD},
968 {"ACPI_INTEGER ", "UINT64 ", REPLACE_WHOLE_WORD},
969 {"ACPI_INTEGER", "UINT64", REPLACE_WHOLE_WORD},
970 {"ACPI_INTEGER_MAX", "ACPI_UINT64_MAX", REPLACE_WHOLE_WORD},
971 {"#include \"acpi.h\"", "#include \"acpi.h\"\n#include \"accommon.h\"", REPLACE_SUBSTRINGS},
972 {"AcpiTbSumTable", "AcpiTbSumTable", REPLACE_WHOLE_WORD},
973 {"ACPI_SIG_BOOT", "ACPI_SIG_BOOT", REPLACE_WHOLE_WORD},
974 {"ACPI_SIG_DBGP", "ACPI_SIG_DBGP", REPLACE_WHOLE_WORD},
975 {"ACPI_SIG_DSDT", "ACPI_SIG_DSDT", REPLACE_WHOLE_WORD},
976 {"ACPI_SIG_ECDT", "ACPI_SIG_ECDT", REPLACE_WHOLE_WORD},
977 {"ACPI_SIG_FACS", "ACPI_SIG_FACS", REPLACE_WHOLE_WORD},
978 {"ACPI_SIG_FADT", "ACPI_SIG_FADT", REPLACE_WHOLE_WORD},
979 {"ACPI_SIG_HPET", "ACPI_SIG_HPET", REPLACE_WHOLE_WORD},
980 {"ACPI_SIG_MADT", "ACPI_SIG_MADT", REPLACE_WHOLE_WORD},
981 {"ACPI_SIG_MCFG", "ACPI_SIG_MCFG", REPLACE_WHOLE_WORD},
982 {"ACPI_SIG_PSDT", "ACPI_SIG_PSDT", REPLACE_WHOLE_WORD},
983 {"ACPI_NAME_RSDP", "ACPI_NAME_RSDP", REPLACE_WHOLE_WORD},
984 {"ACPI_SIG_RSDP", "ACPI_SIG_RSDP", REPLACE_WHOLE_WORD},
985 {"ACPI_SIG_RSDT", "ACPI_SIG_RSDT", REPLACE_WHOLE_WORD},
986 {"ACPI_SIG_SBST", "ACPI_SIG_SBST", REPLACE_WHOLE_WORD},
987 {"ACPI_SIG_SLIT", "ACPI_SIG_SLIT", REPLACE_WHOLE_WORD},
988 {"ACPI_SIG_SPCR", "ACPI_SIG_SPCR", REPLACE_WHOLE_WORD},
989 {"ACPI_SIG_SPIC", "ACPI_SIG_SPIC", REPLACE_WHOLE_WORD},
990 {"ACPI_SIG_SPMI", "ACPI_SIG_SPMI", REPLACE_WHOLE_WORD},
991 {"ACPI_SIG_SRAT", "ACPI_SIG_SRAT", REPLACE_WHOLE_WORD},
992 {"ACPI_SIG_SSDT", "ACPI_SIG_SSDT", REPLACE_WHOLE_WORD},
993 {"ACPI_SIG_TCPA", "ACPI_SIG_TCPA", REPLACE_WHOLE_WORD},
994 {"ACPI_SIG_WDRT", "ACPI_SIG_WDRT", REPLACE_WHOLE_WORD},
995 {"ACPI_SIG_XSDT", "ACPI_SIG_XSDT", REPLACE_WHOLE_WORD},
996
997 {"ACPI_ALLOCATE_ZEROED", "ACPI_ALLOCATE_ZEROED", REPLACE_WHOLE_WORD},
998 {"ACPI_ALLOCATE", "ACPI_ALLOCATE", REPLACE_WHOLE_WORD},
999 {"ACPI_FREE", "ACPI_FREE", REPLACE_WHOLE_WORD},
1000
1001 "ACPI_NATIVE_UINT", "ACPI_NATIVE_UINT", REPLACE_WHOLE_WORD,
1002 "ACPI_NATIVE_UINT *", "ACPI_NATIVE_UINT *", REPLACE_WHOLE_WORD,
1003 "ACPI_NATIVE_UINT", "ACPI_NATIVE_UINT", REPLACE_WHOLE_WORD,
1004 "ACPI_NATIVE_INT", "ACPI_NATIVE_INT", REPLACE_WHOLE_WORD,
1005 "ACPI_NATIVE_INT *", "ACPI_NATIVE_INT *", REPLACE_WHOLE_WORD,
1006 "ACPI_NATIVE_INT", "ACPI_NATIVE_INT", REPLACE_WHOLE_WORD,
1007 #endif
1008
1009 {NULL, NULL, 0}
1010 };
1011
1012
1013 ACPI_CONVERSION_TABLE CustomConversionTable = {
1014
1015 NULL,
1016 FLG_DEFAULT_FLAGS,
1017 NULL,
1018
1019 /* C source files */
1020
1021 CustomReplacements,
1022 LinuxEliminateLines_H,
1023 NULL,
1024 NULL,
1025 NULL,
1026 NULL,
1027 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
1028 CVT_TRIM_LINES | CVT_TRIM_WHITESPACE),
1029
1030 /* C header files */
1031
1032 CustomReplacements,
1033 LinuxEliminateLines_H,
1034 NULL,
1035 NULL,
1036 NULL,
1037 NULL,
1038 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
1039 CVT_TRIM_LINES | CVT_TRIM_WHITESPACE),
1040
1041 /* C header files */
1042
1043 NULL,
1044 NULL,
1045 NULL,
1046 NULL,
1047 NULL,
1048 NULL,
1049 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES),
1050 };
1051
1052
1053 /******************************************************************************
1054 *
1055 * Indentation result fixup table
1056 *
1057 ******************************************************************************/
1058
1059 ACPI_CONVERSION_TABLE IndentConversionTable = {
1060
1061 NULL,
1062 FLG_NO_CARRIAGE_RETURNS,
1063
1064 NULL,
1065
1066 /* C source files */
1067
1068 LinuxSpecialStrings,
1069 NULL,
1070 NULL,
1071 NULL,
1072 NULL,
1073 LinuxSpecialMacros,
1074 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
1075 CVT_TRIM_LINES | CVT_TRIM_WHITESPACE),
1076
1077 /* C header files */
1078
1079 LinuxSpecialStrings,
1080 NULL,
1081 NULL,
1082 NULL,
1083 NULL,
1084 LinuxSpecialMacros,
1085 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES |
1086 CVT_TRIM_LINES | CVT_TRIM_WHITESPACE),
1087
1088 /* C header files */
1089
1090 NULL,
1091 NULL,
1092 NULL,
1093 NULL,
1094 NULL,
1095 NULL,
1096 (CVT_COUNT_TABS | CVT_COUNT_NON_ANSI_COMMENTS | CVT_COUNT_LINES),
1097 };
1098