|
|
@ -25,6 +25,7 @@ |
|
|
#include "video_core/vulkan_common/vulkan_device.h"
|
|
|
#include "video_core/vulkan_common/vulkan_device.h"
|
|
|
#include "video_core/vulkan_common/vulkan_wrapper.h"
|
|
|
#include "video_core/vulkan_common/vulkan_wrapper.h"
|
|
|
#include "video_core/gpu_logging/gpu_logging.h"
|
|
|
#include "video_core/gpu_logging/gpu_logging.h"
|
|
|
|
|
|
#include "vulkan/vulkan_core.h"
|
|
|
|
|
|
|
|
|
#if defined(ANDROID) && defined(ARCHITECTURE_arm64)
|
|
|
#if defined(ANDROID) && defined(ARCHITECTURE_arm64)
|
|
|
#include <adrenotools/bcenabler.h>
|
|
|
#include <adrenotools/bcenabler.h>
|
|
|
@ -1117,6 +1118,19 @@ bool Device::GetSuitability(bool requires_swapchain) { |
|
|
|
|
|
|
|
|
// Driver detection variables for workarounds in GetSuitability
|
|
|
// Driver detection variables for workarounds in GetSuitability
|
|
|
const VkDriverId driver_id = properties.driver.driverID; |
|
|
const VkDriverId driver_id = properties.driver.driverID; |
|
|
|
|
|
|
|
|
|
|
|
const bool is_intel_windows = driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS; |
|
|
|
|
|
const bool is_turnip = driver_id == VK_DRIVER_ID_MESA_TURNIP; |
|
|
|
|
|
// VK_EXT_CUSTOM_BORDER_COLOR
|
|
|
|
|
|
if (extensions.custom_border_color && (driver_id == VK_DRIVER_ID_QUALCOMM_PROPRIETARY || is_turnip)) { |
|
|
|
|
|
const char* driver_name = is_turnip ? "Turnip" : "Adreno"; |
|
|
|
|
|
LOG_WARNING(Render_Vulkan, |
|
|
|
|
|
"{} driver has broken custom border color handling; disabling VK_EXT_custom_border_color", |
|
|
|
|
|
driver_name); |
|
|
|
|
|
RemoveExtensionFeature(extensions.custom_border_color, features.custom_border_color, |
|
|
|
|
|
VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// VK_EXT_extended_dynamic_state2 below this will appear drivers that need workarounds.
|
|
|
// VK_EXT_extended_dynamic_state2 below this will appear drivers that need workarounds.
|
|
|
|
|
|
|
|
|
// Samsung: Broken extendedDynamicState3ColorBlendEquation
|
|
|
// Samsung: Broken extendedDynamicState3ColorBlendEquation
|
|
|
|