[PATCH xf86-video-amdgpu 10/10] Always allow DRI2 page flipping with TearFree

Michel Dänzer michel at daenzer.net
Fri Aug 18 08:53:22 UTC 2017


From: Michel Dänzer <michel.daenzer at amd.com>

Even if TearFree is enabled for the CRTC we're synchronizing to.

(Ported from radeon commit d314cbfb228bb4b8762714f98d0c114a8ee3f061)

Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
---
 man/amdgpu.man    | 6 ++----
 src/amdgpu_dri2.c | 2 --
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/man/amdgpu.man b/man/amdgpu.man
index ebb472aba..c38defeb3 100644
--- a/man/amdgpu.man
+++ b/man/amdgpu.man
@@ -77,10 +77,8 @@ Set the default value of the per-output 'TearFree' property, which controls
 tearing prevention using the hardware page flipping mechanism. TearFree is
 on for any CRTC associated with one or more outputs with TearFree on. Two
 separate scanout buffers need to be allocated for each CRTC with TearFree
-on. While TearFree is on for any CRTC, it may prevent clients from using
-DRI page flipping. If this option is set, the default value of the property
-is 'on' or 'off' accordingly. If this option isn't set, the default value of the
-property is
+on. If this option is set, the default value of the property is 'on' or 'off'
+accordingly. If this option isn't set, the default value of the property is
 .B auto,
 which means that TearFree is on for outputs with rotation or other RandR
 transforms, and for RandR 1.4 slave outputs, otherwise off.
diff --git a/src/amdgpu_dri2.c b/src/amdgpu_dri2.c
index bf85dfa63..ccf5477cf 100644
--- a/src/amdgpu_dri2.c
+++ b/src/amdgpu_dri2.c
@@ -641,8 +641,6 @@ can_flip(xf86CrtcPtr crtc, DrawablePtr draw,
 	for (i = 0, num_crtcs_on = 0; i < config->num_crtc; i++) {
 		if (drmmode_crtc_can_flip(config->crtc[i]))
 			num_crtcs_on++;
-		else if (config->crtc[i] == crtc)
-			return FALSE;
 	}
 
 	return num_crtcs_on > 0 && can_exchange(pScrn, draw, front, back);
-- 
2.14.1



More information about the amd-gfx mailing list