Module: Mesa
Branch: master
Commit: 055750fafba58fd2ee0f5611b566a71ab0f22984
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=055750fafba58fd2ee0f5611b566a71ab0f22984

Author: Will Dyson <[email protected]>
Date:   Tue May 25 01:10:21 2010 -0400

Enable hardware mipmap generation for radeon.

Use _mesa_meta_GenerateMipmap. It is Fast Enough(tm).

Signed-off-by: Maciej Cencora <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

---

 src/mesa/drivers/dri/radeon/radeon_texture.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/radeon/radeon_texture.c 
b/src/mesa/drivers/dri/radeon/radeon_texture.c
index 5cb33a4..bcac125 100644
--- a/src/mesa/drivers/dri/radeon/radeon_texture.c
+++ b/src/mesa/drivers/dri/radeon/radeon_texture.c
@@ -39,6 +39,7 @@
 #include "main/texstore.h"
 #include "main/teximage.h"
 #include "main/texobj.h"
+#include "drivers/common/meta.h"
 
 #include "xmlpool.h"           /* for symbolic values of enum-type options */
 
@@ -294,9 +295,13 @@ void radeonGenerateMipmap(GLcontext* ctx, GLenum target, 
struct gl_texture_objec
                radeon_firevertices(rmesa);
        }
 
-       radeon_teximage_map(baseimage, GL_FALSE);
-       radeon_generate_mipmap(ctx, target, texObj);
-       radeon_teximage_unmap(baseimage);
+       if (_mesa_meta_check_generate_mipmap_fallback(ctx, target, texObj)) {
+               radeon_teximage_map(baseimage, GL_FALSE);
+               radeon_generate_mipmap(ctx, target, texObj);
+               radeon_teximage_unmap(baseimage);
+       } else {
+               _mesa_meta_GenerateMipmap(ctx, target, texObj);
+       }
 }
 
 

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to