Mesa (master): r600g: interpret integer texture types as ints.

Dave Airlie airlied at kemper.freedesktop.org
Fri Sep 16 08:31:15 UTC 2011


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

Author: Dave Airlie <airlied at redhat.com>
Date:   Thu Sep 15 12:41:00 2011 +0100

r600g: interpret integer texture types as ints.

For signed/unsigned with no normalisation or srgb, assume its an INT
type texture.

Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/gallium/drivers/r600/r600_texture.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c
index 3811c49..923547a 100644
--- a/src/gallium/drivers/r600/r600_texture.c
+++ b/src/gallium/drivers/r600/r600_texture.c
@@ -1049,10 +1049,15 @@ uint32_t r600_translate_texformat(struct pipe_screen *screen,
 	switch (desc->channel[i].type) {
 	case UTIL_FORMAT_TYPE_UNSIGNED:
 	case UTIL_FORMAT_TYPE_SIGNED:
+#if 0
 		if (!desc->channel[i].normalized &&
 		    desc->colorspace != UTIL_FORMAT_COLORSPACE_SRGB) {
 			goto out_unknown;
 		}
+#endif
+		if (desc->colorspace != UTIL_FORMAT_COLORSPACE_SRGB &&
+		    !desc->channel[i].normalized)
+			word4 |= S_038010_NUM_FORMAT_ALL(V_038010_SQ_NUM_FORMAT_INT);
 
 		switch (desc->channel[i].size) {
 		case 4:




More information about the mesa-commit mailing list