summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-06-21 14:41:14 -0700
committerAlyssa Rosenzweig <[email protected]>2019-06-25 13:39:17 -0700
commitaea3f0ac1d1e281b5d2f2100acad87810ed309c0 (patch)
tree7177e9a720876fba17f1c69b7b89eb39bb447209 /src/gallium
parentad56dd4e973e181db394fbc68c7f82dfb6f505f8 (diff)
panfrost: Z/S can't be tiled
As far as we know, Utgard-style tiling only works for color render targets, not depth/stencil, so ensure we don't try to tile it (rather than compress or plain old linear) and drive ourselves into a corner. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/panfrost/pan_resource.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c
index 027cd61f16d..961cecf8cf0 100644
--- a/src/gallium/drivers/panfrost/pan_resource.c
+++ b/src/gallium/drivers/panfrost/pan_resource.c
@@ -295,6 +295,9 @@ panfrost_create_bo(struct panfrost_screen *screen, const struct pipe_resource *t
bool should_tile = is_streaming && is_texture && is_2d;
+ /* Depth/stencil can't be tiled, only linear or AFBC */
+ should_tile &= !(template->bind & PIPE_BIND_DEPTH_STENCIL);
+
/* Set the layout appropriately */
bo->layout = should_tile ? PAN_TILED : PAN_LINEAR;