[PATCH] radeon: adopt for new X server dirty tracking APIs.

Dave Airlie airlied at gmail.com
Thu Jul 9 02:27:59 PDT 2015


Signed-off-by: Dave Airlie <airlied at redhat.com>
---
 src/drmmode_display.c | 4 +++-
 src/radeon_kms.c      | 4 ++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index ad2f48b..337ee55 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -969,7 +969,9 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
 		screen->height = screenpix->drawable.height = max_height;
 	}
 	drmmode_crtc->prime_pixmap_x = this_x;
-#ifdef HAS_DIRTYTRACKING2
+#ifdef HAS_DIRTYTRACKING_ROTATION
+	PixmapStartDirtyTracking(ppix, screenpix, 0, 0, this_x, 0, RR_Rotate_0);
+#elif defined(HAS_DIRTYTRACKING2)
 	PixmapStartDirtyTracking2(ppix, screenpix, 0, 0, this_x, 0);
 #else
 	PixmapStartDirtyTracking(ppix, screenpix, 0, 0);
diff --git a/src/radeon_kms.c b/src/radeon_kms.c
index ec8f51c..2dad0e6 100644
--- a/src/radeon_kms.c
+++ b/src/radeon_kms.c
@@ -287,7 +287,11 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
 
 	PixmapRegionInit(&pixregion, dirty->slave_dst);
 	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
+#ifdef HAS_DIRTYTRACKING_ROTATION
+	PixmapSyncDirtyHelper(dirty);
+#else
 	PixmapSyncDirtyHelper(dirty, &pixregion);
+#endif
 
 	radeon_cs_flush_indirect(pScrn);
 	DamageRegionProcessPending(&dirty->slave_dst->drawable);
-- 
2.4.3



More information about the xorg-driver-ati mailing list