[Mesa-dev] [PATCH 8/8] panfrost: Resource management for linear 2D texture arrays

Alyssa Rosenzweig alyssa.rosenzweig at collabora.com
Fri Jun 14 23:37:16 UTC 2019


Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
---
 src/gallium/drivers/panfrost/pan_resource.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c
index 7c0d54a1f9f..81a74735592 100644
--- a/src/gallium/drivers/panfrost/pan_resource.c
+++ b/src/gallium/drivers/panfrost/pan_resource.c
@@ -283,7 +283,7 @@ panfrost_create_bo(struct panfrost_screen *screen, const struct pipe_resource *t
         /* Tiling textures is almost always faster, unless we only use it once */
 
         bool is_texture = (template->bind & PIPE_BIND_SAMPLER_VIEW);
-        bool is_2d = template->depth0 == 1;
+        bool is_2d = template->depth0 == 1 && template->array_size == 1;
         bool is_streaming = (template->usage != PIPE_USAGE_STREAM);
 
         bool should_tile = is_streaming && is_texture && is_2d;
@@ -326,6 +326,7 @@ panfrost_resource_create(struct pipe_screen *screen,
                 case PIPE_TEXTURE_3D:
                 case PIPE_TEXTURE_CUBE:
                 case PIPE_TEXTURE_RECT:
+                case PIPE_TEXTURE_2D_ARRAY:
                         break;
                 default:
                         DBG("Unknown texture target %d\n", template->target);
-- 
2.20.1



More information about the mesa-dev mailing list