Commit graph

145178 commits

Author SHA1 Message Date
Christian Gmeiner
cfa8828c62 util/bitset: add bitwise AND, OR and NOT
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11321>
2021-09-21 20:25:31 +00:00
Christian Gmeiner
f8ea9fa0f8 util/tests: rename bitset test names
Imho they are quite hard to read with the added '_'.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11321>
2021-09-21 20:25:31 +00:00
Alyssa Rosenzweig
e39929663b docs/panfrost: Add web chat link
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Suggested-by: Git Lab <gh6h56j85ihg@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12380>
2021-09-21 19:06:22 +00:00
Alyssa Rosenzweig
5506b38032 docs/panfrost: We're conformant now!
See https://www.khronos.org/conformance/adopters/conformant-products/opengles#submission_949

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12965>
2021-09-21 19:01:45 +00:00
Jason Ekstrand
35ac184de0 intel/fs: Handle required subgroup sizes specified in the SPIR-V
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12959>
2021-09-21 18:34:59 +00:00
Jason Ekstrand
518693c3ec spirv: Handle the SubgroupSize execution mode
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12959>
2021-09-21 18:34:59 +00:00
Charmaine Lee
e5dc900226 svga: fix render target views leak
Use create_backed_surface_view helper function to create/reuse
alternate surface view when the to-be-bound surface view was created
in a different context. This fixes render target views leak running gazebo.

Cc: mesa-stable
Reviewed-by: Neha Bhende <bhenden@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12952>
2021-09-21 18:02:17 +00:00
Dylan Baker
c1d479b9ad docs: update calendar and link releases notes for 21.2.2
I've also adjusted the calender to account for missed releases

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12963>
2021-09-21 17:57:08 +00:00
Dylan Baker
773f2fbf6b docs/relnotes/21.2.2: Add SHA256 sum
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12963>
2021-09-21 17:57:08 +00:00
Dylan Baker
0689f57dd9 docs: add release notes for 21.2.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12963>
2021-09-21 17:57:08 +00:00
Emma Anholt
590ac4789d freedreno/a5xx+: Set the IJ_LINEAR_* request bits if we need the regs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12949>
2021-09-21 17:11:42 +00:00
Emma Anholt
3f99916433 freedreno/a5xx+: Rename GRAS_CNTL/RB_RENDER_CONTROL0 IJ_LINEAR_* bits.
This is what they actually enable.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12949>
2021-09-21 17:11:42 +00:00
Boris Brezillon
d3511e8af2 panvk: Implement vkCmdUpdateBuffer()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:42 +02:00
Boris Brezillon
a560890284 panvk: Implement vkCmdFillBuffer()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:32 +02:00
Boris Brezillon
b37eb5854c panvk: Implement vkCmdCopyBuffer()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:27 +02:00
Boris Brezillon
f73ae1a6b5 panvk: Implement vkCmdCopyImageToBuffer()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:23 +02:00
Boris Brezillon
4ce85cd25a panvk: Implement vkCmdCopyBufferToImage()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:19 +02:00
Boris Brezillon
5b9cbd39ec panvk: Implement vkCmdCopyImage()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:15 +02:00
Boris Brezillon
a0cbe50566 panvk: Implement vkCmdClear{DepthStencil,Color}Image()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:10 +02:00
Boris Brezillon
5d4c405257 panvk: Issue a fragment job if at least one target is cleared
This way clear meta helpers don't have to allocate fragment job
themselves.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:04 +02:00
Boris Brezillon
2cdcaf08a1 panvk: Stop dereferencing the subpass in panvk_cmd_close_batch()
So we can call this function from the meta helpers which won't bind
a subpass to the cmd state.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:01:00 +02:00
Boris Brezillon
b882c3b677 panvk: Add a panvk_cmd_prepare_tiler_context() helper
So we can create tiler contexts from meta helpers.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:55 +02:00
Boris Brezillon
285197df28 panvk: Make panvk_cmd_alloc_tls_desc() more generic
panvk_cmd_alloc_tls_desc() will soon be called from meta helpers which
don't bind a pipeline to the cmdbuf state. Let's pass the gfx/compute
info directly.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:50 +02:00
Boris Brezillon
e7af84899e panvk: Don't check the bind_point in panvk_cmd_prepare_fragment_job()
We are about to call panvk_cmd_close_batch() from meta helpers, and
those don't bind a pipeline, so let's drop the check in
panvk_cmd_prepare_fragment_job().

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:46 +02:00
Boris Brezillon
821eb2a73b panvk: Don't use the subpass to calculate the FB descriptor size
This way we will be able to re-use panvk_cmd_alloc_fb_desc() for
meta stuff.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:40 +02:00
Boris Brezillon
fa51d99035 panvk: Get rid of panvk_emit_fragment_job()
Now that we have a valid pan_fb_info attached to the state, we can
use pan_emit_fragment_job() directly.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:33 +02:00
Boris Brezillon
82046eed4a panvk: Move blit/resolve stubs to a separate file
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:28 +02:00
Boris Brezillon
08dfdd9639 panvk: Move copy stubs to a separate file
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:22 +02:00
Tomeu Vizoso
45fcaf67f0 panvk: Move CmdClear* impl to a separate file
In preparation for adding implementations of more meta commands, add
panvk_meta_clear.c.

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/12095>
2021-09-21 15:00:17 +02:00
Boris Brezillon
b0eaaf90f3 panvk: Merge identical BO entries before submitting a job
This should ideally be filtered when BOs are attached to a batch, but
let's do it in the submit path until then.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:12 +02:00
Boris Brezillon
165c26b9e1 panvk: Preload FB attachments when required
There are at least three situations where we need to preload FBs:

1. The attachment is flagged VK_ATTACHMENT_LOAD_OP_LOAD and has not been
   accessed in previous subpasses

2. The batch is implicitly split (e.g. too many jobs queued to the
   batch, wait/set events queued, ...)

3. The attachment has been written by a previous subpass

With those changes, we can get rid of panvk_emit_fb() and call
pan_emit_fbd() directly (fb_info is initialized when starting a subpass
and updated when an implicit split happens).

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:07 +02:00
Boris Brezillon
3166f4ebea panvk: Initialize the blend shader logic
The blitter logic rely on blend shaders when formats are not blendable.
We need to initialize the blend shader logic before we can use the
blitter.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 15:00:01 +02:00
Boris Brezillon
ba2874563e pan/blit: Extend pan_preload_fb() to return emitted jobs
The vulkan driver needs to patch job headers when re-issuing batches.
Extend pan_preload_fb() so it can return the emitted tiler jobs.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 14:59:50 +02:00
Boris Brezillon
9f4dab0f2d pan/blit: Fix a NULL dereference in the preload path
The ZS view can be NULL if a stencil-only buffer is attached to the FB.

Fixes: 1de393fec5 ("panfrost: Fix ZS reloading on Bifrost v6")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 14:59:44 +02:00
Boris Brezillon
2dd13257c8 pan/bi: Allow passing RT conversion descriptors to fragment shaders
The Vulkan copy shaders sometimes need to partially write a texel and
issue a load on the FRAGOUT variable in that case, but they do know
the format of the tile buffer in advance in that case. Let's not add an
RT_CONVERSION sysval if we can avoid it.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 14:59:38 +02:00
Boris Brezillon
04d6c593d0 pan/bi: Relax check on 8bit swizzles
Allow extracting components Y, Z or W from an 8bit vector.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12095>
2021-09-21 14:58:54 +02:00
Samuel Pitoiset
af740f2c35 radv: do not store meta shaders to the default shader disk cache
Meta shaders are already stored in a different shader cache file.
Storing them in two places wastes disk space and they are never
loaded from the default shader disk cache anyways.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12937>
2021-09-21 12:21:41 +00:00
Michel Zou
b0d7e8905b wgl: fix 32 bits mingw exports
closes #5349

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12940>
2021-09-21 12:00:06 +00:00
Samuel Pitoiset
f6d5cb2339 radv: do not use a different disk cache key for LLVM
The driver already adds a pipeline hash for LLVM which is redundant.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12938>
2021-09-21 11:34:42 +00:00
Jordan Justen
99f9075063 Revert "intel/dev: Add display_ver and set adl-p to 13"
This reverts commit c81acd365e.
2021-09-21 03:39:31 -07:00
Jordan Justen
0741a2c3c2 Revert "iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13"
This reverts commit 4961f4c50f.
2021-09-21 03:39:27 -07:00
Jordan Justen
4961f4c50f iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13
Cc: mesa-stable
Fixes: e435511b58 ("intel/dev: Add device info for ADL GT2")
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12908>
2021-09-21 02:50:41 -07:00
Jordan Justen
c81acd365e intel/dev: Add display_ver and set adl-p to 13
Cc: mesa-stable
Fixes: e435511b58 ("intel/dev: Add device info for ADL GT2")
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12908>
2021-09-21 02:49:04 -07:00
Connor Abbott
b1fe85e38c freedreno, turnip: Set TPL1_DBG_ECO_CNTL better
Match the blob better here. Note that the value of 0x1000000 for a650
comes from the Vulkan blob, and it's required to fix cubic filtering
even though the GLES driver doesn't set it (and doesn't support cubic
filtering).

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5261
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12929>
2021-09-21 09:08:20 +00:00
Connor Abbott
9ec0580095 freedreno/a6xx: Name TPL1_DBG_ECO_CNTL
This is a guess, but an informed guess, since every other block with a
known DBG_ECO_CNTL register has it at the very beginning immediately
followed by ADDR_MODE_CNTL.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12929>
2021-09-21 09:08:20 +00:00
Andreas Baierl
3c19ab4a7b lima: Remove depth near/far workaround
because this is fixed now.

Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Andreas Baierl <ichgeh@imkreisrum.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12804>
2021-09-21 08:54:53 +00:00
Andreas Baierl
d1798ad1b5 lima: Expose GL_EXT_clip_control
Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Andreas Baierl <ichgeh@imkreisrum.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12804>
2021-09-21 08:54:53 +00:00
Pierre-Eric Pelloux-Prayer
7405b7fbcd radeonsi/test: use -t for deqp tests
deqp-runner added support for this.

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12899>
2021-09-21 08:37:57 +00:00
Pierre-Eric Pelloux-Prayer
ac9ab028ce radeonsi/test: don't require a folder name
Generate a temp one if the user didn't supply one.

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12899>
2021-09-21 08:37:57 +00:00
Pierre-Eric Pelloux-Prayer
9db70eb577 radeonsi/sqtt: add si_se_is_disabled
Based on radv_se_is_disabled.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12899>
2021-09-21 08:37:57 +00:00