diff options
author | Michel Daenzer <michel@daenzer.net> | 2002-11-30 14:24:07 +0000 |
---|---|---|
committer | Michel Daenzer <michel@daenzer.net> | 2002-11-30 14:24:07 +0000 |
commit | 40891ac190fb74f389ea1a9758249a2f642fd99b (patch) | |
tree | 00acdea17e37ac7578a68bba12b739d1366f6637 /shared/drm.h | |
parent | c869f4a1e59c4fa0bed5681cad5ad49e685603eb (diff) |
vertical blank ioctl can send signal instead of blocking
Diffstat (limited to 'shared/drm.h')
-rw-r--r-- | shared/drm.h | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/shared/drm.h b/shared/drm.h index f26d4442..d3c9f158 100644 --- a/shared/drm.h +++ b/shared/drm.h @@ -346,17 +346,30 @@ typedef struct drm_irq_busid { } drm_irq_busid_t; typedef enum { - _DRM_VBLANK_ABSOLUTE = 0x0, /* Wait for specific vblank sequence number */ - _DRM_VBLANK_RELATIVE = 0x1 /* Wait for given number of vblanks */ + _DRM_VBLANK_ABSOLUTE = 0x0, /* Wait for specific vblank sequence number */ + _DRM_VBLANK_RELATIVE = 0x1, /* Wait for given number of vblanks */ + _DRM_VBLANK_SIGNAL = 0x80000000 /* Send signal instead of blocking */ } drm_vblank_seq_type_t; -typedef struct drm_radeon_vbl_wait { +#define _DRM_VBLANK_FLAGS_MASK _DRM_VBLANK_SIGNAL + +struct drm_wait_vblank_request { + drm_vblank_seq_type_t type; + unsigned int sequence; + unsigned long signal; +}; + +struct drm_wait_vblank_reply { drm_vblank_seq_type_t type; unsigned int sequence; long tval_sec; long tval_usec; -} drm_wait_vblank_t; +}; +typedef union drm_wait_vblank { + struct drm_wait_vblank_request request; + struct drm_wait_vblank_reply reply; +} drm_wait_vblank_t; typedef struct drm_agp_mode { unsigned long mode; |