summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2017-03-02 16:55:38 +0900
committerMichel Dänzer <michel@daenzer.net>2017-03-03 16:08:21 +0900
commitba2aa0a8c12a2bea1e8be01ca3134b518d4cb0f2 (patch)
tree6a14f29826dde067ab076a6870492ebd53df2aa0
parent7f3abf35a2e1225ffd6a777b23f6a7a6355c1691 (diff)
Handle rotation in the driver also with Xorg 1.12-1.18
We cannot use the HW cursor in that case, but in turn we get more efficient and less teary updates of rotated outputs. (Ported from radeon commit f2bc882f1c1082bed9f496cfab6c8f07a76bc122) Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--src/drmmode_display.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index b3c850c..67dd61b 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -589,22 +589,20 @@ drmmode_can_use_hw_cursor(xf86CrtcPtr crtc)
#if XF86_CRTC_VERSION >= 4
+#if XF86_CRTC_VERSION < 7
+#define XF86DriverTransformOutput TRUE
+#define XF86DriverTransformNone FALSE
+#endif
+
static Bool
drmmode_handle_transform(xf86CrtcPtr crtc)
{
Bool ret;
-#if XF86_CRTC_VERSION >= 7
if (crtc->transformPresent || crtc->rotation != RR_Rotate_0)
crtc->driverIsPerformingTransform = XF86DriverTransformOutput;
else
crtc->driverIsPerformingTransform = XF86DriverTransformNone;
-#else
- AMDGPUInfoPtr info = AMDGPUPTR(crtc->scrn);
-
- crtc->driverIsPerformingTransform = crtc->transformPresent ||
- (info->tear_free && crtc->rotation != RR_Rotate_0);
-#endif
ret = xf86CrtcRotate(crtc);