From 7fdcb6acc05a5a8c82d38d264d1192bf828f683e Mon Sep 17 00:00:00 2001 From: SoroushIMG Date: Sun, 14 May 2023 21:01:01 +0100 Subject: [PATCH] pvr: fix transfer fast clear color for srgb formats Seen in dEQP-VK.renderpass.suballocation.formats.r8g8b8a8_srgb.load.clear Signed-off-by: SoroushIMG Acked-by: Erik Faye-Lund Part-of: --- src/imagination/vulkan/pvr_job_transfer.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/imagination/vulkan/pvr_job_transfer.c b/src/imagination/vulkan/pvr_job_transfer.c index c884c0becf0..d43223139df 100644 --- a/src/imagination/vulkan/pvr_job_transfer.c +++ b/src/imagination/vulkan/pvr_job_transfer.c @@ -2244,6 +2244,10 @@ static VkResult pvr_pack_clear_color(VkFormat format, uint32_t pbe_pack_mode = pvr_get_pbe_packmode(format); const bool pbe_norm = pvr_vk_format_is_fully_normalized(format); + /* TODO: Use PBE Accum format NOT PBE pack format! */ + if (vk_format_is_srgb(format)) + pbe_pack_mode = ROGUE_PBESTATE_PACKMODE_F16F16F16F16; + if (pbe_pack_mode == ROGUE_PBESTATE_PACKMODE_INVALID) return vk_error(NULL, VK_ERROR_FORMAT_NOT_SUPPORTED);