diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-11-22 16:30:59 +0900 |
---|---|---|
committer | Michel Dänzer <michel.daenzer@amd.com> | 2016-11-22 16:30:59 +0900 |
commit | f9ba1e8fd48cd967a09c4e083b277505d08d3849 (patch) | |
tree | 787266fee2af8a23af34e46717d65a6d21b86b41 /src/drmmode_display.h | |
parent | e8aa4e7ea59f00d5527654b7181a05aab8c78928 (diff) |
Use DRM_MODE_PAGE_FLIP_TARGET_ABSOLUTE/RELATIVE flags when available
(Ported from radeon commits 1106b2f773ad0611c729b27f4c192a26b43ef1e7
and 5fea5ef2f07eee4a0f94baab427010b936f1d4b4)
v2:
* Squash in radeon fix for TearFree regression
* Remove preprocessor guards for compatibility with libdrm < 2.4.72
(Emil Velikov)
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'src/drmmode_display.h')
-rw-r--r-- | src/drmmode_display.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/drmmode_display.h b/src/drmmode_display.h index 2c4a869..639b3fb 100644 --- a/src/drmmode_display.h +++ b/src/drmmode_display.h @@ -130,6 +130,16 @@ enum drmmode_flip_sync { }; +extern int drmmode_page_flip_target_absolute(AMDGPUEntPtr pAMDGPUEnt, + drmmode_crtc_private_ptr drmmode_crtc, + int fb_id, uint32_t flags, + uintptr_t drm_queue_seq, + uint32_t target_msc); +extern int drmmode_page_flip_target_relative(AMDGPUEntPtr pAMDGPUEnt, + drmmode_crtc_private_ptr drmmode_crtc, + int fb_id, uint32_t flags, + uintptr_t drm_queue_seq, + uint32_t target_msc); extern Bool drmmode_pre_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int cpp); extern void drmmode_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode); extern void drmmode_fini(ScrnInfoPtr pScrn, drmmode_ptr drmmode); @@ -153,7 +163,8 @@ Bool amdgpu_do_pageflip(ScrnInfoPtr scrn, ClientPtr client, PixmapPtr new_front, uint64_t id, void *data, int ref_crtc_hw_id, amdgpu_drm_handler_proc handler, amdgpu_drm_abort_proc abort, - enum drmmode_flip_sync flip_sync); + enum drmmode_flip_sync flip_sync, + uint32_t target_msc); int drmmode_crtc_get_ust_msc(xf86CrtcPtr crtc, CARD64 *ust, CARD64 *msc); int drmmode_get_current_ust(int drm_fd, CARD64 * ust); |