1 /******************************************************************************
3 * Name: acresrc.h - Resource Manager function prototypes
6 *****************************************************************************/
9 * Copyright (C) 2000, 2001 R. Byron Moore
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
31 * Function prototypes called from Acpi* APIs
35 acpi_rs_get_prt_method_data (
37 acpi_buffer *ret_buffer);
41 acpi_rs_get_crs_method_data (
43 acpi_buffer *ret_buffer);
46 acpi_rs_get_prs_method_data (
48 acpi_buffer *ret_buffer);
51 acpi_rs_set_srs_method_data (
53 acpi_buffer *ret_buffer);
56 acpi_rs_create_resource_list (
57 acpi_operand_object *byte_stream_buffer,
59 u32 *output_buffer_length);
62 acpi_rs_create_byte_stream (
63 acpi_resource *linked_list_buffer,
65 u32 *output_buffer_length);
68 acpi_rs_create_pci_routing_table (
69 acpi_operand_object *method_return_object,
71 u32 *output_buffer_length);
75 *Function prototypes called from Acpi_rs_create*APIs
79 acpi_rs_dump_resource_list (
80 acpi_resource *resource);
83 acpi_rs_dump_irq_list (
87 acpi_rs_get_byte_stream_start (
88 u8 *byte_stream_buffer,
89 u8 **byte_stream_start,
93 acpi_rs_calculate_list_length (
94 u8 *byte_stream_buffer,
95 u32 byte_stream_buffer_length,
99 acpi_rs_calculate_byte_stream_length (
100 acpi_resource *linked_list_buffer,
104 acpi_rs_calculate_pci_routing_table_length (
105 acpi_operand_object *package_object,
106 u32 *buffer_size_needed);
109 acpi_rs_byte_stream_to_list (
110 u8 *byte_stream_buffer,
111 u32 byte_stream_buffer_length,
115 acpi_rs_list_to_byte_stream (
116 acpi_resource *linked_list,
117 u32 byte_stream_size_needed,
121 acpi_rs_io_resource (
122 u8 *byte_stream_buffer,
125 u32 *structure_size);
128 acpi_rs_fixed_io_resource (
129 u8 *byte_stream_buffer,
132 u32 *structure_size);
136 acpi_resource *linked_list,
138 u32 *bytes_consumed);
141 acpi_rs_fixed_io_stream (
142 acpi_resource *linked_list,
144 u32 *bytes_consumed);
147 acpi_rs_irq_resource (
148 u8 *byte_stream_buffer,
151 u32 *structure_size);
155 acpi_resource *linked_list,
157 u32 *bytes_consumed);
160 acpi_rs_dma_resource (
161 u8 *byte_stream_buffer,
164 u32 *structure_size);
168 acpi_resource *linked_list,
170 u32 *bytes_consumed);
173 acpi_rs_address16_resource (
174 u8 *byte_stream_buffer,
177 u32 *structure_size);
180 acpi_rs_address16_stream (
181 acpi_resource *linked_list,
183 u32 *bytes_consumed);
186 acpi_rs_address32_resource (
187 u8 *byte_stream_buffer,
190 u32 *structure_size);
193 acpi_rs_address32_stream (
194 acpi_resource *linked_list,
196 u32 *bytes_consumed);
199 acpi_rs_address64_resource (
200 u8 *byte_stream_buffer,
203 u32 *structure_size);
206 acpi_rs_address64_stream (
207 acpi_resource *linked_list,
209 u32 *bytes_consumed);
212 acpi_rs_start_dependent_functions_resource (
213 u8 *byte_stream_buffer,
216 u32 *structure_size);
219 acpi_rs_end_dependent_functions_resource (
220 u8 *byte_stream_buffer,
223 u32 *structure_size);
226 acpi_rs_start_dependent_functions_stream (
227 acpi_resource *linked_list,
229 u32 *bytes_consumed);
232 acpi_rs_end_dependent_functions_stream (
233 acpi_resource *linked_list,
235 u32 *bytes_consumed);
238 acpi_rs_memory24_resource (
239 u8 *byte_stream_buffer,
242 u32 *structure_size);
245 acpi_rs_memory24_stream (
246 acpi_resource *linked_list,
248 u32 *bytes_consumed);
251 acpi_rs_memory32_range_resource (
252 u8 *byte_stream_buffer,
259 acpi_rs_fixed_memory32_resource (
260 u8 *byte_stream_buffer,
263 u32 *structure_size);
266 acpi_rs_memory32_range_stream (
267 acpi_resource *linked_list,
269 u32 *bytes_consumed);
272 acpi_rs_fixed_memory32_stream (
273 acpi_resource *linked_list,
275 u32 *bytes_consumed);
278 acpi_rs_extended_irq_resource (
279 u8 *byte_stream_buffer,
282 u32 *structure_size);
285 acpi_rs_extended_irq_stream (
286 acpi_resource *linked_list,
288 u32 *bytes_consumed);
291 acpi_rs_end_tag_resource (
292 u8 *byte_stream_buffer,
295 u32 *structure_size);
298 acpi_rs_end_tag_stream (
299 acpi_resource *linked_list,
301 u32 *bytes_consumed);
304 acpi_rs_vendor_resource (
305 u8 *byte_stream_buffer,
308 u32 *structure_size);
311 acpi_rs_vendor_stream (
312 acpi_resource *linked_list,
314 u32 *bytes_consumed);
317 acpi_rs_get_resource_type (
318 u8 resource_start_byte);
320 #endif /* __ACRESRC_H__ */