DF-3699 / i915_uapi_min.h
/* Minimal i915 uapi definitions (Linux-compatible, as exposed by DragonFly) */ #ifndef I915_UAPI_MIN_H #define I915_UAPI_MIN_H #include <stdint.h> #define __u32 uint32_t #define __u64 uint64_t #define __s32 int32_t #define __s64 int64_t #define __user #define DRM_IOCTL_BASE 'd' #define DRM_IO(nr) _IO(DRM_IOCTL_BASE,nr) #define DRM_IOR(nr,type) _IOR(DRM_IOCTL_BASE,nr,type) #define DRM_IOW(nr,type) _IOW(DRM_IOCTL_BASE,nr,type) #define DRM_IOWR(nr,type) _IOWR(DRM_IOCTL_BASE,nr,type) #define DRM_I915_GETPARAM 0x06 #define DRM_I915_GEM_CONTEXT_CREATE 0x2d struct drm_i915_getparam { __s32 param; int __user *value; }; #define I915_PARAM_CHIPSET_ID 2 struct drm_i915_gem_context_create { __u32 ctx_id; __u32 pad; }; struct drm_i915_gem_create { __u64 size; __u32 handle; __u32 pad; }; struct drm_i915_gem_execbuffer2 { __u64 buffers_ptr; __u32 buffer_count; __u32 batch_start_offset; __u32 batch_len; __u32 DR1; __u32 DR4; __u32 num_cliprects; __u64 cliprects_ptr; __u64 flags; __u64 rsvd1; __u64 rsvd2; }; struct drm_i915_gem_wait { __u32 bo_handle; __u32 flags; __s64 timeout_ns; }; #define DRM_IOCTL_I915_GETPARAM DRM_IOWR(DRM_I915_GETPARAM, struct drm_i915_getparam) #define DRM_IOCTL_I915_GEM_CONTEXT_CREATE DRM_IOWR(DRM_I915_GEM_CONTEXT_CREATE, struct drm_i915_gem_context_create) #define DRM_IOCTL_I915_GEM_CREATE DRM_IOWR(0x0b, struct drm_i915_gem_create) #define DRM_IOCTL_I915_GEM_EXECBUFFER2_WR DRM_IOWR(0x3e, struct drm_i915_gem_execbuffer2) #define DRM_IOCTL_I915_GEM_WAIT DRM_IOWR(0x2c, struct drm_i915_gem_wait) #endif |