George Ouzounoudis
0de4083544
nvk: Do not increment instance id across draws
...
In cases of multiple draws (i.e. indirect draws) instance id should not
increment across draw boundaries. Use a local copy of "begin" to modify
the instance id inside the instances loop only.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
ff30b05917
nvk: Add a devenv ICD json file
...
This also reworks the ICD generation stuff based on the radv header
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
b0d8ddc70e
nvk: Support VK_FORMAT_B10G11R11_UFLOAT_PACK32 for vertex buffers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Dave Airlie
c9b72acc4e
nvk: fix multiple pipelines failure allocation case.
...
Fixes these failures:
dEQP-VK.api.object_management.alloc_callback_fail_multiple*
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
79d7ee22e1
nvk/format: Style fix for VkFormatProperties3KHR
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
7d629d7aec
nvk: Add a bo size to nvk_descriptor_set
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
3568027b9d
nvk: Assert that descriptor buffer access stays in-bounds
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
be417625c4
nvk: Advertise VK_KHR_depth_stencil_resolve
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
d47ca67cde
nvk: Advertise MSAA via image format properties
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
8dc19e1cce
nvk: Stop advertising higher framebufferNoAttachmentsSampleCounts
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
d6a0c1cd4b
nvk: Replace gl_SamplePosition with fract(gl_FragCoord.xy)
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
4bd2ba31fc
nvk: Use meta for MSAA resolves
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
1c3dc8c632
nvk/meta: Fix restore for descriptor set 0
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:02 +00:00
Faith Ekstrand
1a94c55632
vulkan/meta: Add support for MSAA resolves
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
57314fcdc6
vulkan/meta: Rename vk_meta_blit.c to vk_meta_blit_resolve.c
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
d813fe50a4
vulkan/meta: Support writing stencil as iterative discard
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
c184b54ef9
vulkan/meta: Break the guts of blit into a helper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
266a472b28
vulkan/meta: Add a helper for building texture ops
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
996844f884
vulkan/meta: Bind whole LODs of 3D blit destinations
...
Instead of only binding the layers we need, bind the whole LOD. In
particular, we now set a layer range of [0, 1] when creating the image
view but a layerCount of minify(depth, level) in VkRenderingInfo. While
still a bit out of spec, this is more in line with how 3D image views
typically work for sampled and storage images and allows us to avoid
creating 2D images views which would require 2D_ARRAY_COMPATIBLE_BIT.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
a34edc7500
nvk: Fill out sample locations on Maxwell B+
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
7660e585f6
nvk: Stop creating a new upload BO every time
...
We intended this optimization for the case where we're uploading more
data than we had in the previous upload BO. If there is no previous
upload BO, we always want to set it to the new one.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
55278fe2b8
nvk: Set correct multisample regs for graphics pipelines
...
This adds SAMPLE_MASK_*, ANTI_ALIAS_CONTROL, and drops ANTI_ALIAS which
we set in BeginRendering().
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
0842cae081
nvk: Pass through a shader key for fragment shaders and MSAA
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
a02f65809c
nvk: Use the right view format for stencil texturing
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
de3ef1a9ec
nvk: Support copies of MSAA images
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
9145286083
nvk: Handle multisampled render targets properly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
a34467001d
nvk: Handle zero color attachments better
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
48f9ec1fe5
nvk: Stop asserting on MSAA
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
0ae334b32b
nouveau/parser: Handle SET_ANTI_ALIAS_SAMPLE_POSITIONS
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
c3a6b529e4
nouveau/parser: Sort METHOD_ARRAY_SIZES
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
28e73a72f6
nil: Add an offset4d struct and some helpers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
256a1e4193
nil: Properly support MSAA
...
We had a num_samples field in nil_image but didn't do anything with it
for layout. This adds real code for MSAA which seems analygous to the
code in nvc0_miptree.c and seems to match HW based on my image layout
R/E crucible test.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
157fa1871c
nil: Use ONE for the anixotropic coarse spread function
...
No idea if it's what we want but this is what nouveau does and it's good
to be consistent for now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
f35b0f6f2a
nvk: Implement CS invocations statistics queries
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
62bd03a0e7
nouveau/mme: Add a mul64 helper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
adb880cd29
nvk: Implement DispatchIndirect
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
1179d7606b
nvk: Break the guts of CmdDispatch into a helper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Thomas H.P. Andersen
0b2f9cfecd
nvk: advertize KHR_relaxed_block_layout
...
Test run totals:
Passed: 16/32 (50.0%)
Failed: 0/32 (0.0%)
Not supported: 16/32 (50.0%)
Warnings: 0/32 (0.0%)
Not supported is: "Physical storage buffer pointers not supported", so
waiting for VK_KHR_buffer_device_address.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
ed6d5c33c6
nvk: Implement VK_EXT/KHR_buffer_device_address
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Emma Anholt
07f48c925b
nvk: Use depth_clamp_enable to select PIXEL_*_Z_CLAMP.
...
Fixes most of "-t depth_clamp" (just point_list fails, but other
point_list stuff fails too)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Emma Anholt
d6423d402c
nvk: Fix missing init of the stages to sync against.
...
Fixes: d8a0dcb234cd ("nvk: Events")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Emma Anholt
8f25f9f068
nvk: Remove duplicate (disabled) point sprite setup.
...
There's another copy of this above, with just slightly different unused
state.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Dave Airlie
5610fad23e
nvk: fix copy lower address extraction
...
this was missing an 0xf
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Thomas H.P. Andersen
d4d210c588
nvk: sort extensions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Thomas H.P. Andersen
130e9381a8
nvk: fix initialization override
...
this is already set a few lines up
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Thomas H.P. Andersen
3974f88de7
nvk: drop dead assignment
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Thomas H.P. Andersen
683102a3bd
nvk: drop dead assignment
...
p_format is not used again after this assignment
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
f4fc6511ac
nouveau/headers: Add generated headers to dependencies
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Thomas H.P. Andersen
fd70fcd62b
nvk: CmdPushDescriptorSetWithTemplateKHR
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00
Faith Ekstrand
1944af3260
nvk: Add a helper for pushing descriptors
...
This reduces the boilerplate a bit.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:01 +00:00