From ceeacb455cd058492a493aac954deab8455804b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Fri, 18 May 2018 12:13:23 +0200 Subject: [PATCH] Call drmmode_do_crtc_dpms from drmmode_crtc_dpms as well Leo pointed out that drmmode_do_crtc_dpms wasn't getting called when turning off an output with xrandr --output --off This meant that the vblank sequence number and timestamp wouldn't be saved before turning off the CRTC in this case. Reported-by: Leo (Sunpeng) Li Reviewed-by: Leo (Sunpeng) Li --- src/drmmode_display.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/drmmode_display.c b/src/drmmode_display.c index 0ee8996..5d46278 100644 --- a/src/drmmode_display.c +++ b/src/drmmode_display.c @@ -342,8 +342,7 @@ drmmode_crtc_dpms(xf86CrtcPtr crtc, int mode) /* Disable unused CRTCs and enable/disable active CRTCs */ if (!crtc->enabled || mode != DPMSModeOn) { - drmmode_crtc_wait_pending_event(drmmode_crtc, pAMDGPUEnt->fd, - drmmode_crtc->flip_pending); + drmmode_do_crtc_dpms(crtc, DPMSModeOff); drmModeSetCrtc(pAMDGPUEnt->fd, drmmode_crtc->mode_crtc->crtc_id, 0, 0, 0, NULL, 0, NULL); drmmode_fb_reference(pAMDGPUEnt->fd, &drmmode_crtc->fb, NULL);