Eric Engestrom
956c93e154
docs: update calendar and link releases notes for 21.3.5
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14737 >
2022-01-26 20:43:36 +00:00
Eric Engestrom
b486dfd1a4
docs: add release notes for 21.3.5
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14737 >
2022-01-26 20:43:36 +00:00
Jason Ekstrand
fe71f4d9ec
.mailmap: Switch Jason Ekstrand to @collabora.com
...
Jason is starting at Collabora on the 24th. More details at
https://www.jlekstrand.net/jason/blog/2022/01/hello-collabora/
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14586 >
2022-01-26 20:08:31 +00:00
Yiwei Zhang
96acd0933e
tu: VkExternalImageFormatProperties is optional
...
..even if external image info has valid external handles.
Fixes: 26380b3a9f
("turnip: Add driver skeleton (v2)")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14730 >
2022-01-26 16:35:10 +00:00
Ruijing Dong
49e02d076d
radeon/vcn: Updating render_pic_list for correction
...
In order to keep track of reference frame buffer address changing,
using past_ref to compare with render_pic_list, once the one in
past_ref is valid and if render_pic_list has that entry, it will
need to update it to the latest one in ref[i].
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5868
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14646 >
2022-01-26 15:28:55 +00:00
Ruijing Dong
cf16368977
frontend/va: Keep surface buf addr before reallocation
...
The reference buffer address is used as the indication in h264 DPB
Tier2, when reference buffer was reallocated, h264 DPB would lose
track of that reference picture. Adding a pointer obsolete_buf in
vlVaSurface data structure for tracking this released buffer, also
in h264_picture_desc adding a private field, which contains
past_ref[16] for tracking previously released buffer vs current
buffer for reference frames.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5868
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14646 >
2022-01-26 15:28:55 +00:00
Mike Blumenkrantz
8747715aec
zink: reorder fbfetch flag-setting to avoid null deref
...
this avoids dereferencing pg->dd which is allocated a few lines later
Fixes: 417477f60e
("zink: always use lazy (non-push) updating for fbfetch descriptors")
fixes (radv):
dEQP-GLES31.functional.blend_equation_advanced.basic.multiply
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14718 >
2022-01-26 14:59:56 +00:00
Rhys Perry
7a0cf7f6d1
radv: fix optimized MSAA copies with suballocated images
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Fixes: deb4685df3
("radv: implement optimized MSAA copies using FMASK")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5829
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14705 >
2022-01-26 10:54:33 +00:00
Mike Blumenkrantz
e4218e5c4d
zink: handle bogus xfb draws
...
drawing unpopulated xfb data is legal(?) and tested in cts, and the correct
operation is to just drop the draw, so do that here
fixes (nvidia):
GTF-GL46.gtf40.GL3Tests.transform_feedback2.transform_feedback2_api
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14694 >
2022-01-26 04:00:42 +00:00
Iván Briano
61ece8f6a4
anv: Enable VK_KHR_dynamic_rendering
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
5d9e8bc9be
anv: implement the meat of VK_KHR_dynamic_rendering
...
Includes a fake framebuffer allocation that's necessary for the code we
still use from the regular render passes.
v3: (Lionel)
- Reuse the attachment count from the faux render pass, remove now
unused function
- Add a cmd_buffer_end_rendering function to match begin_rendering,
making use of the split stuff from end_subpass
v4: (Lionel)
- Don't bother with mark_images_writen or resolves on suspend case
- Remove flush at the end of end_rendering, it's not needed
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
4ad9ccd28a
anv: split end_subpass into more discrete components
...
v3: Split cmd_buffer_end_subpass instead of doing parts conditionally (Lionel)
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
2f942f3217
anv: Split attachment clearing code into their own functions
...
v3: Avoid recalculating parameters the caller already had (Lionel)
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
e41436beec
anv: allocate fake render pass for continuation command buffers
...
v4: Assert if there's no VkCommandBufferInheritanceRenderingInfoKHR (Lionel)
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
b32023573d
anv: Split out state attachments allocation
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
5d9aaea31f
anv: allocate fake render pass on pipeline creation
...
v3: (Lionel)
- Handle VkPipelineRenderingCreateInfoKHR not being present
- Rename dynamic_pass and set it for regular render passes too
v4: C99 is good (Lionel)
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
73ed019bec
anv: add functions to set up fake render passes
...
There's two of them because they can be created from three points in the
code that provide different details and this is the least ugly way I
could think of for now.
v2: Avoid allocations (Lionel)
v3: Move definition closer to its usage (Lionel)
v4: (Lionel)
- Simplify anv_dynamic_pass_init_full
- Zero out pass/subpass to avoid stall pointers
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Iván Briano
b18bc028ee
anv: Remove unused struct member
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Jason Ekstrand
6612dcc425
anv/pass: Don't set first_subpass_layout for stencil-only attachments
...
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13980 >
2022-01-25 18:13:51 -08:00
Alyssa Rosenzweig
ee044d445d
panfrost: Remove NO_BLEND_PACKS quirk
...
Now unused.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
5a8d86f69e
panfrost: Simplify format class selection
...
This was made way more complicated than it needs to be for a Midgard-only pass.
The only caller doesn't care about the class, only if it's native or not.
Simplify it appropriately.
It really isn't that hard.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
da9d6a643a
panfrost: Don't set NO_BLEND_PACKS on Bifrost
...
It doesn't make sense on Bifrost -- the only consumer of the quirk is
pan_lower_framebuffer, a Midgard-only pass.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
93f6c6586c
panfrost: Remove MIDGARD_{NO_TYPED_BLEND_STORES,MISSING_LOADS}
...
These "quirks" are common for Midgard, yet are only consumed by
pan_lower_framebuffer -- a Midgard-only pass. So the quirks should be removed
and inlined into their users. Thid removes MIDGARD_QUIRKS altogether.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
db497c27dc
panfrost: Remove NO_TILE_ENABLE_MAP quirk
...
Function of architecture. Add a comment to the sole consumer of the quirk bit
about why it's used.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
bbe0517481
panfrost: Remove MIDGARD_BROKEN_FP16 quirk
...
Unused.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
d4575bcc79
panfrost: Remove MIDGARD_SFBD quirk
...
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Alyssa Rosenzweig
47a7e26954
panfrost: Remove HAS_SWIZZLES quirk
...
It's a function of the major arch.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14724 >
2022-01-26 01:45:09 +00:00
Jesse Natalie
ed42b129ef
d3d12: Set caps for tesselation
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
278b30723f
d3d12: Handle input clip array size in the shader key
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
df302f5f90
d3d12: Update varying creation logic to handle location_frac
...
When multiple variables are packed into the same location, we need
to re-construct variables that read/write the same components of that
register so that the DXIL signature is correct. We could try to
merge these variables, but getting the types right sounds harder than
just preserving the multiple individual variables.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
1a231ec805
d3d12: Add a state variable for patch_vertices_in
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
de438f381f
d3d12: Handle passthrough TCS in the case where eval is bound
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
224c1562c1
d3d12: Handle patch_vertices and patch topology
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
c83476ff13
d3d12: Link tesselation control and eval shaders
...
GLSL puts a bunch of tessellation info in the eval shaders, because
passthrough control shaders can exist. D3D12 puts it in the control
(hull) shader instead. So, when specializing, copy info from domain
to hull. For initial compiles (no domain shader), just make something
up.
D3D12 also requires the domain and hull shaders to have identical
patch constant signatures. Use the existing infrastructure and extend
it to also propagate patch constants. Notably, patch constant locations
are outside of the 64-bit range value so they require a separate pass
to avoid shifts larger than 64.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
0ed7b44f5c
d3d12: Initial plumbing for tesselation
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
22156821ea
d3d12: Enable PIPE_CAP_TGSI_TEXCOORD
...
This is required to be able to use the necessary number of varyings,
otherwise we hit asserts because mesa/st starts assigning varyings
locations above 64 due to the +9 reserving these texcoords.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
973bff335f
microsoft/compiler: Handle clip/cull distance as an input to tess shaders
...
In order to get the semantics right, we need to know how many of the clip/
cull fields are designated for which purpose. In the case of a shader that
can receive these fields as both input and output, the shader_info property
is reserved to store the output info. We could add a dedicated input field
to shader_info, but since it'd probably only be useful for us, just send
it through a side channel during shader linking.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
1c4667bc9f
microsoft/compiler: Location_frac needs to be included in sort order
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
4da51aa88f
microsoft/compiler: Primitive ID should only be added as a sysval in geometry shaders
...
Docs say that its presence in signatures as a "shadow" element (meaning it's not
accessed via load/store, but with a dedicated opcode) is legacy. It seems it
wasn't carried forward when HS/DS were added in D3D11.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
ec415a274e
microsoft/compiler: Emit DS PSV validation and entrypoint metadata
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
9aca56b137
microsoft/compiler: Handle domain location intrinsic
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
8524d04783
microsoft/compiler: Handle load_output in the HS stage as reading a previously written patch constant
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
a39881b788
microsoft/compiler: Handle load_per_vertex_output as LoadOutputControlPoint
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
a550c059c7
microsoft/compiler: For load_input from DS, use loadPatchConstant
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
cc6104dd3f
microsoft/compiler: For store_output from HS, use storePatchConstant
...
In HS, store_per_vertex_output maps to storeOutput in DXIL. The data
that isn't per-vertex is patch constants.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
97b6ea71a0
microsoft/compiler: Add a pass for hull and domain shaders to shrink tess level vars
...
DXIL validation will complain if the tess factor signature entries have the
wrong number of components for the shader's domain. Make sure that both
hull and domain shaders have the right number, and drop loads and stores
from the removed components.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
bd2a4fb1b8
microsoft/compiler: Add patch constant signature into PSV and as container blob
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
26247d506e
microsoft/compiler: Gather patch const signature and handle tess factor in it
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
8e42891f69
microsoft/compiler: When sorting patch varyings, adjust location to be in normal varying range
...
This way, patch varyings come before the patch sysvals (tess levels).
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00
Jesse Natalie
4bb4d0454d
microsoft/compiler: Overlap patch and non-patch varyings so both are separately 0-indexed
...
Also add tess factors to the list of sysvals that can cause vars to be sorted last.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14399 >
2022-01-26 01:31:35 +00:00