summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/freedreno/freedreno_util.c
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2015-04-25 01:21:26 -0400
committerIlia Mirkin <[email protected]>2015-04-27 20:17:07 -0400
commit1571da6ac31ade482f5e4adc82eb66d42a1bb389 (patch)
tree863052af23d04f341dcd7e667cbddc3243fca06f /src/gallium/drivers/freedreno/freedreno_util.c
parent0a4cb00c7765dbe26a4dbfad3bb87d6c6ce03919 (diff)
freedreno/a3xx: add Z32F support
32-bit depth buffers are stored as unorm, and thus need special handling when moving to and from gmem. They are copied into gmem by writing depth, and resolved from gmem using a special resolve bit which apparently float-ifies the data. Signed-off-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_util.c')
-rw-r--r--src/gallium/drivers/freedreno/freedreno_util.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_util.c b/src/gallium/drivers/freedreno/freedreno_util.c
index 9892b05c37e..2acce06d148 100644
--- a/src/gallium/drivers/freedreno/freedreno_util.c
+++ b/src/gallium/drivers/freedreno/freedreno_util.c
@@ -44,6 +44,9 @@ fd_pipe2depth(enum pipe_format format)
case PIPE_FORMAT_X8Z24_UNORM:
case PIPE_FORMAT_S8_UINT_Z24_UNORM:
return DEPTHX_24_8;
+ case PIPE_FORMAT_Z32_FLOAT:
+ case PIPE_FORMAT_Z32_FLOAT_S8X24_UINT:
+ return DEPTHX_32;
default:
return ~0;
}