diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-06-29 18:07:25 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2016-10-19 18:31:37 +0900 |
commit | 7dd28475f129300e67838cb7cba5ce098bc6c0a7 (patch) | |
tree | 1188fdbd1a0fd141b02048c6cbb0384dfb31467b | |
parent | 9433b702fc164c3fe9e17d646eeaaa5de17a52de (diff) |
Add drmModePageFlipTarget
It supports the DRM_MODE_PAGE_FLIP_TARGET_* flags.
Acked-by: Daniel Vetter <daniel@ffwll.ch>
-rw-r--r-- | xf86drmMode.c | 16 | ||||
-rw-r--r-- | xf86drmMode.h | 3 |
2 files changed, 19 insertions, 0 deletions
diff --git a/xf86drmMode.c b/xf86drmMode.c index 228c6e4b..fb22f683 100644 --- a/xf86drmMode.c +++ b/xf86drmMode.c @@ -948,6 +948,22 @@ int drmModePageFlip(int fd, uint32_t crtc_id, uint32_t fb_id, return DRM_IOCTL(fd, DRM_IOCTL_MODE_PAGE_FLIP, &flip); } +int drmModePageFlipTarget(int fd, uint32_t crtc_id, uint32_t fb_id, + uint32_t flags, void *user_data, + uint32_t target_vblank) +{ + struct drm_mode_crtc_page_flip_target flip_target; + + memclear(flip_target); + flip_target.fb_id = fb_id; + flip_target.crtc_id = crtc_id; + flip_target.user_data = VOID2U64(user_data); + flip_target.flags = flags; + flip_target.sequence = target_vblank; + + return DRM_IOCTL(fd, DRM_IOCTL_MODE_PAGE_FLIP, &flip_target); +} + int drmModeSetPlane(int fd, uint32_t plane_id, uint32_t crtc_id, uint32_t fb_id, uint32_t flags, int32_t crtc_x, int32_t crtc_y, diff --git a/xf86drmMode.h b/xf86drmMode.h index 1a02fed4..b6849678 100644 --- a/xf86drmMode.h +++ b/xf86drmMode.h @@ -473,6 +473,9 @@ extern int drmModeCrtcGetGamma(int fd, uint32_t crtc_id, uint32_t size, uint16_t *red, uint16_t *green, uint16_t *blue); extern int drmModePageFlip(int fd, uint32_t crtc_id, uint32_t fb_id, uint32_t flags, void *user_data); +extern int drmModePageFlipTarget(int fd, uint32_t crtc_id, uint32_t fb_id, + uint32_t flags, void *user_data, + uint32_t target_vblank); extern drmModePlaneResPtr drmModeGetPlaneResources(int fd); extern drmModePlanePtr drmModeGetPlane(int fd, uint32_t plane_id); |