456 #ifdef _MULTI_DATAMODEL |
456 #ifdef _MULTI_DATAMODEL |
457 #define DRM_IOCTL_DEF(ioctl, _func, _flags, _copyin32, _copyout32) \ |
457 #define DRM_IOCTL_DEF(ioctl, _func, _flags, _copyin32, _copyout32) \ |
458 [DRM_IOCTL_NR(ioctl)] = {.cmd = ioctl, .flags = _flags, .func = _func, .copyin32 = _copyin32, .copyout32 = _copyout32} |
458 [DRM_IOCTL_NR(ioctl)] = {.cmd = ioctl, .flags = _flags, .func = _func, .copyin32 = _copyin32, .copyout32 = _copyout32} |
459 #else |
459 #else |
460 #define DRM_IOCTL_DEF(ioctl, _func, _flags, _copyin32, _copyout32) \ |
460 #define DRM_IOCTL_DEF(ioctl, _func, _flags, _copyin32, _copyout32) \ |
461 [DRM_IOCTL_NR(ioctl)] = {.cmd = ioctl, .flags = _flags, .func = _func, .copyin32 = NULL, .copyout32 = NULL} |
461 [DRM_IOCTL_NR(ioctl)] = {.cmd = ioctl, .flags = _flags, .func = _func, .copyin32 = NULL, .copyout32 = NULL, .name = ##_func} |
462 #endif |
462 #endif |
463 |
463 |
464 typedef struct drm_magic_entry { |
464 typedef struct drm_magic_entry { |
465 drm_magic_t magic; |
465 drm_magic_t magic; |
466 struct drm_file *priv; |
466 struct drm_file *priv; |
599 |
599 |
600 /* Related drm device */ |
600 /* Related drm device */ |
601 struct drm_device *dev; |
601 struct drm_device *dev; |
602 |
602 |
603 /* Mapping info for this object */ |
603 /* Mapping info for this object */ |
|
604 /* Not used in this driver, should remove to prevent confusion */ |
604 struct drm_map_list map_list; |
605 struct drm_map_list map_list; |
605 |
606 |
606 /* |
607 /* |
607 * Size of the object, in bytes. Immutable over the object's |
608 * Size of the object, in bytes. Immutable over the object's |
608 * lifetime. |
609 * lifetime. |
639 ddi_dma_handle_t dma_hdl; |
640 ddi_dma_handle_t dma_hdl; |
640 ddi_acc_handle_t acc_hdl; |
641 ddi_acc_handle_t acc_hdl; |
641 caddr_t kaddr; |
642 caddr_t kaddr; |
642 size_t real_size; /* real size of memory */ |
643 size_t real_size; /* real size of memory */ |
643 pfn_t *pfnarray; |
644 pfn_t *pfnarray; |
|
645 /* Obsolete? Probably should be using the kaddr value above? */ |
644 caddr_t gtt_map_kaddr; |
646 caddr_t gtt_map_kaddr; |
645 |
647 |
646 struct gfxp_pmem_cookie mempool_cookie; |
648 struct gfxp_pmem_cookie mempool_cookie; |
647 |
649 |
648 struct list_head seg_list; |
650 struct list_head seg_list; |
1578 drm_gem_object_handle_unreference_unlocked(struct drm_gem_object *obj); |
1580 drm_gem_object_handle_unreference_unlocked(struct drm_gem_object *obj); |
1579 |
1581 |
1580 struct drm_gem_object *drm_gem_object_lookup(struct drm_device *dev, |
1582 struct drm_gem_object *drm_gem_object_lookup(struct drm_device *dev, |
1581 struct drm_file *filp, |
1583 struct drm_file *filp, |
1582 u32 handle); |
1584 u32 handle); |
|
1585 int drm_gem_dumb_destroy(struct drm_file *file, |
|
1586 struct drm_device *dev, |
|
1587 uint32_t handle); |
|
1588 |
1583 int drm_gem_close_ioctl(DRM_IOCTL_ARGS); |
1589 int drm_gem_close_ioctl(DRM_IOCTL_ARGS); |
1584 int drm_gem_flink_ioctl(DRM_IOCTL_ARGS); |
1590 int drm_gem_flink_ioctl(DRM_IOCTL_ARGS); |
1585 int drm_gem_open_ioctl(DRM_IOCTL_ARGS); |
1591 int drm_gem_open_ioctl(DRM_IOCTL_ARGS); |
1586 void drm_gem_open(struct drm_device *dev, struct drm_file *file_private); |
1592 void drm_gem_open(struct drm_device *dev, struct drm_file *file_private); |
1587 void drm_gem_release(struct drm_device *dev, struct drm_file *file_private); |
1593 void drm_gem_release(struct drm_device *dev, struct drm_file *file_private); |