freedreno: Fix MSAA z/s layout in GMEM

A bit surprised that this didn't show up in any piglit or deqp.

Fixes: cf0c7258ee ("freedreno/a5xx: MSAA")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27508>
(cherry picked from commit c3062e3402)
This commit is contained in:
Rob Clark
2024-02-07 09:11:14 -08:00
committed by Eric Engestrom
parent 1954f62fad
commit ea17290fc8
2 changed files with 3 additions and 3 deletions

View File

@@ -2824,7 +2824,7 @@
"description": "freedreno: Fix MSAA z/s layout in GMEM",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "cf0c7258ee0524709ab6d05a9aafc7415361bd23",
"notes": null

View File

@@ -480,9 +480,9 @@ gmem_key_init(struct fd_batch *batch, bool assume_zs, bool no_scis_opt)
if (has_zs || assume_zs) {
struct fd_resource *rsc = fd_resource(pfb->zsbuf->texture);
key->zsbuf_cpp[0] = rsc->layout.cpp;
key->zsbuf_cpp[0] = rsc->layout.cpp * pfb->samples;
if (rsc->stencil)
key->zsbuf_cpp[1] = rsc->stencil->layout.cpp;
key->zsbuf_cpp[1] = rsc->stencil->layout.cpp * pfb->samples;
/* If we clear z or s but not both, and we are using z24s8 (ie.
* !separate_stencil) then we need to restore the other, even if