diff options
author | Dave Airlie <airlied@redhat.com> | 2011-11-06 19:32:22 +0000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-11-06 22:32:04 +0000 |
commit | f0d1b5f41adf07a1aaeee93ef924b6624e12f9cb (patch) | |
tree | 86c4ad96e038b97ca9c4cd97cc6a4b48cd83f13f | |
parent | 8b64b86a6508a7f4227746ab4c18a54b9e7d8c05 (diff) |
u_format: fix RGTC support in fits 8unorm.
Signed RGTC won't fit in a unorm, so don't allow them.
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | src/gallium/auxiliary/util/u_format.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/util/u_format.c b/src/gallium/auxiliary/util/u_format.c index e07462a75d0..cfc4a17a062 100644 --- a/src/gallium/auxiliary/util/u_format.c +++ b/src/gallium/auxiliary/util/u_format.c @@ -443,11 +443,16 @@ util_format_fits_8unorm(const struct util_format_description *format_desc) switch (format_desc->layout) { case UTIL_FORMAT_LAYOUT_S3TC: - case UTIL_FORMAT_LAYOUT_RGTC: /* * These are straight forward. */ - + return TRUE; + case UTIL_FORMAT_LAYOUT_RGTC: + if (format_desc->format == PIPE_FORMAT_RGTC1_SNORM || + format_desc->format == PIPE_FORMAT_RGTC2_SNORM || + format_desc->format == PIPE_FORMAT_LATC1_SNORM || + format_desc->format == PIPE_FORMAT_LATC2_SNORM) + return FALSE; return TRUE; case UTIL_FORMAT_LAYOUT_PLAIN: |