summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichel Dänzer <[email protected]>2012-05-11 16:19:19 +0200
committerMichel Dänzer <[email protected]>2012-05-12 12:27:10 +0200
commit74b9ef83cf5e5d22fe4f411c3b30cce17534de5c (patch)
tree58460d0ae2f3d4032e0bb28f832c3bdf021a3398
parent24bc382010cc1f2021a7ce8c62626b9e90ee30d0 (diff)
radeonsi: Fixed point vertex formats aren't supported.
-rw-r--r--src/gallium/drivers/radeonsi/evergreen_state.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/gallium/drivers/radeonsi/evergreen_state.c b/src/gallium/drivers/radeonsi/evergreen_state.c
index b094248fee1..0fdcdec8670 100644
--- a/src/gallium/drivers/radeonsi/evergreen_state.c
+++ b/src/gallium/drivers/radeonsi/evergreen_state.c
@@ -747,8 +747,12 @@ uint32_t si_translate_vertexformat(struct pipe_screen *screen,
const struct util_format_description *desc,
int first_non_void)
{
- uint32_t result = si_translate_texformat(screen, format, desc, first_non_void);
+ uint32_t result;
+ if (desc->channel[first_non_void].type == UTIL_FORMAT_TYPE_FIXED)
+ return ~0;
+
+ result = si_translate_texformat(screen, format, desc, first_non_void);
if (result == V_008F0C_BUF_DATA_FORMAT_INVALID ||
result > V_008F0C_BUF_DATA_FORMAT_32_32_32_32)
result = ~0;
@@ -1202,9 +1206,6 @@ static struct pipe_sampler_view *evergreen_create_sampler_view(struct pipe_conte
case UTIL_FORMAT_TYPE_FLOAT:
num_format = V_008F14_IMG_NUM_FORMAT_FLOAT;
break;
- case UTIL_FORMAT_TYPE_FIXED:
- num_format = V_008F14_IMG_NUM_FORMAT_USCALED; /* XXX */
- break;
case UTIL_FORMAT_TYPE_SIGNED:
num_format = V_008F14_IMG_NUM_FORMAT_SNORM;
break;