Mike Blumenkrantz
c095a32026
zink: remove query flush from memory barrier hook
...
qbos are separate buffers with their own barriers, so this just stalls
pointlessly
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12576 >
2021-08-27 02:59:24 +00:00
Mike Blumenkrantz
ce87300412
zink: use ctx gfx prim mode for draw comparisons
...
just being consistent
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
95a9ea54f3
zink: init ctx->gfx_prim_mode to nonzero value to trigger pipeline changes
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
b06ef86020
zink: reorder gfx program/pipeline/descriptor binds if dynamic state is present
...
this enables deferring the heavy lifting until the rest of the state updates are
done
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
c2aa47a708
zink: remove extra unsetting of ctx->vertex_state_changed
...
this is already managed in zink_get_gfx_pipeline
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
8a4681aea5
zink: pass current program's shader array, not ctx array
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
ab08dcd895
zink: remove attachment count from pipeline hash
...
this is redundant
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
1bb9704bce
zink: declare ctx var during blend state bind
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12572 >
2021-08-27 02:39:34 +00:00
Mike Blumenkrantz
960e776f24
zink: assert precise queries are occlusion queries
...
this should always be the case
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12583 >
2021-08-27 02:26:17 +00:00
Mike Blumenkrantz
9d9e197d74
zink: require occlusionQueryPrecise for occlusion queries
...
ensure this is present to avoid driver explosions
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12583 >
2021-08-27 02:26:17 +00:00
Mike Blumenkrantz
336dea90f0
zink: always init bordercolor value for sampler
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12574 >
2021-08-27 02:01:02 +00:00
Mike Blumenkrantz
b192b9c88a
zink: implement PIPE_QUERY_GPU_FINISHED
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12573 >
2021-08-26 21:28:42 -04:00
Ella-0
1e921e5098
v3dv: Implement VK_EXT_pipeline_creation_feedback
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12371 >
2021-08-26 21:04:42 +00:00
Erik Faye-Lund
c8581d0fae
microsoft/compiler: trivial fixes to error-handling
...
We're really bad at making sure we report errors when we fail to
allocate memory. This makes us a bit better...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12541 >
2021-08-26 18:57:40 +00:00
Erik Faye-Lund
e0f3133447
microsoft/compiler: return errors from get_n_src
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12541 >
2021-08-26 18:57:40 +00:00
Erik Faye-Lund
2c166a27fc
microsoft/compiler: remove needless error-returns
...
There's no root error-conditions in this code, just code that assumes
they exist and tries to handle them.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12541 >
2021-08-26 18:57:40 +00:00
Filip Gawin
46f3582c6f
nir: fix ifind_msb_rev by using appropriate type
...
As you can see comparion "x < 0" doesn't make
sense if x is unsigned.
Fixes: a5747f8a ("nir: add opcodes for *find_msb_rev and lowering ")
Reviewed-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12548 >
2021-08-26 18:35:31 +00:00
Filip Gawin
9083e9a483
nir: fix shadowed variable in nir_lower_bit_size.c
...
Fixes: 6d79298992 ("nir/lower_bit_size: fix lowering of {imul,umul}_high")
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12527 >
2021-08-26 18:04:22 +00:00
Yiwei Zhang
3538b5af6d
venus: conditionally enable async descriptor set allocation
...
When VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT is not used to
create the pool, set allocation is guaranteed to not return
VK_ERROR_FRAGMENTED_POOL, and we can safely move set allocation to async
after doing resource tracking in the driver.
Enable after fully tested with assert(false) in the failure case.
Tested with:
- dEQP-VK.api.descriptor*
- dEQP-VK.api.object_management.*
- dEQP-VK.binding_model.descriptor*
- dEQP-VK.descriptor_indexing.*
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
288ce1b033
venus: check descriptor allocations against pool resource
...
Only kick in when async_set_allocation is enabled.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
70b03e96f9
venus: descriptor set to track descriptor count of last binding
...
Track the descriptor count to be used instead of the variable descriptor
count to avoid duplicate checks in later accounting.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
a1e91b1163
venus: descriptor pool to track pool state
...
It also tracks whether async set allocation is enabled.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
d2b1a7c2bb
venus: layout to track variable descriptor count binding info
...
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
d8e89b4e33
venus: descriptor layout to track more binding infos
...
Rename existing max_binding to last_binding to be consistent.
1. layout to track last binding index
2. binding to track descriptor type
3. binding to track descriptor count
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
ad934eb680
venus: add vn_descriptor_set_layout_init
...
Just a refactoring without functional changes.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Yiwei Zhang
d4878636fe
venus: refactor failure path for sets allocation
...
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501 >
2021-08-26 17:56:19 +00:00
Sergii Melikhov
71e748ad24
dri2: Fix Null pointer dereferences
...
Fix defect reported by Coverity Scan CID-1490794
Fixes: 0d42033b26 ("glx/dri2: Require the driver to support v4 of __DRI_DRI2")
Signed-off-by: Sergii Melikhov <sergii.v.melikhov@globallogic.com >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12563 >
2021-08-26 17:09:23 +03:00
Christian Gmeiner
84fa286602
etnaviv: remove primconvert
...
This is no longer used.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12516 >
2021-08-26 10:44:04 +00:00
Christian Gmeiner
a3d6aa43a6
etnaviv: export supported prim types
...
This is now handled by gallium, so the related codepaths can be dropped.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12516 >
2021-08-26 10:44:04 +00:00
Juan A. Suarez Romero
b22ba69615
broadcom/qpu: remove duplicated opcode variable
...
`opcode` is wrote twice.
Fixes CID 1490798: Incorrect expression (EVALUATION_ORDER).
Fixes: 8a5f2228db ("broadcom/qpu: add new lookup opcode description helper")
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12554 >
2021-08-26 10:12:35 +00:00
Timur Kristóf
626b125857
aco: Use workgroup size from input shader info.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12321 >
2021-08-26 09:46:18 +00:00
Timur Kristóf
c4ca08548b
radv: Remove superfluous workgroup size calculations.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12321 >
2021-08-26 09:46:18 +00:00
Timur Kristóf
9fd36bbacd
radv: Calculate workgroup sizes in radv_pipeline.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12321 >
2021-08-26 09:46:18 +00:00
Timur Kristóf
395c0c52c7
ac: Calculate workgroup sizes of HW stages that operate in workgroups.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12321 >
2021-08-26 09:46:18 +00:00
Samuel Pitoiset
66b5f05727
ci: update the list of skipped tests for Fiji/RADV
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12553 >
2021-08-26 09:09:47 +00:00
Tomeu Vizoso
203f9da167
panvk: Initialize timestamp for disk cache
...
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12552 >
2021-08-26 08:53:45 +00:00
Boris Brezillon
587046ed25
panfrost: Make pan_blit() return the tiler job pointer
...
The Vulkan driver needs to patch job headers when re-issueing a command
buffer. Return the tiler job pointer to allow that.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12552 >
2021-08-26 08:53:45 +00:00
Boris Brezillon
e466e0ecd2
panfrost: Fix pan_blit_ctx_init() when start > end
...
This can happen when one wants to obtain a mirrored view. We need
to make sure the min <= max before emitting the viewport.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12552 >
2021-08-26 08:53:45 +00:00
Boris Brezillon
1c953ba212
panfrost: Prepare indirect draw helpers to per-gen XML
...
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
1447db0d51
panfrost: Prepare indirect dispatch helpers to per-gen XML
...
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
792a0ab0b1
panvk: Prepare per-gen split
...
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
c14c246439
panfrost: Only emit special attribute buffer entries on pre-v6 hardware
...
There's no special attributes on Bifrost.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
56a4aa9332
panfrost: Move panfrost_modifier_to_layout() to pan_texture.c
...
This function is not used outside pan_texture.c.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
5ca93f3599
panfrost: Get rid of all _packed structs in pan_context.h
...
Such that pan_context.h remains generic even after the per-gen XML
switch.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
0400c4ca1b
pan/gen_pack: Add parens around packed1/2 vars in pan_merge()
...
This way we can pass *desc instead of (*desc).
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
fe1d33daaf
panfrost: Add generic mappings for the gen-specific tiler descriptor macros
...
This way the transition to per-gen XML files gets simpler.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
5f3910a343
panfrost: Get rid of the mali_xxx enum redefinitions
...
The gen_macros.h header should include the common header file when
PAN_ARCH is undefined, thus making those redefinitions useless.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
13c13efcac
panfrost: s/[idep_]midgard_pack/[idep_]pan_packers/
...
We will soon have per-gen pack headers. Let's rename the meson variables
to reflect that.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
908dde360a
panfrost: Stop including midgard_pack.h directly
...
Include gen_macros.h instead so we can smoothly transition to per-gen
XMLs.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00
Boris Brezillon
f96a30cea5
pan/gen_macros: Include midgard_pack.h from gen_macros.h
...
This way we will only have a single entry point, thus making the
transition to per-gen XML files easier.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12551 >
2021-08-26 10:35:17 +02:00