aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlija Hadzic2011-03-24 12:24:28 -0500
committerAlex Deucher2011-04-04 10:04:03 -0500
commitbe8802a9414e85ba07ae257fccadd245fcf7c7b6 (patch)
tree2d8ba7b21ebee5e08ee9aa280d92c1eeab506ded /xf86drm.h
parentf395b0a25c9f99688e7b2799ac02f1f930f24e09 (diff)
downloadexternal-libdrm-be8802a9414e85ba07ae257fccadd245fcf7c7b6.tar.gz
external-libdrm-be8802a9414e85ba07ae257fccadd245fcf7c7b6.tar.xz
external-libdrm-be8802a9414e85ba07ae257fccadd245fcf7c7b6.zip
libdrm: (revised) vblank wait on crtc > 1
Hi Alex, Enclosed is a revised version of the patch sent on Mar 18, against the master branch of the drm userspace (i.e. libdrm). Details summarised in this thread: http://lists.freedesktop.org/archives/dri-devel/2011-March/009499.html This patch reconciles libdrm with the the kernel change that Dave pushed this morning. It *supersedes* the previously sent patch (i.e. apply it to the master branch as it exists at the time of this writing, not as an incremental patch to the one sent previously). Regards, Ilija Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Diffstat (limited to 'xf86drm.h')
-rw-r--r--xf86drm.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/xf86drm.h b/xf86drm.h
index bf0d5df8..20f4c783 100644
--- a/xf86drm.h
+++ b/xf86drm.h
@@ -296,12 +296,15 @@ typedef struct _drmTextureRegion {
296typedef enum { 296typedef enum {
297 DRM_VBLANK_ABSOLUTE = 0x0, /**< Wait for specific vblank sequence number */ 297 DRM_VBLANK_ABSOLUTE = 0x0, /**< Wait for specific vblank sequence number */
298 DRM_VBLANK_RELATIVE = 0x1, /**< Wait for given number of vblanks */ 298 DRM_VBLANK_RELATIVE = 0x1, /**< Wait for given number of vblanks */
299 /* bits 1-6 are reserved for high crtcs */
300 DRM_VBLANK_HIGH_CRTC_MASK = 0x0000003e,
299 DRM_VBLANK_EVENT = 0x4000000, /**< Send event instead of blocking */ 301 DRM_VBLANK_EVENT = 0x4000000, /**< Send event instead of blocking */
300 DRM_VBLANK_FLIP = 0x8000000, /**< Scheduled buffer swap should flip */ 302 DRM_VBLANK_FLIP = 0x8000000, /**< Scheduled buffer swap should flip */
301 DRM_VBLANK_NEXTONMISS = 0x10000000, /**< If missed, wait for next vblank */ 303 DRM_VBLANK_NEXTONMISS = 0x10000000, /**< If missed, wait for next vblank */
302 DRM_VBLANK_SECONDARY = 0x20000000, /**< Secondary display controller */ 304 DRM_VBLANK_SECONDARY = 0x20000000, /**< Secondary display controller */
303 DRM_VBLANK_SIGNAL = 0x40000000 /* Send signal instead of blocking */ 305 DRM_VBLANK_SIGNAL = 0x40000000 /* Send signal instead of blocking */
304} drmVBlankSeqType; 306} drmVBlankSeqType;
307#define DRM_VBLANK_HIGH_CRTC_SHIFT 1
305 308
306typedef struct _drmVBlankReq { 309typedef struct _drmVBlankReq {
307 drmVBlankSeqType type; 310 drmVBlankSeqType type;