summaryrefslogtreecommitdiff
path: root/src/freedreno/vulkan/tu_image.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/freedreno/vulkan/tu_image.c')
-rw-r--r--src/freedreno/vulkan/tu_image.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/freedreno/vulkan/tu_image.c b/src/freedreno/vulkan/tu_image.c
index 38666091a0d..56e11e180e8 100644
--- a/src/freedreno/vulkan/tu_image.c
+++ b/src/freedreno/vulkan/tu_image.c
@@ -113,7 +113,7 @@ tu6_texswiz(const VkComponentMapping *comps,
const struct tu_sampler_ycbcr_conversion *conversion,
VkFormat format,
VkImageAspectFlagBits aspect_mask,
- bool limited_z24s8)
+ bool has_z24uint_s8uint)
{
unsigned char swiz[4] = {
A6XX_TEX_X, A6XX_TEX_Y, A6XX_TEX_Z, A6XX_TEX_W,
@@ -135,7 +135,7 @@ tu6_texswiz(const VkComponentMapping *comps,
break;
case VK_FORMAT_D24_UNORM_S8_UINT:
if (aspect_mask == VK_IMAGE_ASPECT_STENCIL_BIT) {
- if (limited_z24s8) {
+ if (!has_z24uint_s8uint) {
/* using FMT6_8_8_8_8_UINT */
swiz[0] = A6XX_TEX_W;
swiz[1] = A6XX_TEX_ZERO;
@@ -193,7 +193,7 @@ tu_cs_image_flag_ref(struct tu_cs *cs, const struct tu_image_view *iview, uint32
void
tu_image_view_init(struct tu_image_view *iview,
const VkImageViewCreateInfo *pCreateInfo,
- bool limited_z24s8)
+ bool has_z24uint_s8uint)
{
TU_FROM_HANDLE(tu_image, image, pCreateInfo->image);
const VkImageSubresourceRange *range = &pCreateInfo->subresourceRange;
@@ -260,7 +260,7 @@ tu_image_view_init(struct tu_image_view *iview,
if (aspect_mask & VK_IMAGE_ASPECT_DEPTH_BIT)
fmt_tex = FMT6_Z24_UNORM_S8_UINT;
if (aspect_mask == VK_IMAGE_ASPECT_STENCIL_BIT)
- fmt_tex = limited_z24s8 ? FMT6_8_8_8_8_UINT : FMT6_Z24_UINT_S8_UINT;
+ fmt_tex = has_z24uint_s8uint ? FMT6_Z24_UINT_S8_UINT : FMT6_8_8_8_8_UINT;
/* TODO: also use this format with storage descriptor ? */
}
@@ -270,7 +270,7 @@ tu_image_view_init(struct tu_image_view *iview,
A6XX_TEX_CONST_0_FMT(fmt_tex) |
A6XX_TEX_CONST_0_SAMPLES(tu_msaa_samples(layout->nr_samples)) |
A6XX_TEX_CONST_0_SWAP(fmt.swap) |
- tu6_texswiz(&pCreateInfo->components, conversion, format, aspect_mask, limited_z24s8) |
+ tu6_texswiz(&pCreateInfo->components, conversion, format, aspect_mask, has_z24uint_s8uint) |
A6XX_TEX_CONST_0_MIPLVLS(tu_get_levelCount(image, range) - 1);
iview->descriptor[1] = A6XX_TEX_CONST_1_WIDTH(width) | A6XX_TEX_CONST_1_HEIGHT(height);
iview->descriptor[2] =
@@ -447,7 +447,7 @@ tu_image_view_init(struct tu_image_view *iview,
}
bool
-ubwc_possible(VkFormat format, VkImageType type, VkImageUsageFlags usage, bool limited_z24s8)
+ubwc_possible(VkFormat format, VkImageType type, VkImageUsageFlags usage, bool has_z24uint_s8uint)
{
/* no UBWC with compressed formats, E5B9G9R9, S8_UINT
* (S8_UINT because separate stencil doesn't have UBWC-enable bit)
@@ -485,7 +485,7 @@ ubwc_possible(VkFormat format, VkImageType type, VkImageUsageFlags usage, bool l
* Additionally, the special AS_R8G8B8A8 format is broken without UBWC,
* so we have to fallback to 8_8_8_8_UNORM when UBWC is disabled
*/
- if (limited_z24s8 &&
+ if (!has_z24uint_s8uint &&
format == VK_FORMAT_D24_UNORM_S8_UINT &&
(usage & (VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT)))
return false;
@@ -595,7 +595,7 @@ tu_CreateImage(VkDevice _device,
}
if (!ubwc_possible(image->vk_format, pCreateInfo->imageType, pCreateInfo->usage,
- device->physical_device->limited_z24s8))
+ device->physical_device->info.a6xx.has_z24uint_s8uint))
ubwc_enabled = false;
/* expect UBWC enabled if we asked for it */
@@ -791,7 +791,7 @@ tu_CreateImageView(VkDevice _device,
if (view == NULL)
return vk_error(device->instance, VK_ERROR_OUT_OF_HOST_MEMORY);
- tu_image_view_init(view, pCreateInfo, device->physical_device->limited_z24s8);
+ tu_image_view_init(view, pCreateInfo, device->physical_device->info.a6xx.has_z24uint_s8uint);
*pView = tu_image_view_to_handle(view);