Rajnesh Kanwal
222f3c8a6d
pvr: Implement vkCmdDrawIndexedIndirect API.
...
Signed-off-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18486 >
2022-09-13 12:33:13 +00:00
Rajnesh Kanwal
cdf986a3e6
pvr: Implement vkCmdDrawIndirect API.
...
Signed-off-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18486 >
2022-09-13 12:33:13 +00:00
Eric Engestrom
e14c418862
docs: move rusticl readme into docs/
...
And convert it from Markdown to rST.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18568 >
2022-09-13 12:24:35 +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
David Heidelberg
cf0e065dcc
ci: uprev piglit 2022-09-08
...
Main change is new traces YAML format!
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
45eda06953
ci: introduce update_traces_checksum.py
...
Invoking this script takes checksums from all failed jobs and update
them in $driver-traces.yml files.
```
.gitlab-ci/bin/update_traces_checksum.py --rev $(git rev-parse HEAD)
```
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
de08baade7
ci: split ci_run_n_monitor into script and shared parts
...
These parts will be shared with the update checksum script.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
c9a666c1a4
ci: export whole results/ directory for all traces jobs
...
We use `results/results.json.bz2` in `update_traces_checksum.py`.
Just few extra KiB.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
f2649b93e2
ci: performance traces: make use of no-perf label
...
Traces with label `no-perf` will be skipped in performance testing.
This commit adds the yq tool, which preprocesses the traces.yml file
before sending it to the piglit.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
2b8a14e076
ci: check traces.yml files with yamllint
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
3242972cac
ci/crocus: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
79aa9c62db
ci/i915: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
efc8eeaf7e
ci/intel: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
23070376ac
ci/radeonsi: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
1777510390
ci/panfrost: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
033050385d
ci/broadcom: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
99114f12e0
ci/lavapipe: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
f111b238b7
ci/llvmpipe: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
1928ff9da4
ci/virgl: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
David Heidelberg
5c388fbdeb
ci/freedreno: convert traces to new YAML format
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18329 >
2022-09-13 09:16:19 +00:00
Karmjit Mahil
460b19d393
pvr: Handle VK_CULL_MODE_FRONT_AND_BACK.
...
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18550 >
2022-09-13 09:00:17 +00:00
Samuel Pitoiset
075d8aeb67
radv: advertise extendedDynamicState2PatchControlPoints
...
For less stuttering with Zink, also required by Zink for full GPL.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6584
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
eef1511437
radv: implement dynamic patch control points
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
76960e2d93
radv: move emitting GE_CNTL for non-NGG pipelines from the cmdbuf
...
GE_CNTL is the equivalent of IA_MULTI_VGT_PARAM on GFX9 and older.
Calling this function for every draw shouldn't really hurt in practice
because only non-NGG pipelines need this.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
0bf822144f
radv: move emitting PRIMGROUP_SIZE for <= GFX9 from the cmdbuf
...
The number of tessellation patches that is computed from the number
of patch control points might change dynamically too.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
556b297977
radv: pass the number of patch control points to si_get_ia_multi_vgt_param()
...
To prepare for dynamic patch control points.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
5bfac03c8a
radv: add ABI lowering support for dynamic patch control points
...
The number of patch control points (TCS) and the number of patches
(TCS/TES) is read from user SGPRs.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
8253ec3855
radv: add shader arguments for dynamic patch control points
...
This introduces two new user SGPRS:
- tcs_offchip_layout: input patch size and number of patches in TCS
- tes_num_patches: number of patches in TES
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
9a6aa3e23a
aco: prevent a division by zero when patch control points is dynamic
...
tess_input_vertices is zero if the state is dynamic.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
21d9390b0e
radv: set workgroup_size to 256 when patch control points is dynamic
...
It's the maximum possible value. This is to ensure that compilers
don't optimize away barriers, like in ACO when workgroup_size is less
than or equal to wave_size, s_barrier is considered a no-op.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
9373dbdfcc
radv: skip computing some tess info when patch control points is dynamic
...
We don't know the value.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
0cea8276bc
radv: add radv_pipeline_key::dynamic_patch_control_points
...
This will be used to compile different tessellation shaders when
patch control points is dynamic.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
54bd5851ba
radv: emit the LDS size for TCS directly from the pipeline on GFX9+
...
To be consistent with the LDS shader config for LS, and this will
be emitted from the cmdbuf for dynamic patch control points.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Samuel Pitoiset
9a67edaa56
radv: reword a comment about dynamic states when rasterization is disabled
...
Make it more generic instead of listing all states.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18344 >
2022-09-13 08:24:14 +00:00
Erik Faye-Lund
3454ff21e5
docs/zink: document rgtc requirement
...
OpenGL 3.0 requires RGTC support, and until we have emulation in place,
we should document that requirement.
Fixes: d50e8554b9 ("zink: add feature-documentation")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18549 >
2022-09-13 08:15:40 +00:00
Samuel Pitoiset
7c34b31db2
radv: upload the PS epilog in the existing pipeline BO
...
This reduces the number of BOs needed.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363 >
2022-09-13 07:03:14 +00:00
Samuel Pitoiset
36d9fc5b5f
radv: store the binary to radv_shader_part
...
This is currently always freed after the upload but this will allow
to upload the PS epilog later.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363 >
2022-09-13 07:03:14 +00:00
Samuel Pitoiset
702bcffc89
radv: split upload_shader_part() in two parts
...
One that creates the radv_shader_part object and one that uploads it.
This will be used to upload the PS epilogs as part of the existing
pipeline BO.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363 >
2022-09-13 07:03:14 +00:00
Samuel Pitoiset
c59d15c80c
radv: store the VS prologs/PS epilogs VA at upload time
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363 >
2022-09-13 07:03:14 +00:00
Samuel Pitoiset
0ee5217fdd
radv/ci: re-enable dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask
...
Since RADV switched to 100% dynamic rendering, image transitions for
attachments not used in a subpass are correctly performed.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18542 >
2022-09-13 06:39:50 +00:00
Samuel Pitoiset
f8d887527a
radv: add a pointer to radv_shader_binary in radv_shader
...
With GPL, we will have to keep the shader binary in the library for
uploading it later, so it's easier to have a pointer in radv_shader.
The shader binary will be freed when the library is destroyed.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18515 >
2022-09-13 06:19:18 +00:00
Caio Oliveira
e612f32e1a
intel/compiler: Use brw_ud* helpers in thread payload code
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
f019687d23
intel/compiler: Add a few more brw_ud* helpers
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
3272868218
intel/compiler: Make thread_payload struct abstract
...
Each shader stage has its own struct and will instantiate it, so the
base class doesn't need to be instantiated anymore.
Reviewed-by: Francisco Jerez <currojerez@riseup.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
0b6e613de8
intel/compiler: Create and use struct for CS thread payload
...
Move subgroup_id, that's only used by CS for verx10 < 125, as part of
the payload too -- even though is not, strictly speaking.
Note the thread execution of Task/Mesh is similar enough, so we make
their common struct inherit from cs_thread_payload.
Reviewed-by: Francisco Jerez <currojerez@riseup.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
d8461e975a
intel/compiler: Export brw_get_subgroup_id_param_index()
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
9de790760e
intel/compiler: Create and use struct for Bindless thread payload
...
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Acked-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
a70378f292
intel/compiler: Store start of ICP handles in GS thread payload struct
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Acked-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00
Caio Oliveira
5b6987daee
intel/compiler: Create and use struct for GS thread payload
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Acked-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176 >
2022-09-13 01:44:24 +00:00