Mesa (master): r300g: integer and fixed-point 16. 16 textures are not supported

Marek Olšák mareko at kemper.freedesktop.org
Mon Dec 12 07:05:14 UTC 2011


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

Author: Marek Olšák <maraeo at gmail.com>
Date:   Sun Dec 11 13:25:56 2011 +0100

r300g: integer and fixed-point 16.16 textures are not supported

---

 src/gallium/drivers/r300/r300_texture.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c
index fa09410..2738f58 100644
--- a/src/gallium/drivers/r300/r300_texture.c
+++ b/src/gallium/drivers/r300/r300_texture.c
@@ -236,6 +236,17 @@ uint32_t r300_translate_texformat(enum pipe_format format,
         return R300_TX_FORMAT_CxV8U8 | result;
     }
 
+    /* Integer and fixed-point 16.16 textures are not supported. */
+    for (i = 0; i < 4; i++) {
+        if (desc->channel[i].type == UTIL_FORMAT_TYPE_FIXED ||
+            ((desc->channel[i].type == UTIL_FORMAT_TYPE_SIGNED ||
+              desc->channel[i].type == UTIL_FORMAT_TYPE_UNSIGNED) &&
+             (!desc->channel[i].normalized ||
+              desc->channel[i].pure_integer))) {
+            return ~0; /* Unsupported/unknown. */
+        }
+    }
+
     /* Add sign. */
     for (i = 0; i < desc->nr_channels; i++) {
         if (desc->channel[i].type == UTIL_FORMAT_TYPE_SIGNED) {




More information about the mesa-commit mailing list