Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Move is_storage_image_format to nvk_format.c
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nil: Add a helper for filling out buffer TIC entries
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Implement samplers
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Re-format nvk_sampler.c
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Teture pool sizes are maximums not sizes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nil: Fix image array layer alignments
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nil: Refactor TIC image extent setup
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nil: Don't minify image dimensions when setting up TIC
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nil: Drop miptail support for now
We don't have any idea how they work or even which TIC bits have to do
with them. Better off just leave them alone for now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Mon, 20 Jun 2022 06:56:43 +0000 (16:56 +1000)]
nouveau/classes: add 906f header support.
This needed some tweaks to the generator script
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Drop vk_sync BO refs after push_submit
Otherwise, all syncs are cumulative and, if the same command buffer is
submitted multiple times, it will sync on the union of all syncs it's
ever seen.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Fri, 17 Jun 2022 04:02:14 +0000 (14:02 +1000)]
nouveau/ws: add a push reset just for references.
This is to be used with the empty submission pushbuf.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Fri, 17 Jun 2022 04:02:51 +0000 (14:02 +1000)]
nvk: fix empty cmd submission.
The sync obj stuff does a second queue submit with just signals
and no command buffers. Make sure things get sent to the kernel
so sync works.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Support compressed images in copy commands
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Add a more competent GetPhysicalDeviceImageFormatProperties
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Rework format features queries
Split the buffer and image portions into vk_buffer_view.c and vk_image.c
respectively. This way they're a lot closer to each other. Put the
main combined helper in nvk_format.c since it's a format thing. Also,
restructure things a bit based on ANV to make the code look nicer.
Also, implement VK_KHR_format_feature_flags2 while we're here.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:50 +0000 (20:11 -0600)]
nvk: Reset and properly clean up command buffer upload areas
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Thu, 3 Aug 2023 21:10:59 +0000 (16:10 -0500)]
nvk: Implement VkGetImageSubresourceLyout
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Re-indent image entrypoints
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Convert to using NIL for image layout
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Manually offset for array layers in copy/blit
The more I start at the hardware the more convinced I become that arrays
and 3D are not the same thing. I'm sure they're similar enough in
certain circumstances but they don't appear to be in the way they're
treated in the 2D hardware, especially when miplevels are involved.
Instead of trying to use the 2D engine's depth/slice logic, offset
manually. We have to emit a copy command for each slice anyway so
making the GPU do those calculations doesn't really gain us anything.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
Revert "nvk: Stop returning VK_ERROR_FORMAT_NOT_SUPPORTED for non-blitable"
This reverts commit
74ad75f2624c50f732db35946a127eb11edee3e5.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Move Fill/UpdateBuffer to nvk_cmd_copy
Even if they technically use blit-like HW commands, they're much more a
copy operation than a blit since there's no scaling going on.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Align arguments consistently in copy/blit code
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Use helpers for push_ref
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Add an nvk_get_format helper
This makes the array size internal to nvk_format.c so we don't have to
keep it in sync when we add extra elements. Also, there's no reason why
we need to be hand-rolling that loop all the time.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Thu, 3 Aug 2023 20:47:20 +0000 (15:47 -0500)]
nil: Add a nil_view and code to fill out TIC entries
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nil: Add the TIC format table from nouveau
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nil: Create images
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nouveau: Add stubs for an image layout library called NIL
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Karol Herbst [Wed, 15 Jun 2022 21:37:36 +0000 (23:37 +0200)]
nouveau/ws: initial debugging options for command submissions
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Karol Herbst [Thu, 16 Jun 2022 15:24:31 +0000 (17:24 +0200)]
nouveau/headers: Generate parser functions
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Karol Herbst [Wed, 15 Jun 2022 11:22:08 +0000 (13:22 +0200)]
nvk/blit: assert that formats are supported
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Karol Herbst [Tue, 14 Jun 2022 23:44:42 +0000 (01:44 +0200)]
nouveau/ws: assert on broken channel
no point in continuing
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Karol Herbst [Tue, 14 Jun 2022 23:23:17 +0000 (01:23 +0200)]
nouveau/ws: make sure we don't submit nonsense
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Rework descriptor writes
In particular, this makes us only touch the descriptor UBO memory as a
memcpy destination unless we're doing a descriptor copy. This should be
much better for mapped GPU memory than the read-modify-write required by
our previous implementation of image descriptor writes with their 12:20
configuration.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Reserve a null image descriptor
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: GART os host-cache-coherent
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Make texture descriptors a bit more acceptable to codegen
Codegen assumes that it gets a combined descriptor on both the texture
and sampler handle sources and that it's 64-bit. It's not too hard to
just give it that in NIR. We may make codegen a bit more flexible in
future but, for now, this gets things working. While we're here, do a
quick optimization for combined texture+sampler descriptors because it's
easy.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Add a stub implementation of buffer views
We don't actually populate the TIC entries yet but we can at least
pretend and stick them in descriptor sets.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Re-format nvk_buffer.c a bit
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Re-format nvk_image_view.h a bit
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Unify descriptor loading in lower_descriptors
The code we were using for images/textures was broken since it didn't
track with the change to always use root descriptors.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Set b->cursor when lowering image intrinsics
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Fill out TIC table entries for image views
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Add an image descriptor table to the device
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk/image_view: Reformat and fix Create/DestroyImageView
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:49 +0000 (20:11 -0600)]
nvk: Copy in the nouveau TIC format table
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Add a descriptor table data structure
This will be used for image and sampler descriptors
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Mark nvk_push_descriptor_set_ref() inline
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Allow R32_UINT
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Stop returning VK_ERROR_FORMAT_NOT_SUPPORTED for non-blitable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Faith Ekstrand [Tue, 31 Jan 2023 02:11:48 +0000 (20:11 -0600)]
nvk: Drop image_view_init
It's unused. Drop for now. If we want it for meta later, we can add it
then.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Tue, 14 Jun 2022 00:27:57 +0000 (10:27 +1000)]
nvk: add basic nve4+ compute support.
This can do most basic compute execution, except indirect
computeheadless demo runs, and some CTS tests pass.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Fri, 10 Jun 2022 04:29:59 +0000 (14:29 +1000)]
nvk: add some compute limits
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Fri, 10 Jun 2022 04:29:43 +0000 (14:29 +1000)]
nvk: add some basic format wrapping framework
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Thu, 2 Jun 2022 04:46:40 +0000 (14:46 +1000)]
nouveau/winsys: Add m2mf/compute objects
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Mon, 6 Jun 2022 03:53:17 +0000 (13:53 +1000)]
nvk: add command stream upload buffer.
This is an upload buffer that is kept beside the command buffer.
It can be used to allocate any per command buffer gpu state that
doesn't fit in the cmd stream.
compute dispatches will go in here for now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Mon, 6 Jun 2022 03:57:59 +0000 (13:57 +1000)]
nvk: add record result to cmd_buffer.
This keeps track of recording errors so end command buffer
can report them
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Mon, 13 Jun 2022 23:14:05 +0000 (09:14 +1000)]
nvk: add support for preamble and tls allocation.
This adds support for per-queue allocations that are reallocated
upwards if the submitted cmd needs more space.
This is used to implement the tls allocations for compute.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
Dave Airlie [Mon, 6 Jun 2022 03:39:05 +0000 (13:39 +1000)]
nvk: retrieve gpc/mp counts from kernel.
These are needed to size the tls area.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>