Date: Friday, February 10, 2012 @ 09:41:52
  Author: ibiru
Revision: 149764

update autoconfig-nvidia.patch for xorg-server 1.12
drop revert-trapezoids.patch because the bug was fixed somet time ago in nvidia 
driver

Modified:
  xorg-server/trunk/PKGBUILD
  xorg-server/trunk/autoconfig-nvidia.patch
Deleted:
  xorg-server/trunk/revert-trapezoids.patch

-------------------------+
 PKGBUILD                |   11 --
 autoconfig-nvidia.patch |   55 ++++++--------
 revert-trapezoids.patch |  179 ----------------------------------------------
 3 files changed, 30 insertions(+), 215 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2012-02-10 13:45:21 UTC (rev 149763)
+++ PKGBUILD    2012-02-10 14:41:52 UTC (rev 149764)
@@ -4,7 +4,7 @@
 pkgbase=xorg-server
 pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 
'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-common' 'xorg-server-devel')
 pkgver=1.11.99.902
-pkgrel=1
+pkgrel=2
 arch=('i686' 'x86_64')
 license=('custom')
 url="http://xorg.freedesktop.org";
@@ -16,15 +16,13 @@
 source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2
         autoconfig-nvidia.patch
         autoconfig-sis.patch
-        revert-trapezoids.patch
         #git-fixes.patch
         xvfb-run
         xvfb-run.1
         10-quirks.conf)
 md5sums=('c1535e351dc73836a9000b7c9bc13112'
-         '6c7e87d63ac4b535e19a80c89d0cf091'
+         '7adcd74aebad71af7cc7b68c35aaaf35'
          'f8194638ca4872c2b0a67862a70bcebf'
-         'f6c84f4936f8e00abdfbd9fb4eda83fb'
          '52fd3effd80d7bc6c1660d4ecf23d31c'
          '376c70308715cd2643f7bff936d9934b'
          'd4f7dfc6be4ef4e2c6dd7632a9d88abe')
@@ -33,14 +31,11 @@
   cd "${srcdir}/${pkgbase}-${pkgver}"
 
   # Use nouveau/nv/nvidia drivers for nvidia devices
-#  patch -Np1 -i "${srcdir}/autoconfig-nvidia.patch"
+  patch -Np1 -i "${srcdir}/autoconfig-nvidia.patch"
 
   # Use unofficial imedia SiS driver for supported SiS devices
   patch -Np0 -i "${srcdir}/autoconfig-sis.patch"
 
-  # Revert commit that causes huge slowdowns with binary nVidia driver
-  patch -Np1 -i "${srcdir}/revert-trapezoids.patch"
-
   # Add post-release patches from 1.11 branch
 #  patch -Np1 -i "${srcdir}/git-fixes.patch"
 

Modified: autoconfig-nvidia.patch
===================================================================
--- autoconfig-nvidia.patch     2012-02-10 13:45:21 UTC (rev 149763)
+++ autoconfig-nvidia.patch     2012-02-10 14:41:52 UTC (rev 149764)
@@ -1,29 +1,28 @@
---- a/hw/xfree86/common/xf86pciBus.c
-+++ b/hw/xfree86/common/xf86pciBus.c
-@@ -1123,7 +1123,25 @@ videoPtrToDriverList(struct pci_device *
+diff -Nur xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c 
xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c
+--- xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c        
2012-02-10 10:10:37.583014924 +0000
++++ xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c     2012-02-10 
11:16:07.148971317 +0000
+@@ -1111,7 +1111,23 @@
+       {
+           int idx = 0;
+ #ifdef __linux__
+-          driverList[idx++] = "nouveau";
++          switch (dev->device_id)
++              {
++              /* NV1 */
++              case 0x0008:
++              case 0x0009:
++                  driverList[idx++] = "vesa";
++                  break;
++              /* NV3 */
++              case 0x0018:
++              case 0x0019:
++                  driverList[idx++] = "nouveau";
++                  break;
++              default:
++                  driverList[idx++] = "nouveau";
++                  driverList[idx++] = "nvidia";
++                  break;
++              }
+ #endif
+           driverList[idx++] = "nv";
            break;
-       case 0x102b:                driverList[0] = "mga";      break;
-       case 0x10c8:                driverList[0] = "neomagic"; break;
--      case 0x10de: case 0x12d2:   driverList[0] = "nv";       break;
-+      case 0x10de: case 0x12d2:
-+          switch (dev->device_id) {
-+          /* NV1 */
-+          case 0x0008:
-+          case 0x0009:
-+              driverList[0] = "vesa";
-+              break;
-+          /* NV3 */
-+          case 0x0018:
-+          case 0x0019:
-+              driverList[0] = "nv";
-+              break;
-+          default:
-+              driverList[0] = "nouveau";
-+              driverList[1] = "nv";
-+              driverList[2] = "nvidia";
-+              break;
-+          }
-+          break;
-       case 0x1106:                driverList[0] = "openchrome"; break;
-         case 0x1b36:              driverList[0] = "qxl"; break;
-       case 0x1163:                driverList[0] = "rendition"; break;

Deleted: revert-trapezoids.patch
===================================================================
--- revert-trapezoids.patch     2012-02-10 13:45:21 UTC (rev 149763)
+++ revert-trapezoids.patch     2012-02-10 14:41:52 UTC (rev 149764)
@@ -1,179 +0,0 @@
-diff -ru a/fb/fbpict.c b/fb/fbpict.c
---- a/fb/fbpict.c      2011-08-01 01:44:24.000000000 +0200
-+++ b/fb/fbpict.c      2011-10-05 22:45:29.000000000 +0200
-@@ -364,7 +364,7 @@
-     ps->Glyphs = miGlyphs;
-     ps->CompositeRects = miCompositeRects;
-     ps->RasterizeTrapezoid = fbRasterizeTrapezoid;
--    ps->Trapezoids = fbTrapezoids;
-+    ps->Trapezoids = miTrapezoids;
-     ps->AddTraps = fbAddTraps;
-     ps->AddTriangles = fbAddTriangles;
-     ps->Triangles = fbTriangles;
-diff -ru a/render/mipict.c b/render/mipict.c
---- a/render/mipict.c  2011-04-04 05:19:50.000000000 +0200
-+++ b/render/mipict.c  2011-10-05 22:02:53.000000000 +0200
-@@ -573,6 +573,67 @@
-     }
- }
- 
-+void
-+miTrapezoids (CARD8       op,
-+            PicturePtr    pSrc,
-+            PicturePtr    pDst,
-+            PictFormatPtr maskFormat,
-+            INT16         xSrc,
-+            INT16         ySrc,
-+            int           ntrap,
-+            xTrapezoid    *traps)
-+{
-+    ScreenPtr         pScreen = pDst->pDrawable->pScreen;
-+    PictureScreenPtr    ps = GetPictureScreen(pScreen);
-+
-+    /*
-+     * Check for solid alpha add
-+     */
-+    if (op == PictOpAdd && miIsSolidAlpha (pSrc))
-+    {
-+      for (; ntrap; ntrap--, traps++)
-+          (*ps->RasterizeTrapezoid) (pDst, traps, 0, 0);
-+    } 
-+    else if (maskFormat)
-+    {
-+      PicturePtr      pPicture;
-+      BoxRec          bounds;
-+      INT16           xDst, yDst;
-+      INT16           xRel, yRel;
-+      
-+      xDst = traps[0].left.p1.x >> 16;
-+      yDst = traps[0].left.p1.y >> 16;
-+
-+      miTrapezoidBounds (ntrap, traps, &bounds);
-+      if (bounds.y1 >= bounds.y2 || bounds.x1 >= bounds.x2)
-+          return;
-+      pPicture = miCreateAlphaPicture (pScreen, pDst, maskFormat,
-+                                       bounds.x2 - bounds.x1,
-+                                       bounds.y2 - bounds.y1);
-+      if (!pPicture)
-+          return;
-+      for (; ntrap; ntrap--, traps++)
-+          (*ps->RasterizeTrapezoid) (pPicture, traps, 
-+                                     -bounds.x1, -bounds.y1);
-+      xRel = bounds.x1 + xSrc - xDst;
-+      yRel = bounds.y1 + ySrc - yDst;
-+      CompositePicture (op, pSrc, pPicture, pDst,
-+                        xRel, yRel, 0, 0, bounds.x1, bounds.y1,
-+                        bounds.x2 - bounds.x1,
-+                        bounds.y2 - bounds.y1);
-+      FreePicture (pPicture, 0);
-+    }
-+    else
-+    {
-+      if (pDst->polyEdge == PolyEdgeSharp)
-+          maskFormat = PictureMatchFormat (pScreen, 1, PICT_a1);
-+      else
-+          maskFormat = PictureMatchFormat (pScreen, 8, PICT_a8);
-+      for (; ntrap; ntrap--, traps++)
-+          miTrapezoids (op, pSrc, pDst, maskFormat, xSrc, ySrc, 1, traps);
-+    }
-+}
-+
- Bool
- miPictureInit (ScreenPtr pScreen, PictFormatPtr formats, int nformats)
- {
-@@ -599,7 +660,7 @@
-     ps->Composite     = 0;                    /* requires DDX support */
-     ps->Glyphs                = miGlyphs;
-     ps->CompositeRects        = miCompositeRects;
--    ps->Trapezoids    = 0;
-+    ps->Trapezoids    = miTrapezoids;
-     ps->Triangles     = 0;
-     
-     ps->RasterizeTrapezoid = 0;                       /* requires DDX support 
*/
-diff -ru a/render/mipict.h b/render/mipict.h
---- a/render/mipict.h  2011-04-04 05:19:50.000000000 +0200
-+++ b/render/mipict.h  2011-10-05 22:06:19.000000000 +0200
-@@ -129,6 +129,23 @@
-                     CARD32        pixel,
-                     xRenderColor  *color);
- 
-+extern _X_EXPORT PicturePtr
-+miCreateAlphaPicture (ScreenPtr           pScreen, 
-+                    PicturePtr    pDst,
-+                    PictFormatPtr pPictFormat,
-+                    CARD16        width,
-+                    CARD16        height);
-+
-+extern _X_EXPORT void
-+miTrapezoids (CARD8       op,
-+            PicturePtr    pSrc,
-+            PicturePtr    pDst,
-+            PictFormatPtr maskFormat,
-+            INT16         xSrc,
-+            INT16         ySrc,
-+            int           ntrap,
-+            xTrapezoid    *traps);
-+
- extern _X_EXPORT Bool
- miIsSolidAlpha (PicturePtr pSrc);
- 
-diff -ru a/render/mitrap.c b/render/mitrap.c
---- a/render/mitrap.c  2011-04-04 05:19:50.000000000 +0200
-+++ b/render/mitrap.c  2011-10-05 22:05:29.000000000 +0200
-@@ -34,6 +34,55 @@
- #include "picturestr.h"
- #include "mipict.h"
- 
-+PicturePtr
-+miCreateAlphaPicture (ScreenPtr           pScreen, 
-+                    PicturePtr    pDst,
-+                    PictFormatPtr pPictFormat,
-+                    CARD16        width,
-+                    CARD16        height)
-+{
-+    PixmapPtr     pPixmap;
-+    PicturePtr            pPicture;
-+    GCPtr         pGC;
-+    int                   error;
-+    xRectangle            rect;
-+
-+    if (width > 32767 || height > 32767)
-+      return 0;
-+
-+    if (!pPictFormat)
-+    {
-+      if (pDst->polyEdge == PolyEdgeSharp)
-+          pPictFormat = PictureMatchFormat (pScreen, 1, PICT_a1);
-+      else
-+          pPictFormat = PictureMatchFormat (pScreen, 8, PICT_a8);
-+      if (!pPictFormat)
-+          return 0;
-+    }
-+
-+    pPixmap = (*pScreen->CreatePixmap) (pScreen, width, height, 
-+                                      pPictFormat->depth, 0);
-+    if (!pPixmap)
-+      return 0;
-+    pGC = GetScratchGC (pPixmap->drawable.depth, pScreen);
-+    if (!pGC)
-+    {
-+      (*pScreen->DestroyPixmap) (pPixmap);
-+      return 0;
-+    }
-+    ValidateGC (&pPixmap->drawable, pGC);
-+    rect.x = 0;
-+    rect.y = 0;
-+    rect.width = width;
-+    rect.height = height;
-+    (*pGC->ops->PolyFillRect)(&pPixmap->drawable, pGC, 1, &rect);
-+    FreeScratchGC (pGC);
-+    pPicture = CreatePicture (0, &pPixmap->drawable, pPictFormat,
-+                            0, 0, serverClient, &error);
-+    (*pScreen->DestroyPixmap) (pPixmap);
-+    return pPicture;
-+}
-+
- static xFixed
- miLineFixedX (xLineFixed *l, xFixed y, Bool ceil)
- {
-

Reply via email to