radv: don't degrade tiling mode for small compressed or depth texture.
This is what radeonsi does, so we should do the same, also vega doesn't support linear depth textures anyways. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "17.2" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -44,12 +44,16 @@ radv_choose_tiling(struct radv_device *Device,
|
||||
return RADEON_SURF_MODE_LINEAR_ALIGNED;
|
||||
}
|
||||
|
||||
/* Textures with a very small height are recommended to be linear. */
|
||||
if (pCreateInfo->imageType == VK_IMAGE_TYPE_1D ||
|
||||
/* Only very thin and long 2D textures should benefit from
|
||||
* linear_aligned. */
|
||||
(pCreateInfo->extent.width > 8 && pCreateInfo->extent.height <= 2))
|
||||
return RADEON_SURF_MODE_LINEAR_ALIGNED;
|
||||
if (!vk_format_is_compressed(pCreateInfo->format) &&
|
||||
!vk_format_is_depth_or_stencil(pCreateInfo->format)) {
|
||||
/* Textures with a very small height are recommended to be linear. */
|
||||
if (pCreateInfo->imageType == VK_IMAGE_TYPE_1D ||
|
||||
/* Only very thin and long 2D textures should benefit from
|
||||
* linear_aligned. */
|
||||
(pCreateInfo->extent.width > 8 && pCreateInfo->extent.height <= 2))
|
||||
return RADEON_SURF_MODE_LINEAR_ALIGNED;
|
||||
|
||||
}
|
||||
|
||||
/* MSAA resources must be 2D tiled. */
|
||||
if (pCreateInfo->samples > 1)
|
||||
|
||||
Reference in New Issue
Block a user