On Fri, Apr 20, 2012 at 06:23:31PM -0700, Ben Widawsky wrote: > Finally we can use the new timed seqno waiting function to allow > userspace to wait on a request with a timeout. This implements that > interface. > > The new ioctl is very straight forward, there is a flags field which I > envision may be useful for various flush permutations of the command. > > Signed-off-by: Ben Widawsky <benjamin.widawsky at intel.com> > --- [cut] > diff --git a/include/drm/i915_drm.h b/include/drm/i915_drm.h > index f3f8224..e365ab9 100644 > --- a/include/drm/i915_drm.h > +++ b/include/drm/i915_drm.h > @@ -200,6 +200,7 @@ typedef struct _drm_i915_sarea { > #define DRM_I915_GEM_EXECBUFFER2 0x29 > #define DRM_I915_GET_SPRITE_COLORKEY 0x2a > #define DRM_I915_SET_SPRITE_COLORKEY 0x2b > +#define DRM_I915_GEM_WAIT 0x2c > > #define DRM_IOCTL_I915_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_I915_INIT, drm_i915_init_t) > #define DRM_IOCTL_I915_FLUSH DRM_IO ( DRM_COMMAND_BASE + DRM_I915_FLUSH) > @@ -243,6 +244,7 @@ typedef struct _drm_i915_sarea { > #define DRM_IOCTL_I915_OVERLAY_ATTRS DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_OVERLAY_ATTRS, struct drm_intel_overlay_attrs) > #define DRM_IOCTL_I915_SET_SPRITE_COLORKEY DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_SET_SPRITE_COLORKEY, struct drm_intel_sprite_colorkey) > #define DRM_IOCTL_I915_GET_SPRITE_COLORKEY DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_SET_SPRITE_COLORKEY, struct drm_intel_sprite_colorkey) > +#define DRM_IOCTL_I915_GEM_WAIT DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_WAIT, struct drm_i915_gem_wait) > > /* Allow drivers to submit batchbuffers directly to hardware, relying > * on the security mechanisms provided by hardware. > @@ -886,4 +888,11 @@ struct drm_intel_sprite_colorkey { > __u32 flags; > }; > > +struct drm_i915_gem_wait { > + __u32 bo_handle; > + __u64 timeout_ns; > + __u32 flags; > + __u32 rsvd; > +}; struct layout gone wrong, you miss a __u32 before the __u64. -Daniel -- Daniel Vetter Mail: daniel at ffwll.ch Mobile: +41 (0)79 365 57 48