Mike Blumenkrantz [Mon, 30 Aug 2021 15:08:00 +0000 (11:08 -0400)]
zink: always use type size for query result copy stride
0 should be legal here since this is only copying 1 result at a time,
but some drivers can't withstand the awesome power of zero strides, so
just be safe and pass the type size
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12933>
Emma Anholt [Sat, 18 Sep 2021 21:04:00 +0000 (14:04 -0700)]
mesa: Prioritize checking for GLES2's uniform transpose error.
The negative API tests ask to transpose a non-matrix uniform, and expect
the transpose error rather than the non-matrix error. This may be a test
bug about ambiguous results, but since every other driver is presumably
doing this too, just follow along.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Andreas Baierl <ichgeh@imkreisrum.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12924>
Emma Anholt [Sat, 18 Sep 2021 20:48:41 +0000 (13:48 -0700)]
mesa: Throw an error for compressed glGenerateMipmap on GLES2 contexts.
This error is gone from GLES3.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Andreas Baierl <ichgeh@imkreisrum.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12924>
Emma Anholt [Mon, 20 Sep 2021 20:01:22 +0000 (13:01 -0700)]
turnip: Move physical device 1.2 properties to a helper function.
Again, while we don't do 1.2 yet (and we have some properties to fill out
to do so), this prevents value duplication when we do.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12944>
Emma Anholt [Mon, 20 Sep 2021 19:46:34 +0000 (12:46 -0700)]
tu: Support VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES.
We had missed this struct previously, causing a CTS fail.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12944>
Emma Anholt [Mon, 20 Sep 2021 19:41:22 +0000 (12:41 -0700)]
tu: Move VK 1.1 core properties to a helper function and use macros for exts.
This struct is exposed in VK 1.2, and using the macros means we don't have
to duplicate the values.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12944>
Eric Anholt [Thu, 12 Nov 2020 22:21:05 +0000 (14:21 -0800)]
tu: Add GetPhysicalDeviceFeatures2() support for more VK 1.2 core features.
You can get them from the big blob of features, or through
extension-specific structs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12944>
Eric Anholt [Thu, 12 Nov 2020 21:52:42 +0000 (13:52 -0800)]
tu: Deduplicate extension/core feature flags.
Copied this pattern from the anv driver. Now it's harder to desynchronize
your features.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12944>
Eric Anholt [Thu, 12 Nov 2020 21:47:15 +0000 (13:47 -0800)]
tu: Move core features definitions to a helper function.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12944>
Caio Marcelo de Oliveira Filho [Mon, 20 Sep 2021 17:52:35 +0000 (10:52 -0700)]
spirv: Identify non-temporal memory access
Map it to the existing ACCESS_STREAM_CACHE_POLICY access mode.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12945>
Caio Marcelo de Oliveira Filho [Fri, 17 Sep 2021 00:57:41 +0000 (17:57 -0700)]
anv: Refactor subgroup_size_type rules into a single function
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12946>
Caio Marcelo de Oliveira Filho [Fri, 17 Sep 2021 00:52:38 +0000 (17:52 -0700)]
anv: Simplify subgroup_size_type rules for compute shaders
The populate_base_prog_key will set VARYING depending if the pipeline
flag is used. Later, when full subgroups flag is set, it will flip to
UNIFORM -- which for compute shaders is effectively the same, so don't
bother setting it again.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12946>
Christian Gmeiner [Wed, 14 Jul 2021 21:30:59 +0000 (23:30 +0200)]
compiler/isaspec: add alignment support
This helps to get a really nice and aligend disasm output.
Just use :align=X to define where in the line the field
should be printed.
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>
Christian Gmeiner [Wed, 14 Jul 2021 21:23:49 +0000 (23:23 +0200)]
compiler/isaspec: keep track of written data
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>
Christian Gmeiner [Fri, 18 Jun 2021 19:26:29 +0000 (21:26 +0200)]
compiler/isaspec: add print(..) helper
To support field alignment we need to keep track of how much
data we have printed to our out FILE. This is a prep commit.
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>
Christian Gmeiner [Fri, 28 May 2021 20:52:45 +0000 (22:52 +0200)]
freedreno/isa: move isaspec to a new home
This commit moves isaspec out of freedreno into a more
generic new home - src/compiler/isaspec.
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>
Christian Gmeiner [Fri, 28 May 2021 20:41:24 +0000 (22:41 +0200)]
freedreno/isa: add shbang and make executable
In a later change we will use mesons find_program(..) and this
only works if python files are executable and have a shbang.
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>
Christian Gmeiner [Thu, 22 Jul 2021 17:09:35 +0000 (19:09 +0200)]
freedreno/isa: update documentation
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>
Christian Gmeiner [Sat, 17 Jul 2021 19:08:27 +0000 (21:08 +0200)]
freedreno/isa: encode: switch bitmask_t to BITSET_WORD's
This commit changes the underlying basetype of bitmask_t to a
BITSET_WORD based one.
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>
Christian Gmeiner [Sat, 8 May 2021 09:28:00 +0000 (11:28 +0200)]
freedreno/isa: decode: switch bitmask_t to BITSET_WORD's
This commit changes the underlying basetype of bitmask_t to a
BITSET_WORD based one.
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>
Christian Gmeiner [Fri, 28 May 2021 08:15:24 +0000 (10:15 +0200)]
freedreno/isa: add split_bits(..) methods
Will be used to split a value into needed number of 32 bit words.
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>
Christian Gmeiner [Fri, 28 May 2021 08:00:36 +0000 (10:00 +0200)]
freedreno/isa: generate marcos used for printf(..)
Generate correct BITSET_FORMAT and BITSET_VALUE macros based
on the maximum needed ISA bits.
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>
Christian Gmeiner [Thu, 22 Jul 2021 17:03:40 +0000 (19:03 +0200)]
freedreno/isa: add store_instruction(..)
Makes it possible to store an encoded instruction in a
generic ISA specific way.
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>
Christian Gmeiner [Mon, 17 May 2021 14:31:20 +0000 (16:31 +0200)]
freedreno/isa: add BITMASK_WORDS define
This new define will be used by a more generic deocde(..)
and encode(..) functions.
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>
Christian Gmeiner [Sun, 16 May 2021 07:55:59 +0000 (09:55 +0200)]
freedreno/isa: add bitmask to/from uint64_t helper
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>
Christian Gmeiner [Thu, 22 Jul 2021 16:53:51 +0000 (18:53 +0200)]
freedreno/isa: add bitmask_t to encode.py
Prep work for the next change.
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>
Christian Gmeiner [Tue, 8 Jun 2021 16:21:47 +0000 (18:21 +0200)]
freedreno/isa: generate isaspec-decode.h
Generate a 'glue' header file to be able to support different
ISAs.
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>
Christian Gmeiner [Thu, 13 May 2021 12:07:51 +0000 (14:07 +0200)]
freedreno/isa: generate ir3-isa.h
This header contains the bitmask_t struct typedef that will be
used by the isaspec.
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>
Christian Gmeiner [Tue, 11 May 2021 06:10:00 +0000 (08:10 +0200)]
freedreno/isa: store max size for needed bitset
We will use this information later to create a correctly
sized BITSET.
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>
Christian Gmeiner [Tue, 25 May 2021 07:19:17 +0000 (09:19 +0200)]
freedreno/isa: add defines for fprintf(..) usage
In the long run they will be replaces with some generated
defines. If we do this early it keeps the diffs of the next
changes small.
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>
Christian Gmeiner [Mon, 17 May 2021 19:50:55 +0000 (21:50 +0200)]
freedreno/isa: add next_instruction(..)
In during the next commits we will change to a generated
version of next_instruction(..) based on the actual isa.
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>
Christian Gmeiner [Tue, 11 May 2021 06:05:04 +0000 (08:05 +0200)]
freedreno/isa: simplify custom_target
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>
Christian Gmeiner [Wed, 14 Jul 2021 19:48:04 +0000 (21:48 +0200)]
freedreno/isa: add leading zero's
Changes the output format slightly but its needed when we
want to switch to more generic version of isaspec.
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>
Christian Gmeiner [Wed, 12 May 2021 17:47:14 +0000 (19:47 +0200)]
util/tests: add set bit range test
This simple test validates that it is possible to set bits
across word bounary.
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>
Christian Gmeiner [Wed, 12 May 2021 17:46:12 +0000 (19:46 +0200)]
util/bitset: add BITSET_SET_RANGE(..)
This version works across word boundary.
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>
Christian Gmeiner [Fri, 20 Aug 2021 10:14:02 +0000 (12:14 +0200)]
util/bitset: s/BITSET_SET_RANGE/BITSET_SET_RANGE_INSIDE_WORD
Prep work for the next commit.
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>
Christian Gmeiner [Fri, 9 Jul 2021 12:14:31 +0000 (14:14 +0200)]
util/tests: add bitset SHL tests
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>
Christian Gmeiner [Fri, 9 Jul 2021 12:13:51 +0000 (14:13 +0200)]
util/bitset: add left shift
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>
Christian Gmeiner [Tue, 11 May 2021 06:01:50 +0000 (08:01 +0200)]
util/tests: add bitset SHR tests
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>
Christian Gmeiner [Tue, 11 May 2021 06:00:54 +0000 (08:00 +0200)]
util/bitset: add right shift
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>
Christian Gmeiner [Fri, 7 May 2021 07:53:31 +0000 (09:53 +0200)]
util/tests: add bitwise AND, OR and NOT tests
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>
Christian Gmeiner [Fri, 7 May 2021 07:51:01 +0000 (09:51 +0200)]
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>
Christian Gmeiner [Tue, 6 Jul 2021 15:17:55 +0000 (17:17 +0200)]
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>
Alyssa Rosenzweig [Tue, 21 Sep 2021 18:50:39 +0000 (14:50 -0400)]
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>
Alyssa Rosenzweig [Tue, 21 Sep 2021 18:45:35 +0000 (14:45 -0400)]
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>
Jason Ekstrand [Mon, 14 Sep 2020 18:44:42 +0000 (13:44 -0500)]
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>
Jason Ekstrand [Mon, 14 Sep 2020 18:39:47 +0000 (13:39 -0500)]
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>
Charmaine Lee [Mon, 20 Sep 2021 21:48:33 +0000 (14:48 -0700)]
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>
Dylan Baker [Tue, 21 Sep 2021 17:23:35 +0000 (10:23 -0700)]
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>
Dylan Baker [Tue, 21 Sep 2021 17:14:30 +0000 (10:14 -0700)]
docs/relnotes/21.2.2: Add SHA256 sum
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12963>
Dylan Baker [Tue, 21 Sep 2021 16:52:15 +0000 (09:52 -0700)]
docs: add release notes for 21.2.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12963>
Emma Anholt [Mon, 20 Sep 2021 21:55:56 +0000 (14:55 -0700)]
freedreno/a5xx+: Set the IJ_LINEAR_* request bits if we need the regs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12949>
Emma Anholt [Mon, 20 Sep 2021 21:48:15 +0000 (14:48 -0700)]
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>
Boris Brezillon [Fri, 10 Sep 2021 09:38:00 +0000 (11:38 +0200)]
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>
Boris Brezillon [Fri, 10 Sep 2021 09:37:33 +0000 (11:37 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 08:17:03 +0000 (10:17 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 08:14:21 +0000 (10:14 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 08:12:32 +0000 (10:12 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 08:02:11 +0000 (10:02 +0200)]
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>
Boris Brezillon [Tue, 7 Sep 2021 16:24:11 +0000 (18:24 +0200)]
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>
Boris Brezillon [Thu, 9 Sep 2021 16:12:19 +0000 (18:12 +0200)]
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>
Boris Brezillon [Thu, 9 Sep 2021 13:04:56 +0000 (15:04 +0200)]
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>
Boris Brezillon [Tue, 7 Sep 2021 17:19:43 +0000 (19:19 +0200)]
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>
Boris Brezillon [Tue, 7 Sep 2021 17:18:24 +0000 (19:18 +0200)]
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>
Boris Brezillon [Tue, 7 Sep 2021 17:15:41 +0000 (19:15 +0200)]
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>
Boris Brezillon [Tue, 7 Sep 2021 16:22:44 +0000 (18:22 +0200)]
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>
Boris Brezillon [Tue, 7 Sep 2021 15:41:47 +0000 (17:41 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 07:37:50 +0000 (09:37 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 07:34:20 +0000 (09:34 +0200)]
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>
Tomeu Vizoso [Wed, 28 Jul 2021 07:08:39 +0000 (09:08 +0200)]
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>
Boris Brezillon [Fri, 3 Sep 2021 13:26:53 +0000 (15:26 +0200)]
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>
Boris Brezillon [Mon, 6 Sep 2021 14:06:49 +0000 (16:06 +0200)]
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>
Boris Brezillon [Wed, 8 Sep 2021 07:54:58 +0000 (09:54 +0200)]
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>
Boris Brezillon [Wed, 2 Jun 2021 08:07:40 +0000 (10:07 +0200)]
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>
Boris Brezillon [Wed, 19 May 2021 08:56:49 +0000 (10:56 +0200)]
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:
1de393fec539 ("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>
Boris Brezillon [Wed, 2 Jun 2021 08:23:06 +0000 (10:23 +0200)]
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>
Boris Brezillon [Wed, 2 Jun 2021 08:17:55 +0000 (10:17 +0200)]
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>
Samuel Pitoiset [Mon, 20 Sep 2021 15:09:41 +0000 (17:09 +0200)]
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>
Michel Zou [Mon, 20 Sep 2021 16:52:38 +0000 (18:52 +0200)]
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>
Samuel Pitoiset [Mon, 20 Sep 2021 15:33:52 +0000 (17:33 +0200)]
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>
Jordan Justen [Tue, 21 Sep 2021 10:39:31 +0000 (03:39 -0700)]
Revert "intel/dev: Add display_ver and set adl-p to 13"
This reverts commit
c81acd365ed2a965741a828504d4a1498eaa3d3a.
Jordan Justen [Tue, 21 Sep 2021 10:39:27 +0000 (03:39 -0700)]
Revert "iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13"
This reverts commit
4961f4c50fe29e4b3e6145bfafae7e5026027d12.
Jordan Justen [Thu, 16 Sep 2021 22:40:21 +0000 (15:40 -0700)]
iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13
Cc: mesa-stable
Fixes:
e435511b580 ("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>
Jordan Justen [Thu, 16 Sep 2021 22:39:11 +0000 (15:39 -0700)]
intel/dev: Add display_ver and set adl-p to 13
Cc: mesa-stable
Fixes:
e435511b580 ("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>
Connor Abbott [Mon, 20 Sep 2021 12:16:55 +0000 (14:16 +0200)]
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>
Connor Abbott [Mon, 20 Sep 2021 11:53:14 +0000 (13:53 +0200)]
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>
Andreas Baierl [Mon, 20 Sep 2021 15:07:00 +0000 (17:07 +0200)]
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>
Andreas Baierl [Fri, 10 Sep 2021 12:33:55 +0000 (14:33 +0200)]
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>
Pierre-Eric Pelloux-Prayer [Mon, 20 Sep 2021 14:58:30 +0000 (16:58 +0200)]
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>
Pierre-Eric Pelloux-Prayer [Mon, 20 Sep 2021 14:58:02 +0000 (16:58 +0200)]
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>
Pierre-Eric Pelloux-Prayer [Thu, 16 Sep 2021 15:04:12 +0000 (17:04 +0200)]
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>
Pierre-Eric Pelloux-Prayer [Thu, 16 Sep 2021 14:39:16 +0000 (16:39 +0200)]
radeonsi/sqtt: export wave size and scratch size
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12899>
Pierre-Eric Pelloux-Prayer [Thu, 16 Sep 2021 14:38:49 +0000 (16:38 +0200)]
radeonsi/test: update expected results
These tests were fixed in piglit.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12899>
Pierre-Eric Pelloux-Prayer [Thu, 16 Sep 2021 14:38:17 +0000 (16:38 +0200)]
radeonsi/test: fix typo in the test script
glcts results were copied over deqp results.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12899>
Samuel Pitoiset [Wed, 3 Mar 2021 08:35:18 +0000 (09:35 +0100)]
radv: remove useless assertions in the SQTT path
The driver aborts when the chip class is older than GFX8.
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/12854>
Samuel Pitoiset [Wed, 3 Mar 2021 08:32:55 +0000 (09:32 +0100)]
radv: make the SQTT BO a resident buffer
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/12854>
Samuel Pitoiset [Tue, 2 Mar 2021 15:13:17 +0000 (16:13 +0100)]
radv: replicate THREAD_TRACE_CTRL config when stopping SQTT
This seems missed and it might be important.
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/12854>
Bas Nieuwenhuizen [Sat, 13 Mar 2021 23:44:06 +0000 (00:44 +0100)]
radv: Experimentally enable RT extensions.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12592>
Bas Nieuwenhuizen [Fri, 27 Aug 2021 02:20:59 +0000 (04:20 +0200)]
radv: Add caching for RT pipelines.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12592>
Bas Nieuwenhuizen [Mon, 23 Aug 2021 23:40:09 +0000 (01:40 +0200)]
radv: Add support for setting a dynamic stack size.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12592>