diff --git a/src/broadcom/vulkan/v3dv_meta_copy.c b/src/broadcom/vulkan/v3dv_meta_copy.c index 290390f586f..937d152f22b 100644 --- a/src/broadcom/vulkan/v3dv_meta_copy.c +++ b/src/broadcom/vulkan/v3dv_meta_copy.c @@ -864,8 +864,7 @@ copy_image_tfu(struct v3dv_cmd_buffer *cmd_buffer, dst->mem->bo->handle, dst_offset, dst_slice->tiling, - dst_slice->tiling == V3D_TILING_RASTER ? - dst_slice->stride : dst_slice->padded_height, + dst_slice->padded_height, dst->cpp, src->mem->bo->handle, src_offset, @@ -1371,8 +1370,7 @@ copy_buffer_to_image_tfu(struct v3dv_cmd_buffer *cmd_buffer, dst_bo->handle, dst_offset, slice->tiling, - slice->tiling == V3D_TILING_RASTER ? - slice->stride : slice->padded_height, + slice->padded_height, image->cpp, src_bo->handle, src_offset, @@ -2896,8 +2894,7 @@ blit_tfu(struct v3dv_cmd_buffer *cmd_buffer, dst->mem->bo->handle, dst_offset, dst_slice->tiling, - dst_slice->tiling == V3D_TILING_RASTER ? - dst_slice->stride : dst_slice->padded_height, + dst_slice->padded_height, dst->cpp, src->mem->bo->handle, src_offset, diff --git a/src/broadcom/vulkan/v3dvx_meta_common.c b/src/broadcom/vulkan/v3dvx_meta_common.c index 55ad2bd74a2..8b2e1612715 100644 --- a/src/broadcom/vulkan/v3dvx_meta_common.c +++ b/src/broadcom/vulkan/v3dvx_meta_common.c @@ -881,6 +881,9 @@ v3dX(meta_emit_tfu_job)(struct v3dv_cmd_buffer *cmd_buffer, break; } + /* The TFU can handle raster sources but always produces UIF results */ + assert(dst_tiling != V3D_TILING_RASTER); + /* If we're writing level 0 (!IOA_DIMTW), then we need to supply the * OPAD field for the destination (how many extra UIF blocks beyond * those necessary to cover the height).