mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-12-22 22:11:49 +01:00
Disable extended dynamic state on <r42 mali drivers
This commit is contained in:
parent
acf118155d
commit
750dfb8f00
@ -58,7 +58,7 @@ namespace skyline::gpu {
|
||||
EXT_SET("VK_KHR_uniform_buffer_standard_layout", supportsUniformBufferStandardLayout);
|
||||
EXT_SET("VK_EXT_primitive_topology_list_restart", hasPrimitiveTopologyListRestartExt);
|
||||
EXT_SET("VK_EXT_transform_feedback", hasTransformFeedbackExt);
|
||||
EXT_SET("VK_EXT_extended_dynamic_state", hasExtendedDynamicStateExt);
|
||||
EXT_SET_COND("VK_EXT_extended_dynamic_state", hasExtendedDynamicStateExt, !quirks.brokenDynamicStateVertexBindings);
|
||||
EXT_SET("VK_EXT_robustness2", hasRobustness2Ext);
|
||||
}
|
||||
|
||||
@ -260,6 +260,10 @@ namespace skyline::gpu {
|
||||
}
|
||||
|
||||
case vk::DriverId::eArmProprietary: {
|
||||
if (deviceProperties.driverVersion < VK_MAKE_VERSION(42, 0, 0))
|
||||
brokenDynamicStateVertexBindings = true;
|
||||
|
||||
vkImageMutableFormatCostly = true; // Disables AFBC in some cases
|
||||
maxGlobalPriority = vk::QueueGlobalPriorityEXT::eHigh;
|
||||
break;
|
||||
}
|
||||
|
@ -78,6 +78,7 @@ namespace skyline::gpu {
|
||||
bool brokenMultithreadedPipelineCompilation{}; //!< [Qualcomm Proprietary] A bug that causes the shader compiler to crash when compiling pipelines on multiple threads simultaneously
|
||||
bool brokenSubgroupMaskExtractDynamic{}; //!< [Qualcomm Proprietary] A bug that causes shaders using OpVectorExtractDynamic on the subgroup mask builtins to fail to compile
|
||||
bool brokenSubgroupShuffle{}; //!< [Qualcomm Proprietary] A bug that causes shaders using OpSubgroupShuffle to do all sorts of weird things
|
||||
bool brokenDynamicStateVertexBindings{}; //!< [ARM Proprietary] A bug that causes VK_EXT_dynamic_state vertex bindings not to work correctly
|
||||
|
||||
u32 maxSubpassCount{std::numeric_limits<u32>::max()}; //!< The maximum amount of subpasses within a renderpass, this is limited to 64 on older Adreno proprietary drivers
|
||||
vk::QueueGlobalPriorityEXT maxGlobalPriority{vk::QueueGlobalPriorityEXT::eMedium}; //!< The highest allowed global priority of the queue, drivers will not allow higher priorities to be set on queues
|
||||
|
Loading…
Reference in New Issue
Block a user