Dave Airlie
fa8bbfaa55
nouveau/winsys: add support for the vma bind interfaces
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Dave Airlie
c815ff1661
nvk: always sync internal cmd bufs for vma lifetimes.
...
We always sync on the internal push buf submissions for zero vram
and ctx setup, these shouldn't be bottlenecks.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
9d7d76cddc
nouveau/shim: Use the imported nouveau_drm.h headers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
5fd1b8e086
nvk: Use the imported nouveau_drm.h headers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
300df8e177
nouveau/winsys: Use the imported nouveau_drm.h headers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
fc1fb3a516
drm-uapi: Import nouveau_drm.h
...
From https://cgit.freedesktop.org/drm-misc/
commit e02238990b1ab2dfc8abb4c28369f1da6e863f81
Author: Danilo Krummrich <dakr@redhat.com>
Date: Fri Aug 4 20:23:43 2023 +0200
drm/nouveau: new VM_BIND uAPI interfaces
Signed-off-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
ae37fbba12
nouveau: Move shader topology info to nv_device_info
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
d8b7b1d784
nvk: Decorate CmdBegin/EndRendering entrypoints
...
These decorations are necessary for proper building on Android and
Windows. You don't notice them in regular Linux builds, though.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
40ab58035e
nvk: Implement GetRenderingAreaGranularityKHR
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
8636597c4a
nvk: Implement CmdBindIndexBuffer2KHR
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
c4b7754e7c
nvk: Use VkBufferUsageFlags2
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
98a3bc699b
nvk: Implement the maintenance5 image layout queries
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
af72961ff1
nvk: Rework memory requirements to handle aspects correctly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
733d20277c
nvk: Misc. style nits
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Dave Airlie
50e5ee586c
nvk: enable EXT_depth_clip_enable
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Dave Airlie
15d12bb615
nvk: enable EXT_depth_clip_control
...
This is already handled in the dynamic state.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
57c38a5669
nvk: Implement CopyQueryPoolResults with a compute shader
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
4a049f0d2c
nvk: Separate the MME query copy code out a bit
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
f090efa8dc
nvk: Enable the SPIR-V DeviceGroup capability
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
dadf9d59e6
nvk: Add support for variable pointers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
0241ed6025
nvk: Add a root_desc_addr to the root descriptor table
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
2e709a9278
nvk: Use nvk_root_descriptor_offset for drawInfoBase
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
0afc57afad
nvk: Rework multi-plane format features a bit
...
We need to avoid returning certain feature flags such as rendering or
storage from vkGetPhysicalDeviceFormatFeatures*() but still allow those
for single-plane views of the image which means allowing them in
vkGetPhysicalDeviceImageFormatProperties*().
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
b883031b91
nvk: Improve image format properties and limits
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Mohamed Ahmed
2b85ccacf0
nouveau/nvk: Enable VK_KHR_sampler_ycbcr
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Mohamed Ahmed
e311b24b79
nouveau/nvk: Add multiple sampler planes for CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Mohamed Ahmed
67a2d78477
nouveau/nvk: Create helper function for sampler creation
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Mohamed Ahmed
41b2034460
nouveau/nvk: Support multi-plane descriptors in nvk_nir_lower_descriptors.c
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Mohamed Ahmed
a863ddcf9e
nouveau/nvk: Add YCbCr sampler NIR lowering pass
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
fd03f4cd1a
nvk: Use the new NIL helper for image level extents for copies
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
866fc8b3f4
nil: Add a nil_image_level_extent_px() helper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Dave Airlie
113d3447bb
nvk: enable rgb32 texel buffer support
...
This is needed for zink.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Emma Anholt
758973fb62
nvk: Disable shaderStorageImageReadWithoutFormat pre-Maxwell.
...
On Kepler and earlier, image loads must get lowered based on the declared
format, since we don't have a SULDP op.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
Faith Ekstrand
1bbfdccc9f
nouveau: Drop GART size from nv_device_info
...
The kernel always returns something rediculously high, like 40 bits or
something. There's really no point in us tracking it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:07 +00:00
George Ouzounoudis
b2fa2ed04e
nouveau/codegen: Do not keep redundant info for tessellation domain
...
Just add an assert instead.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
George Ouzounoudis
94e5eb68f4
nvk: Do not keep redundant info for tessellation domain
...
This is not needed after merge_tess_info that or's the info of both the
tesc and tese shaders.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Dave Airlie
2d670169ce
nvk: fix independent color write masks.
...
This fixes:
dEQP-VK.renderpass.suballocation.attachment_write_mask.attachment_count_*
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
b844b6b66a
docs/relnotes: Stick something about NVK in new_features.txt
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
34ea8dfbdd
docs: Add NVK to features.txt
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
71f7cf8acf
docs: Add a docs page for NVK
...
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
d0192cec1e
nvk: Don't skip zero-size bindings in GetDescriptorSetLayoutSupport
...
We still need to handle them in the case of variable descriptor counts.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Dave Airlie
89bab0012a
nvk: align geometry clip setting with nvc0
...
This fixes
dEQP-VK.clipping.clip_volume.depth_clamp.point_list,Fail
dEQP-VK.clipping.clip_volume.depth_clip.point_list,Fail
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
d6e347c82d
nvk: Flush more state on VI_BINDINGS_VALID dirty
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
9345b95346
nvk: Bind 3D depth/stencil images as 2D arrays
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Dave Airlie
f0e8749e13
nvk/tess: don't emit patch control points in pipeline
...
Let the dynamic state thing emit these.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
afd6219055
vulkan/meta: Use vk_meta_get_pipeline_layout in blit/resolve
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
574d6362ca
vulkan/meta: Add a get_pipeline_layout helper
...
This helper handles the cache lookup and constructs a pipeline layout
and a descriptor set layout, as needed, all in one go. This saves a bit
of boilerplate in the various meta functions.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
f65fdfcca8
Revert "vulkan: Allow scissors or viewports to be set without counts"
...
This reverts commit b551f26a0caad52de620222e2df8416e80332943.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Faith Ekstrand
9b2e7aab52
nvk: Use the new core vk_sampler struct
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00
Karol Herbst
1524906f73
nvk: enable fp helper invocations loads on more gens
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326 >
2023-08-04 21:32:06 +00:00