platform/upstream/mesa.git
14 months agonouveau/vk: add support for compute classes to generator.
Dave Airlie [Fri, 10 Jun 2022 21:07:32 +0000 (07:07 +1000)]
nouveau/vk: add support for compute classes to generator.

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

14 months agonvk: tiling prep work for VK_EXT_image_2d_view_of_3d
Karol Herbst [Mon, 13 Jun 2022 15:25:18 +0000 (17:25 +0200)]
nvk: tiling prep work for VK_EXT_image_2d_view_of_3d

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

14 months agonvk: support array blits over multiple layers
Karol Herbst [Fri, 10 Jun 2022 23:59:29 +0000 (01:59 +0200)]
nvk: support array blits over multiple layers

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

14 months agonvk: support multiple miplevels
Karol Herbst [Fri, 10 Jun 2022 20:48:45 +0000 (22:48 +0200)]
nvk: support multiple miplevels

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

14 months agonvk: Lower load_global_constant_offset
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Lower load_global_constant_offset

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

14 months agonvk: Re-arrange nir_lower_explicit_io a bit
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Re-arrange nir_lower_explicit_io a bit

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

14 months agonvk: Fetch descriptor set addresses from the root table
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Fetch descriptor set addresses from the root table

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

14 months agonvk: Add a root descriptor table
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Add a root descriptor table

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

14 months agonvk: Basic descriptor binding
Dave Airlie [Fri, 10 Jun 2022 21:13:36 +0000 (16:13 -0500)]
nvk: Basic descriptor binding

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

14 months agonvk: Rework whitespace in nvk_cmd_buffer.c
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Rework whitespace in nvk_cmd_buffer.c

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

14 months agonvk: Move nvk_cmd_pool cast definitions
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Move nvk_cmd_pool cast definitions

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

14 months agonvk: Add a couple descriptor set address helpers
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Add a couple descriptor set address helpers

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

14 months agonvk: Reformat nvk_nir_lower_descriptors
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Reformat nvk_nir_lower_descriptors

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

14 months agonvk: Re-arrange nvk_descriptor_set.h a bit
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Re-arrange nvk_descriptor_set.h a bit

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

14 months agonvk: reduce pitch even further in CmdFillBuffer
Karol Herbst [Sat, 11 Jun 2022 13:07:10 +0000 (15:07 +0200)]
nvk: reduce pitch even further in CmdFillBuffer

otherwise the coords would overflow hw limits.

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

14 months agonouveau/ws: handle 0inc inside nvk_push_val as well
Karol Herbst [Sat, 11 Jun 2022 12:48:45 +0000 (14:48 +0200)]
nouveau/ws: handle 0inc inside nvk_push_val as well

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

14 months agonvk: implicitly reset the command buffer
Karol Herbst [Sat, 11 Jun 2022 12:16:26 +0000 (14:16 +0200)]
nvk: implicitly reset the command buffer

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

14 months agonvk: Add a skeleton for pipelines
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Add a skeleton for pipelines

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

14 months agonvk: Initial wiring in of the compiler
Dave Airlie [Fri, 10 Jun 2022 18:34:15 +0000 (13:34 -0500)]
nvk: Initial wiring in of the compiler

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

14 months agonvk: Add an nvk_device_physical helper
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Add an nvk_device_physical helper

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

14 months agonvk: link in codegen without gallium bits.
Dave Airlie [Fri, 10 Jun 2022 20:17:31 +0000 (06:17 +1000)]
nvk: link in codegen without gallium bits.

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

14 months agonvk: advertise VK_KHR_copy_commands2
Karol Herbst [Fri, 10 Jun 2022 18:11:44 +0000 (20:11 +0200)]
nvk: advertise VK_KHR_copy_commands2

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

14 months agonvk: implement CmdCopyBuffer2
Karol Herbst [Fri, 10 Jun 2022 18:11:13 +0000 (20:11 +0200)]
nvk: implement CmdCopyBuffer2

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

14 months agonvk: implement CmdUpdateBuffer
Karol Herbst [Thu, 9 Jun 2022 20:52:52 +0000 (22:52 +0200)]
nvk: implement CmdUpdateBuffer

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

14 months agonvk: implement CmdFillBuffer
Karol Herbst [Thu, 9 Jun 2022 20:52:39 +0000 (22:52 +0200)]
nvk: implement CmdFillBuffer

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

14 months agonvk: optimize blit command buffer gen
Karol Herbst [Fri, 10 Jun 2022 14:03:52 +0000 (16:03 +0200)]
nvk: optimize blit command buffer gen

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

14 months agonouveau/ws: drop the old push generators.
Dave Airlie [Fri, 10 Jun 2022 03:42:25 +0000 (13:42 +1000)]
nouveau/ws: drop the old push generators.

leave drf.h as it's need for the compute qmd stuff.

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

14 months agonvk: port the blit and copy code to new command submission.
Dave Airlie [Fri, 10 Jun 2022 03:39:49 +0000 (13:39 +1000)]
nvk: port the blit and copy code to new command submission.

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

14 months agonvk: move to new command stream generator.
Dave Airlie [Thu, 9 Jun 2022 20:51:16 +0000 (06:51 +1000)]
nvk: move to new command stream generator.

This auto generates macros/inlines/structs from the nvidia
class headers using a python for noobs script

v2: use argparse.

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

14 months agonvk/copy: Use nvk_image_base_address()
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk/copy: Use nvk_image_base_address()

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

14 months agonvk/image: Add image address helpers
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk/image: Add image address helpers

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

14 months agonvk/copy: Use nvk_buffer_address in CmdCopyBuffer
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk/copy: Use nvk_buffer_address in CmdCopyBuffer

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

14 months agonvk/buffer: Add a push_buffer_ref helper
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk/buffer: Add a push_buffer_ref helper

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

14 months agonvk/buffer: Take an offset in nvk_buffer_address
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk/buffer: Take an offset in nvk_buffer_address

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

14 months agonvk: report maxMipLevels as 1
Karol Herbst [Thu, 9 Jun 2022 18:18:44 +0000 (20:18 +0200)]
nvk: report maxMipLevels as 1

the CTS uses that value in some places

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

14 months agonvk: add support for blits
Karol Herbst [Wed, 8 Jun 2022 02:26:48 +0000 (04:26 +0200)]
nvk: add support for blits

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

14 months agonvk: simple format table
Karol Herbst [Tue, 7 Jun 2022 17:11:00 +0000 (19:11 +0200)]
nvk: simple format table

this is enough to run the image copy and blit tests on a couple of formats

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

14 months agonvk: add basic support for images
Karol Herbst [Mon, 6 Jun 2022 01:26:54 +0000 (03:26 +0200)]
nvk: add basic support for images

enough to get basic operations working

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

14 months agonvk: use fermi class definitions
Karol Herbst [Mon, 6 Jun 2022 16:25:02 +0000 (18:25 +0200)]
nvk: use fermi class definitions

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

14 months agonouveau/ws: bind 2D class
Karol Herbst [Tue, 7 Jun 2022 17:53:58 +0000 (19:53 +0200)]
nouveau/ws: bind 2D class

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

14 months agonouveau/ws: set GPU object class
Karol Herbst [Tue, 7 Jun 2022 00:41:16 +0000 (02:41 +0200)]
nouveau/ws: set GPU object class

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

14 months agonouveau/ws: PUSH_IMMD only works with 16 bit values
Karol Herbst [Tue, 7 Jun 2022 00:54:20 +0000 (02:54 +0200)]
nouveau/ws: PUSH_IMMD only works with 16 bit values

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

14 months agonvk: Re-format descriptor sets some more
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Re-format descriptor sets some more

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

14 months agonvk: Re-format pipeline layouts
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Re-format pipeline layouts

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

14 months agonvk: Re-format descriptor set layouts
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Re-format descriptor set layouts

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

14 months agonvk: descriptor set freeing fix
Dave Airlie [Mon, 6 Jun 2022 05:11:30 +0000 (15:11 +1000)]
nvk: descriptor set freeing fix

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

14 months agonvk: implement buffer address.
Dave Airlie [Thu, 2 Jun 2022 05:29:14 +0000 (15:29 +1000)]
nvk: implement buffer address.

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

14 months agonvk: add descriptor set bo allocation.
Dave Airlie [Mon, 6 Jun 2022 03:27:21 +0000 (13:27 +1000)]
nvk: add descriptor set bo allocation.

This allocates the backing bo for the pool, and allocates the
sets from it.

This is mostly ported from radv.

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

14 months agonvk: Expose nvk_descriptor_stride_align_for_type
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Expose nvk_descriptor_stride_align_for_type

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

14 months agonvk: some boilerplate for descriptor sets
Dave Airlie [Mon, 30 May 2022 05:32:43 +0000 (15:32 +1000)]
nvk: some boilerplate for descriptor sets

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

14 months agonvk: add initial descriptor pool framework.
Dave Airlie [Sat, 28 May 2022 01:55:30 +0000 (11:55 +1000)]
nvk: add initial descriptor pool framework.

destruct has internal impl for create to call on errors later.

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

14 months agonvk: reindent descriptor sets to mesa std.
Dave Airlie [Mon, 6 Jun 2022 03:12:09 +0000 (13:12 +1000)]
nvk: reindent descriptor sets to mesa std.

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

14 months agonvk: Implement vkUpdateDescriptorSets
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Implement vkUpdateDescriptorSets

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

14 months agonvk: Add initial descriptor set lowering
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Add initial descriptor set lowering

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

14 months agonvk: Implement VkPipelineLayout
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Implement VkPipelineLayout

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

14 months agonvk: Implement VkDescriptorSetLayout
Faith Ekstrand [Tue, 31 Jan 2023 02:11:47 +0000 (20:11 -0600)]
nvk: Implement VkDescriptorSetLayout

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

14 months agonvk: Reset pushbufs on command buffer reset
Dave Airlie [Thu, 2 Jun 2022 06:36:08 +0000 (16:36 +1000)]
nvk: Reset pushbufs on command buffer reset

Karol: also reset on VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>

14 months agonouveau/ws: fix setting push bo domains
Karol Herbst [Fri, 3 Jun 2022 02:12:06 +0000 (04:12 +0200)]
nouveau/ws: fix setting push bo domains

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

14 months agonvk: impl nvk_CmdCopyBuffer
Karol Herbst [Wed, 1 Jun 2022 11:12:29 +0000 (13:12 +0200)]
nvk: impl nvk_CmdCopyBuffer

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

14 months agonvk: add nvk_CmdPipelineBarrier2 stub
Karol Herbst [Tue, 31 May 2022 23:09:44 +0000 (01:09 +0200)]
nvk: add nvk_CmdPipelineBarrier2 stub

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

14 months agonvk: add nvk_bo_sync
Karol Herbst [Tue, 31 May 2022 23:04:42 +0000 (01:04 +0200)]
nvk: add nvk_bo_sync

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

14 months agonvk: add cmd buffer framework
Dave Airlie [Tue, 31 May 2022 00:35:42 +0000 (10:35 +1000)]
nvk: add cmd buffer framework

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

14 months agonvk: allocate a GPU context for each VkDevice
Karol Herbst [Wed, 1 Jun 2022 20:14:41 +0000 (22:14 +0200)]
nvk: allocate a GPU context for each VkDevice

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

14 months agonvk: Add initial queue
Dave Airlie [Mon, 30 May 2022 23:36:42 +0000 (09:36 +1000)]
nvk: Add initial queue

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

14 months agonovueau/bo: add nouveau_ws_bo_wait
Karol Herbst [Tue, 31 May 2022 23:04:08 +0000 (01:04 +0200)]
novueau/bo: add nouveau_ws_bo_wait

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

14 months agonovueau/bo: refcount it
Karol Herbst [Tue, 31 May 2022 23:03:57 +0000 (01:03 +0200)]
novueau/bo: refcount it

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

14 months agonouveau/ws: add a cmd buffer
Karol Herbst [Wed, 1 Jun 2022 09:32:44 +0000 (11:32 +0200)]
nouveau/ws: add a cmd buffer

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

14 months agonouveau/ws: add context support
Karol Herbst [Wed, 1 Jun 2022 20:16:56 +0000 (22:16 +0200)]
nouveau/ws: add context support

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

14 months agonouveau/headers: add host classes
Karol Herbst [Wed, 1 Jun 2022 11:09:09 +0000 (13:09 +0200)]
nouveau/headers: add host classes

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

14 months agonouveau/headers: typedef Nv void types
Karol Herbst [Wed, 1 Jun 2022 11:15:30 +0000 (13:15 +0200)]
nouveau/headers: typedef Nv void types

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

14 months agonouveau/headers: add nvtypes.h
Karol Herbst [Tue, 31 May 2022 16:55:03 +0000 (18:55 +0200)]
nouveau/headers: add nvtypes.h

Nvidia does provide an nvtypes.h file within their open-gpu-kernel-modules,
but that one is painful to port over to userspace.

Just provide the defines we will need instead.

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>

14 months agonvk: add bind buffer memory
Dave Airlie [Sat, 28 May 2022 22:14:51 +0000 (08:14 +1000)]
nvk: add bind buffer memory

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

14 months agonvk: fix header guards to be less generic.
Dave Airlie [Fri, 27 May 2022 23:15:48 +0000 (09:15 +1000)]
nvk: fix header guards to be less generic.

You could imagine want to use these defines for something
that isn't header guards, so just make the headers guards
more explicit.

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

14 months agonvk: add some initial wsi framework.
Dave Airlie [Fri, 27 May 2022 22:56:54 +0000 (08:56 +1000)]
nvk: add some initial wsi framework.

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

14 months agonvk: add missing finish calls
Dave Airlie [Fri, 27 May 2022 22:50:37 +0000 (08:50 +1000)]
nvk: add missing finish calls

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

14 months agonvk: add basic device memory support
Karol Herbst [Fri, 20 May 2022 13:27:09 +0000 (15:27 +0200)]
nvk: add basic device memory support

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

14 months agonouveau/ws: add bo API
Karol Herbst [Fri, 20 May 2022 13:26:47 +0000 (15:26 +0200)]
nouveau/ws: add bo API

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

14 months agonvk: set nonCoherentAtomSize as the CTS divides with this value
Karol Herbst [Fri, 20 May 2022 13:25:21 +0000 (15:25 +0200)]
nvk: set nonCoherentAtomSize as the CTS divides with this value

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

14 months agonouveau/ws: add a field for the SM version
Karol Herbst [Fri, 20 May 2022 13:23:47 +0000 (15:23 +0200)]
nouveau/ws: add a field for the SM version

This is very useful when looking up capabitilites in Nvidia CUDA docs

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

14 months agonouveau/ws: dup the fd
Karol Herbst [Fri, 20 May 2022 13:22:58 +0000 (15:22 +0200)]
nouveau/ws: dup the fd

We do the same in gallium

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

14 months agonouveau/ws: reorganize a little
Karol Herbst [Fri, 20 May 2022 13:20:55 +0000 (15:20 +0200)]
nouveau/ws: reorganize a little

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

14 months agonvk: advertize memory heaps and types
Karol Herbst [Thu, 19 May 2022 18:29:27 +0000 (20:29 +0200)]
nvk: advertize memory heaps and types

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

14 months agonvk: implement GetPhysicalDeviceQueueFamilyProperties2 to make the CTS happy
Karol Herbst [Thu, 19 May 2022 15:43:29 +0000 (17:43 +0200)]
nvk: implement GetPhysicalDeviceQueueFamilyProperties2 to make the CTS happy

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

14 months agonouveau/headers: initial sync of headers
Karol Herbst [Thu, 19 May 2022 12:43:56 +0000 (14:43 +0200)]
nouveau/headers: initial sync of headers

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

14 months agonouveau/headers: add script to sync in-tree headers with open-gpu-doc
Karol Herbst [Thu, 19 May 2022 12:33:40 +0000 (14:33 +0200)]
nouveau/headers: add script to sync in-tree headers with open-gpu-doc

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

14 months agonvk: fix nvk_buffer include guards
Karol Herbst [Thu, 19 May 2022 20:18:40 +0000 (22:18 +0200)]
nvk: fix nvk_buffer include guards

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

14 months agonvk: Add a stub implementation of VkBuffer
Faith Ekstrand [Tue, 31 Jan 2023 02:11:46 +0000 (20:11 -0600)]
nvk: Add a stub implementation of VkBuffer

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

14 months agonvk: Add stub implementation of VkSampler
Faith Ekstrand [Tue, 31 Jan 2023 02:11:46 +0000 (20:11 -0600)]
nvk: Add stub implementation of VkSampler

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

14 months agonvk: Add stub implementations of VkImage and VkImageView
Faith Ekstrand [Tue, 31 Jan 2023 02:11:46 +0000 (20:11 -0600)]
nvk: Add stub implementations of VkImage and VkImageView

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

14 months agonvk: Implement EnumerateInstanceVersion
Faith Ekstrand [Tue, 31 Jan 2023 02:11:46 +0000 (20:11 -0600)]
nvk: Implement EnumerateInstanceVersion

This is required for future Vulkan versions.  The common code also calls
it for validating Vulkan versions.  May as well implement it now.

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

14 months agonvk: use winsys lib
Karol Herbst [Thu, 19 May 2022 00:48:16 +0000 (02:48 +0200)]
nvk: use winsys lib

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

14 months agonouveau/winsys: add the new winsys implementation
Karol Herbst [Tue, 17 May 2022 22:01:47 +0000 (00:01 +0200)]
nouveau/winsys: add the new winsys implementation

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

14 months agonvk: add vulkan skeleton
Karol Herbst [Mon, 16 May 2022 20:39:44 +0000 (22:39 +0200)]
nvk: add vulkan skeleton

This is enough to run vulkaninfo without crashing.

Jason:
* Drop a redundant nvk_device_entrypoints
* Add some VKAPI_ATTR and VKAPI_CALL
* nvk: Move EnumerateInstanceExtensionProperties to the top
  This way things are more-or-less in initialization order.  First the
  version then extensions then create the instance.

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

14 months agor600/sfn: Use clause local registers in RA
Gert Wollny [Fri, 4 Aug 2023 07:23:35 +0000 (09:23 +0200)]
r600/sfn: Use clause local registers in RA

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24480>

14 months agor600/sfn: Track whether a register is ALU clause local
Gert Wollny [Mon, 10 Oct 2022 15:44:08 +0000 (17:44 +0200)]
r600/sfn: Track whether a register is ALU clause local

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24480>

14 months agor600/sfn: Renumber shader blocks in scheduler
Gert Wollny [Thu, 27 Jul 2023 12:43:44 +0000 (14:43 +0200)]
r600/sfn: Renumber shader blocks in scheduler

Consistent block numbering is required for identifying registers
that are used clause-locally.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24480>

14 months agoradv/ci: skip some mesh shader tests on GFX1100
Rhys Perry [Fri, 4 Aug 2023 11:33:15 +0000 (12:33 +0100)]
radv/ci: skip some mesh shader tests on GFX1100

This lets me do a GFX11 CTS run without RADV_DEBUG=nocompute.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24499>

14 months agozink/ci: set the default timeout for zink jobs to 30min instead of 1h
Eric Engestrom [Fri, 4 Aug 2023 14:48:40 +0000 (15:48 +0100)]
zink/ci: set the default timeout for zink jobs to 30min instead of 1h

Except zink-anv-tgl which takes a lot more, and keeps the 1h timeout
(for now, future changes might improve this).

Suggested-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24500>

14 months agoegl/dri2: Add a couple of missing mutex release in error path
Sylvain Munaut [Thu, 3 Aug 2023 20:18:36 +0000 (22:18 +0200)]
egl/dri2: Add a couple of missing mutex release in error path

This is causing a hang in the intel compute runtime when
trying to cl/gl share an unsupported texture format.

Fixes: f1efe037dfd82d95b025 ("egl/dri2: Add display lock")

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24487>

14 months agoclang-format: Set ColumnLimit to 78
Faith Ekstrand [Tue, 1 Aug 2023 15:24:24 +0000 (10:24 -0500)]
clang-format: Set ColumnLimit to 78

This matches the tree-wide .editorconfig.

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