diff options
author | Bob Moore <robert.moore@intel.com> | 2005-10-21 00:00:00 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-12-10 00:22:54 -0500 |
commit | 0897831bb54eb36fd9e2a22da7f0f64be1b20d09 (patch) | |
tree | 8d77687ce8ebcfb62d6012d2d3c44f6a904b3c15 /include/acpi/acresrc.h | |
parent | 50eca3eb89d73d9f0aa070b126c7ee6a616016ab (diff) |
[ACPI] ACPICA 20051021
Implemented support for the EM64T and other x86_64
processors. This essentially entails recognizing
that these processors support non-aligned memory
transfers. Previously, all 64-bit processors were assumed
to lack hardware support for non-aligned transfers.
Completed conversion of the Resource Manager to nearly
full table-driven operation. Specifically, the resource
conversion code (convert AML to internal format and the
reverse) and the debug code to dump internal resource
descriptors are fully table-driven, reducing code and data
size and improving maintainability.
The OSL interfaces for Acquire and Release Lock now use a
64-bit flag word on 64-bit processors instead of a fixed
32-bit word. (Alexey Starikovskiy)
Implemented support within the resource conversion code
for the Type-Specific byte within the various ACPI 3.0
*WordSpace macros.
Fixed some issues within the resource conversion code for
the type-specific flags for both Memory and I/O address
resource descriptors. For Memory, implemented support
for the MTP and TTP flags. For I/O, split the TRS and TTP
flags into two separate fields.
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi/acresrc.h')
-rw-r--r-- | include/acpi/acresrc.h | 401 |
1 files changed, 184 insertions, 217 deletions
diff --git a/include/acpi/acresrc.h b/include/acpi/acresrc.h index b66994e9e4ee..25cff0d5ba58 100644 --- a/include/acpi/acresrc.h +++ b/include/acpi/acresrc.h | |||
@@ -49,48 +49,132 @@ | |||
49 | #include "amlresrc.h" | 49 | #include "amlresrc.h" |
50 | 50 | ||
51 | /* | 51 | /* |
52 | * If possible, pack the following structures to byte alignment, since we | ||
53 | * don't care about performance for debug output | ||
54 | */ | ||
55 | #ifndef ACPI_MISALIGNMENT_NOT_SUPPORTED | ||
56 | #pragma pack(1) | ||
57 | #endif | ||
58 | |||
59 | /* | ||
60 | * Individual entry for the resource conversion tables | ||
61 | */ | ||
62 | typedef const struct acpi_rsconvert_info { | ||
63 | u8 opcode; | ||
64 | u8 resource_offset; | ||
65 | u8 aml_offset; | ||
66 | u8 value; | ||
67 | |||
68 | } acpi_rsconvert_info; | ||
69 | |||
70 | /* Resource conversion opcodes */ | ||
71 | |||
72 | #define ACPI_RSC_INITGET 0 | ||
73 | #define ACPI_RSC_INITSET 1 | ||
74 | #define ACPI_RSC_FLAGINIT 2 | ||
75 | #define ACPI_RSC_1BITFLAG 3 | ||
76 | #define ACPI_RSC_2BITFLAG 4 | ||
77 | #define ACPI_RSC_COUNT 5 | ||
78 | #define ACPI_RSC_COUNT16 6 | ||
79 | #define ACPI_RSC_LENGTH 7 | ||
80 | #define ACPI_RSC_MOVE8 8 | ||
81 | #define ACPI_RSC_MOVE16 9 | ||
82 | #define ACPI_RSC_MOVE32 10 | ||
83 | #define ACPI_RSC_MOVE64 11 | ||
84 | #define ACPI_RSC_SET8 12 | ||
85 | #define ACPI_RSC_DATA8 13 | ||
86 | #define ACPI_RSC_ADDRESS 14 | ||
87 | #define ACPI_RSC_SOURCE 15 | ||
88 | #define ACPI_RSC_SOURCEX 16 | ||
89 | #define ACPI_RSC_BITMASK 17 | ||
90 | #define ACPI_RSC_BITMASK16 18 | ||
91 | #define ACPI_RSC_EXIT_NE 19 | ||
92 | #define ACPI_RSC_EXIT_LE 20 | ||
93 | |||
94 | /* Resource Conversion sub-opcodes */ | ||
95 | |||
96 | #define ACPI_RSC_COMPARE_AML_LENGTH 0 | ||
97 | #define ACPI_RSC_COMPARE_VALUE 1 | ||
98 | |||
99 | #define ACPI_RSC_TABLE_SIZE(d) (sizeof (d) / sizeof (struct acpi_rsconvert_info)) | ||
100 | |||
101 | #define ACPI_RS_OFFSET(f) (u8) ACPI_OFFSET (struct acpi_resource,f) | ||
102 | #define AML_OFFSET(f) (u8) ACPI_OFFSET (union aml_resource,f) | ||
103 | |||
104 | /* | ||
52 | * Resource dispatch and info tables | 105 | * Resource dispatch and info tables |
53 | */ | 106 | */ |
54 | struct acpi_resource_info { | 107 | typedef const struct acpi_resource_info { |
55 | u8 length_type; | 108 | u8 length_type; |
56 | u8 minimum_aml_resource_length; | 109 | u8 minimum_aml_resource_length; |
57 | u8 minimum_internal_struct_length; | 110 | u8 minimum_internal_struct_length; |
58 | }; | 111 | |
112 | } acpi_resource_info; | ||
59 | 113 | ||
60 | /* Types for length_type above */ | 114 | /* Types for length_type above */ |
61 | 115 | ||
62 | #define ACPI_FIXED_LENGTH 0 | 116 | #define ACPI_FIXED_LENGTH 0 |
63 | #define ACPI_VARIABLE_LENGTH 1 | 117 | #define ACPI_VARIABLE_LENGTH 1 |
64 | #define ACPI_SMALL_VARIABLE_LENGTH 2 | 118 | #define ACPI_SMALL_VARIABLE_LENGTH 2 |
119 | |||
120 | typedef const struct acpi_rsdump_info { | ||
121 | u8 opcode; | ||
122 | u8 offset; | ||
123 | char *name; | ||
124 | const void *pointer; | ||
65 | 125 | ||
66 | /* Handlers */ | 126 | } acpi_rsdump_info; |
67 | 127 | ||
68 | typedef acpi_status(*ACPI_SET_RESOURCE_HANDLER) (struct acpi_resource * | 128 | /* Values for the Opcode field above */ |
69 | resource, | ||
70 | union aml_resource * aml); | ||
71 | 129 | ||
72 | typedef acpi_status(*ACPI_GET_RESOURCE_HANDLER) (union aml_resource * aml, | 130 | #define ACPI_RSD_TITLE 0 |
73 | u16 aml_resource_length, | 131 | #define ACPI_RSD_LITERAL 1 |
74 | struct acpi_resource * | 132 | #define ACPI_RSD_STRING 2 |
75 | resource); | 133 | #define ACPI_RSD_UINT8 3 |
134 | #define ACPI_RSD_UINT16 4 | ||
135 | #define ACPI_RSD_UINT32 5 | ||
136 | #define ACPI_RSD_UINT64 6 | ||
137 | #define ACPI_RSD_1BITFLAG 7 | ||
138 | #define ACPI_RSD_2BITFLAG 8 | ||
139 | #define ACPI_RSD_SHORTLIST 9 | ||
140 | #define ACPI_RSD_LONGLIST 10 | ||
141 | #define ACPI_RSD_DWORDLIST 11 | ||
142 | #define ACPI_RSD_ADDRESS 12 | ||
143 | #define ACPI_RSD_SOURCE 13 | ||
76 | 144 | ||
77 | typedef void (*ACPI_DUMP_RESOURCE_HANDLER) (union acpi_resource_data * data); | 145 | /* restore default alignment */ |
78 | 146 | ||
79 | /* Tables indexed by internal resource type */ | 147 | #pragma pack() |
80 | 148 | ||
81 | extern u8 acpi_gbl_aml_resource_sizes[]; | 149 | /* Resource tables indexed by internal resource type */ |
82 | extern ACPI_SET_RESOURCE_HANDLER acpi_gbl_set_resource_dispatch[]; | ||
83 | extern ACPI_DUMP_RESOURCE_HANDLER acpi_gbl_dump_resource_dispatch[]; | ||
84 | 150 | ||
85 | /* Tables indexed by raw AML resource descriptor type */ | 151 | extern const u8 acpi_gbl_aml_resource_sizes[]; |
152 | extern struct acpi_rsconvert_info *acpi_gbl_set_resource_dispatch[]; | ||
153 | |||
154 | /* Resource tables indexed by raw AML resource descriptor type */ | ||
86 | 155 | ||
87 | extern struct acpi_resource_info acpi_gbl_sm_resource_info[]; | 156 | extern struct acpi_resource_info acpi_gbl_sm_resource_info[]; |
88 | extern struct acpi_resource_info acpi_gbl_lg_resource_info[]; | 157 | extern struct acpi_resource_info acpi_gbl_lg_resource_info[]; |
89 | extern ACPI_GET_RESOURCE_HANDLER acpi_gbl_sm_get_resource_dispatch[]; | 158 | extern struct acpi_rsconvert_info *acpi_gbl_sm_get_resource_dispatch[]; |
90 | extern ACPI_GET_RESOURCE_HANDLER acpi_gbl_lg_get_resource_dispatch[]; | 159 | extern struct acpi_rsconvert_info *acpi_gbl_lg_get_resource_dispatch[]; |
160 | |||
161 | /* | ||
162 | * rscreate | ||
163 | */ | ||
164 | acpi_status | ||
165 | acpi_rs_create_resource_list(union acpi_operand_object *aml_buffer, | ||
166 | struct acpi_buffer *output_buffer); | ||
167 | |||
168 | acpi_status | ||
169 | acpi_rs_create_aml_resources(struct acpi_resource *linked_list_buffer, | ||
170 | struct acpi_buffer *output_buffer); | ||
171 | |||
172 | acpi_status | ||
173 | acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object, | ||
174 | struct acpi_buffer *output_buffer); | ||
91 | 175 | ||
92 | /* | 176 | /* |
93 | * Function prototypes called from Acpi* APIs | 177 | * rsutils |
94 | */ | 178 | */ |
95 | acpi_status | 179 | acpi_status |
96 | acpi_rs_get_prt_method_data(acpi_handle handle, struct acpi_buffer *ret_buffer); | 180 | acpi_rs_get_prt_method_data(acpi_handle handle, struct acpi_buffer *ret_buffer); |
@@ -110,27 +194,6 @@ acpi_rs_get_method_data(acpi_handle handle, | |||
110 | acpi_status | 194 | acpi_status |
111 | acpi_rs_set_srs_method_data(acpi_handle handle, struct acpi_buffer *ret_buffer); | 195 | acpi_rs_set_srs_method_data(acpi_handle handle, struct acpi_buffer *ret_buffer); |
112 | 196 | ||
113 | acpi_status | ||
114 | acpi_rs_create_resource_list(union acpi_operand_object *aml_buffer, | ||
115 | struct acpi_buffer *output_buffer); | ||
116 | |||
117 | acpi_status | ||
118 | acpi_rs_create_aml_resources(struct acpi_resource *linked_list_buffer, | ||
119 | struct acpi_buffer *output_buffer); | ||
120 | |||
121 | acpi_status | ||
122 | acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object, | ||
123 | struct acpi_buffer *output_buffer); | ||
124 | |||
125 | /* | ||
126 | * rsdump | ||
127 | */ | ||
128 | #ifdef ACPI_FUTURE_USAGE | ||
129 | void acpi_rs_dump_resource_list(struct acpi_resource *resource); | ||
130 | |||
131 | void acpi_rs_dump_irq_list(u8 * route_table); | ||
132 | #endif /* ACPI_FUTURE_USAGE */ | ||
133 | |||
134 | /* | 197 | /* |
135 | * rscalc | 198 | * rscalc |
136 | */ | 199 | */ |
@@ -155,144 +218,28 @@ acpi_rs_convert_resources_to_aml(struct acpi_resource *resource, | |||
155 | acpi_size aml_size_needed, u8 * output_buffer); | 218 | acpi_size aml_size_needed, u8 * output_buffer); |
156 | 219 | ||
157 | /* | 220 | /* |
158 | * rsio | ||
159 | */ | ||
160 | acpi_status | ||
161 | acpi_rs_get_io(union aml_resource *aml, | ||
162 | u16 aml_resource_length, struct acpi_resource *resource); | ||
163 | |||
164 | acpi_status | ||
165 | acpi_rs_set_io(struct acpi_resource *resource, union aml_resource *aml); | ||
166 | |||
167 | acpi_status | ||
168 | acpi_rs_get_fixed_io(union aml_resource *aml, | ||
169 | u16 aml_resource_length, struct acpi_resource *resource); | ||
170 | |||
171 | acpi_status | ||
172 | acpi_rs_set_fixed_io(struct acpi_resource *resource, union aml_resource *aml); | ||
173 | |||
174 | acpi_status | ||
175 | acpi_rs_get_dma(union aml_resource *aml, | ||
176 | u16 aml_resource_length, struct acpi_resource *resource); | ||
177 | |||
178 | acpi_status | ||
179 | acpi_rs_set_dma(struct acpi_resource *resource, union aml_resource *aml); | ||
180 | |||
181 | /* | ||
182 | * rsirq | ||
183 | */ | ||
184 | acpi_status | ||
185 | acpi_rs_get_irq(union aml_resource *aml, | ||
186 | u16 aml_resource_length, struct acpi_resource *resource); | ||
187 | |||
188 | acpi_status | ||
189 | acpi_rs_set_irq(struct acpi_resource *resource, union aml_resource *aml); | ||
190 | |||
191 | acpi_status | ||
192 | acpi_rs_get_ext_irq(union aml_resource *aml, | ||
193 | u16 aml_resource_length, struct acpi_resource *resource); | ||
194 | |||
195 | acpi_status | ||
196 | acpi_rs_set_ext_irq(struct acpi_resource *resource, union aml_resource *aml); | ||
197 | |||
198 | /* | ||
199 | * rsaddr | 221 | * rsaddr |
200 | */ | 222 | */ |
201 | acpi_status | 223 | void |
202 | acpi_rs_get_address16(union aml_resource *aml, | 224 | acpi_rs_set_address_common(union aml_resource *aml, |
203 | u16 aml_resource_length, struct acpi_resource *resource); | ||
204 | |||
205 | acpi_status | ||
206 | acpi_rs_set_address16(struct acpi_resource *resource, union aml_resource *aml); | ||
207 | |||
208 | acpi_status | ||
209 | acpi_rs_get_address32(union aml_resource *aml, | ||
210 | u16 aml_resource_length, struct acpi_resource *resource); | ||
211 | |||
212 | acpi_status | ||
213 | acpi_rs_set_address32(struct acpi_resource *resource, union aml_resource *aml); | ||
214 | |||
215 | acpi_status | ||
216 | acpi_rs_get_address64(union aml_resource *aml, | ||
217 | u16 aml_resource_length, struct acpi_resource *resource); | ||
218 | |||
219 | acpi_status | ||
220 | acpi_rs_set_address64(struct acpi_resource *resource, union aml_resource *aml); | ||
221 | |||
222 | acpi_status | ||
223 | acpi_rs_get_ext_address64(union aml_resource *aml, | ||
224 | u16 aml_resource_length, | ||
225 | struct acpi_resource *resource); | ||
226 | |||
227 | acpi_status | ||
228 | acpi_rs_set_ext_address64(struct acpi_resource *resource, | ||
229 | union aml_resource *aml); | ||
230 | |||
231 | /* | ||
232 | * rsmemory | ||
233 | */ | ||
234 | acpi_status | ||
235 | acpi_rs_get_memory24(union aml_resource *aml, | ||
236 | u16 aml_resource_length, struct acpi_resource *resource); | ||
237 | |||
238 | acpi_status | ||
239 | acpi_rs_set_memory24(struct acpi_resource *resource, union aml_resource *aml); | ||
240 | |||
241 | acpi_status | ||
242 | acpi_rs_get_memory32(union aml_resource *aml, | ||
243 | u16 aml_resource_length, struct acpi_resource *resource); | ||
244 | |||
245 | acpi_status | ||
246 | acpi_rs_set_memory32(struct acpi_resource *resource, union aml_resource *aml); | ||
247 | |||
248 | acpi_status | ||
249 | acpi_rs_get_fixed_memory32(union aml_resource *aml, | ||
250 | u16 aml_resource_length, | ||
251 | struct acpi_resource *resource); | 225 | struct acpi_resource *resource); |
252 | 226 | ||
253 | acpi_status | 227 | u8 |
254 | acpi_rs_set_fixed_memory32(struct acpi_resource *resource, | 228 | acpi_rs_get_address_common(struct acpi_resource *resource, |
255 | union aml_resource *aml); | 229 | union aml_resource *aml); |
256 | 230 | ||
257 | /* | 231 | /* |
258 | * rsmisc | 232 | * rsmisc |
259 | */ | 233 | */ |
260 | acpi_status | 234 | acpi_status |
261 | acpi_rs_get_generic_reg(union aml_resource *aml, | 235 | acpi_rs_convert_aml_to_resource(struct acpi_resource *resource, |
262 | u16 aml_resource_length, | 236 | union aml_resource *aml, |
263 | struct acpi_resource *resource); | 237 | struct acpi_rsconvert_info *info); |
264 | |||
265 | acpi_status | ||
266 | acpi_rs_set_generic_reg(struct acpi_resource *resource, | ||
267 | union aml_resource *aml); | ||
268 | |||
269 | acpi_status | ||
270 | acpi_rs_get_vendor(union aml_resource *aml, | ||
271 | u16 aml_resource_length, struct acpi_resource *resource); | ||
272 | |||
273 | acpi_status | ||
274 | acpi_rs_set_vendor(struct acpi_resource *resource, union aml_resource *aml); | ||
275 | |||
276 | acpi_status | ||
277 | acpi_rs_get_start_dpf(union aml_resource *aml, | ||
278 | u16 aml_resource_length, struct acpi_resource *resource); | ||
279 | |||
280 | acpi_status | ||
281 | acpi_rs_set_start_dpf(struct acpi_resource *resource, union aml_resource *aml); | ||
282 | |||
283 | acpi_status | ||
284 | acpi_rs_get_end_dpf(union aml_resource *aml, | ||
285 | u16 aml_resource_length, struct acpi_resource *resource); | ||
286 | |||
287 | acpi_status | ||
288 | acpi_rs_set_end_dpf(struct acpi_resource *resource, union aml_resource *aml); | ||
289 | 238 | ||
290 | acpi_status | 239 | acpi_status |
291 | acpi_rs_get_end_tag(union aml_resource *aml, | 240 | acpi_rs_convert_resource_to_aml(struct acpi_resource *resource, |
292 | u16 aml_resource_length, struct acpi_resource *resource); | 241 | union aml_resource *aml, |
293 | 242 | struct acpi_rsconvert_info *info); | |
294 | acpi_status | ||
295 | acpi_rs_set_end_tag(struct acpi_resource *resource, union aml_resource *aml); | ||
296 | 243 | ||
297 | /* | 244 | /* |
298 | * rsutils | 245 | * rsutils |
@@ -301,74 +248,94 @@ void | |||
301 | acpi_rs_move_data(void *destination, | 248 | acpi_rs_move_data(void *destination, |
302 | void *source, u16 item_count, u8 move_type); | 249 | void *source, u16 item_count, u8 move_type); |
303 | 250 | ||
304 | /* Types used in move_type above */ | 251 | u8 acpi_rs_decode_bitmask(u16 mask, u8 * list); |
305 | 252 | ||
306 | #define ACPI_MOVE_TYPE_16_TO_32 0 | 253 | u16 acpi_rs_encode_bitmask(u8 * list, u8 count); |
307 | #define ACPI_MOVE_TYPE_32_TO_16 1 | ||
308 | #define ACPI_MOVE_TYPE_32_TO_32 2 | ||
309 | #define ACPI_MOVE_TYPE_64_TO_64 3 | ||
310 | 254 | ||
311 | u16 | 255 | acpi_rs_length |
312 | acpi_rs_get_resource_source(u16 resource_length, | 256 | acpi_rs_get_resource_source(acpi_rs_length resource_length, |
313 | acpi_size minimum_length, | 257 | acpi_rs_length minimum_length, |
314 | struct acpi_resource_source *resource_source, | 258 | struct acpi_resource_source *resource_source, |
315 | union aml_resource *aml, char *string_ptr); | 259 | union aml_resource *aml, char *string_ptr); |
316 | 260 | ||
317 | acpi_size | 261 | acpi_rsdesc_size |
318 | acpi_rs_set_resource_source(union aml_resource *aml, | 262 | acpi_rs_set_resource_source(union aml_resource *aml, |
319 | acpi_size minimum_length, | 263 | acpi_rs_length minimum_length, |
320 | struct acpi_resource_source *resource_source); | 264 | struct acpi_resource_source *resource_source); |
321 | 265 | ||
322 | u8 acpi_rs_get_resource_type(u8 resource_start_byte); | ||
323 | |||
324 | u32 acpi_rs_get_descriptor_length(union aml_resource *aml); | ||
325 | |||
326 | u16 acpi_rs_get_resource_length(union aml_resource *aml); | ||
327 | |||
328 | void | 266 | void |
329 | acpi_rs_set_resource_header(u8 descriptor_type, | 267 | acpi_rs_set_resource_header(u8 descriptor_type, |
330 | acpi_size total_length, union aml_resource *aml); | 268 | acpi_rsdesc_size total_length, |
269 | union aml_resource *aml); | ||
270 | |||
271 | void | ||
272 | acpi_rs_set_resource_length(acpi_rsdesc_size total_length, | ||
273 | union aml_resource *aml); | ||
331 | 274 | ||
332 | struct acpi_resource_info *acpi_rs_get_resource_info(u8 resource_type); | 275 | struct acpi_resource_info *acpi_rs_get_resource_info(u8 resource_type); |
333 | 276 | ||
334 | #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) | ||
335 | /* | 277 | /* |
336 | * rsdump | 278 | * rsdump |
337 | */ | 279 | */ |
338 | void acpi_rs_dump_irq(union acpi_resource_data *resource); | 280 | void acpi_rs_dump_resource_list(struct acpi_resource *resource); |
339 | |||
340 | void acpi_rs_dump_address16(union acpi_resource_data *resource); | ||
341 | |||
342 | void acpi_rs_dump_address32(union acpi_resource_data *resource); | ||
343 | |||
344 | void acpi_rs_dump_address64(union acpi_resource_data *resource); | ||
345 | |||
346 | void acpi_rs_dump_ext_address64(union acpi_resource_data *resource); | ||
347 | |||
348 | void acpi_rs_dump_dma(union acpi_resource_data *resource); | ||
349 | |||
350 | void acpi_rs_dump_io(union acpi_resource_data *resource); | ||
351 | |||
352 | void acpi_rs_dump_ext_irq(union acpi_resource_data *resource); | ||
353 | |||
354 | void acpi_rs_dump_fixed_io(union acpi_resource_data *resource); | ||
355 | |||
356 | void acpi_rs_dump_fixed_memory32(union acpi_resource_data *resource); | ||
357 | |||
358 | void acpi_rs_dump_memory24(union acpi_resource_data *resource); | ||
359 | |||
360 | void acpi_rs_dump_memory32(union acpi_resource_data *resource); | ||
361 | |||
362 | void acpi_rs_dump_start_dpf(union acpi_resource_data *resource); | ||
363 | |||
364 | void acpi_rs_dump_vendor(union acpi_resource_data *resource); | ||
365 | 281 | ||
366 | void acpi_rs_dump_generic_reg(union acpi_resource_data *resource); | 282 | void acpi_rs_dump_irq_list(u8 * route_table); |
367 | 283 | ||
368 | void acpi_rs_dump_end_dpf(union acpi_resource_data *resource); | 284 | /* |
285 | * Resource conversion tables | ||
286 | */ | ||
287 | extern struct acpi_rsconvert_info acpi_rs_convert_dma[]; | ||
288 | extern struct acpi_rsconvert_info acpi_rs_convert_end_dpf[]; | ||
289 | extern struct acpi_rsconvert_info acpi_rs_convert_io[]; | ||
290 | extern struct acpi_rsconvert_info acpi_rs_convert_fixed_io[]; | ||
291 | extern struct acpi_rsconvert_info acpi_rs_convert_end_tag[]; | ||
292 | extern struct acpi_rsconvert_info acpi_rs_convert_memory24[]; | ||
293 | extern struct acpi_rsconvert_info acpi_rs_convert_generic_reg[]; | ||
294 | extern struct acpi_rsconvert_info acpi_rs_convert_memory32[]; | ||
295 | extern struct acpi_rsconvert_info acpi_rs_convert_fixed_memory32[]; | ||
296 | extern struct acpi_rsconvert_info acpi_rs_convert_address32[]; | ||
297 | extern struct acpi_rsconvert_info acpi_rs_convert_address16[]; | ||
298 | extern struct acpi_rsconvert_info acpi_rs_convert_ext_irq[]; | ||
299 | extern struct acpi_rsconvert_info acpi_rs_convert_address64[]; | ||
300 | extern struct acpi_rsconvert_info acpi_rs_convert_ext_address64[]; | ||
301 | |||
302 | /* These resources require separate get/set tables */ | ||
303 | |||
304 | extern struct acpi_rsconvert_info acpi_rs_get_irq[]; | ||
305 | extern struct acpi_rsconvert_info acpi_rs_get_start_dpf[]; | ||
306 | extern struct acpi_rsconvert_info acpi_rs_get_vendor_small[]; | ||
307 | extern struct acpi_rsconvert_info acpi_rs_get_vendor_large[]; | ||
308 | |||
309 | extern struct acpi_rsconvert_info acpi_rs_set_irq[]; | ||
310 | extern struct acpi_rsconvert_info acpi_rs_set_start_dpf[]; | ||
311 | extern struct acpi_rsconvert_info acpi_rs_set_vendor[]; | ||
369 | 312 | ||
370 | void acpi_rs_dump_end_tag(union acpi_resource_data *resource); | 313 | #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) |
314 | /* | ||
315 | * rsinfo | ||
316 | */ | ||
317 | extern struct acpi_rsdump_info *acpi_gbl_dump_resource_dispatch[]; | ||
371 | 318 | ||
319 | /* | ||
320 | * rsdump | ||
321 | */ | ||
322 | extern struct acpi_rsdump_info acpi_rs_dump_irq[]; | ||
323 | extern struct acpi_rsdump_info acpi_rs_dump_dma[]; | ||
324 | extern struct acpi_rsdump_info acpi_rs_dump_start_dpf[]; | ||
325 | extern struct acpi_rsdump_info acpi_rs_dump_end_dpf[]; | ||
326 | extern struct acpi_rsdump_info acpi_rs_dump_io[]; | ||
327 | extern struct acpi_rsdump_info acpi_rs_dump_fixed_io[]; | ||
328 | extern struct acpi_rsdump_info acpi_rs_dump_vendor[]; | ||
329 | extern struct acpi_rsdump_info acpi_rs_dump_end_tag[]; | ||
330 | extern struct acpi_rsdump_info acpi_rs_dump_memory24[]; | ||
331 | extern struct acpi_rsdump_info acpi_rs_dump_memory32[]; | ||
332 | extern struct acpi_rsdump_info acpi_rs_dump_fixed_memory32[]; | ||
333 | extern struct acpi_rsdump_info acpi_rs_dump_address16[]; | ||
334 | extern struct acpi_rsdump_info acpi_rs_dump_address32[]; | ||
335 | extern struct acpi_rsdump_info acpi_rs_dump_address64[]; | ||
336 | extern struct acpi_rsdump_info acpi_rs_dump_ext_address64[]; | ||
337 | extern struct acpi_rsdump_info acpi_rs_dump_ext_irq[]; | ||
338 | extern struct acpi_rsdump_info acpi_rs_dump_generic_reg[]; | ||
372 | #endif | 339 | #endif |
373 | 340 | ||
374 | #endif /* __ACRESRC_H__ */ | 341 | #endif /* __ACRESRC_H__ */ |