[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-video-ati: Changes to 'ubuntu'



 debian/changelog          |    7 ++++
 debian/patches/xmir.patch |   72 +++++++++++++++++++++++-----------------------
 2 files changed, 44 insertions(+), 35 deletions(-)

New commits:
commit ddb3136a7dfa537181681e8e9e09ffbd596d7e1d
Author: Christopher James Halse Rogers <raof@ubuntu.com>
Date:   Fri Aug 2 21:00:31 2013 +1000

    Fix flushing for XMir

diff --git a/debian/changelog b/debian/changelog
index ee8f4ef..30fd8a2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+xserver-xorg-video-ati (1:7.1.0+git20130801.g2ae6bb1-0ubuntu2) saucy; urgency=low
+
+  * xmir.patch: Flush rendering before submitting to Mir. Fixes occasional missing
+    rendering.
+
+ -- Christopher James Halse Rogers <raof@ubuntu.com>  Fri, 02 Aug 2013 21:00:11 +1000
+
 xserver-xorg-video-ati (1:7.1.0+git20130801.g2ae6bb1-0ubuntu1) saucy; urgency=low
 
   * "In the finest traditions of the Watch"
diff --git a/debian/patches/xmir.patch b/debian/patches/xmir.patch
index 59606ac..87b7956 100644
--- a/debian/patches/xmir.patch
+++ b/debian/patches/xmir.patch
@@ -8,8 +8,8 @@ Date:   Mon Jul 22 17:02:17 2013 +1000
 
 Index: xf86-video-ati/src/drmmode_display.c
 ===================================================================
---- xf86-video-ati.orig/src/drmmode_display.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/drmmode_display.c	2013-08-01 20:43:13.060922426 +1000
+--- xf86-video-ati.orig/src/drmmode_display.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/drmmode_display.c	2013-08-02 20:57:42.467265083 +1000
 @@ -1887,7 +1887,7 @@
      if (!miCreateDefColormap(pScreen))
          return FALSE;
@@ -21,8 +21,8 @@ Index: xf86-video-ati/src/drmmode_display.c
  #if 0 /* This option messes up text mode! (eich@suse.de) */
 Index: xf86-video-ati/src/radeon.h
 ===================================================================
---- xf86-video-ati.orig/src/radeon.h	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon.h	2013-08-01 20:43:13.060922426 +1000
+--- xf86-video-ati.orig/src/radeon.h	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon.h	2013-08-02 20:57:42.467265083 +1000
 @@ -87,6 +87,13 @@
  #include "picturestr.h"
  #endif
@@ -52,8 +52,8 @@ Index: xf86-video-ati/src/radeon.h
  /* radeon_accel.c */
 Index: xf86-video-ati/src/radeon_bo_helper.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_bo_helper.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_bo_helper.c	2013-08-01 20:43:13.060922426 +1000
+--- xf86-video-ati.orig/src/radeon_bo_helper.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_bo_helper.c	2013-08-02 20:57:42.467265083 +1000
 @@ -201,19 +201,25 @@
  }
  
@@ -113,8 +113,8 @@ Index: xf86-video-ati/src/radeon_bo_helper.c
  
 Index: xf86-video-ati/src/radeon_bo_helper.h
 ===================================================================
---- xf86-video-ati.orig/src/radeon_bo_helper.h	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_bo_helper.h	2013-08-01 20:43:13.064922426 +1000
+--- xf86-video-ati.orig/src/radeon_bo_helper.h	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_bo_helper.h	2013-08-02 20:57:42.467265083 +1000
 @@ -33,6 +33,7 @@
  
  extern Bool
@@ -126,8 +126,8 @@ Index: xf86-video-ati/src/radeon_bo_helper.h
  #endif /* RADEON_BO_HELPER_H */
 Index: xf86-video-ati/src/radeon_dri2.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_dri2.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_dri2.c	2013-08-01 20:43:13.064922426 +1000
+--- xf86-video-ati.orig/src/radeon_dri2.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_dri2.c	2013-08-02 20:57:42.471265083 +1000
 @@ -1535,6 +1535,18 @@
  
  #endif /* USE_DRI2_SCHEDULING */
@@ -170,8 +170,8 @@ Index: xf86-video-ati/src/radeon_dri2.c
      dri2_info.CreateBuffer2 = radeon_dri2_create_buffer2;
 Index: xf86-video-ati/src/radeon_exa.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_exa.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_exa.c	2013-08-01 20:43:13.064922426 +1000
+--- xf86-video-ati.orig/src/radeon_exa.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_exa.c	2013-08-02 20:57:42.471265083 +1000
 @@ -326,12 +326,12 @@
  Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *fd_handle)
  {
@@ -189,8 +189,8 @@ Index: xf86-video-ati/src/radeon_exa.c
  #endif
 Index: xf86-video-ati/src/radeon_glamor.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_glamor.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_glamor.c	2013-08-01 20:43:13.064922426 +1000
+--- xf86-video-ati.orig/src/radeon_glamor.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_glamor.c	2013-08-02 20:57:42.471265083 +1000
 @@ -277,14 +277,15 @@
  	ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
  	struct radeon_surface surface;
@@ -212,8 +212,8 @@ Index: xf86-video-ati/src/radeon_glamor.c
  		xf86DrvMsg(scrn->scrnIndex, X_ERROR,
 Index: xf86-video-ati/src/radeon_kms.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_kms.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_kms.c	2013-08-01 20:44:14.872922340 +1000
+--- xf86-video-ati.orig/src/radeon_kms.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_kms.c	2013-08-02 20:58:45.655262323 +1000
 @@ -220,7 +220,11 @@
  	return FALSE;
      pScreen->CreateScreenResources = RADEONCreateScreenResources_KMS;
@@ -227,7 +227,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  	return FALSE;
  
      drmmode_uevent_init(pScrn, &info->drmmode);
-@@ -285,6 +289,100 @@
+@@ -285,6 +289,102 @@
  }
  #endif
  
@@ -264,6 +264,8 @@ Index: xf86-video-ati/src/radeon_kms.c
 +				      pScrn->virtualX, pScrn->virtualY);
 +	info->accel_state->exa->DoneCopy (dst);
 +
++	radeon_cs_flush_indirect(pScrn);
++
 +cleanup_dst:
 +	pScreen->DestroyPixmap(dst);
 +    } else if (0) {
@@ -328,7 +330,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
  {
      SCREEN_PTR(arg);
-@@ -302,6 +400,8 @@
+@@ -302,6 +402,8 @@
  #ifdef RADEON_PIXMAP_SHARING
      radeon_dirty_update(pScreen);
  #endif
@@ -337,7 +339,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  }
  
  static void
-@@ -606,6 +706,24 @@
+@@ -606,6 +708,24 @@
  		      dev->domain, dev->bus, dev->dev, dev->func);
  #endif
  
@@ -362,7 +364,7 @@ Index: xf86-video-ati/src/radeon_kms.c
      info->dri2.drm_fd = drmOpen("radeon", busid);
      if (info->dri2.drm_fd == -1) {
  
-@@ -835,6 +953,14 @@
+@@ -835,6 +955,14 @@
      if (!RADEONPreInitChipType_KMS(pScrn))
          goto fail;
  
@@ -377,7 +379,7 @@ Index: xf86-video-ati/src/radeon_kms.c
      if (radeon_open_drm_master(pScrn) == FALSE) {
  	xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Kernel modesetting setup failed\n");
  	goto fail;
-@@ -913,6 +1039,10 @@
+@@ -913,6 +1041,10 @@
      xf86DrvMsg(pScrn->scrnIndex, X_INFO,
  	       "SwapBuffers wait for vsync: %sabled\n", info->swapBuffersWait ? "en" : "dis");
  
@@ -388,7 +390,7 @@ Index: xf86-video-ati/src/radeon_kms.c
      if (drmmode_pre_init(pScrn, &info->drmmode, pScrn->bitsPerPixel / 8) == FALSE) {
  	xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Kernel modesetting setup failed\n");
  	goto fail;
-@@ -922,7 +1052,10 @@
+@@ -922,7 +1054,10 @@
          pRADEONEnt->HasCRTC2 = FALSE;
      else
          pRADEONEnt->HasCRTC2 = TRUE;
@@ -400,7 +402,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  
      /* fix up cloning on rn50 cards
       * since they only have one crtc sometimes the xserver doesn't assign
-@@ -1122,6 +1255,11 @@
+@@ -1122,6 +1257,11 @@
      if (info->accel_state->use_vbos)
          radeon_vbo_free_lists(pScrn);
  
@@ -412,7 +414,7 @@ Index: xf86-video-ati/src/radeon_kms.c
      drmDropMaster(info->dri2.drm_fd);
  
      drmmode_fini(pScrn, &info->drmmode);
-@@ -1157,7 +1295,7 @@
+@@ -1157,7 +1297,7 @@
      int            subPixelOrder = SubPixelUnknown;
      char*          s;
      void *front_ptr;
@@ -421,7 +423,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  
      pScrn->fbOffset = 0;
  
-@@ -1168,7 +1306,8 @@
+@@ -1168,7 +1308,8 @@
  			  pScrn->defaultVisual)) return FALSE;
      miSetPixmapDepths ();
  
@@ -431,7 +433,7 @@ Index: xf86-video-ati/src/radeon_kms.c
      if (ret) {
          ErrorF("Unable to retrieve master\n");
          return FALSE;
-@@ -1185,7 +1324,8 @@
+@@ -1185,7 +1326,8 @@
  		   "failed to initialise GEM buffer manager");
  	return FALSE;
      }
@@ -441,7 +443,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  
      if (!info->csm)
          info->csm = radeon_cs_manager_gem_ctor(info->dri2.drm_fd);
-@@ -1259,6 +1399,9 @@
+@@ -1259,6 +1401,9 @@
      /* Must be after RGB order fixed */
      fbPictureInit (pScreen, 0, 0);
  
@@ -451,7 +453,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  #ifdef RENDER
      if ((s = xf86GetOptValString(info->Options, OPTION_SUBPIXEL_ORDER))) {
  	if (strcmp(s, "RGB") == 0) subPixelOrder = SubPixelHorizontalRGB;
-@@ -1309,7 +1452,7 @@
+@@ -1309,7 +1454,7 @@
      /* Cursor setup */
      miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
  
@@ -460,7 +462,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  	if (RADEONCursorInit_KMS(pScreen)) {
  	}
      }
-@@ -1385,13 +1528,13 @@
+@@ -1385,13 +1530,13 @@
  {
      SCRN_INFO_PTR(arg);
      RADEONInfoPtr  info  = RADEONPTR(pScrn);
@@ -477,7 +479,7 @@ Index: xf86-video-ati/src/radeon_kms.c
      if (ret)
  	ErrorF("Unable to retrieve master\n");
      info->accel_state->XInited3D = FALSE;
-@@ -1399,7 +1542,9 @@
+@@ -1399,7 +1544,9 @@
  
      pScrn->vtSema = TRUE;
  
@@ -488,7 +490,7 @@ Index: xf86-video-ati/src/radeon_kms.c
  	return FALSE;
  
      return TRUE;
-@@ -1540,6 +1685,7 @@
+@@ -1540,6 +1687,7 @@
  		}
  		info->front_surface = surface;
  	}
@@ -498,8 +500,8 @@ Index: xf86-video-ati/src/radeon_kms.c
  	int c;
 Index: xf86-video-ati/src/radeon_probe.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_probe.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_probe.c	2013-08-01 20:43:13.068922426 +1000
+--- xf86-video-ati.orig/src/radeon_probe.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_probe.c	2013-08-02 20:57:42.471265083 +1000
 @@ -40,6 +40,7 @@
   * KMS support - Dave Airlie <airlied@redhat.com>
   */
@@ -606,8 +608,8 @@ Index: xf86-video-ati/src/radeon_probe.c
  
 Index: xf86-video-ati/src/radeon_video.c
 ===================================================================
---- xf86-video-ati.orig/src/radeon_video.c	2013-08-01 20:43:13.072922426 +1000
-+++ xf86-video-ati/src/radeon_video.c	2013-08-01 20:43:13.068922426 +1000
+--- xf86-video-ati.orig/src/radeon_video.c	2013-08-02 20:57:42.475265082 +1000
++++ xf86-video-ati/src/radeon_video.c	2013-08-02 20:57:42.471265083 +1000
 @@ -70,7 +70,10 @@
  Bool radeon_crtc_is_enabled(xf86CrtcPtr crtc)
  {


Reply to: