rpms/mesa/devel .cvsignore, 1.30, 1.31 mesa.spec, 1.207, 1.208 r300-bufmgr.patch, 1.6, 1.7 sources, 1.30, 1.31 depth-override-fix.patch, 1.1, NONE

Dave Airlie airlied at fedoraproject.org
Sat Dec 20 06:58:44 UTC 2008


Author: airlied

Update of /cvs/pkgs/rpms/mesa/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv22495

Modified Files:
	.cvsignore mesa.spec r300-bufmgr.patch sources 
Removed Files:
	depth-override-fix.patch 
Log Message:
* Sat Dec 20 2008 Dave Airlie <airlied at redhat.com> 7.3-0.13
- Mesa rebase to upstream + new r300 bufmgr code (may need more work)



Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/mesa/devel/.cvsignore,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- .cvsignore	1 Oct 2008 05:46:08 -0000	1.30
+++ .cvsignore	20 Dec 2008 06:58:13 -0000	1.31
@@ -1,3 +1,3 @@
 xdriinfo-1.0.2.tar.bz2
 gl-manpages-1.0.1.tar.bz2
-mesa-20081001.tar.bz2
+mesa-20081220.tar.bz2


Index: mesa.spec
===================================================================
RCS file: /cvs/pkgs/rpms/mesa/devel/mesa.spec,v
retrieving revision 1.207
retrieving revision 1.208
diff -u -r1.207 -r1.208
--- mesa.spec	23 Oct 2008 00:33:16 -0000	1.207
+++ mesa.spec	20 Dec 2008 06:58:13 -0000	1.208
@@ -13,11 +13,11 @@
 
 %define manpages gl-manpages-1.0.1
 %define xdriinfo xdriinfo-1.0.2
-%define gitdate 20081001
+%define gitdate 20081220
 
 Summary: Mesa graphics libraries
 Name: mesa
-Version: 7.2
+Version: 7.3
 Release: 0.13%{?dist}
 License: MIT
 Group: System Environment/Libraries
@@ -35,7 +35,6 @@
 Patch0: mesa-7.1-osmesa-version.patch
 Patch2: mesa-7.1-nukeglthread-debug.patch
 Patch3: mesa-no-mach64.patch
-Patch4: depth-override-fix.patch
 
 Patch5: r300-bufmgr.patch
 
@@ -173,7 +172,6 @@
 %patch0 -p1 -b .osmesa
 %patch2 -p1 -b .intel-glthread
 %patch3 -p0 -b .no-mach64
-%patch4 -p1 -b .depth-override-fix
 %patch5 -p1 -b .r300-bufmgr
 %patch7 -p1 -b .dricore
 %patch9 -p1 -b .intel-vbl
@@ -429,6 +427,9 @@
 %{_libdir}/mesa-demos-data
 
 %changelog
+* Sat Dec 20 2008 Dave Airlie <airlied at redhat.com> 7.3-0.13
+- Mesa rebase to upstream + new r300 bufmgr code (may need more work)
+
 * Thu Oct 23 2008 Dave Airlie <airlied at redhat.com> 7.2-0.13
 - r300-bufmgr.patch - fix aperture sizing issues - should make compiz work better
 

r300-bufmgr.patch:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.6 -r 1.7 r300-bufmgr.patch
Index: r300-bufmgr.patch
===================================================================
RCS file: /cvs/pkgs/rpms/mesa/devel/r300-bufmgr.patch,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- r300-bufmgr.patch	23 Oct 2008 00:33:16 -0000	1.6
+++ r300-bufmgr.patch	20 Dec 2008 06:58:13 -0000	1.7
@@ -1,506 +1,24 @@
-commit 576ee3db94bd79092fe7f69b4ac8293367b6dfb1
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Thu Oct 23 10:27:54 2008 +1000
-
-    r300: fallback to sw rendering if we can't fit textures into aperture
-
-commit bd018ad09b6225a6386c57d8ca8eb37f74025006
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Thu Oct 23 10:13:28 2008 +1000
-
-    r300: add bufmgr vram sizing to stop overflowing textures in VRAM
-    
-    a) needs to be redone for bufmgr in screen
-    b) need to add GART aperture sizing also.
-
-commit e768e7df0f6b7f61f82d70a55c7419c359b17cb2
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Sun Oct 19 18:56:56 2008 +1000
-
-    r300: fixup no kms case for map/unmap
-
-commit 6b6995112d3223496c04e7afc338ffc9bcc5093e
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Sun Oct 19 18:42:24 2008 +1000
-
-    radeon: disable leak detection for now
-
-commit 445d367fed8b55a1351788dbf3e2e303e56095b5
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Sun Oct 19 18:28:45 2008 +1000
-
-    r300: only enable set tex offset for non-kernel mm systems
-
-commit 737b174d7e82cc277d877ff810ffe058e1aa4522
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Mon Oct 13 15:40:58 2008 +1000
-
-    radeon: fixup prototypes
-
-commit a4fa4aaf6754e2e35cee42924dc141738b7edc27
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Mon Oct 13 15:39:46 2008 +1000
-
-    radeon: fix rounding to avoid kernel EFAULT
-
-commit c6b6a65281b8e98f5050f142d284e6ba622bea1b
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Mon Oct 13 15:39:20 2008 +1000
-
-    r300: with real buffers - sw fallbacks to hardcoded maps
-    
-    so don't screw with virtual
-
-commit c41a002914ab9cfd8f49199e4a4612a6aeecf0b5
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Tue Sep 30 16:51:04 2008 +1000
-
-    r300: make work again
-    
-    Conflicts:
-    
-    	src/mesa/drivers/dri/r300/r300_mem.c
-    	src/mesa/drivers/dri/r300/r300_mem.h
-    	src/mesa/drivers/dri/r300/r300_texstate.c
-    	src/mesa/drivers/dri/r300/radeon_context.c
-    	src/mesa/drivers/dri/radeon/radeon_buffer.h
-
-commit 289b38b16b9e0aae4d51bac8c745359a36c0d54e
-Author: Dave Airlie <airlied at redhat.com>
-Date:   Fri Sep 5 14:11:25 2008 +1000
-
-    drop r300 use of ttm flags
-
-commit 1ca0e2ac03b4fd95ee9cd2dbe82bb7a0e9c1614d
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Mon Sep 29 09:40:50 2008 +0200
-
-    r300: Fix crash in r300ClearBuffer
-    
-    That function can currently be called without a radeon_renderbuffer
-    when only Z/stencil needs clearing.
-
-commit 4d19a9b9ac84a972d0807ff931df596418d9a7f4
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Sun Sep 28 19:37:52 2008 +0200
-
-    r300_mem: Prefer using screen structures over context structures
-    
-    Eventually, bufmgr will have to live with only screen structures for
-    correctness.
-
-commit 8d42990244a196b85ceb1439ad2b5eef6c559d61
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Sun Sep 28 19:20:40 2008 +0200
-
-    r300: Remove radeon_bufmgr
-    
-    Since the bufmgr is now driver-specific anyway, there's no point in having
-    the additional indirection around.
-
-commit 3dba9178ec5dbf8183a5ceee701c9a36606ad464
-Merge: 857362e... 2e5d717...
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Sun Sep 28 18:28:05 2008 +0200
-
-    Merge branch 'master' into develop
-    
-    Conflicts:
-    
-    	src/mesa/drivers/dri/r300/r300_tex.c
-    	src/mesa/drivers/dri/r300/r300_texstate.c
-    	src/mesa/drivers/dri/r300/radeon_context.c
-    	src/mesa/drivers/dri/r300/radeon_context.h
-
-commit 857362ef14fc4f175a9d425a74f9ca2b691971d6
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Tue Aug 19 22:02:41 2008 +0200
-
-    r300: Reasonably hacked up texture images
-
-commit b3153fc6f7823b434ab82faec4e966c3311f8ce8
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Fri Aug 29 17:55:37 2008 +0200
-
-    Call FreeTexImageData unconditionally during mipmap generation.
-    
-    When drivers override texture image storage, Data may be null even though
-    storage has been reserved, e.g. when the data is currently in video memory
-    but not mapped into CPU-accessible memory.
-
-commit d8d306220c19f0cc60d14876021543fe6e542775
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Fri Aug 29 18:40:05 2008 +0200
-
-    r300: Remove some debug messages
-
-commit b179525a87b5bf510628918406e3562e2d138ce7
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Tue Aug 26 23:21:24 2008 +0200
-
-    r300: Fix various software fallback regressions
-    
-    Renderbuffers are now mapped and unmapped properly for software rendering,
-    and various assorted fixes.
-
-commit ebf556644058c748c7c621b1e5ae12dc900a2dd0
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Fri Aug 15 19:55:59 2008 +0200
-
-    r300: Remove unused field pitch in r300_tex_obj
-
-commit 7db556b55baa392a951f92074c058868ead2edb5
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Tue Aug 26 19:02:14 2008 +0200
-
-    radeon: Add missing header radeon_buffer.h
-
-commit 093023518b81c11d0c3242a27b90def9a7e2e1c0
-Author: Adam Jackson <ajax at redhat.com>
-Date:   Sun Aug 24 18:47:53 2008 +1000
-
-    r300: move color/depth buffers to using fake buffers
-    
-    Emit state for color/depth properly
-    
-    This also moves the bufmgr into the radeon struct, as we
-    need it from make current. It won't affect the other chips yet.
-    
-    can probably move fbLocation into the bufmgr soon
-
-commit 004100f123ca3ea4b35e16ae5d91911ad02b327f
-Author: Dave Airlie <airlied at linux.ie>
-Date:   Sun Aug 24 18:33:06 2008 +1000
-
-    r300: add static BO alloc to classic bufmgr
-
-commit 6827a4d742cf2b815d2651dd7ffe002f46a07b1b
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Fri Aug 8 18:37:37 2008 +0200
-
-    r300: Fix regression when redefining texture images
-    
-    We obviously have to destroy and recreate the miptree when incompatible
-    changes to the texture objects are made.
-
-commit b3b221caefbcbb749fea9dc1040e4313fc9ea717
-Author: Nicolai Haehnle <nhaehnle at gmail.com>
-Date:   Mon Aug 4 01:04:15 2008 +0200
-
-    r300: Texture memory managed by bufmgr
-    
[...9199 lines suppressed...]
++	stencil->has_surface = screen->depthHasSurface;
 +    }
 +
 +    _mesa_add_soft_renderbuffers(fb,
@@ -9416,7 +10399,34 @@
  
  /**
   * Create the Mesa framebuffer and renderbuffers for a given window/drawable.
-@@ -1101,7 +1395,7 @@ radeonCreateBuffer( __DRIscreenPrivate *driScrnPriv,
+@@ -1062,7 +1338,7 @@ radeonCreateBuffer( __DRIscreenPrivate *driScrnPriv,
+                                  driDrawPriv);
+          radeonSetSpanFunctions(depthRb, mesaVis);
+          _mesa_add_renderbuffer(fb, BUFFER_DEPTH, &depthRb->Base);
+-	 depthRb->depthHasSurface = screen->depthHasSurface;
++    	 depthRb->has_surface = screen->depthHasSurface;
+       }
+       else if (mesaVis->depthBits == 24) {
+          driRenderbuffer *depthRb
+@@ -1073,7 +1349,7 @@ radeonCreateBuffer( __DRIscreenPrivate *driScrnPriv,
+                                  driDrawPriv);
+          radeonSetSpanFunctions(depthRb, mesaVis);
+          _mesa_add_renderbuffer(fb, BUFFER_DEPTH, &depthRb->Base);
+-	 depthRb->depthHasSurface = screen->depthHasSurface;
++ 	     depthRb->has_surface = screen->depthHasSurface;
+       }
+ 
+       /* stencil renderbuffer */
+@@ -1086,7 +1362,7 @@ radeonCreateBuffer( __DRIscreenPrivate *driScrnPriv,
+                                  driDrawPriv);
+          radeonSetSpanFunctions(stencilRb, mesaVis);
+          _mesa_add_renderbuffer(fb, BUFFER_STENCIL, &stencilRb->Base);
+-	 stencilRb->depthHasSurface = screen->depthHasSurface;
++         stencilRb->has_surface = screen->depthHasSurface;
+       }
+ 
+       _mesa_add_soft_renderbuffers(fb,
+@@ -1101,11 +1377,30 @@ radeonCreateBuffer( __DRIscreenPrivate *driScrnPriv,
        return (driDrawPriv->driverPrivate != NULL);
     }
  }
@@ -9425,7 +10435,30 @@
  
  static void
  radeonDestroyBuffer(__DRIdrawablePrivate *driDrawPriv)
-@@ -1197,11 +1491,11 @@ radeonInitScreen(__DRIscreenPrivate *psp)
+ {
++	struct radeon_renderbuffer *rb;
++	GLframebuffer *fb;
++    
++    fb = (void*)driDrawPriv->driverPrivate;
++    rb = (void *)fb->Attachment[BUFFER_FRONT_LEFT].Renderbuffer;
++    if (rb && rb->bo) {
++        radeon_bo_unref(rb->bo);
++        rb->bo = NULL;
++    }
++    rb = (void *)fb->Attachment[BUFFER_BACK_LEFT].Renderbuffer;
++    if (rb && rb->bo) {
++        radeon_bo_unref(rb->bo);
++        rb->bo = NULL;
++    }
++    rb = (void *)fb->Attachment[BUFFER_DEPTH].Renderbuffer;
++    if (rb && rb->bo) {
++        radeon_bo_unref(rb->bo);
++        rb->bo = NULL;
++    }
+    _mesa_unreference_framebuffer((GLframebuffer **)(&(driDrawPriv->driverPrivate)));
+ }
+ 
+@@ -1197,13 +1492,48 @@ radeonInitScreen(__DRIscreenPrivate *psp)
     if (!radeonInitDriver(psp))
         return NULL;
  
@@ -9438,37 +10471,90 @@
 +			     (dri_priv->bpp == 16) ? 0  : 8, 1);
  }
  
++/**
++ * This is the driver specific part of the createNewScreen entry point.
++ * Called when using DRI2.
++ *
++ * \return the __GLcontextModes supported by this driver
++ */
++static const
++__DRIconfig **radeonInitScreen2(__DRIscreenPrivate *psp)
++{
++   /* Calling driInitExtensions here, with a NULL context pointer,
++    * does not actually enable the extensions.  It just makes sure
++    * that all the dispatch offsets for all the extensions that
++    * *might* be enables are known.  This is needed because the
++    * dispatch offsets need to be known when _mesa_context_create
++    * is called, but we can't enable the extensions until we have a
++    * context pointer.
++    *
++    * Hello chicken.  Hello egg.  How are you two today?
++    */
++   driInitExtensions( NULL, card_extensions, GL_FALSE );
++#if RADEON_COMMON && defined(RADEON_COMMON_FOR_R200)
++   driInitExtensions( NULL, blend_extensions, GL_FALSE );
++   driInitSingleExtension( NULL, ARB_vp_extension );
++   driInitSingleExtension( NULL, NV_vp_extension );
++   driInitSingleExtension( NULL, ATI_fs_extension );
++   driInitExtensions( NULL, point_extensions, GL_FALSE );
++#endif
++
++   if (!radeonInitDriver(psp)) {
++       return NULL;
++    }
++
++   /* for now fill in all modes */
++   return radeonFillInModes( psp, 24, 24, 8, 1);
++}
  
+ /**
+  * Get information about previous buffer swaps.
+@@ -1252,6 +1582,8 @@ const struct __DriverAPIRec driDriverAPI = {
+    .WaitForSBC      = NULL,
+    .SwapBuffersMSC  = NULL,
+    .CopySubBuffer   = radeonCopySubBuffer,
++    /* DRI2 */
++   .InitScreen2     = radeonInitScreen2,
+ };
+ #else
+ const struct __DriverAPIRec driDriverAPI = {
+@@ -1272,3 +1604,4 @@ const struct __DriverAPIRec driDriverAPI = {
+    .CopySubBuffer   = r200CopySubBuffer,
+ };
+ #endif
++
 diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.h b/src/mesa/drivers/dri/radeon/radeon_screen.h
-index b84c70b..59f1e86 100644
+index b84c70b..3287e12 100644
 --- a/src/mesa/drivers/dri/radeon/radeon_screen.h
 +++ b/src/mesa/drivers/dri/radeon/radeon_screen.h
-@@ -54,6 +54,14 @@ typedef struct {
+@@ -46,6 +46,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ #include "radeon_reg.h"
+ #include "drm_sarea.h"
+ #include "xmlconfig.h"
++#include "radeon_bo.h"
+ 
+ 
+ typedef struct {
+@@ -54,7 +55,7 @@ typedef struct {
     drmAddress map;			/* Mapping of the DRM region */
  } radeonRegionRec, *radeonRegionPtr;
  
-+struct radeon_gem_object {
-+   uint32_t gem_name;
-+   uint32_t gem_handle;
-+   uint64_t size;
-+   void *map;
-+   uint64_t offset;
-+};
-+
- typedef struct {
+-typedef struct {
++typedef struct radeon_screen {
     int chip_family;
     int chip_flags;
-@@ -106,6 +114,13 @@ typedef struct {
-    const __DRIextension *extensions[8];
+    int cpp;
+@@ -103,9 +104,12 @@ typedef struct {
+    /* Configuration cache with default values for all contexts */
+    driOptionCache optionCache;
+ 
+-   const __DRIextension *extensions[8];
++   const __DRIextension *extensions[16];
  
     int num_gb_pipes;
-+
 +   int kernel_mm;
-+   struct radeon_gem_object front;
-+   struct radeon_gem_object back;
-+   struct radeon_gem_object depth;
-+   struct radeon_gem_object vram_texture;
-+   struct radeon_gem_object gart_texture;
++   drm_radeon_sarea_t *sarea;	/* Private SAREA data */
++   struct radeon_bo_manager *bom;
  } radeonScreenRec, *radeonScreenPtr;
  
  #define IS_R100_CLASS(screen) \
@@ -9491,17 +10577,3 @@
 +extern void radeonSetSpanFunctions(driRenderbuffer * rb, const GLvisual * vis);
 +#endif
  #endif
-diff --git a/src/mesa/main/mipmap.c b/src/mesa/main/mipmap.c
-index 13d90e7..fe49faf 100644
---- a/src/mesa/main/mipmap.c
-+++ b/src/mesa/main/mipmap.c
-@@ -1073,8 +1073,7 @@ _mesa_generate_mipmap(GLcontext *ctx, GLenum target,
-          _mesa_free(dstImage->ImageOffsets);
- 
-       /* Free old image data */
--      if (dstImage->Data)
--         ctx->Driver.FreeTexImageData(ctx, dstImage);
-+      ctx->Driver.FreeTexImageData(ctx, dstImage);
- 
-       /* initialize new image */
-       _mesa_init_teximage_fields(ctx, target, dstImage, dstWidth, dstHeight,


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/mesa/devel/sources,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- sources	1 Oct 2008 05:46:09 -0000	1.30
+++ sources	20 Dec 2008 06:58:13 -0000	1.31
@@ -1,3 +1,3 @@
 a5ec51ed9f0a55dc3462d90d52ff899c  xdriinfo-1.0.2.tar.bz2
 6ae05158e678f4594343f32c2ca50515  gl-manpages-1.0.1.tar.bz2
-2a67b54e44727e83045c8778db63d28d  mesa-20081001.tar.bz2
+b19670958386915cec8826aec505d01a  mesa-20081220.tar.bz2


--- depth-override-fix.patch DELETED ---




More information about the fedora-extras-commits mailing list