drm/vblank: update recently added vbl interface to be more future proof.

This makes the interface a bit cleaner by leaving a single gap in the
vblank bit space instead of creating two gaps.

Suggestions from Michel on mailing list/irc.

Reviewed-by: Michel Dänzer <michel@daenzer.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>

+5 -4
+1 -1
drivers/gpu/drm/drm_ioctl.c
··· 280 if (dev->driver->dumb_create) 281 req->value = 1; 282 break; 283 - case DRM_CAP_HIGH_CRTC: 284 req->value = 1; 285 break; 286 default:
··· 280 if (dev->driver->dumb_create) 281 req->value = 1; 282 break; 283 + case DRM_CAP_VBLANK_HIGH_CRTC: 284 req->value = 1; 285 break; 286 default:
+4 -3
include/drm/drm.h
··· 463 enum drm_vblank_seq_type { 464 _DRM_VBLANK_ABSOLUTE = 0x0, /**< Wait for specific vblank sequence number */ 465 _DRM_VBLANK_RELATIVE = 0x1, /**< Wait for given number of vblanks */ 466 _DRM_VBLANK_EVENT = 0x4000000, /**< Send event instead of blocking */ 467 _DRM_VBLANK_FLIP = 0x8000000, /**< Scheduled buffer swap should flip */ 468 _DRM_VBLANK_NEXTONMISS = 0x10000000, /**< If missed, wait for next vblank */ 469 _DRM_VBLANK_SECONDARY = 0x20000000, /**< Secondary display controller */ 470 _DRM_VBLANK_SIGNAL = 0x40000000 /**< Send signal instead of blocking, unsupported */ 471 }; 472 - #define _DRM_VBLANK_HIGH_CRTC_SHIFT 16 473 - #define _DRM_VBLANK_HIGH_CRTC_MASK 0x001F0000 474 475 #define _DRM_VBLANK_TYPES_MASK (_DRM_VBLANK_ABSOLUTE | _DRM_VBLANK_RELATIVE) 476 #define _DRM_VBLANK_FLAGS_MASK (_DRM_VBLANK_EVENT | _DRM_VBLANK_SIGNAL | \ ··· 756 }; 757 758 #define DRM_CAP_DUMB_BUFFER 0x1 759 - #define DRM_CAP_HIGH_CRTC 0x2 760 761 /* typedef area */ 762 #ifndef __KERNEL__
··· 463 enum drm_vblank_seq_type { 464 _DRM_VBLANK_ABSOLUTE = 0x0, /**< Wait for specific vblank sequence number */ 465 _DRM_VBLANK_RELATIVE = 0x1, /**< Wait for given number of vblanks */ 466 + /* bits 1-6 are reserved for high crtcs */ 467 + _DRM_VBLANK_HIGH_CRTC_MASK = 0x0000003e, 468 _DRM_VBLANK_EVENT = 0x4000000, /**< Send event instead of blocking */ 469 _DRM_VBLANK_FLIP = 0x8000000, /**< Scheduled buffer swap should flip */ 470 _DRM_VBLANK_NEXTONMISS = 0x10000000, /**< If missed, wait for next vblank */ 471 _DRM_VBLANK_SECONDARY = 0x20000000, /**< Secondary display controller */ 472 _DRM_VBLANK_SIGNAL = 0x40000000 /**< Send signal instead of blocking, unsupported */ 473 }; 474 + #define _DRM_VBLANK_HIGH_CRTC_SHIFT 1 475 476 #define _DRM_VBLANK_TYPES_MASK (_DRM_VBLANK_ABSOLUTE | _DRM_VBLANK_RELATIVE) 477 #define _DRM_VBLANK_FLAGS_MASK (_DRM_VBLANK_EVENT | _DRM_VBLANK_SIGNAL | \ ··· 755 }; 756 757 #define DRM_CAP_DUMB_BUFFER 0x1 758 + #define DRM_CAP_VBLANK_HIGH_CRTC 0x2 759 760 /* typedef area */ 761 #ifndef __KERNEL__