v3d: fix dest offset in TFU setup

It is using the source level instead of the destiny level (base_level)
to compute the dest offset.

This fixes `framebuffer-blit-levels draw rgba -auto -fbo` piglit test.

Fixes: 976ea90bdc ("v3d: Add support for using the TFU to do some blits.")
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8491>
(cherry picked from commit 08b16cfe0b)
This commit is contained in:
Juan A. Suarez Romero 2021-01-12 18:45:49 +01:00 committed by Dylan Baker
parent ba3d2c3a4c
commit c077276c15
2 changed files with 2 additions and 2 deletions

View file

@ -139,7 +139,7 @@
"description": "v3d: fix dest offset in TFU setup",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"master_sha": null,
"because_sha": "976ea90bdca2b1fc9e7a577ddc302e810c622183"
},

View file

@ -277,7 +277,7 @@ v3d_tfu(struct pipe_context *pctx,
}
uint32_t dst_offset = (dst->bo->offset +
v3d_layer_offset(pdst, src_level, dst_layer));
v3d_layer_offset(pdst, base_level, dst_layer));
tfu.ioa |= dst_offset;
if (last_level != base_level)
tfu.ioa |= V3D_TFU_IOA_DIMTW;