diff options
Diffstat (limited to 'drivers/char/drm/drm.h')
-rw-r--r-- | drivers/char/drm/drm.h | 329 |
1 files changed, 187 insertions, 142 deletions
diff --git a/drivers/char/drm/drm.h b/drivers/char/drm/drm.h index 089198491f16..2d6f2d0bd02b 100644 --- a/drivers/char/drm/drm.h +++ b/drivers/char/drm/drm.h | |||
@@ -109,31 +109,31 @@ typedef unsigned int drm_magic_t; | |||
109 | * \note KW: Actually it's illegal to change either for | 109 | * \note KW: Actually it's illegal to change either for |
110 | * backwards-compatibility reasons. | 110 | * backwards-compatibility reasons. |
111 | */ | 111 | */ |
112 | typedef struct drm_clip_rect { | 112 | struct drm_clip_rect { |
113 | unsigned short x1; | 113 | unsigned short x1; |
114 | unsigned short y1; | 114 | unsigned short y1; |
115 | unsigned short x2; | 115 | unsigned short x2; |
116 | unsigned short y2; | 116 | unsigned short y2; |
117 | } drm_clip_rect_t; | 117 | }; |
118 | 118 | ||
119 | /** | 119 | /** |
120 | * Drawable information. | 120 | * Drawable information. |
121 | */ | 121 | */ |
122 | typedef struct drm_drawable_info { | 122 | struct drm_drawable_info { |
123 | unsigned int num_rects; | 123 | unsigned int num_rects; |
124 | drm_clip_rect_t *rects; | 124 | struct drm_clip_rect *rects; |
125 | } drm_drawable_info_t; | 125 | }; |
126 | 126 | ||
127 | /** | 127 | /** |
128 | * Texture region, | 128 | * Texture region, |
129 | */ | 129 | */ |
130 | typedef struct drm_tex_region { | 130 | struct drm_tex_region { |
131 | unsigned char next; | 131 | unsigned char next; |
132 | unsigned char prev; | 132 | unsigned char prev; |
133 | unsigned char in_use; | 133 | unsigned char in_use; |
134 | unsigned char padding; | 134 | unsigned char padding; |
135 | unsigned int age; | 135 | unsigned int age; |
136 | } drm_tex_region_t; | 136 | }; |
137 | 137 | ||
138 | /** | 138 | /** |
139 | * Hardware lock. | 139 | * Hardware lock. |
@@ -142,17 +142,17 @@ typedef struct drm_tex_region { | |||
142 | * processor bus contention on a multiprocessor system, there should not be any | 142 | * processor bus contention on a multiprocessor system, there should not be any |
143 | * other data stored in the same cache line. | 143 | * other data stored in the same cache line. |
144 | */ | 144 | */ |
145 | typedef struct drm_hw_lock { | 145 | struct drm_hw_lock { |
146 | __volatile__ unsigned int lock; /**< lock variable */ | 146 | __volatile__ unsigned int lock; /**< lock variable */ |
147 | char padding[60]; /**< Pad to cache line */ | 147 | char padding[60]; /**< Pad to cache line */ |
148 | } drm_hw_lock_t; | 148 | }; |
149 | 149 | ||
150 | /** | 150 | /** |
151 | * DRM_IOCTL_VERSION ioctl argument type. | 151 | * DRM_IOCTL_VERSION ioctl argument type. |
152 | * | 152 | * |
153 | * \sa drmGetVersion(). | 153 | * \sa drmGetVersion(). |
154 | */ | 154 | */ |
155 | typedef struct drm_version { | 155 | struct drm_version { |
156 | int version_major; /**< Major version */ | 156 | int version_major; /**< Major version */ |
157 | int version_minor; /**< Minor version */ | 157 | int version_minor; /**< Minor version */ |
158 | int version_patchlevel; /**< Patch level */ | 158 | int version_patchlevel; /**< Patch level */ |
@@ -162,33 +162,33 @@ typedef struct drm_version { | |||
162 | char __user *date; /**< User-space buffer to hold date */ | 162 | char __user *date; /**< User-space buffer to hold date */ |
163 | size_t desc_len; /**< Length of desc buffer */ | 163 | size_t desc_len; /**< Length of desc buffer */ |
164 | char __user *desc; /**< User-space buffer to hold desc */ | 164 | char __user *desc; /**< User-space buffer to hold desc */ |
165 | } drm_version_t; | 165 | }; |
166 | 166 | ||
167 | /** | 167 | /** |
168 | * DRM_IOCTL_GET_UNIQUE ioctl argument type. | 168 | * DRM_IOCTL_GET_UNIQUE ioctl argument type. |
169 | * | 169 | * |
170 | * \sa drmGetBusid() and drmSetBusId(). | 170 | * \sa drmGetBusid() and drmSetBusId(). |
171 | */ | 171 | */ |
172 | typedef struct drm_unique { | 172 | struct drm_unique { |
173 | size_t unique_len; /**< Length of unique */ | 173 | size_t unique_len; /**< Length of unique */ |
174 | char __user *unique; /**< Unique name for driver instantiation */ | 174 | char __user *unique; /**< Unique name for driver instantiation */ |
175 | } drm_unique_t; | 175 | }; |
176 | 176 | ||
177 | typedef struct drm_list { | 177 | struct drm_list { |
178 | int count; /**< Length of user-space structures */ | 178 | int count; /**< Length of user-space structures */ |
179 | drm_version_t __user *version; | 179 | struct drm_version __user *version; |
180 | } drm_list_t; | 180 | }; |
181 | 181 | ||
182 | typedef struct drm_block { | 182 | struct drm_block { |
183 | int unused; | 183 | int unused; |
184 | } drm_block_t; | 184 | }; |
185 | 185 | ||
186 | /** | 186 | /** |
187 | * DRM_IOCTL_CONTROL ioctl argument type. | 187 | * DRM_IOCTL_CONTROL ioctl argument type. |
188 | * | 188 | * |
189 | * \sa drmCtlInstHandler() and drmCtlUninstHandler(). | 189 | * \sa drmCtlInstHandler() and drmCtlUninstHandler(). |
190 | */ | 190 | */ |
191 | typedef struct drm_control { | 191 | struct drm_control { |
192 | enum { | 192 | enum { |
193 | DRM_ADD_COMMAND, | 193 | DRM_ADD_COMMAND, |
194 | DRM_RM_COMMAND, | 194 | DRM_RM_COMMAND, |
@@ -196,24 +196,24 @@ typedef struct drm_control { | |||
196 | DRM_UNINST_HANDLER | 196 | DRM_UNINST_HANDLER |
197 | } func; | 197 | } func; |
198 | int irq; | 198 | int irq; |
199 | } drm_control_t; | 199 | }; |
200 | 200 | ||
201 | /** | 201 | /** |
202 | * Type of memory to map. | 202 | * Type of memory to map. |
203 | */ | 203 | */ |
204 | typedef enum drm_map_type { | 204 | enum drm_map_type { |
205 | _DRM_FRAME_BUFFER = 0, /**< WC (no caching), no core dump */ | 205 | _DRM_FRAME_BUFFER = 0, /**< WC (no caching), no core dump */ |
206 | _DRM_REGISTERS = 1, /**< no caching, no core dump */ | 206 | _DRM_REGISTERS = 1, /**< no caching, no core dump */ |
207 | _DRM_SHM = 2, /**< shared, cached */ | 207 | _DRM_SHM = 2, /**< shared, cached */ |
208 | _DRM_AGP = 3, /**< AGP/GART */ | 208 | _DRM_AGP = 3, /**< AGP/GART */ |
209 | _DRM_SCATTER_GATHER = 4, /**< Scatter/gather memory for PCI DMA */ | 209 | _DRM_SCATTER_GATHER = 4, /**< Scatter/gather memory for PCI DMA */ |
210 | _DRM_CONSISTENT = 5, /**< Consistent memory for PCI DMA */ | 210 | _DRM_CONSISTENT = 5, /**< Consistent memory for PCI DMA */ |
211 | } drm_map_type_t; | 211 | }; |
212 | 212 | ||
213 | /** | 213 | /** |
214 | * Memory mapping flags. | 214 | * Memory mapping flags. |
215 | */ | 215 | */ |
216 | typedef enum drm_map_flags { | 216 | enum drm_map_flags { |
217 | _DRM_RESTRICTED = 0x01, /**< Cannot be mapped to user-virtual */ | 217 | _DRM_RESTRICTED = 0x01, /**< Cannot be mapped to user-virtual */ |
218 | _DRM_READ_ONLY = 0x02, | 218 | _DRM_READ_ONLY = 0x02, |
219 | _DRM_LOCKED = 0x04, /**< shared, cached, locked */ | 219 | _DRM_LOCKED = 0x04, /**< shared, cached, locked */ |
@@ -221,12 +221,12 @@ typedef enum drm_map_flags { | |||
221 | _DRM_WRITE_COMBINING = 0x10, /**< use write-combining if available */ | 221 | _DRM_WRITE_COMBINING = 0x10, /**< use write-combining if available */ |
222 | _DRM_CONTAINS_LOCK = 0x20, /**< SHM page that contains lock */ | 222 | _DRM_CONTAINS_LOCK = 0x20, /**< SHM page that contains lock */ |
223 | _DRM_REMOVABLE = 0x40 /**< Removable mapping */ | 223 | _DRM_REMOVABLE = 0x40 /**< Removable mapping */ |
224 | } drm_map_flags_t; | 224 | }; |
225 | 225 | ||
226 | typedef struct drm_ctx_priv_map { | 226 | struct drm_ctx_priv_map { |
227 | unsigned int ctx_id; /**< Context requesting private mapping */ | 227 | unsigned int ctx_id; /**< Context requesting private mapping */ |
228 | void *handle; /**< Handle of map */ | 228 | void *handle; /**< Handle of map */ |
229 | } drm_ctx_priv_map_t; | 229 | }; |
230 | 230 | ||
231 | /** | 231 | /** |
232 | * DRM_IOCTL_GET_MAP, DRM_IOCTL_ADD_MAP and DRM_IOCTL_RM_MAP ioctls | 232 | * DRM_IOCTL_GET_MAP, DRM_IOCTL_ADD_MAP and DRM_IOCTL_RM_MAP ioctls |
@@ -234,30 +234,30 @@ typedef struct drm_ctx_priv_map { | |||
234 | * | 234 | * |
235 | * \sa drmAddMap(). | 235 | * \sa drmAddMap(). |
236 | */ | 236 | */ |
237 | typedef struct drm_map { | 237 | struct drm_map { |
238 | unsigned long offset; /**< Requested physical address (0 for SAREA)*/ | 238 | unsigned long offset; /**< Requested physical address (0 for SAREA)*/ |
239 | unsigned long size; /**< Requested physical size (bytes) */ | 239 | unsigned long size; /**< Requested physical size (bytes) */ |
240 | drm_map_type_t type; /**< Type of memory to map */ | 240 | enum drm_map_type type; /**< Type of memory to map */ |
241 | drm_map_flags_t flags; /**< Flags */ | 241 | enum drm_map_flags flags; /**< Flags */ |
242 | void *handle; /**< User-space: "Handle" to pass to mmap() */ | 242 | void *handle; /**< User-space: "Handle" to pass to mmap() */ |
243 | /**< Kernel-space: kernel-virtual address */ | 243 | /**< Kernel-space: kernel-virtual address */ |
244 | int mtrr; /**< MTRR slot used */ | 244 | int mtrr; /**< MTRR slot used */ |
245 | /* Private data */ | 245 | /* Private data */ |
246 | } drm_map_t; | 246 | }; |
247 | 247 | ||
248 | /** | 248 | /** |
249 | * DRM_IOCTL_GET_CLIENT ioctl argument type. | 249 | * DRM_IOCTL_GET_CLIENT ioctl argument type. |
250 | */ | 250 | */ |
251 | typedef struct drm_client { | 251 | struct drm_client { |
252 | int idx; /**< Which client desired? */ | 252 | int idx; /**< Which client desired? */ |
253 | int auth; /**< Is client authenticated? */ | 253 | int auth; /**< Is client authenticated? */ |
254 | unsigned long pid; /**< Process ID */ | 254 | unsigned long pid; /**< Process ID */ |
255 | unsigned long uid; /**< User ID */ | 255 | unsigned long uid; /**< User ID */ |
256 | unsigned long magic; /**< Magic */ | 256 | unsigned long magic; /**< Magic */ |
257 | unsigned long iocs; /**< Ioctl count */ | 257 | unsigned long iocs; /**< Ioctl count */ |
258 | } drm_client_t; | 258 | }; |
259 | 259 | ||
260 | typedef enum { | 260 | enum drm_stat_type { |
261 | _DRM_STAT_LOCK, | 261 | _DRM_STAT_LOCK, |
262 | _DRM_STAT_OPENS, | 262 | _DRM_STAT_OPENS, |
263 | _DRM_STAT_CLOSES, | 263 | _DRM_STAT_CLOSES, |
@@ -275,23 +275,23 @@ typedef enum { | |||
275 | _DRM_STAT_SPECIAL, /**< Special DMA (e.g., priority or polled) */ | 275 | _DRM_STAT_SPECIAL, /**< Special DMA (e.g., priority or polled) */ |
276 | _DRM_STAT_MISSED /**< Missed DMA opportunity */ | 276 | _DRM_STAT_MISSED /**< Missed DMA opportunity */ |
277 | /* Add to the *END* of the list */ | 277 | /* Add to the *END* of the list */ |
278 | } drm_stat_type_t; | 278 | }; |
279 | 279 | ||
280 | /** | 280 | /** |
281 | * DRM_IOCTL_GET_STATS ioctl argument type. | 281 | * DRM_IOCTL_GET_STATS ioctl argument type. |
282 | */ | 282 | */ |
283 | typedef struct drm_stats { | 283 | struct drm_stats { |
284 | unsigned long count; | 284 | unsigned long count; |
285 | struct { | 285 | struct { |
286 | unsigned long value; | 286 | unsigned long value; |
287 | drm_stat_type_t type; | 287 | enum drm_stat_type type; |
288 | } data[15]; | 288 | } data[15]; |
289 | } drm_stats_t; | 289 | }; |
290 | 290 | ||
291 | /** | 291 | /** |
292 | * Hardware locking flags. | 292 | * Hardware locking flags. |
293 | */ | 293 | */ |
294 | typedef enum drm_lock_flags { | 294 | enum drm_lock_flags { |
295 | _DRM_LOCK_READY = 0x01, /**< Wait until hardware is ready for DMA */ | 295 | _DRM_LOCK_READY = 0x01, /**< Wait until hardware is ready for DMA */ |
296 | _DRM_LOCK_QUIESCENT = 0x02, /**< Wait until hardware quiescent */ | 296 | _DRM_LOCK_QUIESCENT = 0x02, /**< Wait until hardware quiescent */ |
297 | _DRM_LOCK_FLUSH = 0x04, /**< Flush this context's DMA queue first */ | 297 | _DRM_LOCK_FLUSH = 0x04, /**< Flush this context's DMA queue first */ |
@@ -301,17 +301,17 @@ typedef enum drm_lock_flags { | |||
301 | full-screen DGA-like mode. */ | 301 | full-screen DGA-like mode. */ |
302 | _DRM_HALT_ALL_QUEUES = 0x10, /**< Halt all current and future queues */ | 302 | _DRM_HALT_ALL_QUEUES = 0x10, /**< Halt all current and future queues */ |
303 | _DRM_HALT_CUR_QUEUES = 0x20 /**< Halt all current queues */ | 303 | _DRM_HALT_CUR_QUEUES = 0x20 /**< Halt all current queues */ |
304 | } drm_lock_flags_t; | 304 | }; |
305 | 305 | ||
306 | /** | 306 | /** |
307 | * DRM_IOCTL_LOCK, DRM_IOCTL_UNLOCK and DRM_IOCTL_FINISH ioctl argument type. | 307 | * DRM_IOCTL_LOCK, DRM_IOCTL_UNLOCK and DRM_IOCTL_FINISH ioctl argument type. |
308 | * | 308 | * |
309 | * \sa drmGetLock() and drmUnlock(). | 309 | * \sa drmGetLock() and drmUnlock(). |
310 | */ | 310 | */ |
311 | typedef struct drm_lock { | 311 | struct drm_lock { |
312 | int context; | 312 | int context; |
313 | drm_lock_flags_t flags; | 313 | enum drm_lock_flags flags; |
314 | } drm_lock_t; | 314 | }; |
315 | 315 | ||
316 | /** | 316 | /** |
317 | * DMA flags | 317 | * DMA flags |
@@ -321,7 +321,7 @@ typedef struct drm_lock { | |||
321 | * | 321 | * |
322 | * \sa drm_dma. | 322 | * \sa drm_dma. |
323 | */ | 323 | */ |
324 | typedef enum drm_dma_flags { | 324 | enum drm_dma_flags { |
325 | /* Flags for DMA buffer dispatch */ | 325 | /* Flags for DMA buffer dispatch */ |
326 | _DRM_DMA_BLOCK = 0x01, /**< | 326 | _DRM_DMA_BLOCK = 0x01, /**< |
327 | * Block until buffer dispatched. | 327 | * Block until buffer dispatched. |
@@ -340,14 +340,14 @@ typedef enum drm_dma_flags { | |||
340 | _DRM_DMA_WAIT = 0x10, /**< Wait for free buffers */ | 340 | _DRM_DMA_WAIT = 0x10, /**< Wait for free buffers */ |
341 | _DRM_DMA_SMALLER_OK = 0x20, /**< Smaller-than-requested buffers OK */ | 341 | _DRM_DMA_SMALLER_OK = 0x20, /**< Smaller-than-requested buffers OK */ |
342 | _DRM_DMA_LARGER_OK = 0x40 /**< Larger-than-requested buffers OK */ | 342 | _DRM_DMA_LARGER_OK = 0x40 /**< Larger-than-requested buffers OK */ |
343 | } drm_dma_flags_t; | 343 | }; |
344 | 344 | ||
345 | /** | 345 | /** |
346 | * DRM_IOCTL_ADD_BUFS and DRM_IOCTL_MARK_BUFS ioctl argument type. | 346 | * DRM_IOCTL_ADD_BUFS and DRM_IOCTL_MARK_BUFS ioctl argument type. |
347 | * | 347 | * |
348 | * \sa drmAddBufs(). | 348 | * \sa drmAddBufs(). |
349 | */ | 349 | */ |
350 | typedef struct drm_buf_desc { | 350 | struct drm_buf_desc { |
351 | int count; /**< Number of buffers of this size */ | 351 | int count; /**< Number of buffers of this size */ |
352 | int size; /**< Size in bytes */ | 352 | int size; /**< Size in bytes */ |
353 | int low_mark; /**< Low water mark */ | 353 | int low_mark; /**< Low water mark */ |
@@ -363,44 +363,44 @@ typedef struct drm_buf_desc { | |||
363 | * Start address of where the AGP buffers are | 363 | * Start address of where the AGP buffers are |
364 | * in the AGP aperture | 364 | * in the AGP aperture |
365 | */ | 365 | */ |
366 | } drm_buf_desc_t; | 366 | }; |
367 | 367 | ||
368 | /** | 368 | /** |
369 | * DRM_IOCTL_INFO_BUFS ioctl argument type. | 369 | * DRM_IOCTL_INFO_BUFS ioctl argument type. |
370 | */ | 370 | */ |
371 | typedef struct drm_buf_info { | 371 | struct drm_buf_info { |
372 | int count; /**< Entries in list */ | 372 | int count; /**< Entries in list */ |
373 | drm_buf_desc_t __user *list; | 373 | struct drm_buf_desc __user *list; |
374 | } drm_buf_info_t; | 374 | }; |
375 | 375 | ||
376 | /** | 376 | /** |
377 | * DRM_IOCTL_FREE_BUFS ioctl argument type. | 377 | * DRM_IOCTL_FREE_BUFS ioctl argument type. |
378 | */ | 378 | */ |
379 | typedef struct drm_buf_free { | 379 | struct drm_buf_free { |
380 | int count; | 380 | int count; |
381 | int __user *list; | 381 | int __user *list; |
382 | } drm_buf_free_t; | 382 | }; |
383 | 383 | ||
384 | /** | 384 | /** |
385 | * Buffer information | 385 | * Buffer information |
386 | * | 386 | * |
387 | * \sa drm_buf_map. | 387 | * \sa drm_buf_map. |
388 | */ | 388 | */ |
389 | typedef struct drm_buf_pub { | 389 | struct drm_buf_pub { |
390 | int idx; /**< Index into the master buffer list */ | 390 | int idx; /**< Index into the master buffer list */ |
391 | int total; /**< Buffer size */ | 391 | int total; /**< Buffer size */ |
392 | int used; /**< Amount of buffer in use (for DMA) */ | 392 | int used; /**< Amount of buffer in use (for DMA) */ |
393 | void __user *address; /**< Address of buffer */ | 393 | void __user *address; /**< Address of buffer */ |
394 | } drm_buf_pub_t; | 394 | }; |
395 | 395 | ||
396 | /** | 396 | /** |
397 | * DRM_IOCTL_MAP_BUFS ioctl argument type. | 397 | * DRM_IOCTL_MAP_BUFS ioctl argument type. |
398 | */ | 398 | */ |
399 | typedef struct drm_buf_map { | 399 | struct drm_buf_map { |
400 | int count; /**< Length of the buffer list */ | 400 | int count; /**< Length of the buffer list */ |
401 | void __user *virtual; /**< Mmap'd area in user-virtual */ | 401 | void __user *virtual; /**< Mmap'd area in user-virtual */ |
402 | drm_buf_pub_t __user *list; /**< Buffer information */ | 402 | struct drm_buf_pub __user *list; /**< Buffer information */ |
403 | } drm_buf_map_t; | 403 | }; |
404 | 404 | ||
405 | /** | 405 | /** |
406 | * DRM_IOCTL_DMA ioctl argument type. | 406 | * DRM_IOCTL_DMA ioctl argument type. |
@@ -409,48 +409,48 @@ typedef struct drm_buf_map { | |||
409 | * | 409 | * |
410 | * \sa drmDMA(). | 410 | * \sa drmDMA(). |
411 | */ | 411 | */ |
412 | typedef struct drm_dma { | 412 | struct drm_dma { |
413 | int context; /**< Context handle */ | 413 | int context; /**< Context handle */ |
414 | int send_count; /**< Number of buffers to send */ | 414 | int send_count; /**< Number of buffers to send */ |
415 | int __user *send_indices; /**< List of handles to buffers */ | 415 | int __user *send_indices; /**< List of handles to buffers */ |
416 | int __user *send_sizes; /**< Lengths of data to send */ | 416 | int __user *send_sizes; /**< Lengths of data to send */ |
417 | drm_dma_flags_t flags; /**< Flags */ | 417 | enum drm_dma_flags flags; /**< Flags */ |
418 | int request_count; /**< Number of buffers requested */ | 418 | int request_count; /**< Number of buffers requested */ |
419 | int request_size; /**< Desired size for buffers */ | 419 | int request_size; /**< Desired size for buffers */ |
420 | int __user *request_indices; /**< Buffer information */ | 420 | int __user *request_indices; /**< Buffer information */ |
421 | int __user *request_sizes; | 421 | int __user *request_sizes; |
422 | int granted_count; /**< Number of buffers granted */ | 422 | int granted_count; /**< Number of buffers granted */ |
423 | } drm_dma_t; | 423 | }; |
424 | 424 | ||
425 | typedef enum { | 425 | enum drm_ctx_flags { |
426 | _DRM_CONTEXT_PRESERVED = 0x01, | 426 | _DRM_CONTEXT_PRESERVED = 0x01, |
427 | _DRM_CONTEXT_2DONLY = 0x02 | 427 | _DRM_CONTEXT_2DONLY = 0x02 |
428 | } drm_ctx_flags_t; | 428 | }; |
429 | 429 | ||
430 | /** | 430 | /** |
431 | * DRM_IOCTL_ADD_CTX ioctl argument type. | 431 | * DRM_IOCTL_ADD_CTX ioctl argument type. |
432 | * | 432 | * |
433 | * \sa drmCreateContext() and drmDestroyContext(). | 433 | * \sa drmCreateContext() and drmDestroyContext(). |
434 | */ | 434 | */ |
435 | typedef struct drm_ctx { | 435 | struct drm_ctx { |
436 | drm_context_t handle; | 436 | drm_context_t handle; |
437 | drm_ctx_flags_t flags; | 437 | enum drm_ctx_flags flags; |
438 | } drm_ctx_t; | 438 | }; |
439 | 439 | ||
440 | /** | 440 | /** |
441 | * DRM_IOCTL_RES_CTX ioctl argument type. | 441 | * DRM_IOCTL_RES_CTX ioctl argument type. |
442 | */ | 442 | */ |
443 | typedef struct drm_ctx_res { | 443 | struct drm_ctx_res { |
444 | int count; | 444 | int count; |
445 | drm_ctx_t __user *contexts; | 445 | struct drm_ctx __user *contexts; |
446 | } drm_ctx_res_t; | 446 | }; |
447 | 447 | ||
448 | /** | 448 | /** |
449 | * DRM_IOCTL_ADD_DRAW and DRM_IOCTL_RM_DRAW ioctl argument type. | 449 | * DRM_IOCTL_ADD_DRAW and DRM_IOCTL_RM_DRAW ioctl argument type. |
450 | */ | 450 | */ |
451 | typedef struct drm_draw { | 451 | struct drm_draw { |
452 | drm_drawable_t handle; | 452 | drm_drawable_t handle; |
453 | } drm_draw_t; | 453 | }; |
454 | 454 | ||
455 | /** | 455 | /** |
456 | * DRM_IOCTL_UPDATE_DRAW ioctl argument type. | 456 | * DRM_IOCTL_UPDATE_DRAW ioctl argument type. |
@@ -459,52 +459,52 @@ typedef enum { | |||
459 | DRM_DRAWABLE_CLIPRECTS, | 459 | DRM_DRAWABLE_CLIPRECTS, |
460 | } drm_drawable_info_type_t; | 460 | } drm_drawable_info_type_t; |
461 | 461 | ||
462 | typedef struct drm_update_draw { | 462 | struct drm_update_draw { |
463 | drm_drawable_t handle; | 463 | drm_drawable_t handle; |
464 | unsigned int type; | 464 | unsigned int type; |
465 | unsigned int num; | 465 | unsigned int num; |
466 | unsigned long long data; | 466 | unsigned long long data; |
467 | } drm_update_draw_t; | 467 | }; |
468 | 468 | ||
469 | /** | 469 | /** |
470 | * DRM_IOCTL_GET_MAGIC and DRM_IOCTL_AUTH_MAGIC ioctl argument type. | 470 | * DRM_IOCTL_GET_MAGIC and DRM_IOCTL_AUTH_MAGIC ioctl argument type. |
471 | */ | 471 | */ |
472 | typedef struct drm_auth { | 472 | struct drm_auth { |
473 | drm_magic_t magic; | 473 | drm_magic_t magic; |
474 | } drm_auth_t; | 474 | }; |
475 | 475 | ||
476 | /** | 476 | /** |
477 | * DRM_IOCTL_IRQ_BUSID ioctl argument type. | 477 | * DRM_IOCTL_IRQ_BUSID ioctl argument type. |
478 | * | 478 | * |
479 | * \sa drmGetInterruptFromBusID(). | 479 | * \sa drmGetInterruptFromBusID(). |
480 | */ | 480 | */ |
481 | typedef struct drm_irq_busid { | 481 | struct drm_irq_busid { |
482 | int irq; /**< IRQ number */ | 482 | int irq; /**< IRQ number */ |
483 | int busnum; /**< bus number */ | 483 | int busnum; /**< bus number */ |
484 | int devnum; /**< device number */ | 484 | int devnum; /**< device number */ |
485 | int funcnum; /**< function number */ | 485 | int funcnum; /**< function number */ |
486 | } drm_irq_busid_t; | 486 | }; |
487 | 487 | ||
488 | typedef enum { | 488 | enum drm_vblank_seq_type { |
489 | _DRM_VBLANK_ABSOLUTE = 0x0, /**< Wait for specific vblank sequence number */ | 489 | _DRM_VBLANK_ABSOLUTE = 0x0, /**< Wait for specific vblank sequence number */ |
490 | _DRM_VBLANK_RELATIVE = 0x1, /**< Wait for given number of vblanks */ | 490 | _DRM_VBLANK_RELATIVE = 0x1, /**< Wait for given number of vblanks */ |
491 | _DRM_VBLANK_NEXTONMISS = 0x10000000, /**< If missed, wait for next vblank */ | 491 | _DRM_VBLANK_NEXTONMISS = 0x10000000, /**< If missed, wait for next vblank */ |
492 | _DRM_VBLANK_SECONDARY = 0x20000000, /**< Secondary display controller */ | 492 | _DRM_VBLANK_SECONDARY = 0x20000000, /**< Secondary display controller */ |
493 | _DRM_VBLANK_SIGNAL = 0x40000000 /**< Send signal instead of blocking */ | 493 | _DRM_VBLANK_SIGNAL = 0x40000000 /**< Send signal instead of blocking */ |
494 | } drm_vblank_seq_type_t; | 494 | }; |
495 | 495 | ||
496 | #define _DRM_VBLANK_TYPES_MASK (_DRM_VBLANK_ABSOLUTE | _DRM_VBLANK_RELATIVE) | 496 | #define _DRM_VBLANK_TYPES_MASK (_DRM_VBLANK_ABSOLUTE | _DRM_VBLANK_RELATIVE) |
497 | #define _DRM_VBLANK_FLAGS_MASK (_DRM_VBLANK_SIGNAL | _DRM_VBLANK_SECONDARY | \ | 497 | #define _DRM_VBLANK_FLAGS_MASK (_DRM_VBLANK_SIGNAL | _DRM_VBLANK_SECONDARY | \ |
498 | _DRM_VBLANK_NEXTONMISS) | 498 | _DRM_VBLANK_NEXTONMISS) |
499 | 499 | ||
500 | struct drm_wait_vblank_request { | 500 | struct drm_wait_vblank_request { |
501 | drm_vblank_seq_type_t type; | 501 | enum drm_vblank_seq_type type; |
502 | unsigned int sequence; | 502 | unsigned int sequence; |
503 | unsigned long signal; | 503 | unsigned long signal; |
504 | }; | 504 | }; |
505 | 505 | ||
506 | struct drm_wait_vblank_reply { | 506 | struct drm_wait_vblank_reply { |
507 | drm_vblank_seq_type_t type; | 507 | enum drm_vblank_seq_type type; |
508 | unsigned int sequence; | 508 | unsigned int sequence; |
509 | long tval_sec; | 509 | long tval_sec; |
510 | long tval_usec; | 510 | long tval_usec; |
@@ -515,41 +515,41 @@ struct drm_wait_vblank_reply { | |||
515 | * | 515 | * |
516 | * \sa drmWaitVBlank(). | 516 | * \sa drmWaitVBlank(). |
517 | */ | 517 | */ |
518 | typedef union drm_wait_vblank { | 518 | union drm_wait_vblank { |
519 | struct drm_wait_vblank_request request; | 519 | struct drm_wait_vblank_request request; |
520 | struct drm_wait_vblank_reply reply; | 520 | struct drm_wait_vblank_reply reply; |
521 | } drm_wait_vblank_t; | 521 | }; |
522 | 522 | ||
523 | /** | 523 | /** |
524 | * DRM_IOCTL_AGP_ENABLE ioctl argument type. | 524 | * DRM_IOCTL_AGP_ENABLE ioctl argument type. |
525 | * | 525 | * |
526 | * \sa drmAgpEnable(). | 526 | * \sa drmAgpEnable(). |
527 | */ | 527 | */ |
528 | typedef struct drm_agp_mode { | 528 | struct drm_agp_mode { |
529 | unsigned long mode; /**< AGP mode */ | 529 | unsigned long mode; /**< AGP mode */ |
530 | } drm_agp_mode_t; | 530 | }; |
531 | 531 | ||
532 | /** | 532 | /** |
533 | * DRM_IOCTL_AGP_ALLOC and DRM_IOCTL_AGP_FREE ioctls argument type. | 533 | * DRM_IOCTL_AGP_ALLOC and DRM_IOCTL_AGP_FREE ioctls argument type. |
534 | * | 534 | * |
535 | * \sa drmAgpAlloc() and drmAgpFree(). | 535 | * \sa drmAgpAlloc() and drmAgpFree(). |
536 | */ | 536 | */ |
537 | typedef struct drm_agp_buffer { | 537 | struct drm_agp_buffer { |
538 | unsigned long size; /**< In bytes -- will round to page boundary */ | 538 | unsigned long size; /**< In bytes -- will round to page boundary */ |
539 | unsigned long handle; /**< Used for binding / unbinding */ | 539 | unsigned long handle; /**< Used for binding / unbinding */ |
540 | unsigned long type; /**< Type of memory to allocate */ | 540 | unsigned long type; /**< Type of memory to allocate */ |
541 | unsigned long physical; /**< Physical used by i810 */ | 541 | unsigned long physical; /**< Physical used by i810 */ |
542 | } drm_agp_buffer_t; | 542 | }; |
543 | 543 | ||
544 | /** | 544 | /** |
545 | * DRM_IOCTL_AGP_BIND and DRM_IOCTL_AGP_UNBIND ioctls argument type. | 545 | * DRM_IOCTL_AGP_BIND and DRM_IOCTL_AGP_UNBIND ioctls argument type. |
546 | * | 546 | * |
547 | * \sa drmAgpBind() and drmAgpUnbind(). | 547 | * \sa drmAgpBind() and drmAgpUnbind(). |
548 | */ | 548 | */ |
549 | typedef struct drm_agp_binding { | 549 | struct drm_agp_binding { |
550 | unsigned long handle; /**< From drm_agp_buffer */ | 550 | unsigned long handle; /**< From drm_agp_buffer */ |
551 | unsigned long offset; /**< In bytes -- will round to page boundary */ | 551 | unsigned long offset; /**< In bytes -- will round to page boundary */ |
552 | } drm_agp_binding_t; | 552 | }; |
553 | 553 | ||
554 | /** | 554 | /** |
555 | * DRM_IOCTL_AGP_INFO ioctl argument type. | 555 | * DRM_IOCTL_AGP_INFO ioctl argument type. |
@@ -558,7 +558,7 @@ typedef struct drm_agp_binding { | |||
558 | * drmAgpBase(), drmAgpSize(), drmAgpMemoryUsed(), drmAgpMemoryAvail(), | 558 | * drmAgpBase(), drmAgpSize(), drmAgpMemoryUsed(), drmAgpMemoryAvail(), |
559 | * drmAgpVendorId() and drmAgpDeviceId(). | 559 | * drmAgpVendorId() and drmAgpDeviceId(). |
560 | */ | 560 | */ |
561 | typedef struct drm_agp_info { | 561 | struct drm_agp_info { |
562 | int agp_version_major; | 562 | int agp_version_major; |
563 | int agp_version_minor; | 563 | int agp_version_minor; |
564 | unsigned long mode; | 564 | unsigned long mode; |
@@ -570,25 +570,25 @@ typedef struct drm_agp_info { | |||
570 | /* PCI information */ | 570 | /* PCI information */ |
571 | unsigned short id_vendor; | 571 | unsigned short id_vendor; |
572 | unsigned short id_device; | 572 | unsigned short id_device; |
573 | } drm_agp_info_t; | 573 | }; |
574 | 574 | ||
575 | /** | 575 | /** |
576 | * DRM_IOCTL_SG_ALLOC ioctl argument type. | 576 | * DRM_IOCTL_SG_ALLOC ioctl argument type. |
577 | */ | 577 | */ |
578 | typedef struct drm_scatter_gather { | 578 | struct drm_scatter_gather { |
579 | unsigned long size; /**< In bytes -- will round to page boundary */ | 579 | unsigned long size; /**< In bytes -- will round to page boundary */ |
580 | unsigned long handle; /**< Used for mapping / unmapping */ | 580 | unsigned long handle; /**< Used for mapping / unmapping */ |
581 | } drm_scatter_gather_t; | 581 | }; |
582 | 582 | ||
583 | /** | 583 | /** |
584 | * DRM_IOCTL_SET_VERSION ioctl argument type. | 584 | * DRM_IOCTL_SET_VERSION ioctl argument type. |
585 | */ | 585 | */ |
586 | typedef struct drm_set_version { | 586 | struct drm_set_version { |
587 | int drm_di_major; | 587 | int drm_di_major; |
588 | int drm_di_minor; | 588 | int drm_di_minor; |
589 | int drm_dd_major; | 589 | int drm_dd_major; |
590 | int drm_dd_minor; | 590 | int drm_dd_minor; |
591 | } drm_set_version_t; | 591 | }; |
592 | 592 | ||
593 | #define DRM_IOCTL_BASE 'd' | 593 | #define DRM_IOCTL_BASE 'd' |
594 | #define DRM_IO(nr) _IO(DRM_IOCTL_BASE,nr) | 594 | #define DRM_IO(nr) _IO(DRM_IOCTL_BASE,nr) |
@@ -596,61 +596,61 @@ typedef struct drm_set_version { | |||
596 | #define DRM_IOW(nr,type) _IOW(DRM_IOCTL_BASE,nr,type) | 596 | #define DRM_IOW(nr,type) _IOW(DRM_IOCTL_BASE,nr,type) |
597 | #define DRM_IOWR(nr,type) _IOWR(DRM_IOCTL_BASE,nr,type) | 597 | #define DRM_IOWR(nr,type) _IOWR(DRM_IOCTL_BASE,nr,type) |
598 | 598 | ||
599 | #define DRM_IOCTL_VERSION DRM_IOWR(0x00, drm_version_t) | 599 | #define DRM_IOCTL_VERSION DRM_IOWR(0x00, struct drm_version) |
600 | #define DRM_IOCTL_GET_UNIQUE DRM_IOWR(0x01, drm_unique_t) | 600 | #define DRM_IOCTL_GET_UNIQUE DRM_IOWR(0x01, struct drm_unique) |
601 | #define DRM_IOCTL_GET_MAGIC DRM_IOR( 0x02, drm_auth_t) | 601 | #define DRM_IOCTL_GET_MAGIC DRM_IOR( 0x02, struct drm_auth) |
602 | #define DRM_IOCTL_IRQ_BUSID DRM_IOWR(0x03, drm_irq_busid_t) | 602 | #define DRM_IOCTL_IRQ_BUSID DRM_IOWR(0x03, struct drm_irq_busid) |
603 | #define DRM_IOCTL_GET_MAP DRM_IOWR(0x04, drm_map_t) | 603 | #define DRM_IOCTL_GET_MAP DRM_IOWR(0x04, struct drm_map) |
604 | #define DRM_IOCTL_GET_CLIENT DRM_IOWR(0x05, drm_client_t) | 604 | #define DRM_IOCTL_GET_CLIENT DRM_IOWR(0x05, struct drm_client) |
605 | #define DRM_IOCTL_GET_STATS DRM_IOR( 0x06, drm_stats_t) | 605 | #define DRM_IOCTL_GET_STATS DRM_IOR( 0x06, struct drm_stats) |
606 | #define DRM_IOCTL_SET_VERSION DRM_IOWR(0x07, drm_set_version_t) | 606 | #define DRM_IOCTL_SET_VERSION DRM_IOWR(0x07, struct drm_set_version) |
607 | 607 | ||
608 | #define DRM_IOCTL_SET_UNIQUE DRM_IOW( 0x10, drm_unique_t) | 608 | #define DRM_IOCTL_SET_UNIQUE DRM_IOW( 0x10, struct drm_unique) |
609 | #define DRM_IOCTL_AUTH_MAGIC DRM_IOW( 0x11, drm_auth_t) | 609 | #define DRM_IOCTL_AUTH_MAGIC DRM_IOW( 0x11, struct drm_auth) |
610 | #define DRM_IOCTL_BLOCK DRM_IOWR(0x12, drm_block_t) | 610 | #define DRM_IOCTL_BLOCK DRM_IOWR(0x12, struct drm_block) |
611 | #define DRM_IOCTL_UNBLOCK DRM_IOWR(0x13, drm_block_t) | 611 | #define DRM_IOCTL_UNBLOCK DRM_IOWR(0x13, struct drm_block) |
612 | #define DRM_IOCTL_CONTROL DRM_IOW( 0x14, drm_control_t) | 612 | #define DRM_IOCTL_CONTROL DRM_IOW( 0x14, struct drm_control) |
613 | #define DRM_IOCTL_ADD_MAP DRM_IOWR(0x15, drm_map_t) | 613 | #define DRM_IOCTL_ADD_MAP DRM_IOWR(0x15, struct drm_map) |
614 | #define DRM_IOCTL_ADD_BUFS DRM_IOWR(0x16, drm_buf_desc_t) | 614 | #define DRM_IOCTL_ADD_BUFS DRM_IOWR(0x16, struct drm_buf_desc) |
615 | #define DRM_IOCTL_MARK_BUFS DRM_IOW( 0x17, drm_buf_desc_t) | 615 | #define DRM_IOCTL_MARK_BUFS DRM_IOW( 0x17, struct drm_buf_desc) |
616 | #define DRM_IOCTL_INFO_BUFS DRM_IOWR(0x18, drm_buf_info_t) | 616 | #define DRM_IOCTL_INFO_BUFS DRM_IOWR(0x18, struct drm_buf_info) |
617 | #define DRM_IOCTL_MAP_BUFS DRM_IOWR(0x19, drm_buf_map_t) | 617 | #define DRM_IOCTL_MAP_BUFS DRM_IOWR(0x19, struct drm_buf_map) |
618 | #define DRM_IOCTL_FREE_BUFS DRM_IOW( 0x1a, drm_buf_free_t) | 618 | #define DRM_IOCTL_FREE_BUFS DRM_IOW( 0x1a, struct drm_buf_free) |
619 | 619 | ||
620 | #define DRM_IOCTL_RM_MAP DRM_IOW( 0x1b, drm_map_t) | 620 | #define DRM_IOCTL_RM_MAP DRM_IOW( 0x1b, struct drm_map) |
621 | 621 | ||
622 | #define DRM_IOCTL_SET_SAREA_CTX DRM_IOW( 0x1c, drm_ctx_priv_map_t) | 622 | #define DRM_IOCTL_SET_SAREA_CTX DRM_IOW( 0x1c, struct drm_ctx_priv_map) |
623 | #define DRM_IOCTL_GET_SAREA_CTX DRM_IOWR(0x1d, drm_ctx_priv_map_t) | 623 | #define DRM_IOCTL_GET_SAREA_CTX DRM_IOWR(0x1d, struct drm_ctx_priv_map) |
624 | 624 | ||
625 | #define DRM_IOCTL_ADD_CTX DRM_IOWR(0x20, drm_ctx_t) | 625 | #define DRM_IOCTL_ADD_CTX DRM_IOWR(0x20, struct drm_ctx) |
626 | #define DRM_IOCTL_RM_CTX DRM_IOWR(0x21, drm_ctx_t) | 626 | #define DRM_IOCTL_RM_CTX DRM_IOWR(0x21, struct drm_ctx) |
627 | #define DRM_IOCTL_MOD_CTX DRM_IOW( 0x22, drm_ctx_t) | 627 | #define DRM_IOCTL_MOD_CTX DRM_IOW( 0x22, struct drm_ctx) |
628 | #define DRM_IOCTL_GET_CTX DRM_IOWR(0x23, drm_ctx_t) | 628 | #define DRM_IOCTL_GET_CTX DRM_IOWR(0x23, struct drm_ctx) |
629 | #define DRM_IOCTL_SWITCH_CTX DRM_IOW( 0x24, drm_ctx_t) | 629 | #define DRM_IOCTL_SWITCH_CTX DRM_IOW( 0x24, struct drm_ctx) |
630 | #define DRM_IOCTL_NEW_CTX DRM_IOW( 0x25, drm_ctx_t) | 630 | #define DRM_IOCTL_NEW_CTX DRM_IOW( 0x25, struct drm_ctx) |
631 | #define DRM_IOCTL_RES_CTX DRM_IOWR(0x26, drm_ctx_res_t) | 631 | #define DRM_IOCTL_RES_CTX DRM_IOWR(0x26, struct drm_ctx_res) |
632 | #define DRM_IOCTL_ADD_DRAW DRM_IOWR(0x27, drm_draw_t) | 632 | #define DRM_IOCTL_ADD_DRAW DRM_IOWR(0x27, struct drm_draw) |
633 | #define DRM_IOCTL_RM_DRAW DRM_IOWR(0x28, drm_draw_t) | 633 | #define DRM_IOCTL_RM_DRAW DRM_IOWR(0x28, struct drm_draw) |
634 | #define DRM_IOCTL_DMA DRM_IOWR(0x29, drm_dma_t) | 634 | #define DRM_IOCTL_DMA DRM_IOWR(0x29, struct drm_dma) |
635 | #define DRM_IOCTL_LOCK DRM_IOW( 0x2a, drm_lock_t) | 635 | #define DRM_IOCTL_LOCK DRM_IOW( 0x2a, struct drm_lock) |
636 | #define DRM_IOCTL_UNLOCK DRM_IOW( 0x2b, drm_lock_t) | 636 | #define DRM_IOCTL_UNLOCK DRM_IOW( 0x2b, struct drm_lock) |
637 | #define DRM_IOCTL_FINISH DRM_IOW( 0x2c, drm_lock_t) | 637 | #define DRM_IOCTL_FINISH DRM_IOW( 0x2c, struct drm_lock) |
638 | 638 | ||
639 | #define DRM_IOCTL_AGP_ACQUIRE DRM_IO( 0x30) | 639 | #define DRM_IOCTL_AGP_ACQUIRE DRM_IO( 0x30) |
640 | #define DRM_IOCTL_AGP_RELEASE DRM_IO( 0x31) | 640 | #define DRM_IOCTL_AGP_RELEASE DRM_IO( 0x31) |
641 | #define DRM_IOCTL_AGP_ENABLE DRM_IOW( 0x32, drm_agp_mode_t) | 641 | #define DRM_IOCTL_AGP_ENABLE DRM_IOW( 0x32, struct drm_agp_mode) |
642 | #define DRM_IOCTL_AGP_INFO DRM_IOR( 0x33, drm_agp_info_t) | 642 | #define DRM_IOCTL_AGP_INFO DRM_IOR( 0x33, struct drm_agp_info) |
643 | #define DRM_IOCTL_AGP_ALLOC DRM_IOWR(0x34, drm_agp_buffer_t) | 643 | #define DRM_IOCTL_AGP_ALLOC DRM_IOWR(0x34, struct drm_agp_buffer) |
644 | #define DRM_IOCTL_AGP_FREE DRM_IOW( 0x35, drm_agp_buffer_t) | 644 | #define DRM_IOCTL_AGP_FREE DRM_IOW( 0x35, struct drm_agp_buffer) |
645 | #define DRM_IOCTL_AGP_BIND DRM_IOW( 0x36, drm_agp_binding_t) | 645 | #define DRM_IOCTL_AGP_BIND DRM_IOW( 0x36, struct drm_agp_binding) |
646 | #define DRM_IOCTL_AGP_UNBIND DRM_IOW( 0x37, drm_agp_binding_t) | 646 | #define DRM_IOCTL_AGP_UNBIND DRM_IOW( 0x37, struct drm_agp_binding) |
647 | 647 | ||
648 | #define DRM_IOCTL_SG_ALLOC DRM_IOW( 0x38, drm_scatter_gather_t) | 648 | #define DRM_IOCTL_SG_ALLOC DRM_IOW( 0x38, struct drm_scatter_gather) |
649 | #define DRM_IOCTL_SG_FREE DRM_IOW( 0x39, drm_scatter_gather_t) | 649 | #define DRM_IOCTL_SG_FREE DRM_IOW( 0x39, struct drm_scatter_gather) |
650 | 650 | ||
651 | #define DRM_IOCTL_WAIT_VBLANK DRM_IOWR(0x3a, drm_wait_vblank_t) | 651 | #define DRM_IOCTL_WAIT_VBLANK DRM_IOWR(0x3a, union drm_wait_vblank) |
652 | 652 | ||
653 | #define DRM_IOCTL_UPDATE_DRAW DRM_IOW(0x3f, drm_update_draw_t) | 653 | #define DRM_IOCTL_UPDATE_DRAW DRM_IOW(0x3f, struct drm_update_draw) |
654 | 654 | ||
655 | /** | 655 | /** |
656 | * Device specific ioctls should only be in their respective headers | 656 | * Device specific ioctls should only be in their respective headers |
@@ -663,4 +663,49 @@ typedef struct drm_set_version { | |||
663 | #define DRM_COMMAND_BASE 0x40 | 663 | #define DRM_COMMAND_BASE 0x40 |
664 | #define DRM_COMMAND_END 0xA0 | 664 | #define DRM_COMMAND_END 0xA0 |
665 | 665 | ||
666 | /* typedef area */ | ||
667 | #ifndef __KERNEL__ | ||
668 | typedef struct drm_clip_rect drm_clip_rect_t; | ||
669 | typedef struct drm_drawable_info drm_drawable_info_t; | ||
670 | typedef struct drm_tex_region drm_tex_region_t; | ||
671 | typedef struct drm_hw_lock drm_hw_lock_t; | ||
672 | typedef struct drm_version drm_version_t; | ||
673 | typedef struct drm_unique drm_unique_t; | ||
674 | typedef struct drm_list drm_list_t; | ||
675 | typedef struct drm_block drm_block_t; | ||
676 | typedef struct drm_control drm_control_t; | ||
677 | typedef enum drm_map_type drm_map_type_t; | ||
678 | typedef enum drm_map_flags drm_map_flags_t; | ||
679 | typedef struct drm_ctx_priv_map drm_ctx_priv_map_t; | ||
680 | typedef struct drm_map drm_map_t; | ||
681 | typedef struct drm_client drm_client_t; | ||
682 | typedef enum drm_stat_type drm_stat_type_t; | ||
683 | typedef struct drm_stats drm_stats_t; | ||
684 | typedef enum drm_lock_flags drm_lock_flags_t; | ||
685 | typedef struct drm_lock drm_lock_t; | ||
686 | typedef enum drm_dma_flags drm_dma_flags_t; | ||
687 | typedef struct drm_buf_desc drm_buf_desc_t; | ||
688 | typedef struct drm_buf_info drm_buf_info_t; | ||
689 | typedef struct drm_buf_free drm_buf_free_t; | ||
690 | typedef struct drm_buf_pub drm_buf_pub_t; | ||
691 | typedef struct drm_buf_map drm_buf_map_t; | ||
692 | typedef struct drm_dma drm_dma_t; | ||
693 | typedef union drm_wait_vblank drm_wait_vblank_t; | ||
694 | typedef struct drm_agp_mode drm_agp_mode_t; | ||
695 | typedef enum drm_ctx_flags drm_ctx_flags_t; | ||
696 | typedef struct drm_ctx drm_ctx_t; | ||
697 | typedef struct drm_ctx_res drm_ctx_res_t; | ||
698 | typedef struct drm_draw drm_draw_t; | ||
699 | typedef struct drm_update_draw drm_update_draw_t; | ||
700 | typedef struct drm_auth drm_auth_t; | ||
701 | typedef struct drm_irq_busid drm_irq_busid_t; | ||
702 | typedef enum drm_vblank_seq_type drm_vblank_seq_type_t; | ||
703 | |||
704 | typedef struct drm_agp_buffer drm_agp_buffer_t; | ||
705 | typedef struct drm_agp_binding drm_agp_binding_t; | ||
706 | typedef struct drm_agp_info drm_agp_info_t; | ||
707 | typedef struct drm_scatter_gather drm_scatter_gather_t; | ||
708 | typedef struct drm_set_version drm_set_version_t; | ||
709 | #endif | ||
710 | |||
666 | #endif | 711 | #endif |