platform/upstream/mesa.git
12 months agopvr: Enable VK_KHR_bind_memory2 extension
Vlad Schiller [Mon, 4 Sep 2023 14:09:47 +0000 (15:09 +0100)]
pvr: Enable VK_KHR_bind_memory2 extension

The two functions 'vkBindBufferMemory2' and 'vkBindImageMemory2' are aleady
implemented, and it seems that the flag does not need to be enabled for the
tests to pass.

Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25779>

12 months agopvr: Implement VK_KHR_external_semaphore
Vlad Schiller [Mon, 11 Sep 2023 06:19:39 +0000 (07:19 +0100)]
pvr: Implement VK_KHR_external_semaphore

In order for the tests to pass, this commit also enables
the VK_KHR_external_semaphore_fd extension.

Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25784>

12 months agopvr: Implement VK_KHR_external_fence
Vlad Schiller [Mon, 11 Sep 2023 06:42:22 +0000 (07:42 +0100)]
pvr: Implement VK_KHR_external_fence

In order for the tests to pass, this commit also enables
the VK_KHR_external_fence_fd extension.

Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25784>

12 months agoanv: document the draw indirect optimization ring mode
Lionel Landwerlin [Sun, 24 Sep 2023 19:38:47 +0000 (22:38 +0300)]
anv: document the draw indirect optimization ring mode

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: merge gfx9/11 indirect draw generation shaders
Lionel Landwerlin [Sun, 24 Sep 2023 07:45:31 +0000 (10:45 +0300)]
anv: merge gfx9/11 indirect draw generation shaders

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: add ring buffer mode to generated draw optimization
Lionel Landwerlin [Wed, 20 Sep 2023 17:04:16 +0000 (20:04 +0300)]
anv: add ring buffer mode to generated draw optimization

When the number of draw calls is very large, instead of allocating
large amounts of batch buffer space for the draws, use a ring buffer
and process the draw calls by batches.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8645
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: index indirect data buffer with absolute offset
Lionel Landwerlin [Mon, 18 Sep 2023 21:28:39 +0000 (00:28 +0300)]
anv: index indirect data buffer with absolute offset

This will help for a follow up change where we will respawn the shader
multiple times in a loop and the base offset will be edited by the
shader itself.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: factor out host/gpu internal shaders interfaces
Lionel Landwerlin [Sun, 17 Sep 2023 10:39:46 +0000 (13:39 +0300)]
anv: factor out host/gpu internal shaders interfaces

This will prevent host/gpu structure definitions to go out of sync.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoutil/glsl2spirv: add ability to pass defines
Lionel Landwerlin [Sun, 17 Sep 2023 10:38:50 +0000 (13:38 +0300)]
util/glsl2spirv: add ability to pass defines

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: move generation batch fields to a sub-struct
Lionel Landwerlin [Sun, 17 Sep 2023 08:46:18 +0000 (11:46 +0300)]
anv: move generation batch fields to a sub-struct

Just tyding things a bit since we're about to add more.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: avoid MI commands to copy draw indirect count
Lionel Landwerlin [Thu, 14 Sep 2023 16:10:10 +0000 (19:10 +0300)]
anv: avoid MI commands to copy draw indirect count

We can just make the address of the count available to the generation
shader.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: identify internal shader in NIR
Lionel Landwerlin [Thu, 14 Sep 2023 16:08:57 +0000 (19:08 +0300)]
anv: identify internal shader in NIR

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: extract out draw call generation
Lionel Landwerlin [Sun, 17 Sep 2023 08:55:40 +0000 (11:55 +0300)]
anv: extract out draw call generation

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: fix generated draws gl_DrawID with more than 8192 indirect draws
Lionel Landwerlin [Thu, 21 Sep 2023 20:27:46 +0000 (23:27 +0300)]
anv: fix generated draws gl_DrawID with more than 8192 indirect draws

This applies only to Gfx9.

We're writting out of bounds to a wrong location.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 1d9cf8f381 ("anv: add gfx9 generated draw support")
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoanv: move generation shader return instruction to last draw lane
Lionel Landwerlin [Wed, 20 Sep 2023 19:38:42 +0000 (22:38 +0300)]
anv: move generation shader return instruction to last draw lane

If we dispatch exactly a multiple of 8192 items, there is additional
lane left to generate the jump instruction.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Tested-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25361>

12 months agoRevert "etnaviv: use correct blit box sizes when copying resource"
Lucas Stach [Fri, 20 Oct 2023 11:16:37 +0000 (13:16 +0200)]
Revert "etnaviv: use correct blit box sizes when copying resource"

Revert commit b4c24d5978a5, as it causes a regression in
dEQP-GLES2.functional.texture.specification.basic_copytexsubimage2d.2d_rgb
and some other testcases. Needs further investigation.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10007
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25825>

12 months agodri: Drop a duplicate mesa vs pipe format table.
Emma Anholt [Tue, 10 Oct 2023 19:19:46 +0000 (12:19 -0700)]
dri: Drop a duplicate mesa vs pipe format table.

mesa_format is a typedef of enum pipe_format, and the nice mesa format
names are a subset of the available pipe formats.  No need to keep a
duplicate table here.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25650>

12 months agoci: drop skip for glx-swap-copy.
Emma Anholt [Tue, 10 Oct 2023 19:09:01 +0000 (12:09 -0700)]
ci: drop skip for glx-swap-copy.

This will always be a skip now that we dropped GLX_OML_swap_method.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25650>

12 months agoglx: Delete support for GLX_OML_swap_method.
Emma Anholt [Tue, 10 Oct 2023 18:42:59 +0000 (11:42 -0700)]
glx: Delete support for GLX_OML_swap_method.

This was an ill-advised extension.  While we advertised SWAP_COPY support,
we might implement it with a back-copy from the front buffer.  And we
never advertised EXCHANGE because we couldn't guarantee it.  So, if you
actually used this extension to try to reduce app redraws of the back
buffer, you might actually increase the bandwidth you used.  Whoops.

Instead, GLX_EXT_buffer_age and the similar EGL extension give you
feedback on what's left in your back buffer, letting you do minimum
redraws.

This reduces our GLX visual+fbconfig count from 1410 to 940 on an llvmpipe
X server.  Reducing visual counts will improve test runtime for
visual-iterating tests like piglit's glx-visuals-*.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25650>

12 months agoci_run_n_monitor: Poll mesa/mesa and user/mesa for pipelines at the same time.
Eric Anholt [Thu, 19 Oct 2023 10:03:34 +0000 (12:03 +0200)]
ci_run_n_monitor: Poll mesa/mesa and user/mesa for pipelines at the same time.

Now you don't fail if you're trying to test a mesa/mesa MR pipeline and
gitlab takes more than 10s to create it.  And you don't have to wait 10
seconds to get things started (aka see if your regex was right) if you're
testing a user/mesa fork pipeline.

Fixes: 941d92408ee5 ("bin/ci_run_n_monitor: automatically pick MR pipelines when they exist")
Closes: #9894
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25810>

12 months agoradeonsi/vcn: set jpeg reg version for gfx 1150
Saleemkhan Jamadar [Mon, 18 Sep 2023 19:48:09 +0000 (21:48 +0200)]
radeonsi/vcn: set jpeg reg version for gfx 1150

select appropriate jpeg register version for gfx1150

Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com>
Reviewed-by: Leo Liu <Leo.Liu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25278>

12 months agoamd/common: update DCC for gfx11.5
Marek Olšák [Mon, 18 Sep 2023 19:48:02 +0000 (21:48 +0200)]
amd/common: update DCC for gfx11.5

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25278>

12 months agoamd, radeonsi: Add code to enable gfx11.5
Pierre-Eric Pelloux-Prayer [Mon, 18 Sep 2023 19:47:59 +0000 (21:47 +0200)]
amd, radeonsi: Add code to enable gfx11.5

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25278>

12 months agoac/nir: extract must_wait_attr_ring helper
Pierre-Eric Pelloux-Prayer [Tue, 3 Oct 2023 07:38:54 +0000 (09:38 +0200)]
ac/nir: extract must_wait_attr_ring helper

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25278>

12 months agoamd/common: add registers for gfx11.5
Pierre-Eric Pelloux-Prayer [Mon, 18 Sep 2023 19:47:55 +0000 (21:47 +0200)]
amd/common: add registers for gfx11.5

Built from amd-staging-drm-next c5a7d38c2c7fc + Alex D
"drm/amdgpu: update to the latest GC 11.5 header" patch.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25278>

12 months agoamd/common: update addrlib for gfx11.5
Pierre-Eric Pelloux-Prayer [Mon, 18 Sep 2023 19:47:49 +0000 (21:47 +0200)]
amd/common: update addrlib for gfx11.5

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25278>

12 months agod3d12: Allocate d3d12_video_buffer with higher alignment for compatibility
Sil Vilerino [Wed, 27 Sep 2023 11:28:11 +0000 (07:28 -0400)]
d3d12: Allocate d3d12_video_buffer with higher alignment for compatibility

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: Add support for PIPE_VIDEO_CAP_ENC_MAX_TILE_ROWS/COLS
Sil Vilerino [Fri, 22 Sep 2023 12:37:52 +0000 (08:37 -0400)]
d3d12: Add support for PIPE_VIDEO_CAP_ENC_MAX_TILE_ROWS/COLS

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agofrontend/va: Add support for VAConfigAttribEncMaxTileRows/Cols
Sil Vilerino [Fri, 22 Sep 2023 12:37:34 +0000 (08:37 -0400)]
frontend/va: Add support for VAConfigAttribEncMaxTileRows/Cols

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: AV1 Encode - Fix VAConfigAttribEncMaxRefFrames reporting
Sil Vilerino [Tue, 19 Sep 2023 00:38:35 +0000 (20:38 -0400)]
d3d12: AV1 Encode - Fix VAConfigAttribEncMaxRefFrames reporting

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: AV1 encode - add fallback for app passing unsupported pic_params.Interpolation...
Sil Vilerino [Mon, 18 Sep 2023 23:43:34 +0000 (19:43 -0400)]
d3d12: AV1 encode - add fallback for app passing unsupported pic_params.InterpolationFilter

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: AV1 encode - Add lower resolution fallback check for uniform tile support
Sil Vilerino [Mon, 18 Sep 2023 23:31:51 +0000 (19:31 -0400)]
d3d12: AV1 encode - Add lower resolution fallback check for uniform tile support

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: Do not destroy codec when destroying video buffer
Sil Vilerino [Tue, 12 Sep 2023 02:37:46 +0000 (22:37 -0400)]
d3d12: Do not destroy codec when destroying video buffer

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: Video Decode - Wait for GPU completion before destroying decoder in-flight...
Sil Vilerino [Mon, 11 Sep 2023 18:48:22 +0000 (14:48 -0400)]
d3d12: Video Decode - Wait for GPU completion before destroying decoder in-flight objects

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: Fixes AV1 tx_mode_support reporting and unsupported tx_mode overriding
Sil Vilerino [Thu, 7 Sep 2023 23:11:38 +0000 (19:11 -0400)]
d3d12: Fixes AV1 tx_mode_support reporting and unsupported tx_mode overriding

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agod3d12: Upgrade to D3D12 Agility SDK 1.611 Video interface
Sil Vilerino [Tue, 11 Jul 2023 15:01:27 +0000 (11:01 -0400)]
d3d12: Upgrade to D3D12 Agility SDK 1.611 Video interface

Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agofrontends/va: Add profile param when querying PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL
Sil Vilerino [Fri, 25 Aug 2023 17:05:54 +0000 (13:05 -0400)]
frontends/va: Add profile param when querying PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL

Pass the specific profile as drivers may only support
quality levels for specific codecs or profiles.

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25819>

12 months agovenus: set lvp queries as saturate on overflow
Juston Li [Wed, 18 Oct 2023 21:46:49 +0000 (14:46 -0700)]
venus: set lvp queries as saturate on overflow

Test case 'dEQP-VK.pipeline.monolithic.timestamp.misc_tests.consistent_results'..
  Fail (Results are inconsistent: B32=0xffffffff B64=0x10103ba2cdd4e G32=0xba2cdd4e G64=0x10103ba2cdd4e)

Fixes: e6cffa1f0e4e ("venus: use feedback for vkGetQueryPoolResults")

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25820>

12 months agovenus: Fix -Wmaybe-uninitialized
Lina Versace [Wed, 18 Oct 2023 23:18:33 +0000 (16:18 -0700)]
venus: Fix -Wmaybe-uninitialized

  src/virtio/vulkan/vn_ring.c: In function ‘vn_ring_submit’:
  src/virtio/vulkan/vn_ring.c:259:4: warning: ‘cur_seqno’ may be used uninitialized [-Wmaybe-uninitialized]
    259 |    vn_ring_retire_submits(ring, cur_seqno);
        |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Lina Versace <linyaa@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25797>

12 months agosvga: ignore sampler view resource if not used by shaders
Charmaine Lee [Wed, 18 Oct 2023 17:00:43 +0000 (20:00 +0300)]
svga: ignore sampler view resource if not used by shaders

Currently bound sampler view resources are relevant only if the
currently bound shaders also access them. So when checking for shader
resource collision, we only need to check those shader resources that
are actively used by the shaders.

This fixes a regression with manhattan on SVGA device when only the
active state changes are sent to the driver and a no longer relevant
shader resource is included in the shader resource collision check.
This causes a backing resource to be unnecessarily created and the content
never propagated to the original resource.

Fixes: aaa4b0e6186 ("st/mesa: move check_program_state code into _mesa_update_state")
Reviewed-by: Neha Bhenden <bhenden@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25801>

12 months agoegl/wayland: only add more registry listeners for hardware devices
Mike Blumenkrantz [Thu, 19 Oct 2023 17:16:42 +0000 (13:16 -0400)]
egl/wayland: only add more registry listeners for hardware devices

these extensions shouldn't be exposed for pure software drivers

fixes #9948

Fixes: 1b4e877def1 ("egl/wayland: use more registry listeners to better handle device init")

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25817>

12 months agoci: don't set GALLIUM_DRIVER for zink
Mike Blumenkrantz [Thu, 19 Oct 2023 16:52:30 +0000 (12:52 -0400)]
ci: don't set GALLIUM_DRIVER for zink

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25640>

12 months agoglx: add automatic zink fallback loading between hw and sw drivers
Mike Blumenkrantz [Mon, 9 Oct 2023 19:02:13 +0000 (15:02 -0400)]
glx: add automatic zink fallback loading between hw and sw drivers

if loading the default hardware driver fails, implicitly loading zink
should now be preferable to hitting the software fallback now that zink
has all the same capabilities

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25640>

12 months agoegl: add automatic zink fallback loading between hw and sw drivers
Mike Blumenkrantz [Mon, 9 Oct 2023 19:02:13 +0000 (15:02 -0400)]
egl: add automatic zink fallback loading between hw and sw drivers

if loading the default hardware driver fails, implicitly loading zink
should now be preferable to hitting the software fallback now that zink
has all the same capabilities

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25640>

12 months agoegl/glx: don't load non-sw zink without dri3 support
Mike Blumenkrantz [Mon, 9 Oct 2023 19:23:04 +0000 (15:23 -0400)]
egl/glx: don't load non-sw zink without dri3 support

this is going to be broken, so don't bother trying

also add LIBGL_KOPPER_DRI2 so people can continue to footgun if they
really really want to

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25640>

12 months agoegl: init dri3 version info during screen creation
Mike Blumenkrantz [Tue, 10 Oct 2023 11:54:17 +0000 (07:54 -0400)]
egl: init dri3 version info during screen creation

no functional changes

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25640>

12 months agoegl: unify dri2_egl_display creation
Mike Blumenkrantz [Tue, 10 Oct 2023 11:47:23 +0000 (07:47 -0400)]
egl: unify dri2_egl_display creation

this is the same for all platforms

no functional changes

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25640>

12 months agoradeonsi: Add tracepoints in radeonsi driver
Saroj Kumar [Mon, 17 Jul 2023 15:33:02 +0000 (21:03 +0530)]
radeonsi: Add tracepoints in radeonsi driver

Add initialization code for u_trace and tracepoints in the
driver code.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23664>

12 months agoradeonsi: Add u_trace init code in radeonsi
Saroj Kumar [Mon, 17 Jul 2023 15:14:53 +0000 (20:44 +0530)]
radeonsi: Add u_trace init code in radeonsi

Add u_trace initialization and callbacks in new files si_utrace.h/c

Change si_context in si_pipe.h to add si_ds_queue and u_trace to
collect traces.

Add si_record_ts function in si_gfx_cs.c to add timestamp in command
stream.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23664>

12 months agoradeonsi: Add perfetto support in radeonsi
Saroj Kumar [Mon, 17 Jul 2023 14:51:29 +0000 (20:21 +0530)]
radeonsi: Add perfetto support in radeonsi

Add perfetto code in new files si_perfetto.h/cc which add tracepoint
begin and end event and calls to the generated code from python
si_tracepoints.py

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23664>

12 months agoradv: Wait for bottom of pipe in ACE gang wait postamble.
Timur Kristóf [Wed, 18 Oct 2023 13:41:40 +0000 (15:41 +0200)]
radv: Wait for bottom of pipe in ACE gang wait postamble.

This makes sure that the semaphore is only written when all work
on the compute queue is finished.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Add queue family argument to some functions.
Timur Kristóf [Wed, 18 Oct 2023 13:37:21 +0000 (15:37 +0200)]
radv: Add queue family argument to some functions.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Use new WRITE_DATA helper in more places.
Timur Kristóf [Wed, 18 Oct 2023 13:07:01 +0000 (15:07 +0200)]
radv: Use new WRITE_DATA helper in more places.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Refactor WRITE_DATA helper function.
Timur Kristóf [Wed, 18 Oct 2023 12:29:55 +0000 (14:29 +0200)]
radv: Refactor WRITE_DATA helper function.

Create a version of this function that takes a CS and queue family.
move it to radv_cs.h so it can be called from multiple other files.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Move radv_cp_wait_mem to radv_cs.h and add queue family argument.
Timur Kristóf [Mon, 16 Oct 2023 08:25:06 +0000 (10:25 +0200)]
radv: Move radv_cp_wait_mem to radv_cs.h and add queue family argument.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Only call si_cp_dma_wait_for_idle on GFX and ACE queues.
Timur Kristóf [Fri, 29 Sep 2023 15:47:40 +0000 (17:47 +0200)]
radv: Only call si_cp_dma_wait_for_idle on GFX and ACE queues.

This command is only supported on GFX and ACE.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Use const on vi_alpha_is_on_msb arguments.
Timur Kristóf [Fri, 29 Sep 2023 12:12:01 +0000 (14:12 +0200)]
radv: Use const on vi_alpha_is_on_msb arguments.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Use const device argument in radv_sdma_copy_buffer.
Timur Kristóf [Thu, 5 Oct 2023 23:27:10 +0000 (01:27 +0200)]
radv: Use const device argument in radv_sdma_copy_buffer.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agoradv: Rename SDMA file to radv_sdma.c
Timur Kristóf [Tue, 26 Sep 2023 09:34:42 +0000 (11:34 +0200)]
radv: Rename SDMA file to radv_sdma.c

It already contains more than just the buffer image copies.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25770>

12 months agonvk: Implement VK_EXT_dynamic_rendering_unused_attachments
Faith Ekstrand [Thu, 19 Oct 2023 12:16:38 +0000 (07:16 -0500)]
nvk: Implement VK_EXT_dynamic_rendering_unused_attachments

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9632
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25813>

12 months agonvk: Enable descriptorIndexing
Faith Ekstrand [Thu, 19 Oct 2023 12:26:10 +0000 (07:26 -0500)]
nvk: Enable descriptorIndexing

This is the Vulkan 1.2 equivalent of VK_EXT_descriptor_indexing
extension enable.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25812>

12 months agonvk: Advertise shaderOutputLayer and shaderOutputViewportIndex
Faith Ekstrand [Thu, 19 Oct 2023 12:27:45 +0000 (07:27 -0500)]
nvk: Advertise shaderOutputLayer and shaderOutputViewportIndex

We already advertise the extension but it's moved into feature bits in
Vulkan 1.2 and we didn't have those turned on.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25812>

12 months agonvk: Re-arrange Vulkan 1.2 features to match the header
Faith Ekstrand [Thu, 19 Oct 2023 12:25:27 +0000 (07:25 -0500)]
nvk: Re-arrange Vulkan 1.2 features to match the header

Also, conditional render ended up in the Vulkan 1.2 section which is
wrong.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25812>

12 months agofeatures: Mark VK_EXT_attachment_feedback_loop_layout done for NVK
Faith Ekstrand [Thu, 19 Oct 2023 12:53:52 +0000 (07:53 -0500)]
features: Mark VK_EXT_attachment_feedback_loop_layout done for NVK

Fixes: c93b30daa373 ("nvk: Advertise VK_EXT_attachment_feedback_loop_layout")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25812>

12 months agonvk: Advertise VK_EXT_attachment_feedback_loop_layout
Faith Ekstrand [Thu, 19 Oct 2023 08:07:16 +0000 (03:07 -0500)]
nvk: Advertise VK_EXT_attachment_feedback_loop_layout

We don't need to do anything with the layout.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25808>

12 months agoanv: uninitialize queues before utrace
Lionel Landwerlin [Thu, 19 Oct 2023 08:00:49 +0000 (11:00 +0300)]
anv: uninitialize queues before utrace

We need to shut down the runtime queue threads before tearing down
anything else.

Gets rid of helgrind errors like this :

==212772== Possible data race during write of size 4 at 0xADCBFB0 by thread #1
==212772== Locks held: 1, at address 0x6B8F260
==212772==    at 0x8AC3EFF: simple_mtx_destroy (simple_mtx.h:97)
==212772==    by 0x8ACB24D: intel_ds_device_fini (intel_driver_ds.cc:603)
==212772==    by 0x6CBD4D4: anv_device_utrace_finish (anv_utrace.c:471)
==212772==    by 0x6C71577: anv_DestroyDevice (anv_device.c:3679)
==212772==    by 0x6B2F1E2: loader_layer_destroy_device (loader.c:4358)
==212772==    by 0x6B3F10B: vkDestroyDevice (trampoline.c:983)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: cc5843a573 ("anv: implement u_trace support")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10010
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25805>

12 months agoci/freedreno: Generalize the implicit_unmap timeouts.
Eric Anholt [Thu, 19 Oct 2023 08:37:51 +0000 (10:37 +0200)]
ci/freedreno: Generalize the implicit_unmap timeouts.

dedicated_alloc.image caused a job flake today.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25804>

12 months agoanv: don't uninitialize bvh_bo_pool is not initialized
Lionel Landwerlin [Thu, 19 Oct 2023 06:46:14 +0000 (09:46 +0300)]
anv: don't uninitialize bvh_bo_pool is not initialized

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 3e8d2617e1 ("anv: use buffer pools for BVH build buffers")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10009
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25802>

12 months agoci/zink: Cut zink-lvp coverage in half.
Eric Anholt [Wed, 18 Oct 2023 17:42:39 +0000 (19:42 +0200)]
ci/zink: Cut zink-lvp coverage in half.

It's taking 23 minutes of deqp-runner time.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci/freedreno: Move skqp testing to a618.
Eric Anholt [Wed, 18 Oct 2023 14:33:41 +0000 (16:33 +0200)]
ci/freedreno: Move skqp testing to a618.

The limozeen runners are quite under-committed, while we had 10 jobs
running for our 9 cheza runners, causing an unnecessary wait even when the
farms were idle.

I've removed the old 630 skqp bits, so we can just track what's being
tested on 618.  618 had skqp toml and xfails laying around alreaady.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci/freedreno: Fold a630_egl into a630_gl.
Eric Anholt [Wed, 18 Oct 2023 14:16:00 +0000 (16:16 +0200)]
ci/freedreno: Fold a630_egl into a630_gl.

The GL job was only taking 5 minutes in deqp, and egl is 2 minutes.  Saves
a boot, and gets us closer to starting all a630 jobs at the same time if
the farm was idle.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci/iris: Drop parallel on kbl piglit to 2.
Eric Anholt [Wed, 18 Oct 2023 13:44:28 +0000 (15:44 +0200)]
ci/iris: Drop parallel on kbl piglit to 2.

We have only 6 of these boards since one died in May, and 7 jobs allocated
to them.  So you ended up with a 5 minute delay on each pipeline with an
otherwise-idle farm while you waited for the first batch of jobs to
complete so you could get the last one started.  It turns out that piglit
was taking 3 minutes of runtime each, so we can just shard piglit 2 ways,
stay under runtime, and not over-allocate the farm

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci/bare-metal: Default our boards to a 20-minute timeout for the whole job.
Eric Anholt [Wed, 18 Oct 2023 13:34:59 +0000 (15:34 +0200)]
ci/bare-metal: Default our boards to a 20-minute timeout for the whole job.

If the test time is 10 minutes, and boot is 1.5 minutes, that gives you
8.5 minutes of slop for intermittent costs like container download.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci/bare-metal: Drop the 2 vs 1 exit code from poe_run.
Eric Anholt [Wed, 18 Oct 2023 13:25:44 +0000 (15:25 +0200)]
ci/bare-metal: Drop the 2 vs 1 exit code from poe_run.

This exit code was used for the intra-job retries on the other bare-metal
run scripts, but poe_run doesn't do that.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci: Stop doing internal retries in bare-metal.
Eric Anholt [Wed, 18 Oct 2023 13:18:40 +0000 (15:18 +0200)]
ci: Stop doing internal retries in bare-metal.

We have job-level retry on failure now, and will continue to need to in
order to work around fd.o infrastructure flakes.  If we stop doing retry
inside the job, then we can crank down the gitlab-level timeouts on test
jobs to be closer to our CI guidelines and avoid blocking a runner for an
hour when things go wrong (for example, cheza #16 failing to boot in a
recognized way and continuously looping due to the intra-job retry).
Plus, the job logs will be more readable when you don't have two boots in
one job, and we'll get the flakes surfaced in our monitoring dashboards.

If internal retries were really doing useful work we may see an increase
in flakes as a result of this.  I'm committing to turning off boards or
reducing coverage as necessary to handle this.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agoci/zink: Only test half of piglit pre-merge on anv.
Eric Anholt [Wed, 18 Oct 2023 13:04:57 +0000 (15:04 +0200)]
ci/zink: Only test half of piglit pre-merge on anv.

Unfortunately we're at 16 minutes of runtime for this job, which is much
too far past our guidelines.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>

12 months agozink: fix legacy depth texture rewriting for single component reads
Mike Blumenkrantz [Wed, 18 Oct 2023 16:21:02 +0000 (12:21 -0400)]
zink: fix legacy depth texture rewriting for single component reads

if only a single component is read, this instruction can (and must) be
rewritten to use that component since depth sampling in vulkan is single-component

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25795>

12 months agozink: update pointer for GPL pipeline cache entry formats
Mike Blumenkrantz [Wed, 18 Oct 2023 15:31:31 +0000 (11:31 -0400)]
zink: update pointer for GPL pipeline cache entry formats

this otherwise points to ctx->gfx_pipeline_state.rendering_formats,
which is broken for background compiles

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25795>

12 months agonir/lower_fragcolor: preserve location_frac
Mike Blumenkrantz [Wed, 18 Oct 2023 16:20:37 +0000 (12:20 -0400)]
nir/lower_fragcolor: preserve location_frac

this otherwise breaks component-based outputs

cc: mesa-stable

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25794>

12 months agovenus: Enable VK_EXT_graphics_pipeline_library behind debug flag
Lina Versace [Thu, 10 Aug 2023 23:32:27 +0000 (16:32 -0700)]
venus: Enable VK_EXT_graphics_pipeline_library behind debug flag

Until the performance issues get resolved, enable the extension
if `VN_DEBUG=gpl`.

Also enable the required (and trivial) VK_KHR_pipeline_library.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Do pipeline fixes for VK_EXT_graphics_pipeline_library
Lina Versace [Thu, 3 Aug 2023 21:23:27 +0000 (14:23 -0700)]
venus: Do pipeline fixes for VK_EXT_graphics_pipeline_library

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Refactor pipeline fixup into two stages
Lina Versace [Thu, 3 Aug 2023 21:11:38 +0000 (14:11 -0700)]
venus: Refactor pipeline fixup into two stages

Function vn_fix_graphics_pipeline_create_infos() had two interleaved
phases: discovery of needed fixes, and application of those fixes.
Move the discovery phase into new function
vn_find_graphics_pipeline_create_info_fixes(). The two-phase approach
will be simplify the implementation of VK_EXT_graphics_pipeline_library.

No intended change in behavior.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Renames for VkGraphicsPipelineCreateInfo fixes
Lina Versace [Thu, 3 Aug 2023 20:37:24 +0000 (13:37 -0700)]
venus: Renames for VkGraphicsPipelineCreateInfo fixes

Use a more consistent naming scheme for everything. Follow-up patches
will implement VK_EXT_graphics_pipeline_library, which will make the
code significantly more complex, in which better names will make the
code more readable.

Except for replacing `any_fix` with `erase.mask`, this patch does modify
any procedural code. It merely renames structs and fields.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Add enum vn_pipeline_type
Lina Versace [Fri, 9 Jun 2023 23:45:03 +0000 (16:45 -0700)]
venus: Add enum vn_pipeline_type

No change in behavior.  Prepares for storing more state in graphics
libraries for VK_EXT_graphics_pipeline_library.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Use VkImageAspectFlags in vn_subpass
Lina Versace [Fri, 9 Jun 2023 23:29:21 +0000 (16:29 -0700)]
venus: Use VkImageAspectFlags in vn_subpass

No intended change in behavior. This little improvement will help
vn_pipeline track its graphics state more accurately.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Drop incorrectly-used always-true pipeline vars
Lina Versace [Fri, 4 Aug 2023 18:11:28 +0000 (11:11 -0700)]
venus: Drop incorrectly-used always-true pipeline vars

When writing vn_fix_graphics_pipeline_create_info() long ago, I defined
some always-true dummy vars that represented some
VkGraphicsPipelineLibraryFlagsEXT. In the conditions that decide which
state to fixup, I used the dummy vars.

My intent was that this would ease the implementation of
VK_EXT_graphics_pipeline_library, because some of the GPL fixup logic
would already be present.  I was wrong. After I studied GPL more,
I discovered that the conditions were using the dummy vars incorrectly.
The incorrect usage produced no bugs, because the vars are always true.

Delete the dummy vars.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Fix subpass attachments
Lina Versace [Fri, 9 Jun 2023 23:08:04 +0000 (16:08 -0700)]
venus: Fix subpass attachments

We must check for VK_ATTACHMENT_UNUSED.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Fix crash when VkGraphicsPipelineCreateInfo::layout is missing
Lina Versace [Thu, 3 Aug 2023 20:17:07 +0000 (13:17 -0700)]
venus: Fix crash when VkGraphicsPipelineCreateInfo::layout is missing

With VK_EXT_graphics_pipeline_library, the layout may be omitted or
ignored in incomplete pipelines.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Erase pViewports and pScissors in fewer cases
Lina Versace [Fri, 4 Aug 2023 16:35:58 +0000 (09:35 -0700)]
venus: Erase pViewports and pScissors in fewer cases

We should avoid erasing VkGraphicsPipelineCreateInfo when possible
because the erasure add cpu overhead. Do not erase pViewports if
viewportCount is 0. Do not erase pScissors if scissorCount is 0.

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agovenus: Sync protocol for VK_EXT_graphics_pipeline_library
Lina Versace [Mon, 9 Oct 2023 18:47:30 +0000 (11:47 -0700)]
venus: Sync protocol for VK_EXT_graphics_pipeline_library

Signed-off-by: Lina Versace <linyaa@google.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22419>

12 months agoasahi: flush denorms on exact fmin/fmax
Karol Herbst [Wed, 18 Oct 2023 12:58:58 +0000 (14:58 +0200)]
asahi: flush denorms on exact fmin/fmax

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25788>

12 months agoac: Add rudimentary implementation of printing SDMA IBs.
Timur Kristóf [Fri, 6 Oct 2023 00:49:42 +0000 (02:49 +0200)]
ac: Add rudimentary implementation of printing SDMA IBs.

This isn't meant to be exhaustive and only prints the packets
and fields which were interesting to me during debugging the
RADV transfer queue implementation.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769>

12 months agoac: Print IP type for IBs.
Timur Kristóf [Mon, 16 Oct 2023 11:07:46 +0000 (13:07 +0200)]
ac: Print IP type for IBs.

This makes it clearer what is what when reading IBs
for debugging purposes.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769>

12 months agoac: Rename ac_do_parse_ib to parse_pkt3_ib.
Timur Kristóf [Fri, 13 Oct 2023 21:40:20 +0000 (23:40 +0200)]
ac: Rename ac_do_parse_ib to parse_pkt3_ib.

This function only parses PKT3 packets, not other types.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769>

12 months agoac: Add amd_ip_type argument to ac_parse_ib and ac_parse_ib_chunk.
Timur Kristóf [Fri, 6 Oct 2023 00:13:30 +0000 (02:13 +0200)]
ac: Add amd_ip_type argument to ac_parse_ib and ac_parse_ib_chunk.

The current parser only supports PKT3 packets, but not all HW IP
types use this format. This makes it possible to support more
than one format depending on the IP type.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769>

12 months agoac: Clarify SDMA opcode defines.
Timur Kristóf [Tue, 26 Sep 2023 09:53:00 +0000 (11:53 +0200)]
ac: Clarify SDMA opcode defines.

Make the naming of these defines consistent with others.
And add a few new opcodes and related definitions.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769>

12 months agoac/gpu_info: Add some SDMA related information.
Timur Kristóf [Mon, 25 Sep 2023 12:27:45 +0000 (14:27 +0200)]
ac/gpu_info: Add some SDMA related information.

SDMA only supports sparse resources on GFX9+.
SDMA only supports DCC and HTILE on GFX10+.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25769>

12 months agofrontends/va: Implement vaMapBuffer2
David Rosca [Mon, 9 Oct 2023 15:28:06 +0000 (17:28 +0200)]
frontends/va: Implement vaMapBuffer2

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25620>

12 months agopvr: Enable VK_KHR_uniform_buffer_standard_layout
Vlad Schiller [Thu, 7 Sep 2023 09:04:03 +0000 (10:04 +0100)]
pvr: Enable VK_KHR_uniform_buffer_standard_layout

Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25708>

12 months agopvr: Enable KHR_image_format_list
Vlad Schiller [Tue, 29 Aug 2023 09:56:27 +0000 (10:56 +0100)]
pvr: Enable KHR_image_format_list

Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25707>