Mesa (master): r300g: fix surface_copy for compressed formats

Marek Olšák mareko at kemper.freedesktop.org
Sun May 2 19:02:37 UTC 2010


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

Author: Marek Olšák <maraeo at gmail.com>
Date:   Sun May  2 17:19:03 2010 +0200

r300g: fix surface_copy for compressed formats

No accelerated blitting for these, it's too messy.

---

 src/gallium/drivers/r300/r300_blit.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c
index 928ad30..819d5e3 100644
--- a/src/gallium/drivers/r300/r300_blit.c
+++ b/src/gallium/drivers/r300/r300_blit.c
@@ -137,7 +137,8 @@ void r300_surface_copy(struct pipe_context* pipe,
     if (!pipe->screen->is_format_supported(pipe->screen,
                                            old_format, src->texture->target,
                                            PIPE_BIND_RENDER_TARGET |
-                                           PIPE_BIND_SAMPLER_VIEW, 0)) {
+                                           PIPE_BIND_SAMPLER_VIEW, 0) &&
+        util_format_description(old_format)->layout == UTIL_FORMAT_LAYOUT_PLAIN) {
         switch (util_format_get_blocksize(old_format)) {
             case 1:
                 new_format = PIPE_FORMAT_I8_UNORM;




More information about the mesa-commit mailing list