Linux 2.4.0-test8
[davej-history.git] / drivers / acpi / include / resource.h
blobb87032ddb3fafa48bde40f370cc6879a5721be35
1 /******************************************************************************
3 * Name: resource.h - Resource Manager function prototypes
5 *****************************************************************************/
7 /*
8 * Copyright (C) 2000 R. Byron Moore
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 #ifndef __RESOURCE_H__
26 #define __RESOURCE_H__
28 #include "actypes.h"
29 #include "acobject.h"
32 * Function prototypes called from Acpi* APIs
35 ACPI_STATUS
36 acpi_rs_get_prt_method_data (
37 ACPI_HANDLE handle,
38 ACPI_BUFFER *ret_buffer);
41 ACPI_STATUS
42 acpi_rs_get_crs_method_data (
43 ACPI_HANDLE handle,
44 ACPI_BUFFER *ret_buffer);
46 ACPI_STATUS
47 acpi_rs_get_prs_method_data (
48 ACPI_HANDLE handle,
49 ACPI_BUFFER *ret_buffer);
51 ACPI_STATUS
52 acpi_rs_set_srs_method_data (
53 ACPI_HANDLE handle,
54 ACPI_BUFFER *ret_buffer);
56 ACPI_STATUS
57 acpi_rs_create_resource_list (
58 ACPI_OBJECT_INTERNAL *byte_stream_buffer,
59 u8 *output_buffer,
60 u32 *output_buffer_length);
62 ACPI_STATUS
63 acpi_rs_create_byte_stream (
64 RESOURCE *linked_list_buffer,
65 u8 *output_buffer,
66 u32 *output_buffer_length);
68 ACPI_STATUS
69 acpi_rs_create_pci_routing_table (
70 ACPI_OBJECT_INTERNAL *method_return_object,
71 u8 *output_buffer,
72 u32 *output_buffer_length);
76 *Function prototypes called from Acpi_rs_create*APIs
79 void
80 acpi_rs_dump_resource_list (
81 RESOURCE *resource);
83 void
84 acpi_rs_dump_irq_list (
85 u8 *route_table);
87 ACPI_STATUS
88 acpi_rs_get_byte_stream_start (
89 u8 *byte_stream_buffer,
90 u8 **byte_stream_start,
91 u32 *size);
93 ACPI_STATUS
94 acpi_rs_calculate_list_length (
95 u8 *byte_stream_buffer,
96 u32 byte_stream_buffer_length,
97 u32 *size_needed);
99 ACPI_STATUS
100 acpi_rs_calculate_byte_stream_length (
101 RESOURCE *linked_list_buffer,
102 u32 *size_needed);
104 ACPI_STATUS
105 acpi_rs_byte_stream_to_list (
106 u8 *byte_stream_buffer,
107 u32 byte_stream_buffer_length,
108 u8 **output_buffer);
110 ACPI_STATUS
111 acpi_rs_list_to_byte_stream (
112 RESOURCE *linked_list,
113 u32 byte_stream_size_needed,
114 u8 **output_buffer);
116 ACPI_STATUS
117 acpi_rs_io_resource (
118 u8 *byte_stream_buffer,
119 u32 *bytes_consumed,
120 u8 **output_buffer,
121 u32 *structure_size);
123 ACPI_STATUS
124 acpi_rs_fixed_io_resource (
125 u8 *byte_stream_buffer,
126 u32 *bytes_consumed,
127 u8 **output_buffer,
128 u32 *structure_size);
130 ACPI_STATUS
131 acpi_rs_io_stream (
132 RESOURCE *linked_list,
133 u8 **output_buffer,
134 u32 *bytes_consumed);
136 ACPI_STATUS
137 acpi_rs_fixed_io_stream (
138 RESOURCE *linked_list,
139 u8 **output_buffer,
140 u32 *bytes_consumed);
142 ACPI_STATUS
143 acpi_rs_irq_resource (
144 u8 *byte_stream_buffer,
145 u32 *bytes_consumed,
146 u8 **output_buffer,
147 u32 *structure_size);
149 ACPI_STATUS
150 acpi_rs_irq_stream (
151 RESOURCE *linked_list,
152 u8 **output_buffer,
153 u32 *bytes_consumed);
155 ACPI_STATUS
156 acpi_rs_dma_resource (
157 u8 *byte_stream_buffer,
158 u32 *bytes_consumed,
159 u8 **output_buffer,
160 u32 *structure_size);
162 ACPI_STATUS
163 acpi_rs_dma_stream (
164 RESOURCE *linked_list,
165 u8 **output_buffer,
166 u32 *bytes_consumed);
168 ACPI_STATUS
169 acpi_rs_address16_resource (
170 u8 *byte_stream_buffer,
171 u32 *bytes_consumed,
172 u8 **output_buffer,
173 u32 *structure_size);
175 ACPI_STATUS
176 acpi_rs_address16_stream (
177 RESOURCE *linked_list,
178 u8 **output_buffer,
179 u32 *bytes_consumed);
181 ACPI_STATUS
182 acpi_rs_address32_resource (
183 u8 *byte_stream_buffer,
184 u32 *bytes_consumed,
185 u8 **output_buffer,
186 u32 *structure_size);
188 ACPI_STATUS
189 acpi_rs_address32_stream (
190 RESOURCE *linked_list,
191 u8 **output_buffer,
192 u32 *bytes_consumed);
194 ACPI_STATUS
195 acpi_rs_start_dependent_functions_resource (
196 u8 *byte_stream_buffer,
197 u32 *bytes_consumed,
198 u8 **output_buffer,
199 u32 *structure_size);
201 ACPI_STATUS
202 acpi_rs_end_dependent_functions_resource (
203 u8 *byte_stream_buffer,
204 u32 *bytes_consumed,
205 u8 **output_buffer,
206 u32 *structure_size);
208 ACPI_STATUS
209 acpi_rs_start_dependent_functions_stream (
210 RESOURCE *linked_list,
211 u8 **output_buffer,
212 u32 *bytes_consumed);
214 ACPI_STATUS
215 acpi_rs_end_dependent_functions_stream (
216 RESOURCE *linked_list,
217 u8 **output_buffer,
218 u32 *bytes_consumed);
220 ACPI_STATUS
221 acpi_rs_memory24_resource (
222 u8 *byte_stream_buffer,
223 u32 *bytes_consumed,
224 u8 **output_buffer,
225 u32 *structure_size);
227 ACPI_STATUS
228 acpi_rs_memory24_stream (
229 RESOURCE *linked_list,
230 u8 **output_buffer,
231 u32 *bytes_consumed);
233 ACPI_STATUS
234 acpi_rs_memory32_range_resource (
235 u8 *byte_stream_buffer,
236 u32 *bytes_consumed,
237 u8 **output_buffer,
238 u32 *structure_size
241 ACPI_STATUS
242 acpi_rs_fixed_memory32_resource (
243 u8 *byte_stream_buffer,
244 u32 *bytes_consumed,
245 u8 **output_buffer,
246 u32 *structure_size);
248 ACPI_STATUS
249 acpi_rs_memory32_range_stream (
250 RESOURCE *linked_list,
251 u8 **output_buffer,
252 u32 *bytes_consumed);
254 ACPI_STATUS
255 acpi_rs_fixed_memory32_stream (
256 RESOURCE *linked_list,
257 u8 **output_buffer,
258 u32 *bytes_consumed);
260 ACPI_STATUS
261 acpi_rs_extended_irq_resource (
262 u8 *byte_stream_buffer,
263 u32 *bytes_consumed,
264 u8 **output_buffer,
265 u32 *structure_size);
267 ACPI_STATUS
268 acpi_rs_extended_irq_stream (
269 RESOURCE *linked_list,
270 u8 **output_buffer,
271 u32 *bytes_consumed);
273 ACPI_STATUS
274 acpi_rs_end_tag_resource (
275 u8 *byte_stream_buffer,
276 u32 *bytes_consumed,
277 u8 **output_buffer,
278 u32 *structure_size);
280 ACPI_STATUS
281 acpi_rs_end_tag_stream (
282 RESOURCE *linked_list,
283 u8 **output_buffer,
284 u32 *bytes_consumed);
286 ACPI_STATUS
287 acpi_rs_vendor_resource (
288 u8 *byte_stream_buffer,
289 u32 *bytes_consumed,
290 u8 **output_buffer,
291 u32 *structure_size);
293 ACPI_STATUS
294 acpi_rs_vendor_stream (
295 RESOURCE *linked_list,
296 u8 **output_buffer,
297 u32 *bytes_consumed);
300 #endif /*__RESOURCE_H__ */