platform/upstream/mesa.git
15 months agoradv/rt: Miss rays that hit the triangle's v edge
Friedrich Vock [Sun, 9 Jul 2023 19:12:00 +0000 (21:12 +0200)]
radv/rt: Miss rays that hit the triangle's v edge

The hardware seems to do this as well. Avoids invoking hit shaders twice
at shared edges.
Fixes the fails in watertightness tests on emulated RT.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24063>

15 months agoradv/rt: Enable exact on software intersection functions
Friedrich Vock [Sun, 9 Jul 2023 19:09:11 +0000 (21:09 +0200)]
radv/rt: Enable exact on software intersection functions

These functions need exact output, otherwise watertightness can't be
guaranteed in some cases.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24063>

15 months agoiris: Drop depth cache flush requirement after depth clear/resolve
Sagar Ghuge [Thu, 6 Jul 2023 16:34:44 +0000 (09:34 -0700)]
iris: Drop depth cache flush requirement after depth clear/resolve

From Bspec 46959, a programming note applicable to Gfx12+:

   "Since HZ_OP has to be sent twice (first time set the clear/resolve
   state and 2nd time to clear the state), and HW internally flushes the
   depth cache on HZ_OP, there is no need to explicitly send a Depth
   Cache flush after Clear or Resolve."

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24027>

15 months agoanv: Drop depth cache flush requirement after depth clear/resolve
Sagar Ghuge [Thu, 6 Jul 2023 16:29:31 +0000 (09:29 -0700)]
anv: Drop depth cache flush requirement after depth clear/resolve

From Bspec 46959, a programming note applicable to Gfx12+:

   "Since HZ_OP has to be sent twice (first time set the clear/resolve
   state and 2nd time to clear the state), and HW internally flushes the
   depth cache on HZ_OP, there is no need to explicitly send a Depth
   Cache flush after Clear or Resolve."

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24027>

15 months agofreedreno/ci: add KHR-GL46.buffer_storage.map_persistent_flush to flakes
Italo Nicola [Mon, 10 Jul 2023 15:00:56 +0000 (15:00 +0000)]
freedreno/ci: add KHR-GL46.buffer_storage.map_persistent_flush to flakes

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Suggested-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21219>

15 months agomesa/main: add PIPE_FORMAT_VYUY and PIPE_FORMAT_B8R8_G8R8
Italo Nicola [Thu, 9 Feb 2023 13:14:29 +0000 (13:14 +0000)]
mesa/main: add PIPE_FORMAT_VYUY and PIPE_FORMAT_B8R8_G8R8

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21219>

15 months agomesa/main: add PIPE_FORMAT_YVYU and PIPE_FORMAT_R8B8_R8G8
Italo Nicola [Thu, 9 Feb 2023 11:32:12 +0000 (11:32 +0000)]
mesa/main: add PIPE_FORMAT_YVYU and PIPE_FORMAT_R8B8_R8G8

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21219>

15 months agogallium/st: add support for PIPE_FORMAT_NV21 and PIPE_FORMAT_G8_B8R8_420
Italo Nicola [Wed, 1 Feb 2023 21:59:38 +0000 (21:59 +0000)]
gallium/st: add support for PIPE_FORMAT_NV21 and PIPE_FORMAT_G8_B8R8_420

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21219>

15 months agonir: add options to lower y_vu, yv_yu, yx_xvxu and xy_vxux
Italo Nicola [Thu, 9 Feb 2023 12:39:33 +0000 (12:39 +0000)]
nir: add options to lower y_vu, yv_yu, yx_xvxu and xy_vxux

`y_vu` will be used to convert NV21 to RGB.
`yv_yu` will be used to convert YVYU and VYUY to RGB when the
subsampling formats PIPE_FORMAT_R8B8_R8G8 and PIPE_FORMAT_B8R8_G8R8
are supported.
`yx_xvxu` and `xy_vxux` will be used to convert YVYU and VYUY to RGB
when those subsampling formats are not supported.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21219>

15 months agoci/freedreno: add execution@varying-struct-copy-return-vs flake
David Heidelberg [Mon, 10 Jul 2023 11:28:48 +0000 (13:28 +0200)]
ci/freedreno: add execution@varying-struct-copy-return-vs flake

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24069>

15 months agoci/freedreno: add KHR-GL46.buffer_storage flakes
David Heidelberg [Mon, 10 Jul 2023 11:27:27 +0000 (13:27 +0200)]
ci/freedreno: add KHR-GL46.buffer_storage flakes

Both flakes occuring time to time on Adreno 6xx series.

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24069>

15 months agod3d12/ci: add piglit arb_clear_texture-integer fail to CI expectations
Italo Nicola [Mon, 10 Jul 2023 12:56:37 +0000 (12:56 +0000)]
d3d12/ci: add piglit arb_clear_texture-integer fail to CI expectations

Likely related to other ARB_texture_integer fails, instead of something
specific to ARB_clear_texture.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agolima/ci: add some ARB_clear_texture piglit tests to lima-fails.txt
Italo Nicola [Fri, 7 Jul 2023 15:44:28 +0000 (15:44 +0000)]
lima/ci: add some ARB_clear_texture piglit tests to lima-fails.txt

Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agogallium: remove PIPE_CAP_CLEAR_TEXTURE
Italo Nicola [Tue, 20 Jun 2023 20:24:01 +0000 (20:24 +0000)]
gallium: remove PIPE_CAP_CLEAR_TEXTURE

ARB_clear_texture is now implemented in common code.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agogallium: cleanup util_blitter_clear_render_target
Italo Nicola [Thu, 22 Jun 2023 17:41:16 +0000 (17:41 +0000)]
gallium: cleanup util_blitter_clear_render_target

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agoclover: use fallback path when pipe->clear_texture is not available
Italo Nicola [Sun, 9 Jul 2023 22:45:47 +0000 (19:45 -0300)]
clover: use fallback path when pipe->clear_texture is not available

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agorusticl: use fallback path when pipe->clear_texture is not available
Italo Nicola [Wed, 21 Jun 2023 14:46:02 +0000 (14:46 +0000)]
rusticl: use fallback path when pipe->clear_texture is not available

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agomesa/st: use fallback path when pipe->clear_texture is not available
Italo Nicola [Thu, 22 Jun 2023 18:45:18 +0000 (18:45 +0000)]
mesa/st: use fallback path when pipe->clear_texture is not available

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agogallium: rename util_clear_texture to util_clear_texture_sw
Italo Nicola [Thu, 22 Jun 2023 18:32:45 +0000 (18:32 +0000)]
gallium: rename util_clear_texture to util_clear_texture_sw

This better explain what this function does, making it less likely that
people mistakenly use it instead of util_default_clear_texture.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agogallium: use u_default_clear_texture where applicable
Italo Nicola [Thu, 22 Jun 2023 18:35:06 +0000 (18:35 +0000)]
gallium: use u_default_clear_texture where applicable

This removes some shared code between backends that implemented their
version of pipe->clear_texture without anything driver-specific code.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agogallium: implement u_default_clear_texture
Italo Nicola [Mon, 19 Jun 2023 22:04:15 +0000 (22:04 +0000)]
gallium: implement u_default_clear_texture

util_clear_texture implements clear_texture through a memset.
This patch implements u_default_clear_texture, which tries to clear the
given texture using a surface plus clear_render_target or
clear_depth_stencil.

In case this path fails, either because the formats are non-renderable
or for some other reason, we fallback to `util_clear_texture`, which is
guaranteed to work.

This will allow us to make ARB_clear_texture available to every driver,
as well as provide HW acceleration for the clear_texture operation.

If some hardware doesn't want to use it, such as llvmpipe, it can always
just directly point to the software version using pipe->clear_texture.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agod3d12: fix clear_depth_stencil texture deref
Italo Nicola [Sun, 9 Jul 2023 22:47:43 +0000 (19:47 -0300)]
d3d12: fix clear_depth_stencil texture deref

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agovc4: implement clear_render_target and clear_depth_stencil
Italo Nicola [Wed, 28 Jun 2023 14:23:39 +0000 (14:23 +0000)]
vc4: implement clear_render_target and clear_depth_stencil

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agov3d: implement clear_render_target and clear_depth_stencil
Italo Nicola [Wed, 28 Jun 2023 14:23:27 +0000 (14:23 +0000)]
v3d: implement clear_render_target and clear_depth_stencil

Also added some related piglit failures to broadcom-rpi4-fails.txt.

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agofreedreno: implement clear_render_target and clear_depth_stencil
Italo Nicola [Wed, 28 Jun 2023 14:23:02 +0000 (14:23 +0000)]
freedreno: implement clear_render_target and clear_depth_stencil

Signed-off-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23735>

15 months agonir: do not needlessly rely on optimizations
Erik Faye-Lund [Mon, 5 Jun 2023 13:11:32 +0000 (15:11 +0200)]
nir: do not needlessly rely on optimizations

We're going to do this rewrite once we get to nir_opt_algebraic anyway,
so let's save a little bit of needless work here.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24004>

15 months agoradv: do not rely on constant-folding
Erik Faye-Lund [Mon, 5 Jun 2023 11:32:07 +0000 (13:32 +0200)]
radv: do not rely on constant-folding

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24004>

15 months agonir: use nir_intrinsic_get_var
Erik Faye-Lund [Mon, 5 Jun 2023 10:06:01 +0000 (12:06 +0200)]
nir: use nir_intrinsic_get_var

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24004>

15 months agonir: constify intrin
Erik Faye-Lund [Thu, 6 Jul 2023 12:07:31 +0000 (14:07 +0200)]
nir: constify intrin

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24004>

15 months agoci: Uprev virglrenderer
Corentin Noël [Mon, 10 Jul 2023 08:41:31 +0000 (10:41 +0200)]
ci: Uprev virglrenderer

Enable the latest changes with vrend-video

Change the default branch of virglrenderer to main as upstream did

Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24067>

15 months agorogue: Remove commented convert_from_ssa call
Alyssa Rosenzweig [Thu, 6 Jul 2023 11:21:58 +0000 (07:21 -0400)]
rogue: Remove commented convert_from_ssa call

Currently, the rogue compiler does not support control flow upstream.
Imagination's plan is to implement an SSA-based register allocation (I wish them
well in this endeavour). As such they won't be needing convert_from_ssa. remove
the commented call so nobody is tempted to put it back in. This takes care of
the rogue portion of #9051.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24015>

15 months agovirgl: remove check of VIRGL_CAP_V2_UNTYPED_RESOURCE
Julia Zhang [Thu, 15 Jun 2023 12:04:12 +0000 (20:04 +0800)]
virgl: remove check of VIRGL_CAP_V2_UNTYPED_RESOURCE

Remove check of VIRGL_CAP_V2_UNTYPED_RESOURCE flag in
virgl_resource_from_handle() so that guest can still call
into virglrenderer to import external vulkan resource via
OpenGL APIs even if egl is not initialized.

Signed-off-by: Julia Zhang <julia.zhang@amd.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23680>

15 months agoglsl: do vs attribute validation in NIR linker
Timothy Arceri [Fri, 7 Jul 2023 05:45:04 +0000 (15:45 +1000)]
glsl: do vs attribute validation in NIR linker

This allows us to tidy up the code and call the attribute location
code a single time rather than doing a "dry run".

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

15 months agoglsl: remove dead varyings before assigning attr locations
Timothy Arceri [Fri, 7 Jul 2023 05:20:42 +0000 (15:20 +1000)]
glsl: remove dead varyings before assigning attr locations

The GLSL IR code used to clean these up. Some apps such as the Heaven
benchmark fail linking if we don't eliminate them before the linker
validation.

Fixes: a8534c7b4cfc ("glsl: drop the dce of global vars from GLSL IR linker")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9319

Tested-by: Marcus Seyfarth <m.seyfarth@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24035>

15 months agopanfrost: fix refcnt imbalance related to blitter
Patrick Lerda [Thu, 6 Jul 2023 11:43:27 +0000 (13:43 +0200)]
panfrost: fix refcnt imbalance related to blitter

This issue is mainly a consequence of a call to util_blitter_clear()
with unnecessary blitter states, these states are never freed.

This change is inspired from radeonsi and r600.

Note: PAN_SAVE_FRAGMENT_STATE is added and always enabled
at this stage.

For instance, this issue is triggered on Mali-T720 with
"piglit/bin/fcc-read-after-clear sample tex -auto -fbo", "piglit/bin/cubemap -auto"
and "piglit/bin/fbo-srgb -auto" or on Mali-T820 with "piglit/bin/longprim -auto -fbo"
and "piglit/bin/ext_render_snorm-render -auto -fbo"
while setting GALLIUM_REFCNT_LOG=refcnt.log.

cc: mesa-stable

Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22522>

15 months agoradeonsi/gfx11: only use SET_*_PAIRS* packets on dGPUs
Marek Olšák [Wed, 5 Jul 2023 14:57:51 +0000 (10:57 -0400)]
radeonsi/gfx11: only use SET_*_PAIRS* packets on dGPUs

They are not available on APUs.

This adds a new template parameter HAS_PAIRS. into draw functions.
Other places add back the non-pairs code for gfx11.

Fixes: 22f3bcfb - radeonsi/gfx11: use SET_*_REG_PAIRS_PACKED packets for pm4 states
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9259

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24010>

15 months agowgl: Fix depth/stencil image support when using zink kopper
Billy Laws [Thu, 29 Jun 2023 21:59:29 +0000 (22:59 +0100)]
wgl: Fix depth/stencil image support when using zink kopper

Kopper requires that any depth/stencil images are created through winsys which
was not taken into account by the WGL frontend causing it to hit an assert:
'Assertion failed: ctx->fb_state.zsbuf->texture->bind & PIPE_BIND_DISPLAY_TARGET'

fixes #9256
cc: mesa-stable

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

15 months agoci/zink+radv: document another flake
Eric Engestrom [Sat, 8 Jul 2023 14:22:40 +0000 (15:22 +0100)]
ci/zink+radv: document another flake

https://gitlab.freedesktop.org/mesa/mesa/-/jobs/45129393

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

15 months agoRevert "Revert "radv: Enable ray tracing pipelines by default""
Friedrich Vock [Mon, 3 Jul 2023 17:54:38 +0000 (19:54 +0200)]
Revert "Revert "radv: Enable ray tracing pipelines by default""

This reverts commit 49b400423ce2ac3f0d868a38a51bcd9d02cccd1b.

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

15 months agoRevert "radv/rt: Enable RT pipelines on GFX10_3+ excluding vangogh"
Friedrich Vock [Mon, 3 Jul 2023 17:53:45 +0000 (19:53 +0200)]
Revert "radv/rt: Enable RT pipelines on GFX10_3+ excluding vangogh"

This reverts commit 7f3874981dd11821a4001671b5ee505868f9aa7d.

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

15 months agoradv/ci: Skip ray tracing tests on vangogh
Friedrich Vock [Wed, 5 Jul 2023 16:37:42 +0000 (18:37 +0200)]
radv/ci: Skip ray tracing tests on vangogh

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

15 months agoci/freedreno: document number of a630 devices available
David Heidelberg [Sat, 8 Jul 2023 01:18:41 +0000 (03:18 +0200)]
ci/freedreno: document number of a630 devices available

Acked-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24050>

15 months agoci/freedreno: re-enable a530 as it's now stable with multiple skips
David Heidelberg [Tue, 18 Apr 2023 08:24:06 +0000 (10:24 +0200)]
ci/freedreno: re-enable a530 as it's now stable with multiple skips

Extend a530 skips and flakes to make possible test again.

Acked-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24050>

15 months agoci/freedreno: switch a630_{piglit,skqp} and a618_gl to Weston
David Heidelberg [Fri, 7 Jul 2023 14:37:45 +0000 (16:37 +0200)]
ci/freedreno: switch a630_{piglit,skqp} and a618_gl to Weston

Slightly faster runtime.

Acked-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24050>

15 months agoadd initial .git-blame-ignore-revs
Eric Engestrom [Mon, 26 Jun 2023 16:49:38 +0000 (17:49 +0100)]
add initial .git-blame-ignore-revs

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24049>

15 months agoclang-format: enforce formatting of egl
Eric Engestrom [Thu, 1 Jun 2023 12:51:41 +0000 (13:51 +0100)]
clang-format: enforce formatting of egl

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoegl: re-format using clang-format
Eric Engestrom [Thu, 1 Jun 2023 13:54:56 +0000 (14:54 +0100)]
egl: re-format using clang-format

No manual changes here, this is simply running
$ ninja -C build/ clang-format

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoegl: prevent clang-format from reordering some headers
Eric Engestrom [Sun, 4 Jun 2023 09:48:23 +0000 (10:48 +0100)]
egl: prevent clang-format from reordering some headers

vulkan_xcb.h is missing an include of xcb.h, breaking the build if the headers are ordered alphabetically.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoegl: protect the formatting in a couple of places
Eric Engestrom [Thu, 1 Jun 2023 13:48:50 +0000 (14:48 +0100)]
egl: protect the formatting in a couple of places

These do no follow the normal rules, but it's done on purpose because
it's easier to read like this.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoegl: add a few trailing commas
Eric Engestrom [Thu, 1 Jun 2023 13:48:50 +0000 (14:48 +0100)]
egl: add a few trailing commas

This prevents clang-format from collapsing the closing brace into the
previous line.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoegl: change a couple of clang-format settings
Eric Engestrom [Thu, 1 Jun 2023 13:54:56 +0000 (14:54 +0100)]
egl: change a couple of clang-format settings

This code was written with 80-char lines in mind; changing that to 100
with the common .clang-format unnecessarily reflows a lot of code that
looks fine like this.

`AlwaysBreakAfterReturnType: All` might be something that we want
everywhere, but for now only set it here, to match existing code.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoclang-format: add wayland foreach macros
Eric Engestrom [Thu, 1 Jun 2023 21:50:11 +0000 (22:50 +0100)]
clang-format: add wayland foreach macros

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoclang-format: add egl foreach macro
Eric Engestrom [Thu, 1 Jun 2023 12:48:43 +0000 (13:48 +0100)]
clang-format: add egl foreach macro

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23398>

15 months agoci/amd: switch all possible jobs from X11 to Wayland
David Heidelberg [Sun, 2 Jul 2023 21:10:53 +0000 (23:10 +0200)]
ci/amd: switch all possible jobs from X11 to Wayland

Saved time is around 3 - 4 minutes per job,
decreasing runtime from ~ 19 minutes to ~ 15 minutes.

Acked-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23964>

15 months agod3d12: Fix indexing of local_reference_state
Jesse Natalie [Fri, 7 Jul 2023 16:00:19 +0000 (09:00 -0700)]
d3d12: Fix indexing of local_reference_state

Instead of manually indexing a single-dimensional array as 2-dimensional
(and using the wrong stride for the outer array) just actually make it
a 2-dimensional array.

Fixes: 7edae456 ("d3d12: Track up to 16 contexts worth of batch references locally in bos")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24041>

15 months agointel/genxml: Drop incorrect compute aux-inv register entry
Sagar Ghuge [Fri, 30 Jun 2023 22:31:32 +0000 (15:31 -0700)]
intel/genxml: Drop incorrect compute aux-inv register entry

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23958>

15 months agointel/genxml: Fix typo in CCS cache flush enable
Sagar Ghuge [Sat, 1 Jul 2023 18:37:15 +0000 (11:37 -0700)]
intel/genxml: Fix typo in CCS cache flush enable

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23958>

15 months agoiris: Use correct CCS0 aux-map register offset
Sagar Ghuge [Fri, 30 Jun 2023 21:46:20 +0000 (14:46 -0700)]
iris: Use correct CCS0 aux-map register offset

According to Bspec, COMPCS0_CCS_AUX_INV register offset
is 042C8h and COMPCS0_AUX_TABLE_BASE_ADDR is defined to 042C0h.

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23958>

15 months agoanv: Use correct CCS0 aux-map register offset in pipe flush
Jordan Justen [Mon, 25 May 2020 09:51:36 +0000 (02:51 -0700)]
anv: Use correct CCS0 aux-map register offset in pipe flush

According to Bspec, COMPCS0_CCS_AUX_INV register offset
is 042C8h and COMPCS0_AUX_TABLE_BASE_ADDR is defined to 042C0h.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23958>

15 months agoanv: Program compute aux-map base address during queue init
Jordan Justen [Tue, 14 Aug 2018 09:34:16 +0000 (02:34 -0700)]
anv: Program compute aux-map base address during queue init

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23958>

15 months agointel/genxml: Add COMPCS0 aux-table registers
Jordan Justen [Fri, 20 Mar 2020 20:29:55 +0000 (13:29 -0700)]
intel/genxml: Add COMPCS0 aux-table registers

Bspec 43904 defines COMPCS0_CCS_AUX_INV to 042C8h and Bspec 43882
defines COMPCS0_AUX_TABLE_BASE_ADDR to 042C4h.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23958>

15 months agoci/windows: Re-enable Windows builds
Jesse Natalie [Fri, 7 Jul 2023 16:05:43 +0000 (09:05 -0700)]
ci/windows: Re-enable Windows builds

Reviewed-by: Eric Engestrom <eric@igalia.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24042>

15 months agomicrosoft/clc: Fix usage of nir_builder_at
Jesse Natalie [Fri, 7 Jul 2023 16:39:11 +0000 (09:39 -0700)]
microsoft/clc: Fix usage of nir_builder_at

nir_builder_at requires a block to chase back to the function impl,
but for an empty function impl, the previous code produced a cursor
with a null pointer. It was also just extra complicated.

While I'm here, use the new foreach helper since this code needs an impl.

Fixes: 12a268ea ("microsoft: Use nir_builder_at")
Reviewed-by: Eric Engestrom <eric@igalia.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24042>

15 months agoradv: Fix label name
Jesse Natalie [Fri, 7 Jul 2023 16:18:21 +0000 (09:18 -0700)]
radv: Fix label name

Reviewed-by: Eric Engestrom <eric@igalia.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24042>

15 months agovirgl/ci: fix skips definition
Eric Engestrom [Thu, 6 Jul 2023 16:56:46 +0000 (17:56 +0100)]
virgl/ci: fix skips definition

Skips are regexes, not globs :)

Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24026>

15 months agov3dv/ci: skip more tests that are timing out
Eric Engestrom [Fri, 7 Jul 2023 15:12:42 +0000 (16:12 +0100)]
v3dv/ci: skip more tests that are timing out

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24018>

15 months agov3dv/ci: fix skipping of vk tests
Eric Engestrom [Thu, 6 Jul 2023 15:22:00 +0000 (16:22 +0100)]
v3dv/ci: fix skipping of vk tests

This is a regex, not a glob, so `dEQP-VK.ssbo.phys.layout.3*` matched
all of `dEQP-VK.ssbo.phys.layout`.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24018>

15 months agovc4/ci: fix skipping of gles3 piglit tests
Eric Engestrom [Thu, 6 Jul 2023 15:19:12 +0000 (16:19 +0100)]
vc4/ci: fix skipping of gles3 piglit tests

This is a regex, not a glob, so `spec@!opengl es 3*` matched all of
`spec@!opengl es `.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24018>

15 months agofrontends/va: use resources instead of views
Ganesh Belgur Ramachandra [Mon, 19 Jun 2023 20:04:15 +0000 (15:04 -0500)]
frontends/va: use resources instead of views

Avoids the generation of sampler views as they are unnecessary

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23159>

15 months agod3d12: implementation for get_resources()
Ganesh Belgur Ramachandra [Mon, 19 Jun 2023 19:53:18 +0000 (14:53 -0500)]
d3d12: implementation for get_resources()

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23159>

15 months agonouveau: implementation for get_resources()
Ganesh Belgur Ramachandra [Mon, 19 Jun 2023 19:50:41 +0000 (14:50 -0500)]
nouveau: implementation for get_resources()

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23159>

15 months agogallium/vl: implementation for get_resources()
Ganesh Belgur Ramachandra [Mon, 19 Jun 2023 19:47:49 +0000 (14:47 -0500)]
gallium/vl: implementation for get_resources()

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23159>

15 months agogallium/pipe: Add get_resources() to pipe_video_buffer
Ganesh Belgur Ramachandra [Mon, 19 Jun 2023 14:50:59 +0000 (09:50 -0500)]
gallium/pipe: Add get_resources() to pipe_video_buffer

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23159>

15 months agoci/lava: Use an alpine image for SSH client container
Guilherme Gallo [Fri, 9 Jun 2023 01:03:15 +0000 (22:03 -0300)]
ci/lava: Use an alpine image for SSH client container

Use a lightweight container for ping, ssh, curl and bash support.
Also use an image located at fd.o infrastructure, since we are having
some issues with Collabora's gitlab one lately.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23534>

15 months agoci/lava: Add LAVA SSH client container
Guilherme Gallo [Mon, 26 Jun 2023 03:19:31 +0000 (00:19 -0300)]
ci/lava: Add LAVA SSH client container

- To keep things organized, create a base hidden jobs for alpine images,
  as we have 2 now
- This image will have an SSH client ran by LAVA dispatchers
  (x86_64-only) who will serve as a bypass channel of output and dmesg
  and an alternative for UART.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23534>

15 months agoci/lava: Increase Docker action failure_retry counter
Guilherme Gallo [Thu, 8 Jun 2023 15:34:35 +0000 (12:34 -0300)]
ci/lava: Increase Docker action failure_retry counter

Our LAVA farm is currently experiencing issues with running and pulling
docker. LAVA has been detecting (with a low rate) timeouts during these
commands, causing some jobs to fail with infrastructure errors.

Increasing the failure_retry will make the job retry run the container
when LAVA detects the failure without losing its place in the job queue.

We are currently investigating why docker times out. But, when LAVA
fails to detect it, we cancel the job on our side and resubmit it to the
job queue. For more information, please refer to following dashboard:
https://ci-stats-grafana.freedesktop.org/goto/VjZvaA_4z?orgId=1

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23534>

15 months agoiris: Convert to use nir_foreach_function_impl
Yonggang Luo [Thu, 29 Jun 2023 20:24:32 +0000 (04:24 +0800)]
iris: Convert to use nir_foreach_function_impl

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24040>

15 months agointel/vulkan: Convert to use nir_foreach_function_impl when possible
Yonggang Luo [Thu, 29 Jun 2023 20:22:52 +0000 (04:22 +0800)]
intel/vulkan: Convert to use nir_foreach_function_impl when possible

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24040>

15 months agozink: The result should be assigned a value when returned
xurui [Fri, 7 Jul 2023 02:03:42 +0000 (10:03 +0800)]
zink: The result should be assigned a value when returned

Signed-off-by: xurui <xurui@kylinos.cn>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24034>

15 months agolavapipe: Always advertise formatless storage image OPs
Konstantin Seurer [Thu, 6 Jul 2023 11:32:35 +0000 (13:32 +0200)]
lavapipe: Always advertise formatless storage image OPs

The pipe cap isn't really accurate since shaders created by lavapipe take
a different codepath compared to GL. The format information is part of
the descriptor.

This allows vkd3d-proton to advertise typed UAV loads. (Whatever that
means)

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24014>

15 months agorusticl: support subgroups
Karol Herbst [Sun, 7 May 2023 15:10:14 +0000 (17:10 +0200)]
rusticl: support subgroups

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agorusticl: deal with compute_param returning 0
Karol Herbst [Sat, 6 May 2023 23:45:22 +0000 (01:45 +0200)]
rusticl: deal with compute_param returning 0

Some drivers might return 0 indicating they haven't written any data. But
treating it as 0 for all current `COMPUTE_CAP`s is fine, so no need to
panic at runtime here.

Signed-off-by: Karol Herbst <git@karolherbst.de>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agogallium: change PIPE_COMPUTE_CAP_SUBGROUP_SIZE to a bitfield of sizes
Karol Herbst [Sun, 7 May 2023 01:16:31 +0000 (03:16 +0200)]
gallium: change PIPE_COMPUTE_CAP_SUBGROUP_SIZE to a bitfield of sizes

This will be required for `cl_intel_required_subgroup_size`, but it
already helps implementing OpenCL subgroups as this allows us to check
with every subgroup size when implementing
`CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT`.

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agorusticl/device: rework subgroups to subgroup_sizes
Karol Herbst [Sat, 6 May 2023 23:47:09 +0000 (01:47 +0200)]
rusticl/device: rework subgroups to subgroup_sizes

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agorusticl/util: add div_round_up
Karol Herbst [Sat, 6 May 2023 23:47:23 +0000 (01:47 +0200)]
rusticl/util: add div_round_up

Same as DIV_ROUND_UP

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agorusticl/util: add an Iterator to iterate over set bits in an integer
Karol Herbst [Mon, 8 May 2023 21:09:22 +0000 (23:09 +0200)]
rusticl/util: add an Iterator to iterate over set bits in an integer

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agoiris: implement get_compute_state_subgroup_size
Karol Herbst [Sat, 6 May 2023 19:07:10 +0000 (21:07 +0200)]
iris: implement get_compute_state_subgroup_size

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agogallium: add PIPE_COMPUTE_CAP_MAX_SUBGROUPS
Karol Herbst [Sat, 6 May 2023 23:44:35 +0000 (01:44 +0200)]
gallium: add PIPE_COMPUTE_CAP_MAX_SUBGROUPS

This is required for enabling OpenCL subgroups.

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agogallium: add get_compute_state_subgroup_size
Karol Herbst [Sat, 6 May 2023 19:04:18 +0000 (21:04 +0200)]
gallium: add get_compute_state_subgroup_size

This will be required by drivers supporting multiple subgroup sizes with
a given CSO to properly implement OpenCL subgroups.

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agogallium: add simd_sizes to pipe_compute_state_object_info
Karol Herbst [Sun, 4 Jun 2023 14:35:44 +0000 (16:35 +0200)]
gallium: add simd_sizes to pipe_compute_state_object_info

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agollvmpipe: report the proper subgroup size
Karol Herbst [Thu, 11 May 2023 11:27:38 +0000 (13:27 +0200)]
llvmpipe: report the proper subgroup size

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agoclc: rework optional subgroup feature
Karol Herbst [Wed, 10 May 2023 12:03:06 +0000 (14:03 +0200)]
clc: rework optional subgroup feature

OpenCL 3.0 core requires __opencl_c_subgroups to be set, the OpenCL
cl_khr_subgroups extenions can only be enabled if and only if the driver
guarentees independent forward progress between subgroups.

See CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS for more information.

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agovtn: more CL subgroups
Karol Herbst [Sat, 6 May 2023 18:58:22 +0000 (20:58 +0200)]
vtn: more CL subgroups

v2: handle ExecutionModes

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agodocs: add missing get_compute_state_info documentation
Karol Herbst [Sat, 6 May 2023 19:03:53 +0000 (21:03 +0200)]
docs: add missing get_compute_state_info documentation

Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>

15 months agov3dv: Use vk_index_type_to_bytes
Alyssa Rosenzweig [Thu, 6 Jul 2023 13:00:35 +0000 (09:00 -0400)]
v3dv: Use vk_index_type_to_bytes

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24017>

15 months agolavapipe: Use vk_index_type_to_bytes
Alyssa Rosenzweig [Thu, 6 Jul 2023 12:59:59 +0000 (08:59 -0400)]
lavapipe: Use vk_index_type_to_bytes

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24017>

15 months agovulkan: Add vk_index_type_to_bytes helper
Alyssa Rosenzweig [Thu, 6 Jul 2023 12:58:54 +0000 (08:58 -0400)]
vulkan: Add vk_index_type_to_bytes helper

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24017>

15 months agoetnaviv: Convert to use nir_foreach_function_impl
Yonggang Luo [Thu, 29 Jun 2023 20:25:26 +0000 (04:25 +0800)]
etnaviv: Convert to use nir_foreach_function_impl

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24037>

15 months agomeson: Prefix Vulkan "Ray Tracing" summary with "Intel"
Friedrich Vock [Tue, 4 Jul 2023 10:20:01 +0000 (12:20 +0200)]
meson: Prefix Vulkan "Ray Tracing" summary with "Intel"

This only applies to Intel's ray tracing. With RADV also having
ray tracing support that is always compiled in, seeing
"Ray Tracing: NO" is a bit misleading.

Reviewed-by: Joshua Ashton <joshua@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24008>

15 months agoetnaviv: blt: fix multisampled blits
Lucas Stach [Mon, 12 Jun 2023 10:35:07 +0000 (12:35 +0200)]
etnaviv: blt: fix multisampled blits

The BLT blit currently assumes that all blits with src samples > 1
are downsampling blits. This isn't correct, as we can also blit
between two multisampled resources with src and dst samples > 1.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23595>