platform/upstream/mesa.git
2 years agozink: unify actual map calls in buffer mapping
Mike Blumenkrantz [Thu, 16 Jun 2022 18:32:46 +0000 (14:32 -0400)]
zink: unify actual map calls in buffer mapping

make this a bit easier to debug by moving the calls to one place

cc: mesa-stable

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17095>

2 years agozink: rename a variable
Mike Blumenkrantz [Thu, 16 Jun 2022 17:46:56 +0000 (13:46 -0400)]
zink: rename a variable

make this a little clearer to read

cc: mesa-stable

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17095>

2 years agovenus: resolve YV12 AHB to VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM
Yiwei Zhang [Tue, 7 Jun 2022 06:59:32 +0000 (06:59 +0000)]
venus: resolve YV12 AHB to VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM

YV12 is a 3-plane format with minigbm. This change mitigates the crash
of testGLViewLargerHeightDecodeAccuracy[4], and successfully creates the
host side image and imports the memory.

vk_format(1000156002) drm_fourcc(842094169)
offsets(0, 27648, 34560, 0)
strides(256, 128, 128, 0)
modifier(0)

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16913>

2 years agogallivm: use enum types instead of unsigned in lp_bld_sample.[ch]
Brian Paul [Tue, 14 Jun 2022 21:42:37 +0000 (15:42 -0600)]
gallivm: use enum types instead of unsigned in lp_bld_sample.[ch]

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_vbuf.h
Brian Paul [Fri, 10 Jun 2022 17:40:28 +0000 (11:40 -0600)]
draw: asst. clean-up in draw_vbuf.h

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pt_vsplit.c
Brian Paul [Fri, 10 Jun 2022 17:40:09 +0000 (11:40 -0600)]
draw: asst. clean-up in draw_pt_vsplit.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pt_util.c
Brian Paul [Fri, 10 Jun 2022 17:40:01 +0000 (11:40 -0600)]
draw: asst. clean-up in draw_pt_util.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pt_fetch_shader_pipeline.c
Brian Paul [Fri, 10 Jun 2022 17:39:48 +0000 (11:39 -0600)]
draw: asst. clean-up in draw_pt_fetch_shader_pipeline.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pt_fetch_shader_emit.c
Brian Paul [Fri, 10 Jun 2022 17:39:38 +0000 (11:39 -0600)]
draw: asst. clean-up in draw_pt_fetch_shader_emit.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pt.c
Brian Paul [Fri, 10 Jun 2022 17:39:19 +0000 (11:39 -0600)]
draw: asst. clean-up in draw_pt.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pt.h
Brian Paul [Fri, 10 Jun 2022 17:39:15 +0000 (11:39 -0600)]
draw: asst. clean-up in draw_pt.h

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_private.h
Brian Paul [Fri, 10 Jun 2022 17:39:07 +0000 (11:39 -0600)]
draw: asst. clean-up in draw_private.h

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pipe_validate.c
Brian Paul [Fri, 10 Jun 2022 17:38:54 +0000 (11:38 -0600)]
draw: asst. clean-up in draw_pipe_validate.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_pipe.c
Brian Paul [Fri, 10 Jun 2022 17:38:46 +0000 (11:38 -0600)]
draw: asst. clean-up in draw_pipe.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_gs.h
Brian Paul [Fri, 10 Jun 2022 17:38:37 +0000 (11:38 -0600)]
draw: asst. clean-up in draw_gs.h

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: asst. clean-up in draw_context.h
Brian Paul [Fri, 10 Jun 2022 17:38:24 +0000 (11:38 -0600)]
draw: asst. clean-up in draw_context.h

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodraw: s/unsigned/enum pipe_prim_type/
Brian Paul [Fri, 10 Jun 2022 17:12:16 +0000 (11:12 -0600)]
draw: s/unsigned/enum pipe_prim_type/

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agollvmpipe: asst. clean-ups in lp_state_fs.c
Brian Paul [Thu, 9 Jun 2022 17:59:42 +0000 (11:59 -0600)]
llvmpipe: asst. clean-ups in lp_state_fs.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agogallivm: asst. clean-ups in lp_bld_logic.
Brian Paul [Thu, 9 Jun 2022 17:44:03 +0000 (11:44 -0600)]
gallivm: asst. clean-ups in lp_bld_logic.

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agollvmpipe: s/unsigned/enum pipe_compare_func/
Brian Paul [Thu, 9 Jun 2022 17:32:35 +0000 (11:32 -0600)]
llvmpipe: s/unsigned/enum pipe_compare_func/

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agollvmpipe: use enum blend types instead of unsigned
Brian Paul [Thu, 9 Jun 2022 17:18:02 +0000 (11:18 -0600)]
llvmpipe: use enum blend types instead of unsigned

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agollvmpipe: minor clean-up in lp_state_blend.c
Brian Paul [Thu, 9 Jun 2022 17:11:15 +0000 (11:11 -0600)]
llvmpipe: minor clean-up in lp_state_blend.c

Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17064>

2 years agodocs: Extend calendar entries for 22.1 by 3 releases.
Dylan Baker [Thu, 16 Jun 2022 17:02:35 +0000 (10:02 -0700)]
docs: Extend calendar entries for 22.1 by 3 releases.

This gives us a last release of the 22.1 series lining up with 22.2.1,
assuming that the 22.1.0 is on time.

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

2 years agodocs: Add calendar entries for 22.2 release candidates.
Dylan Baker [Thu, 16 Jun 2022 17:02:04 +0000 (10:02 -0700)]
docs: Add calendar entries for 22.2 release candidates.

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

2 years agodocs: drop 22.1.4 calendar entry.
Dylan Baker [Thu, 16 Jun 2022 17:01:20 +0000 (10:01 -0700)]
docs: drop 22.1.4 calendar entry.

We're done with the 22.1 series, so lets not have it on the calendar

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

2 years agokmsro: add error message on drm ioctl failure
Mike Blumenkrantz [Thu, 9 Jun 2022 15:21:05 +0000 (11:21 -0400)]
kmsro: add error message on drm ioctl failure

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

2 years agodrisw: probe kms if fd is passed
Mike Blumenkrantz [Thu, 9 Jun 2022 15:03:13 +0000 (11:03 -0400)]
drisw: probe kms if fd is passed

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

2 years agodzn: Skip another test that times out occasionally
Jesse Natalie [Thu, 16 Jun 2022 19:18:42 +0000 (12:18 -0700)]
dzn: Skip another test that times out occasionally

Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17089>

2 years agollvmpipe: disable alpha test branch if multisample is enabled.
Dave Airlie [Wed, 15 Jun 2022 06:26:18 +0000 (16:26 +1000)]
llvmpipe: disable alpha test branch if multisample is enabled.

If multisample is enabled and alpha testing happens, the
branch can jump out of the fragment shader before the other
samples are generated. Just don't take the branch optimisation
post alpha test if multisample is enabled.

This should fix some rendering bugs in kicad with multisample
enabled.

Cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17049>

2 years agozink: radv baseline updates
Mike Blumenkrantz [Thu, 16 Jun 2022 19:15:54 +0000 (15:15 -0400)]
zink: radv baseline updates

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

2 years agodocs: Update windows build requirement with Visual Studio
Yonggang Luo [Wed, 15 Jun 2022 15:25:23 +0000 (23:25 +0800)]
docs: Update windows build requirement with Visual Studio

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17044>

2 years agoci/vs2019: Upgrade Windows 10 SDK version to 20348
Yonggang Luo [Fri, 10 Jun 2022 06:04:33 +0000 (14:04 +0800)]
ci/vs2019: Upgrade Windows 10 SDK version to 20348

This comes with stdalign.h for more C11 conformance

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17044>

2 years agomeson/clover: Getting clover can be built with no-rtti llvm in mingw
Yonggang Luo [Wed, 15 Jun 2022 17:42:49 +0000 (01:42 +0800)]
meson/clover: Getting clover can be built with no-rtti llvm in mingw

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17055>

2 years agomeson/rtti: Using get_argument_syntax to check msvc compatible compiler
Yonggang Luo [Thu, 19 May 2022 10:27:44 +0000 (18:27 +0800)]
meson/rtti: Using get_argument_syntax to check msvc compatible compiler

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17055>

2 years agomeson: Use cc.get_argument_syntax instead cc.get_id when possible.
Yonggang Luo [Thu, 21 Apr 2022 06:06:17 +0000 (14:06 +0800)]
meson: Use cc.get_argument_syntax instead cc.get_id when possible.

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17065>

2 years agomeson: Using get_argument_syntax as the `--compiler_id` option for gen_vs_module_defs.py
Yonggang Luo [Thu, 21 Apr 2022 17:09:19 +0000 (01:09 +0800)]
meson: Using get_argument_syntax as the `--compiler_id` option for gen_vs_module_defs.py

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17065>

2 years agoCI: Lima farm is offline
Jesse Natalie [Thu, 16 Jun 2022 18:21:54 +0000 (11:21 -0700)]
CI: Lima farm is offline

Acked-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17087>

2 years agoci/iris: disable Blender Diorama trace (incompatible with perf. traces)
David Heidelberg [Thu, 16 Jun 2022 14:43:15 +0000 (16:43 +0200)]
ci/iris: disable Blender Diorama trace (incompatible with perf. traces)

Sadly, Blender Diorama trace causes crash for our performance tracing as we
use it right now.

Let's disable it for now, until we figure out what's wrong.

Reported in: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6676

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

2 years agovenus: add fence feedback
Yiwei Zhang [Wed, 25 May 2022 07:13:13 +0000 (07:13 +0000)]
venus: add fence feedback

- intercept to record feedback cmds for:
  - vkQueueSubmit
- add feedback code path for
  - vkGetFenceStatus
  - vkResetFences
- VN_PERF_NO_FENCE_FEEDBACK can disable fence feedback

Test: dEQP-VK.synchronization.basic.fence.*
Test: dEQP-VK.wsi.android.swapchain.render.basic*
Test: dEQP-VK.api.object_management.*
Test: dEQP-VK.api.external.fence.sync_fd.*

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: renderer to store allow_vk_wait_syncs capset
Yiwei Zhang [Tue, 31 May 2022 23:26:07 +0000 (23:26 +0000)]
venus: renderer to store allow_vk_wait_syncs capset

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: create per queue family command pool for feedback cmd
Yiwei Zhang [Wed, 25 May 2022 22:51:59 +0000 (22:51 +0000)]
venus: create per queue family command pool for feedback cmd

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: add NO_FENCE_FEEDBACK perf option and disable sparse resource
Yiwei Zhang [Tue, 24 May 2022 05:25:03 +0000 (05:25 +0000)]
venus: add NO_FENCE_FEEDBACK perf option and disable sparse resource

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: add event feedback
Yiwei Zhang [Tue, 24 May 2022 16:31:20 +0000 (16:31 +0000)]
venus: add event feedback

- add perf option VN_PERF_NO_EVENT_FEEDBACK
- intercept to record feedback cmds for:
  - vkCmdSetEvent
  - vkCmdResetEvent
- add feedback code path for
  - vkGetEventStatus
  - vkSetEvent
  - vkResetEvent

Test: dEQP-VK.synchronization.basic.event.*
Test: dEQP-VK.api.command_buffers.record_simul*

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: add feedback check/set/reset helpers
Yiwei Zhang [Mon, 23 May 2022 20:46:34 +0000 (20:46 +0000)]
venus: add feedback check/set/reset helpers

Implemented:
- vn_feedback_get_status
- vn_feedback_reset_status
- vn_feedback_set_status
- vn_feedback_get_counter
- vn_feedback_set_counter

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: add vn_feedback_pool backed by coherent buffer (part 2)
Yiwei Zhang [Fri, 20 May 2022 06:38:09 +0000 (06:38 +0000)]
venus: add vn_feedback_pool backed by coherent buffer (part 2)

Implemented:
- vn_feedback_pool_alloc
- vn_feedback_pool_free

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: add vn_feedback_pool backed by coherent buffer (part 1)
Yiwei Zhang [Thu, 19 May 2022 06:36:03 +0000 (06:36 +0000)]
venus: add vn_feedback_pool backed by coherent buffer (part 1)

Implemented:
- vn_feedback_pool_init
- vn_feedback_pool_fini

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: let device track queue families used for device creation
Yiwei Zhang [Thu, 19 May 2022 22:23:32 +0000 (22:23 +0000)]
venus: let device track queue families used for device creation

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: adjust device resources init order
Yiwei Zhang [Thu, 19 May 2022 21:54:42 +0000 (21:54 +0000)]
venus: adjust device resources init order

queue init involves fence creation, and we need to do that at the last
to prepare for other resource creation dependencies involved in fence
creation.

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: fix a missing mtx_destroy in vn_device_init
Yiwei Zhang [Thu, 19 May 2022 20:56:08 +0000 (20:56 +0000)]
venus: fix a missing mtx_destroy in vn_device_init

This was introduced in commit e08960482, however, the logic around has
been largly refactored since then. It's not worth adding the fixes tag.

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: fix the queue init failure path
Yiwei Zhang [Fri, 20 May 2022 20:47:32 +0000 (20:47 +0000)]
venus: fix the queue init failure path

The prior behavior can ignore certain failure result, and might also
clean up queues that are never initialized.

Fixes: ddd75330559 ("venus: initial support for queue/fence/semaphore")

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agovenus: fix a bug on buffer cache init failure path
Yiwei Zhang [Sat, 21 May 2022 22:28:54 +0000 (22:28 +0000)]
venus: fix a bug on buffer cache init failure path

The failure path was never hit though, and will not either.

Fixes: 65abd1d4aed ("venus: implement vn_buffer_cache_entries_create")

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16731>

2 years agodocs: update calendar and link releases notes for 22.1.2
Dylan Baker [Thu, 16 Jun 2022 16:56:33 +0000 (09:56 -0700)]
docs: update calendar and link releases notes for 22.1.2

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

2 years agodocs: add sha256sum to 22.1.2 notes
Dylan Baker [Thu, 16 Jun 2022 16:55:22 +0000 (09:55 -0700)]
docs: add sha256sum to 22.1.2 notes

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

2 years agodocs: add release notes for 22.1.2
Dylan Baker [Thu, 16 Jun 2022 16:17:14 +0000 (09:17 -0700)]
docs: add release notes for 22.1.2

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

2 years agoradv: advertise VK_EXT_border_color_swizzle on GFX10+
Samuel Pitoiset [Tue, 14 Jun 2022 08:30:54 +0000 (10:30 +0200)]
radv: advertise VK_EXT_border_color_swizzle on GFX10+

On GFX9 and older, the driver needs to swizzle itself it seems.
Exposing it on GFX10+, allows us to test it with Zink, at least.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17057>

2 years agozink: tu ci baseline update
Mike Blumenkrantz [Thu, 16 Jun 2022 12:58:01 +0000 (08:58 -0400)]
zink: tu ci baseline update

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

2 years agoanv: do not get rid of empty/useless fragment shaders
Iván Briano [Tue, 14 Jun 2022 19:57:20 +0000 (12:57 -0700)]
anv: do not get rid of empty/useless fragment shaders

This was an optimization done a while ago that doesn't seem to be having
much of an impact anymore, and on the other hand, causes all sorts of
breakage with queries, as many of our HW counters don't get incremented
when rasterization is disabled.

This fixes a bunch of issues Zink has with ANV, but more importantly, it
fixes upcoming CTS tests:
dEQP-VK.transform_feedback.primitives_generated_query.*.empty_frag.*
dEQP-VK.transform_feedback.primitives_generated_query.*.no_attachment.*
dEQP-VK.transform_feedback.primitives_generated_query.*.color_write_disable_*

Cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17038>

2 years agoturnip: copy disasm strings for pipeline executables
Danylo Piliaiev [Wed, 15 Jun 2022 14:35:39 +0000 (17:35 +0300)]
turnip: copy disasm strings for pipeline executables

A single compiled_shaders instance could be reused by several
pipelines, but strings from disasm info could be stolen only once.
So now we have to copy them.

Fixes crashes when using RenderDoc.

Fixes: 05329d7f9acabbc9306c9538a30b502d4c580d38
("tu: Implement pipeline caching with shared Vulkan cache")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17053>

2 years agoradv/ci: add vkd3d-proton testing
Samuel Pitoiset [Wed, 8 Jun 2022 10:59:38 +0000 (12:59 +0200)]
radv/ci: add vkd3d-proton testing

The vkd3d-proton can be very useful, I recently found issues while
implementing VK_EXT_primitives_generated_query and
VK_KHR_fragment_shader_barycentric.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17050>

2 years agoci: add VKD3D_PROTON_RESULTS to the list of variables to pass down for testing
Samuel Pitoiset [Thu, 9 Jun 2022 10:05:07 +0000 (12:05 +0200)]
ci: add VKD3D_PROTON_RESULTS to the list of variables to pass down for testing

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17050>

2 years agoci: print a message when vk3d-proton returns successfully
Samuel Pitoiset [Thu, 9 Jun 2022 11:37:43 +0000 (13:37 +0200)]
ci: print a message when vk3d-proton returns successfully

To detect if an error occured.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17050>

2 years agoci: update vkd3d-proton builder/runner
Samuel Pitoiset [Thu, 9 Jun 2022 11:37:33 +0000 (13:37 +0200)]
ci: update vkd3d-proton builder/runner

Do not need to cross compile just for running the testsuite. Only
RADV will make use of it anyways.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17050>

2 years agoradv/ci: refactor test machines and dEQP rules to reduce copy&paste config
Samuel Pitoiset [Tue, 14 Jun 2022 06:39:11 +0000 (08:39 +0200)]
radv/ci: refactor test machines and dEQP rules to reduce copy&paste config

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17050>

2 years agoradeonsi/vcn: support unified queue in vcn4
Ruijing Dong [Sat, 11 Jun 2022 00:21:58 +0000 (20:21 -0400)]
radeonsi/vcn: support unified queue in vcn4

 - use unified queue only in vcn4
 - implement signature and engine-info ib headers
   in vcn4
 - implemented unified queue functions

Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16911>

2 years agoradeonsi/vcn: prepare for unified queue in vcn4
Ruijing Dong [Sat, 11 Jun 2022 00:16:14 +0000 (20:16 -0400)]
radeonsi/vcn: prepare for unified queue in vcn4

  - apply unified queue ib headers to vcn4
  - re-use encoding queue as unified queue
  - define unified queue functions and structures

Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16911>

2 years agoiris: provide a callback to INTEL_MEASURE to clean up snapshots
Mark Janes [Mon, 16 May 2022 20:03:25 +0000 (13:03 -0700)]
iris: provide a callback to INTEL_MEASURE to clean up snapshots

Snapshots are processed asynchronously by INTEL_MEASURE, but snapshot
memory is allocated and associated with an iris batch.  Provide a
callback that will free snapshot memory after a batch is fully
processed.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16571>

2 years agointel: provide a callback to clean up after intel_measure_gather
Mark Janes [Mon, 16 May 2022 19:56:08 +0000 (12:56 -0700)]
intel: provide a callback to clean up after intel_measure_gather

The caller may have passed ownership of intel_measure_batch structures
to intel_measure until they are ready to be gathered.  The caller
needs a notification when rendering is complete and snapshots have
been processed, so it can free the resources that measure the batch.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16571>

2 years agoanv: fix performance bug in INTEL_MEASURE
Mark Janes [Mon, 16 May 2022 19:52:42 +0000 (12:52 -0700)]
anv: fix performance bug in INTEL_MEASURE

Re-allocating the buffer object for snapshots carries a heavy penalty
at run-time.  When resetting a command buffer, the buffer object that
is allocated for snapshots may be re-used directly on subsequent
renders.

Stale snapshot data will persist in the buffer object.  To verify that
rendering is complete, zero the final timestamp value and check that
it has been written before gathering data.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16571>

2 years agointel: relax assertion in INTEL_MEASURE
Mark Janes [Wed, 18 May 2022 18:58:43 +0000 (11:58 -0700)]
intel: relax assertion in INTEL_MEASURE

It is possible that a secondary command buffer was submitted with no
renders in it.  For that case, no timestamp will be collected.  Only
verify that timestamps if the index is nonzero.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16571>

2 years agointel: parse intel_measure environment without side effects
Mark Janes [Tue, 24 May 2022 19:16:27 +0000 (12:16 -0700)]
intel: parse intel_measure environment without side effects

If an application links agaist both iris and anv, they will clash when
parsing the INTEL_MEASURE environment variable.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16571>

2 years agovulkan/wsi: treat EBADF as missing DMA_BUF_IOCTL_{EXPORT,IMPORT}_SYNC_FILE
Jan Beich [Sat, 11 Jun 2022 06:05:17 +0000 (06:05 +0000)]
vulkan/wsi: treat EBADF as missing DMA_BUF_IOCTL_{EXPORT,IMPORT}_SYNC_FILE

FreeBSD supports DMA-BUF but not DMA_BUF_IOCTL_SYNC and similar yet.
As it returns EBADF instead of ENOTTY all consumers fail due to
VK_ERROR_OUT_OF_HOST_MEMORY.

Fixes: 30b57f10b36d ("vulkan/wsi: Signal semaphores and fences from the dma-buf")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17070>

2 years agozink: only enable vtn debugging if validation is active
Mike Blumenkrantz [Wed, 15 Jun 2022 21:09:03 +0000 (17:09 -0400)]
zink: only enable vtn debugging if validation is active

this is otherwise incredibly cumbersome and eats up minutes in ci

Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17069>

2 years agozink: always bind on the sparse queue
Mike Blumenkrantz [Fri, 10 Jun 2022 19:33:56 +0000 (15:33 -0400)]
zink: always bind on the sparse queue

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17066>

2 years agozink: detect sparse-only binding queue
Mike Blumenkrantz [Fri, 10 Jun 2022 19:32:58 +0000 (15:32 -0400)]
zink: detect sparse-only binding queue

still prefer binding on the gfx queue when available, but store a separate
sparse binding queue if necessary

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17066>

2 years agozink: add semaphore handling for sparse binds
Mike Blumenkrantz [Fri, 10 Jun 2022 19:29:11 +0000 (15:29 -0400)]
zink: add semaphore handling for sparse binds

this is a little tricky since it's possible to need a truly unreasonable
number of sparse binds in one go, so the current implementation will
daisy-chain through the sparse submits such that:
* sparse bind A creates signal semaphore X
* sparse bind B waits on X, creates signal semaphore Y
* sparse bind C waits on Y, creates signal semaphore Z

thus, any number of sparse binds will produce exactly one semaphore
that can be waited on by the following submit

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17066>

2 years agozink: add batch api for adding a wait semaphore
Mike Blumenkrantz [Fri, 10 Jun 2022 19:28:18 +0000 (15:28 -0400)]
zink: add batch api for adding a wait semaphore

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17066>

2 years agozink: use a dynarray for semaphore wait flags
Mike Blumenkrantz [Fri, 10 Jun 2022 19:27:46 +0000 (15:27 -0400)]
zink: use a dynarray for semaphore wait flags

ensure that any number of semaphore waits is handled as expected

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17066>

2 years agozink: remove thread_queue
Mike Blumenkrantz [Fri, 10 Jun 2022 18:54:55 +0000 (14:54 -0400)]
zink: remove thread_queue

I had originally intended to hook this up properly with synchronization et al,
but I didn't do it, and now it's seeming less smart anyway, so let's
remove the footgun

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17066>

2 years agotu: Save/restore *_BIN_CONTROL in 3d GMEM store path
Connor Abbott [Wed, 15 Jun 2022 16:39:33 +0000 (18:39 +0200)]
tu: Save/restore *_BIN_CONTROL in 3d GMEM store path

These are normally only set once because it's constant across the entire
renderpass, but they're trashed by the 3d store path because it needs to
store to CCU instead of GMEM. Therefore we need to save/restore them. Do
it in a way compatible with #5181.

Fixes: b157a5d ("tu: Implement non-aligned multisample GMEM STORE_OP_STORE")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17058>

2 years agotu: Add missing WFI to the 3d GMEM store path
Connor Abbott [Wed, 15 Jun 2022 14:59:39 +0000 (16:59 +0200)]
tu: Add missing WFI to the 3d GMEM store path

Similar to the 2d path.

Fixes: b157a5d ("tu: Implement non-aligned multisample GMEM STORE_OP_STORE")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17058>

2 years agotu: Fix 3d GMEM store swizzle in texture descriptor
Connor Abbott [Wed, 15 Jun 2022 14:27:49 +0000 (16:27 +0200)]
tu: Fix 3d GMEM store swizzle in texture descriptor

Even though image views for attachments must use the identity swizzle,
there are cases where we have to add in our own swizzle, in particular
for D24S8 when the view is depth-only/stencil-only. Therefore we have to
reset it to the identity, similar to what we do with input attachments.

Fixes: b157a5d ("tu: Implement non-aligned multisample GMEM STORE_OP_STORE")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17058>

2 years agoaco: update SMEM offset workaround for LLVM 15
Rhys Perry [Tue, 14 Jun 2022 19:25:24 +0000 (20:25 +0100)]
aco: update SMEM offset workaround for LLVM 15

This isn't needed since LLVM 15's b0ccf38b018.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-By: Tatsuyuki Ishi <ishitatsuyuki@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6663
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17036>

2 years agozink: use uint64_t for batch_id
Mike Blumenkrantz [Fri, 25 Mar 2022 18:00:21 +0000 (14:00 -0400)]
zink: use uint64_t for batch_id

this maps directly to the vulkan api and allows removal of timeline
wrapping code

the consequence of this is a ~0.26% reduction in drawoverhead performance
on base cases (n=1000), but the simplification and deletions seem worth it

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

2 years agod3d12: fallback to integrated adapter instead of arbitrary one
Tiago Koji Castro Shibata [Thu, 26 May 2022 04:41:27 +0000 (21:41 -0700)]
d3d12: fallback to integrated adapter instead of arbitrary one

Using the integrated adapter when none is specified uses less power by
default and doesn't break scenarios on Optimus systems (for example, on
Surface Books, detaching the screen gets prohibited because the GPU on
the performance base is in use)

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17005>

2 years agozink: anv ci updates
Mike Blumenkrantz [Wed, 15 Jun 2022 18:42:41 +0000 (14:42 -0400)]
zink: anv ci updates

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

2 years agozink: clamp renderpass layers better
Mike Blumenkrantz [Wed, 15 Jun 2022 17:00:35 +0000 (13:00 -0400)]
zink: clamp renderpass layers better

this needs to be the minimum layer, not the maximum

cc: mesa-stable

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

2 years agozink: clamp dynamic fb layers better
Mike Blumenkrantz [Wed, 15 Jun 2022 17:00:16 +0000 (13:00 -0400)]
zink: clamp dynamic fb layers better

this needs to be the minimum layer, not the maximum

Fixes: c81cd989c85 ("zink: use dynamic rendering (most of the time)")

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

2 years agozink: add a function for getting the minimum framebuffer layers
Mike Blumenkrantz [Wed, 15 Jun 2022 16:58:03 +0000 (12:58 -0400)]
zink: add a function for getting the minimum framebuffer layers

this clamps the layer count to the smallest number of layers rather
than the largest

cc: mesa-stable

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

2 years agoci/iris: Disable blender-demo-cube_diorama on APL.
Emma Anholt [Tue, 14 Jun 2022 22:21:00 +0000 (15:21 -0700)]
ci/iris: Disable blender-demo-cube_diorama on APL.

It has timed out on 3 jobs today.

Fixes: 96f0944a69dd ("ci/panfrost: add Blender, Warzone2100, Freedoom and Unvanquished traces")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17041>

2 years agofreedreno/a6xx: Support more 3-component formats
Connor Abbott [Fri, 10 Jun 2022 15:24:39 +0000 (17:24 +0200)]
freedreno/a6xx: Support more 3-component formats

These should be trivially enableable. This gets us some test coverage on
turnip because there are no tests of RGB32 texel buffers.

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

2 years agotu: Enable uniform texture buffers with NPOT formats
Connor Abbott [Fri, 10 Jun 2022 15:15:09 +0000 (17:15 +0200)]
tu: Enable uniform texture buffers with NPOT formats

This is enough for zink to expose ARB_texture_buffer_object_rgb32 and
therefore GL 4.0. We could enable sampled images with a few more
workarounds, but the blob doesn't bother and there isn't any need at the
moment.

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

2 years agodzn: Enable support for geometry shaders
Boris Brezillon [Tue, 14 Jun 2022 20:28:58 +0000 (22:28 +0200)]
dzn: Enable support for geometry shaders

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17039>

2 years agodzn: Disable rasterization if the last geometry stage doesn't write the position
Boris Brezillon [Tue, 14 Jun 2022 20:27:32 +0000 (22:27 +0200)]
dzn: Disable rasterization if the last geometry stage doesn't write the position

If we don't do that, and we get passed a dummy geometry shader (one
that has no EmitVertex() calls) we get a DXIL validation error.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17039>

2 years agomicrosoft/compiler: Support gl_Layer
Boris Brezillon [Tue, 14 Jun 2022 20:28:39 +0000 (22:28 +0200)]
microsoft/compiler: Support gl_Layer

Maps pretty nicely to SV_RenderTargetArrayIndex, so nothing complicated
here.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17039>

2 years agomicrosoft/compiler: Fix Layer type
Boris Brezillon [Tue, 14 Jun 2022 20:23:18 +0000 (22:23 +0200)]
microsoft/compiler: Fix Layer type

DXIL wants a uint, but we get passed an int.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17039>

2 years agomicrosoft/compiler: Move d3d12_fix_io_uint_type() to dxil_nir.c
Boris Brezillon [Wed, 15 Jun 2022 14:03:55 +0000 (07:03 -0700)]
microsoft/compiler: Move d3d12_fix_io_uint_type() to dxil_nir.c

We currently have two implementations of the same logic. Let's pick
the d3d12 one, move it to dxil_nir.c and let nir_to_dxil() call it
when appropriate.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17039>

2 years agod3d12: Keep access masks up-to-date when removing vars in d3d12_disable_multisampling()
Boris Brezillon [Wed, 15 Jun 2022 15:17:08 +0000 (08:17 -0700)]
d3d12: Keep access masks up-to-date when removing vars in d3d12_disable_multisampling()

Fixes: e5cf19fced6 ("d3d12: Modify shaders when MSAA is disabled")
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17039>

2 years agoutil: Fix invalid usage of alignas in u_cpu_detect.c
Mike Lothian [Tue, 14 Jun 2022 19:00:22 +0000 (20:00 +0100)]
util: Fix invalid usage of alignas in u_cpu_detect.c

This fixes the following errors when compiling Mesa with Clang 14:
../mesa-9999/src/util/u_cpu_detect.c:368:5: error: expected ';' after struct
   } alignas(16) fxarea;
    ^
    ;

This has been tested with Clang 14.0.5 and GCC 12.1

Fixes: e3bc78b8e39 ("util: use c11 alignas instead of rolling our own")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6667
Signed-off-by: Mike Lothian <mike@fireburn.co.uk>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17035>

2 years agoradeonsi/gfx11: rework GDS streamout code to single-lane and enable streamout
Marek Olšák [Thu, 2 Jun 2022 19:43:07 +0000 (15:43 -0400)]
radeonsi/gfx11: rework GDS streamout code to single-lane and enable streamout

GDS is basically scalar in gfx11.

This is not exactly how it's supposed to be done (we should be using
the GDS_STRMOUT registers), but it works.

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

2 years agoradeonsi/gfx11: add missing register shadowing code
Marek Olšák [Fri, 3 Jun 2022 21:06:57 +0000 (17:06 -0400)]
radeonsi/gfx11: add missing register shadowing code

it doesn't work yet

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