mirror of
https://github.com/X11Libre/xf86-video-ati.git
synced 2026-03-24 01:24:43 +00:00
Move DPMS check from radeon_scanout_do_update to radeon_scanout_flip
When radeon_scanout_do_update is called from drmmode_crtc_scanout_update, drmmode_crtc->pending_dpms_mode may still be != DPMSModeOn, e.g. during server startup. Fixes intermittently showing garbage with TearFree enabled.
This commit is contained in:
committed by
Michel Dänzer
parent
0a12bf1085
commit
cc9d6b7db9
@@ -882,7 +882,6 @@ radeon_scanout_do_update(xf86CrtcPtr xf86_crtc, int scanout_id)
|
||||
Bool force;
|
||||
|
||||
if (!xf86_crtc->enabled ||
|
||||
drmmode_crtc->pending_dpms_mode != DPMSModeOn ||
|
||||
!drmmode_crtc->scanout[scanout_id].pixmap)
|
||||
return FALSE;
|
||||
|
||||
@@ -1069,7 +1068,8 @@ radeon_scanout_flip(ScreenPtr pScreen, RADEONInfoPtr info,
|
||||
uintptr_t drm_queue_seq;
|
||||
unsigned scanout_id;
|
||||
|
||||
if (drmmode_crtc->scanout_update_pending)
|
||||
if (drmmode_crtc->scanout_update_pending ||
|
||||
drmmode_crtc->pending_dpms_mode != DPMSModeOn)
|
||||
return;
|
||||
|
||||
scanout_id = drmmode_crtc->scanout_id ^ 1;
|
||||
|
||||
Reference in New Issue
Block a user