Mike Blumenkrantz
7308996921
lavapipe: dynamic state3
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18878 >
2022-09-29 05:00:10 +00:00
Iago Toral Quiroga
b6093ffbe7
v3dv: expose VK_EXT_image_robustness
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18820 >
2022-09-27 09:08:29 +00:00
Lionel Landwerlin
7556ee1fe4
anv: add support for EXT_mutable_descriptor_type
...
v2: Update docs/features.txt (Tapani)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18688 >
2022-09-21 13:34:20 +00:00
Danylo Piliaiev
075cd3ca94
tu: Expose Vulkan 1.3
...
We have all required functionality implemented, and DXVK now requires
Vulkan 1.3.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18709 >
2022-09-21 11:56:26 +00:00
Danylo Piliaiev
9cc9b595f1
turnip: Implement VK_EXT_mutable_descriptor_type
...
Trivial promotion from VALVE, just rename enums and types.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18710 >
2022-09-21 11:30:31 +03:00
Dave Airlie
b983fcb585
docs: add new llvmpipe/lavapipe atomic float extensions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18636 >
2022-09-20 01:10:36 +00:00
Erik Faye-Lund
345f52661c
docs: update staus of mark GL_ARB_texture_compression_bptc
...
This is now done for all drivers that supports half-float and sRGB
textures. Update features.txt to reflect this.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18574 >
2022-09-17 10:03:12 +00:00
Hans-Kristian Arntzen
f5b46a643f
radv: Implement VK_EXT_mutable_descriptor_type.
...
Trivial promotion from VALVE, just rename enums and types.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18610 >
2022-09-15 16:55:25 +00:00
Erik Faye-Lund
df58342f61
mesa/st: enable rgtc extension with fallback
...
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Acked-by: Eric Engestrom <eric@igalia.com >
Tested-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18248 >
2022-09-15 08:16:01 +00:00
Mike Blumenkrantz
4e4d91a79d
docs: add more features
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17956 >
2022-09-14 14:19:05 +00:00
Iago Toral Quiroga
ab378b9ce5
v3dv: expose VK_EXT_load_store_op_none
...
This extension adds new NONE attachment load / store operations,
which are identical to the DONT_CARE variants with the difference
that DONT_CARE doesn't ensure that the original contents of the
memory within the render area are preserved and these new versions
do (with some caveats).
Our implementation was not destroying data with DONT_CARE anyway
so we already support the new semantics. Our implementation is
such that we don't need to do anything specific with the new
operations and the current behavior will do what is expected.
We pass all the tests under:
dEQP-VK.renderpass*.load_store_op_none.*
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18570 >
2022-09-14 13:48:46 +00:00
Danylo Piliaiev
34109c8c10
turnip: implement VK_EXT_multi_draw
...
vkoverhead running:
* draw numbers are reported as thousands of operations per second
* percentages for draw cases are relative to 'draw'
0, draw, 29151, 100.0%
1, draw_multi, 35449, 121.6%
2, draw_vertex, 28907, 99.2%
3, draw_multi_vertex, 56658, 194.4%
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11502 >
2022-09-14 13:18:02 +00:00
Connor Abbott
201851a3d1
tu: Initial implementation of VK_EXT_inline_uniform_block
...
This is a trivial implementation where we just insert a UBO descriptor
pointing to the actual data and then treat it as a normal UBO everywhere
else. In theory an indirect CP_LOAD_STATE would be more efficient than
ldc.k to preload inline uniform blocks to constants. However we will
always need the UBO descriptor anyway, even if we lower the limits
enough to always be able to preload them, because with variable pointers
we may have a pointer that could be to either an inline uniform block or
regular uniform block. So, using an indirect CP_LOAD_STATE should be an
optimization on top of this.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17960 >
2022-09-14 12:46:01 +00:00
Chia-I Wu
43c53e3225
turnip: add support for VK_KHR_global_priority
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18510 >
2022-09-14 01:38:54 +00:00
Rajnesh Kanwal
0265a23172
pvr: Implement vkGetPhysicalDeviceImageFormatProperties2 API.
...
Signed-off-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18487 >
2022-09-13 11:47:37 +00:00
Georg Lehmann
1e7a930e10
radv: Enable VK_EXT_load_store_op_none.
...
VK_ATTACHMENT_STORE_OP_NONE_EXT is already supported through
VK_KHR_dynamic_rendering.
It doesn't seem like we need to do anything special for
VK_ATTACHMENT_LOAD_OP_NONE_EXT.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7246
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18545 >
2022-09-13 09:56:11 +00:00
Iago Toral Quiroga
e2010e000b
v3dv: expose VK_EXT_primitive_topology_list_restart
...
The hw supports restarts of list primmitives and we pass
all the relevant CTS tests.
We don't advertise patch list restarts because we don't support
tessellation shaders yet.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18544 >
2022-09-12 12:45:10 +00:00
Iago Toral Quiroga
ca330f7f04
v3dv: implement VK_EXT_memory_budget
...
This is mostly based on Turnip's implementation.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18483 >
2022-09-09 11:14:03 +00:00
Iago Toral Quiroga
f27d3a08c6
v3dv: expose VK_EXT_attachment_feeback_loop_layout
...
We don't have any special requirements for this, so we can just expose
the extension.
The tests in CTS have an issue where they only check if a format is
supported for sampling but don't check if an image with that format
can be created for sampling. In our case, since we can't sample
1D depth/stencil images, this causes affected tests to crash in the
simulator (they pass on the device though). There is an issue with
a fix here:
https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/3923
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18489 >
2022-09-09 12:31:02 +02:00
Iago Toral Quiroga
bcc37775f1
v3dv: implement VK_EXT_depth_clip_control
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18387 >
2022-09-09 10:03:58 +00:00
Chad Versace
d0cb99e96a
venus: Enable VK_EXT_pipeline_creation_feedback
...
Implement natively by always returning invalid feedback. This is a legal
(but useless) implementation according to the spec.
In the future, I want to return the real feedback values from the host,
but that requires changes to the venus protocol. The protocol does not
know that the VkPipelineCreationFeedback structs in the
VkGraphicsPipelineCreateInfo pNext are output parameters. Before
VK_EXT_pipeline_creation_feedback, the pNext chain was input-only.
Tested with `dEQP-VK.pipeline.*.creation_feedback.*`.
The tests in vulkan-cts-1.3.3.0 are buggy. I submitted a fix to dEQP
upstream; see below.
Results with the bug:
Passed: 0/30 ( 0.0%)
Failed: 12/30 (40.0%)
Not supported: 18/30 (60.0%)
Warnings: 0/30 ( 0.0%)
Results with bugfix:
Passed: 12/30 (40.0%)
Failed: 0/30 ( 0.0%)
Not supported: 18/30 (60.0%)
Warnings: 0/30 ( 0.0%)
See: https://gerrit.khronos.org/c/vk-gl-cts/+/10086
See: https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/909
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Signed-off-by: Chad Versace <chadversary@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18035 >
2022-09-08 19:13:51 +00:00
Mark Collins
dd19da31f2
tu: Expose VK_EXT_tooling_info using common implementation
...
Signed-off-by: Mark Collins <mark@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18390 >
2022-09-08 08:14:40 +00:00
Eric Engestrom
28ed514c3c
v3dv: implement VK_EXT_shader_module_identifier
...
Passes `dEQP-VK.*.shader_module_identifier.*`
Signed-off-by: Eric Engestrom <eric@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18458 >
2022-09-07 12:51:16 +00:00
Danylo Piliaiev
dda28a3e35
tu: Trivially expose VK_EXT_rasterization_order_attachment_access
...
It is just a renamed VK_ARM_rasterization_order_attachment_access.
Zink depends on it to expose KHR_blend_equation_advanced_coherent
Passes GL tests via Zink:
dEQP-GLES31.functional.blend_equation_advanced.*
KHR-GLES31.core.blend_equation_advanced.*
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18420 >
2022-09-06 16:51:54 +00:00
Iago Toral Quiroga
898ce84707
v3dv: expose VK_EXT_border_color_swizzle
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18416 >
2022-09-06 06:33:38 +00:00
Iago Toral Quiroga
26024e9701
v3dv: expose VK_EXT_tooling_info
...
There is a stub for this implemented in the common code we can use
which reports 0 tools.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18410 >
2022-09-06 06:10:41 +00:00
Iago Toral Quiroga
ffd3ef35bb
v3dv: implement VK_KHR_workgroup_memory_explicit_layout
...
There is an issue with some Amber tests for this feature using
a larger number of workgroup invocations than supported without
checking the limit. I filed and issue [1] (and a CL with a fix), but
meanwhile we want to flag those as expected crashes for CI.
[1] https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/3913
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18337 >
2022-09-01 06:37:21 +00:00
Iago Toral Quiroga
1614364281
v3dv: expose VK_KHR_synchronization2
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18290 >
2022-08-31 07:36:18 +00:00
Iago Toral Quiroga
ca33c319e5
v3dv: implement VK_KHR_zero_initialize_workgroup_memory
...
This only requires that we call the relevant lowering pass in NIR.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18312 >
2022-08-31 07:33:19 +02:00
Iago Toral Quiroga
ed9189025f
v3dv: expose VK_KHR_maintenance4
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18246 >
2022-08-30 11:10:14 +00:00
Chad Versace
45c47e7bd6
venus: Document VK_EXT_texture_compression_astc_hdr support
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:56 +00:00
Chad Versace
6d0c86c777
venus: Enable VK_EXT_tooling_info
...
Implement it locally with the common implementation.
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
2bf2a05312
venus: Enable VK_EXT_private_data
...
Implement it as hybrid native/passthrough as a workaround until venus
learns how to deep surgery on pNext chains. Eventually, we want to
implement it purely natively. For details, see the big code comment.
See: https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/908
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Signed-off-by: Chad Versace <chadversary@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
4d80ccbf2d
venus: Enable VK_KHR_format_feature_flags2
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
fc2d37882c
venus: Enable VK_EXT_ycbcr_2plane_444_formats
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
ea273dd8b9
venus: Enable VK_EXT_texel_buffer_alignment
...
The patch looks asymmetic because the extension was promoted to 1.3 but
not its feature struct.
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
246f29d0b1
venus: Enable VK_EXT_subgroup_size_control
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
c01f0bbbec
venus: Enable VK_KHR_zero_initialize_workgroup_memory
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
23a424f6e3
venus: Enable VK_KHR_shader_terminate_invocation
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
8fbc12feb2
venus: Enable VK_KHR_shader_non_semantic_info
...
This extension has no Vulkan API, only SPIR-V API.
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Chad Versace
1951eb2dad
venus: Enable VK_KHR_shader_integer_dot_product
...
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18000 >
2022-08-30 08:09:55 +00:00
Mike Blumenkrantz
a327ff90d2
zink: add partial async shader compile support
...
when compute shaders can be precompiled, they can be precompiled asynchronously
which allows the implementation of the parallel shader compile hooks
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197 >
2022-08-30 04:11:16 +00:00
Iago Toral Quiroga
ee62a4c751
v3dv: implement VK_EXT_texel_buffer_alignment
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18291 >
2022-08-29 11:32:39 +02:00
Danylo Piliaiev
0bf2033e0d
tu: Implement VK_EXT_attachment_feedback_loop_layout
...
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18064 >
2022-08-26 10:29:00 +00:00
Chad Versace
a771efdefe
venus: Enable VK_EXT_pipeline_creation_cache_control
...
The extension disrupts assumptions in venus. It gives
vkCreateFooPipelines an additional success code,
VK_PIPELINE_COMPILE_REQUIRED, which allows some pipelines to succeed
creation and others fail.
Tested with 'dEQP-VK.*cache_control*' at vulkan-cts-1.3.3.1.
pass/fail/skip/warn = 15/0/0/3
Warnings were from long pipeline compiles on a full debug build in host
and guest.
See: https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/890
Signed-off-by: Chad Versace <chadversary@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17847 >
2022-08-24 22:50:33 +00:00
Mike Blumenkrantz
c4f78396d4
zink: support PIPE_CAP_FBFETCH_COHERENT
...
that's what VK_EXT_rasterization_order_attachment_access is for
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18133 >
2022-08-24 12:19:13 +00:00
Lucas Stach
762eefdbf6
etnaviv: mark instanced draw extensions as supported in docs/features.txt
...
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18046 >
2022-08-24 09:13:31 +00:00
Mark Collins
f649233896
tu: Implement VK_EXT_non_seamless_cube_map
...
Passes CTS tests: dEQP-VK.texture.*non_seamless_*
Signed-off-by: Mark Collins <mark@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18079 >
2022-08-17 16:56:54 +00:00
Rhys Perry
bc1382eed9
docs/radv: advertise VK_KHR_global_priority
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18078 >
2022-08-16 11:26:48 +00:00
Eric Engestrom
aa018415b3
docs/features: drop unsupported VK_KHR_display & VK_KHR_get_display_properties2 for lavapipe
...
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17796 >
2022-08-15 21:47:11 +00:00