summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2012-11-13 16:04:13 +0100
committerMarek Olšák <[email protected]>2012-11-13 17:17:05 +0100
commit186579e724edb0e90ec3a0cf88323c6f49e32b10 (patch)
tree791d03841f4b1b6bd680f4f6a27db2625461058c
parent2e6b81ff7a452459577aaaa94b4d0c7a62c54823 (diff)
r600g: use LINEAR_ALIGNED tiling for 1D array textures and if height0 <= 3
Reviewed-by: Alex Deucher <[email protected]>
-rw-r--r--src/gallium/drivers/r600/r600_texture.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c
index 42010bf7785..0054c5b1d28 100644
--- a/src/gallium/drivers/r600/r600_texture.c
+++ b/src/gallium/drivers/r600/r600_texture.c
@@ -509,7 +509,9 @@ struct pipe_resource *r600_texture_create(struct pipe_screen *screen,
if (!(templ->bind & PIPE_BIND_SCANOUT) &&
templ->usage != PIPE_USAGE_STAGING &&
templ->usage != PIPE_USAGE_STREAM &&
- templ->target != PIPE_TEXTURE_1D) {
+ templ->target != PIPE_TEXTURE_1D &&
+ templ->target != PIPE_TEXTURE_1D_ARRAY &&
+ templ->height0 > 3) {
array_mode = V_038000_ARRAY_2D_TILED_THIN1;
} else if (util_format_is_compressed(templ->format)) {
array_mode = V_038000_ARRAY_1D_TILED_THIN1;