diff --git a/docs/features.txt b/docs/features.txt index 9496b76d80c..f743189183d 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -472,7 +472,7 @@ Vulkan 1.2 -- all DONE: anv, hk, nvk, panvk/v10+, pvr, tu, vn VK_KHR_driver_properties DONE (anv, dzn, hasvk, kk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) VK_KHR_image_format_list DONE (anv, dzn, hasvk, kk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) VK_KHR_imageless_framebuffer DONE (anv, dzn, hasvk, kk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) - VK_KHR_sampler_mirror_clamp_to_edge DONE (anv, dzn, hasvk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) + VK_KHR_sampler_mirror_clamp_to_edge DONE (anv, dzn, hasvk, kk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) VK_KHR_separate_depth_stencil_layouts DONE (anv, dzn, hasvk, kk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) VK_KHR_shader_atomic_int64 DONE (anv, lvp, nvk, panvk/v10+, radv, vn, tu/a740+) VK_KHR_shader_float16_int8 DONE (anv, dzn, hasvk, lvp, nvk, panvk, radv, tu, vn) diff --git a/src/kosmickrisp/vulkan/kk_physical_device.c b/src/kosmickrisp/vulkan/kk_physical_device.c index 92dab7230ed..5875602fb1b 100644 --- a/src/kosmickrisp/vulkan/kk_physical_device.c +++ b/src/kosmickrisp/vulkan/kk_physical_device.c @@ -70,7 +70,7 @@ kk_get_device_extensions(const struct kk_instance *instance, .KHR_driver_properties = true, .KHR_image_format_list = true, .KHR_imageless_framebuffer = true, - .KHR_sampler_mirror_clamp_to_edge = false, + .KHR_sampler_mirror_clamp_to_edge = true, .KHR_separate_depth_stencil_layouts = true, .KHR_shader_atomic_int64 = false, .KHR_shader_float_controls = true, @@ -148,6 +148,7 @@ kk_get_device_features( { *features = (struct vk_features){ /* Vulkan 1.0 */ + .alphaToOne = true, .depthClamp = true, .drawIndirectFirstInstance = true, .dualSrcBlend = true, @@ -188,6 +189,10 @@ kk_get_device_features( .samplerYcbcrConversion = true, .shaderDrawParameters = true, .storageBuffer16BitAccess = true, + /* TODO KOSMICKRISP + * Disabled due to failing tests (vertex fragment interface mismatch): + * dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.* + */ .storageInputOutput16 = false, .storagePushConstant16 = true, .uniformAndStorageBuffer16BitAccess = true, @@ -210,6 +215,7 @@ kk_get_device_features( .imagelessFramebuffer = true, .multiDrawIndirect = true, .runtimeDescriptorArray = true, + .samplerMirrorClampToEdge = true, .scalarBlockLayout = true, .separateDepthStencilLayouts = true, /* TODO_KOSMICKRISP shaderFloat16 @@ -235,8 +241,11 @@ kk_get_device_features( .shaderOutputViewportIndex = true, .shaderSampledImageArrayNonUniformIndexing = true, .shaderStorageBufferArrayNonUniformIndexing = true, + .shaderStorageImageArrayNonUniformIndexing = true, .shaderStorageTexelBufferArrayDynamicIndexing = true, + .shaderStorageTexelBufferArrayNonUniformIndexing = true, .shaderSubgroupExtendedTypes = true, + .shaderUniformBufferArrayNonUniformIndexing = true, .shaderUniformTexelBufferArrayDynamicIndexing = true, .shaderUniformTexelBufferArrayNonUniformIndexing = true, .storageBuffer8BitAccess = true,