xf86-video-intel: 2 commits - src/sna/sna_accel.c src/sna/sna_dri.c

Chris Wilson ickle at kemper.freedesktop.org
Wed Sep 4 03:41:33 PDT 2013


 src/sna/sna_accel.c |    9 +++------
 src/sna/sna_dri.c   |   29 +----------------------------
 2 files changed, 4 insertions(+), 34 deletions(-)

New commits:
commit ad774cf3a299b220f9f2a0bed52c8fa979959426
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Wed Sep 4 11:37:01 2013 +0100

    sna/dri: Refine proposed async swap interface
    
    The latest proposal for passing swap_interval==0 is through the normal
    ScheduleSwap() call, so we can remove the specialised function.
    
    Link: http://lists.x.org/archives/xorg-devel/2013-September/037661.html
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_dri.c b/src/sna/sna_dri.c
index 0405186..2527884 100644
--- a/src/sna/sna_dri.c
+++ b/src/sna/sna_dri.c
@@ -2085,33 +2085,6 @@ skip:
 	return TRUE;
 }
 
-#if USE_ASYNC_SWAP
-static Bool
-sna_dri_async_swap(ClientPtr client, DrawablePtr draw,
-		   DRI2BufferPtr front, DRI2BufferPtr back,
-		   DRI2SwapEventPtr func, void *data)
-{
-	struct sna *sna = to_sna_from_drawable(draw);
-	CARD64 target_msc = 0;
-	int pipe;
-
-	DBG(("%s()\n", __FUNCTION__));
-
-	if (!can_flip(sna, draw, front, back) ||
-	    (pipe = sna_dri_get_pipe(draw)) < 0 ||
-	    !sna_dri_schedule_flip(client, draw, front, back, pipe,
-				   &target_msc, 0, 0, func, data)) {
-		DBG(("%s: unable to flip, so blit\n", __FUNCTION__));
-		__sna_dri_copy_region(sna, draw, NULL, back, front, false);
-
-		DRI2SwapComplete(client, draw, 0, 0, 0,
-				 DRI2_BLIT_COMPLETE, func, data);
-		return false;
-	}
-	return TRUE;
-}
-#endif
-
 static uint64_t gettime_us(void)
 {
 	struct timespec tv;
@@ -2353,7 +2326,7 @@ bool sna_dri_open(struct sna *sna, ScreenPtr screen)
 
 #if USE_ASYNC_SWAP
 	info.version = 10;
-	info.AsyncSwap = sna_dri_async_swap;
+	info.scheduleSwap0 = 1;
 #endif
 
 	return DRI2ScreenInit(screen, &info);
commit d2f19d5a1f4d1c9521fb4801c9fb649d19746150
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Tue Sep 3 19:05:41 2013 +0100

    sna: Tidy walking the window tree for updating our pixmaps
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 2205b33..c92d4c6 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -15205,8 +15205,8 @@ sna_visit_set_window_pixmap(WindowPtr window, pointer data)
 {
     struct sna_visit_set_pixmap_window *visit = data;
 
-    if (fbGetWindowPixmap(window) == visit->old) {
-	    window->drawable.pScreen->SetWindowPixmap(window, visit->new);
+    if (sna_get_window_pixmap(window) == visit->old) {
+	    sna_set_window_pixmap(window, visit->new);
 	    return WT_WALKCHILDREN;
     }
 
@@ -15260,10 +15260,7 @@ sna_set_screen_pixmap(PixmapPtr pixmap)
 
 	root = get_root_window(screen);
 	if (root) {
-		struct sna_visit_set_pixmap_window visit;
-
-		visit.old = old_front;
-		visit.new = pixmap;
+		struct sna_visit_set_pixmap_window visit = { old_front, pixmap };
 		TraverseTree(root, sna_visit_set_window_pixmap, &visit);
 		assert(fbGetWindowPixmap(root) == pixmap);
 	}


More information about the xorg-commit mailing list