vc4: respect z-offset in tiled blits

Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Tested-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18427>
This commit is contained in:
Erik Faye-Lund 2022-09-06 11:03:58 +02:00 committed by Marge Bot
parent c3e1c16b96
commit eb2307ec69
2 changed files with 7 additions and 8 deletions

View file

@ -1213,6 +1213,3 @@ spec@ext_texture_compression_s3tc@compressedteximage gl_compressed_srgb_alpha_s3
spec@ext_texture_compression_s3tc@compressedteximage gl_compressed_srgb_alpha_s3tc_dxt5_ext,Fail
spec@ext_texture_compression_s3tc@compressedteximage gl_compressed_srgb_s3tc_dxt1_ext,Fail
spec@ext_texture_compression_s3tc@compressedteximage gl_compressed_rgba_s3tc_dxt3_ext,Fail
# see https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18427
spec@ext_texture_compression_s3tc@getteximage-targets cube s3tc,Fail

View file

@ -29,15 +29,15 @@
static struct pipe_surface *
vc4_get_blit_surface(struct pipe_context *pctx,
struct pipe_resource *prsc, unsigned level)
struct pipe_resource *prsc, unsigned level,
unsigned layer)
{
struct pipe_surface tmpl;
memset(&tmpl, 0, sizeof(tmpl));
tmpl.format = prsc->format;
tmpl.u.tex.level = level;
tmpl.u.tex.first_layer = 0;
tmpl.u.tex.last_layer = 0;
tmpl.u.tex.first_layer = tmpl.u.tex.last_layer = layer;
return pctx->create_surface(pctx, prsc, &tmpl);
}
@ -123,9 +123,11 @@ vc4_tile_blit(struct pipe_context *pctx, const struct pipe_blit_info *info)
}
struct pipe_surface *dst_surf =
vc4_get_blit_surface(pctx, info->dst.resource, info->dst.level);
vc4_get_blit_surface(pctx, info->dst.resource, info->dst.level,
info->dst.box.z);
struct pipe_surface *src_surf =
vc4_get_blit_surface(pctx, info->src.resource, info->src.level);
vc4_get_blit_surface(pctx, info->src.resource, info->src.level,
info->src.box.z);
vc4_flush_jobs_reading_resource(vc4, info->src.resource);