diff options
Diffstat (limited to 'shared-core')
| -rw-r--r-- | shared-core/drm.h | 28 | 
1 files changed, 28 insertions, 0 deletions
| diff --git a/shared-core/drm.h b/shared-core/drm.h index d97844f8..089e184a 100644 --- a/shared-core/drm.h +++ b/shared-core/drm.h @@ -809,6 +809,34 @@ struct drm_gem_open {  #define DRM_COMMAND_BASE                0x40  #define DRM_COMMAND_END                 0xA0 +/** + * Header for events written back to userspace on the drm fd.  The + * type defines the type of event, the length specifies the total + * length of the event (including the header), and user_data is + * typically a 64 bit value passed with the ioctl that triggered the + * event.  A read on the drm fd will always only return complete + * events, that is, if for example the read buffer is 100 bytes, and + * there are two 64 byte events pending, only one will be returned. + * + * Event types 0 - 0x7fffffff are generic drm events, 0x80000000 and + * up are chipset specific. + */ +struct drm_event { +	uint32_t type; +	uint32_t length; +}; + +#define DRM_EVENT_VBLANK 0x01 + +struct drm_event_vblank { +	struct drm_event base; +	uint64_t user_data; +	uint32_t tv_sec; +	uint32_t tv_usec; +	uint32_t sequence; +	uint32_t reserved; +}; +  /* typedef area */  #ifndef __KERNEL__  typedef struct drm_clip_rect drm_clip_rect_t; | 
