summaryrefslogtreecommitdiff
path: root/src/radeon_present.c
diff options
context:
space:
mode:
authorMario Kleiner <mario.kleiner.de@gmail.com>2015-05-09 07:24:36 +0200
committerMichel Dänzer <michel.daenzer@amd.com>2015-05-11 12:44:51 +0900
commit80eede245d1eda27eaba108b0761a24bfd69aff6 (patch)
treed12484ba71f91043ce96d8c33199580d33ed28ef /src/radeon_present.c
parente3be8b0a8cf484ff16597413a6172788178e80c8 (diff)
present: Fix present notify timestamps and counts.
Invalid (msc,ust)=(0,0) were returned to the server because a wrong crtc_id was used to specify which crtc should deliver pageflip completion data. Fix it in accordance with the dri2 implementation. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Diffstat (limited to 'src/radeon_present.c')
-rw-r--r--src/radeon_present.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/radeon_present.c b/src/radeon_present.c
index d9e20bc1..53819e09 100644
--- a/src/radeon_present.c
+++ b/src/radeon_present.c
@@ -309,8 +309,8 @@ radeon_present_flip(RRCrtcPtr crtc, uint64_t event_id, uint64_t target_msc,
ScreenPtr screen = crtc->pScreen;
ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
struct radeon_present_vblank_event *event;
- drmmode_crtc_private_ptr drmmode_crtc = get_drmmode_crtc(scrn, crtc);
- int crtc_id = drmmode_crtc->mode_crtc->crtc_id;
+ xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+ int crtc_id = xf86_crtc ? drmmode_get_crtc_id(xf86_crtc) : -1;
uint32_t handle;
Bool ret;