From 3f875af2d71aac18a77f08b871b23a05ad9fb849 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sat, 12 Nov 2022 17:36:37 -0800 Subject: [PATCH] Vulkan: Mark Adreno bug resolved on recent driver. Playing it safe for 5xx devices and assuming they are still affected. --- Common/GPU/Vulkan/thin3d_vulkan.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Common/GPU/Vulkan/thin3d_vulkan.cpp b/Common/GPU/Vulkan/thin3d_vulkan.cpp index 167175be95..f055ad9499 100644 --- a/Common/GPU/Vulkan/thin3d_vulkan.cpp +++ b/Common/GPU/Vulkan/thin3d_vulkan.cpp @@ -835,7 +835,9 @@ VKContext::VKContext(VulkanContext *vulkan) } // Color write mask not masking write in certain scenarios with a depth test, see #10421. // Known still present on driver 0x80180000 and Adreno 5xx (possibly more.) - bugs_.Infest(Bugs::COLORWRITEMASK_BROKEN_WITH_DEPTHTEST); + // Known working on driver 0x801EA000 and Adreno 620. + if (deviceProps.driverVersion < 0x801EA000 || deviceProps.deviceID < 0x06000000) + bugs_.Infest(Bugs::COLORWRITEMASK_BROKEN_WITH_DEPTHTEST); // Trying to follow all the rules in https://registry.khronos.org/vulkan/specs/1.3/html/vkspec.html#synchronization-pipeline-barriers-subpass-self-dependencies // and https://registry.khronos.org/vulkan/specs/1.3/html/vkspec.html#renderpass-feedbackloop, but still it doesn't