mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-13 03:20:16 +01:00
freedreno/a6xx: Pick blitter swap based on resource tiling
The linear levels in a tiled resource are stored in the canonical swap, WZYX. We need to pick the swap based on whether or not the resource is tiled, not whether the the level in question is tiled. Reviewed-by: Eric Anholt <eric@anholt.net> Signed-off-by: Kristian H. Kristensen <hoegsberg@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2848>
This commit is contained in:
parent
b59222640e
commit
e0ebaa819d
1 changed files with 5 additions and 2 deletions
|
|
@ -387,8 +387,11 @@ emit_blit_or_clear_texture(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
|||
stile = fd_resource_tile_mode(info->src.resource, info->src.level);
|
||||
dtile = fd_resource_tile_mode(info->dst.resource, info->dst.level);
|
||||
|
||||
sswap = stile ? WZYX : fd6_pipe2swap(info->src.format);
|
||||
dswap = dtile ? WZYX : fd6_pipe2swap(info->dst.format);
|
||||
/* Linear levels of a tiled resource are always WZYX, so look at
|
||||
* rsc->tile_mode to determine the swap.
|
||||
*/
|
||||
sswap = src->layout.tile_mode ? WZYX : fd6_pipe2swap(info->src.format);
|
||||
dswap = dst->layout.tile_mode ? WZYX : fd6_pipe2swap(info->dst.format);
|
||||
|
||||
if (util_format_is_compressed(info->src.format)) {
|
||||
debug_assert(info->src.format == info->dst.format);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue