diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2017-08-18 17:12:15 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2017-08-22 18:34:32 +0900 |
commit | 2692508ae8920ce62f488a9384444c1645964913 (patch) | |
tree | 6678a00b0fe62764f41efd78c8b2103ef6fc9011 | |
parent | 8c82878c6ef1b984ba289383dc17152192c916ee (diff) |
Always allow DRI2 page flipping with TearFree
Even if TearFree is enabled for the CRTC we're synchronizing to.
(Ported from radeon commit d314cbfb228bb4b8762714f98d0c114a8ee3f061)
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | man/amdgpu.man | 6 | ||||
-rw-r--r-- | src/amdgpu_dri2.c | 2 |
2 files changed, 2 insertions, 6 deletions
diff --git a/man/amdgpu.man b/man/amdgpu.man index ebb472a..c38defe 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 bf85dfa..ccf5477 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); |