Commit graph

218799 commits

Author SHA1 Message Date
Frank Binns
cded3f213b pvr/ci: update fails to remove two tests that have started passing
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Frank Binns
929fc82b2f pvr: remove asserts in pvr_get_image_subresource_layout()
These asserts were there to validate this bit of the Vulkan spec:

   VUID-vkGetImageSubresourceLayout-mipLevel-01716
   The mipLevel member of pSubresource must be less than the mipLevels specified in image

   VUID-vkGetImageSubresourceLayout-arrayLayer-01717
   The arrayLayer member of pSubresource must be less than the arrayLayers specified in
   image

However, this function isn't just called via vkGetImageSubresourceLayout(), but
from elsewhere in the driver. At least in the case of arrayLayer, the assert
doesn't always hold true, for example, in the case of deferred RTA clears on a
2D array image view of a 3D image.

The array layer assert was being hit by the following test cases:
dEQP-VK.renderpass.remaining_array_layers.multi_layer_fb.*
dEQP-VK.renderpass2.remaining_array_layers.multi_layer_fb.*

As the asserts don't really add any value, rather than moving them into
pvr_GetImageSubresourceLayout(), just drop them entirely.

Fixes: ae29e1cf76 ("pvr: drop pvr_assert macro")
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Luigi Santivetti
7a6d3c2815 Revert "pvr: Fixup for deqp-vk.api 2d.optimal.* conformance"
The change being reverted relaxes the check for what formats
can be used for sampling and rendering beyond driver capabilities.

Revert it in order to mitigated regressions in nightly CI.
A follow up change will be needed for handling
dEQP-VK.api.info.image_format_properties.2d.optimal.*.

This reverts commit 58c7437d3a.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Luigi Santivetti
35a3cb8e2a pvr: stop using samples to determine what src and dst formats
The code was missing a number of special cases for the TQ.

For blits, there is a whole set of conditions that need accounting
for setting the input and output transfer queue surface formats.
When resolving DS, special flags need to be set according to src
and dst format, but this is only one case. Rework this whole logic.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Acked-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Luigi Santivetti
099ab34977 pvr: drop redundant check on VK_FORMAT_X8_D24_UNORM_PACK32
vk_format_has_stencil() returns false for VK_FORMAT_X8_D24_UNORM_PACK32.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Luigi Santivetti
9f5cc58919 pvr: allow pvr_get_copy_format to handle ycbcr formats
Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Simon Perretta
9a25926bf3 pvr: set transfer flags based on derived formats
The src and dst formats can get modified while setting up the transfer;
ensure the transfer flags and the transfer op are set based on the final
derived formats.

Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Luigi Santivetti
c489e0f45e pvr: fixup for wrong conflict resolution in rebase
Caused by a bad rebase in !39654 on top of ycbcr change fa6704a523.

Fixes: 6a65b5dd4d ("pvr: fix src/dst image formats for DS resolve ops")
Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Luigi Santivetti
339a838b46 pvr: fix ds merge logic for blit image to image
Fixes: 407e692c3 ("pvr: fix logic for setting DSMERGE and PICKD")
Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39916>
2026-02-18 13:45:39 +00:00
Christian Gmeiner
3df3b97acb etnaviv: blt: Fix clear_bits overflow for 32-bit formats
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
For formats with 32-bit channels (R32F, R32I, R32UI, etc.), the
expression (1 << channel_size) - 1 is undefined behavior in C when
channel_size is 32, as shifting a 32-bit integer by 32 bits overflows.
On most platforms this produces mask=0, resulting in BLT.CLEAR_BITS=0x0
which tells the hardware to write no pixel data during clear operations.

Use 1ull to perform the shift in 64-bit, correctly producing 0xFFFFFFFF
for 32-bit channels.

Fixes dEQP-GLES3.functional.fbo.blit.default_framebuffer.r32f_nearest_out_of_bounds_blit_from_default

Fixes: c156da579c ("etnaviv: blt: Enable masked clear for color and stencil")
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Daniel Lang <dalang@gmx.at>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39949>
2026-02-18 11:59:45 +00:00
Rhys Perry
dfad15df0b nir/load_store_vectorize: don't update last_entry after a barrier
fossil-db (navi31):
Totals from 2 (0.00% of 84369) affected shaders:
Instrs: 7738 -> 7740 (+0.03%)
Latency: 333207 -> 333239 (+0.01%)
InvThroughput: 33320 -> 33324 (+0.01%)
VClause: 382 -> 384 (+0.52%)
VMEM: 656 -> 658 (+0.30%)

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Fixes: 4ca7ee7bd7 ("nir/opt_load_store_vectorize: Allow to vectorize at most one entry of each type across blocks")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14825
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39849>
2026-02-18 10:09:14 +00:00
Rhys Perry
b203329e0d nir/load_store_vectorize: more carefully add entries from loop preheader
This would fix both stores 'b' and 'c' from being vectorized:
a = load(0)
loop {
   b = load(0)
   if (break)
   store(0)
}
c = load(0)

fossil-db (navi31):
Totals from 8 (0.01% of 84369) affected shaders:
Instrs: 12035 -> 12066 (+0.26%)
CodeSize: 63016 -> 63208 (+0.30%)
Latency: 176091 -> 177013 (+0.52%)
InvThroughput: 43894 -> 43981 (+0.20%)
SClause: 194 -> 196 (+1.03%)
Copies: 803 -> 812 (+1.12%)
VALU: 7666 -> 7675 (+0.12%)
SALU: 1102 -> 1105 (+0.27%)

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Fixes: 4ca7ee7bd7 ("nir/opt_load_store_vectorize: Allow to vectorize at most one entry of each type across blocks")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14825
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39849>
2026-02-18 10:09:14 +00:00
Eric Engestrom
1ad7db762b nvk+zink/ci: update fails & flakes for nightly jobs
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39955>
2026-02-18 09:54:23 +00:00
Christian Gmeiner
3602b6154e etnaviv: Validate MSAA sample count for depth/stencil formats
Move MSAA sample count validation into a gpu_supports_msaa() helper
and call it early in etna_screen_is_format_supported(). Previously,
the MSAA checks were only done for render targets inside
gpu_supports_render_format(), so depth/stencil formats with
unsupported sample counts were incorrectly reported as supported.

Fixes dEQP-GLES3.functional.fbo.msaa.2_samples.depth24_stencil8

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Daniel Lang <dalang@gmx.at>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39946>
2026-02-18 09:35:01 +00:00
Pavel Ondračka
2b76f2e4a7 mesa: implement FRAMEBUFFER_RENDERABLE internalformat query
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Erik Faye-Lund <erik-faye-lund@collabora.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39896>
2026-02-18 09:05:13 +00:00
Konstantin Seurer
ae84d41d48 radv/meta: Rework saving/restoring state
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The current approach of explicitly saving/restoring some states is
unnecessarily complicated and inefficient. For example, some meta OPs
that use memory fills/copies will have nested save/restores. This patch
is the first step towards avoiding unnecessary state re-emits around
meta OPs.

The changes are:
- Move radv_meta_saved_state to radv_cmd_buffer::state
- Add radv_meta_begin/end helpers that initialize radv_meta_saved_state
and restore states used by the meta OP
- Remove all explicit saves/restores, use the new helpers

radv_meta_begin/end is called inside the entrypoint and not some nested
helper function which means that state is only restored once per meta
OP.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39774>
2026-02-18 09:37:55 +01:00
Konstantin Seurer
d3cb2978b8 radv/meta: Add and use helpers for setting state
It's less code and allows the next commit to track which states a meta
command uses.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39774>
2026-02-18 09:37:30 +01:00
Samuel Pitoiset
090b67a163 vulkan/runtime: add support for ETC2 emulation with copy_memory_indirect
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39908>
2026-02-18 07:04:43 +00:00
Samuel Pitoiset
b6f292e146 vulkan/runtime: add a separate function to build ETC2 decode core shader
This will allow us to re-use it for indirect.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39908>
2026-02-18 07:04:43 +00:00
Priya Hosur
0bfad39f15 ac/nir/ngg: re-enable use of known compile-time GS connectivity
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38075>
2026-02-18 01:29:37 +00:00
Ryan Houdek
3b3485efa6 freedreno/fdl: Fix compiling with GCC and AVX2
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Clang is more lenient around casting same size vectors between the
different AVX types, GCC on the other hand is not. Add appropriate
casting between the different register typings to make GCC happy.

No functional change.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14876
Fixes: b554e4c727c90b88a542b86989f6664537658f85
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39951>
2026-02-17 23:07:56 +00:00
Daniel Lang
1bb72f7c72 etanviv: hwdb: Import gc_feature_database from eYs3D
This commit imports the gc_feature_database.h from https://github.com/eYs3D/eCV5546_linux/blob/master/drivers/media/platform/eys3d/vip9000/v6.4.18.5/hal/kernel/inc/gc_feature_database.h

git commit: 016c73a49f98c35c509415d7feee59ef95364f6c

Signed-off-by: Daniel Lang <dalang@gmx.at>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39760>
2026-02-17 22:43:32 +00:00
Daniel Lang
8eccbc1e8b etnaviv: hwdb: Import gc_feature_database from D-Robotics
This commit imports the gc_feature_database.h from https://github.com/D-Robotics/x5-kernel/blob/main/drivers/misc/verisilicon/gc8000l/hal/kernel/inc/gc_feature_database.h

git commit: a9938390654c9815b4c9c66eb39e39454d8f3e99

Signed-off-by: Daniel Lang <dalang@gmx.at>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39760>
2026-02-17 22:43:32 +00:00
Daniel Lang
609bbcc195 etnaviv: hwdb: Import gc_feature_database from Amlogic
This commit imports the gc_feature_database.h from https://github.com/khadas/npu-nanoq/blob/yocto-kirkstone-202406-smarthome/hal/kernel/inc/gc_feature_database.h

git commit: cf5e22a676c580b4582b1f49d86fb91641e834ae

Signed-off-by: Daniel Lang <dalang@gmx.at>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39760>
2026-02-17 22:43:31 +00:00
Adam Jackson
527b642800 venus: advertise VK_KHR_shader_fma
v2: move feat and ext to KHR group instead of core group

v3: update docs

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39945>
2026-02-17 21:11:18 +00:00
Yiwei Zhang
5d141e6e09 venus: sync latest protocol for VK_KHR_shader_fma
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39945>
2026-02-17 21:11:18 +00:00
Jianxun Zhang
df7d333656 anv: Limit modifier disabling workaround to specific GTK versions
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The issue caused us to put a switch to disable (Xe2) drm modifers
in 2418c91537 is fixed in GTK 4.20.3,
so we can enable the modifiers with this and newer GTK releases.

GTK https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/9164:
b2a42d5a6e Revert "vulkan: Wait for device to be idle before
           create/recreating swapchain"
270735a151 vulkan: Rework swapchain present implementation

The hex values represent the GTK version range: [4.0.0, 4.20.2] for
VK_MAKE_VERSION(), refer to:
f493f5c88d

Cc: mesa-stable
Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39223>
2026-02-17 20:13:09 +00:00
Danylo Piliaiev
656ca73b94 tu/a7xx: Fix D/S corruption when loading them via load_3d_blit
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
With TU_DEBUG=gmem,3d_load seen at least in: "Industria" and "NieR Replicant"
TU_DEBUG=noconcurrentresolves also prevent the issue.

We have to wait until all CP_EVENT_WRITE::BLIT are completed,
otherwise writing to depth image as color confuses HW.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39236>
2026-02-17 19:50:24 +00:00
Daniel Stone
b8eb0f88d3 vulkan/wsi/wayland: Correctly map 24bpp format types
VK_FORMAT_{R8G8B8,B8G8R8}_{UNORM,SRGB} describe a 3-component, 8bpc,
24bpp, format. This is mapped to that type for Android, and implemented
as such by panvk. radv maps these to 4-component/32bpp formats, but only
support these formats for buffers rather than images. The outlier is
ANV, which relies on the 24->32bpp mapping to happen.

The Wayland WSI was mapping this to the 32bpp R8G8B8A8/B8G8R8A8 formats
instead. This would cause a failure to import the dmabuf into the
compositor on panvk, as it would send a buffer which was too small. (Or,
if it did import: garbage.)

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39552>
2026-02-17 19:25:19 +00:00
Wei Hao
ec6d077351 radeonsi: fix threaded shader compilation finishing after context is destroyed
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32538>
2026-02-17 18:55:17 +00:00
Zan Dobersek
9da2ebf09c freedreno/common: set up a830 properties
Adjust or fill out various properties for the a830 GPU, setting up a gen1
base. So far these mostly mirror the gen2 properties, except for gmem
config layouts, and they will probably further diverge down the line.

A new GPU ID for a830 is also added, Turnip there runs on top of KGSL.

Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39874>
2026-02-17 18:16:19 +00:00
Zan Dobersek
8151212293 freedreno/common: make a8xx magic regs common between all such devices
With a8xx a lot of chicken bit and other device-specific magic register
handling has moved into the kernel, which leaves a list of register writes
that could be more commonly shared between all a8xx devices.

Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39874>
2026-02-17 18:16:19 +00:00
Daniel Stone
860c54d0a0 ci/panvk: Skip DRM WSI tests for v10/ASan
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
They're broken differently here to G52, and leak all over the place.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39943>
2026-02-17 17:52:08 +00:00
Alyssa Rosenzweig
fc3951cfde util/bitset: add an assert for big BITSET_EXTRACT
This just bit me. Add an assert to catch the next person who doesn't
read the function signature and tries to extract 64-bits out and wonders
why things are silently broken.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39892>
2026-02-17 16:17:59 +00:00
Alyssa Rosenzweig
f55e87db93 nir: add missing ssbo atomics to nir_get_io_index_src_number
Match other SSBO intrinsics and other atomics.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39895>
2026-02-17 15:42:36 +00:00
David Headrick
29f5be58e9 dozen: Resolve Seg Fault in dzn_physical_device_create
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
dzn_physical_device_create runs dzn_wsi_init which allocates and initilizes wsi_interfaces.
If the wsi initlizalization fails, the wsi_interfaces are cleaned up and freed (wsi_common.c:330-> wsi_device_finish).
Once the failure propogates up, dzn_physical_device_create runs dzn_physical_device_destroy.
Then, dzn_wsi_finish frees the wsi_interfaces again.

Above path led to a Segmentation Fault on my system when running:
dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail.basic

This change removes dzn_wsi_finish call if dzn_wsi_init fails, avoiding
a "double free"

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39928>
2026-02-17 15:19:37 +00:00
Marek Olšák
9dd92aa5db radeonsi: replace null descriptors with memset
This code didn't do anything.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39841>
2026-02-17 14:47:41 +00:00
Marek Olšák
4b3e5a69f3 radeonsi: remove the CP DMA workaround for sparse for GFX6-9
We always use a compute shader in this case.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39841>
2026-02-17 14:47:41 +00:00
Marek Olšák
a2309edb6b ac/nir/meta: properly align sparse buffer clears with 12-byte clear values
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39841>
2026-02-17 14:47:41 +00:00
Marek Olšák
62cce3abcd ac/nir/meta: use the clear/copy compute shader if CP DMA doesn't support sparse
ac_prepare_cs_clear_copy_buffer determines whether to use CP DMA, and
the driver obeys that.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39841>
2026-02-17 14:47:41 +00:00
Marek Olšák
bbcfab9f4f ac/nir/meta: don't scalarize sparse loads if the address is aligned to load size
This should make copying sparse faster if we get aligned buffer bounds.

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39841>
2026-02-17 14:47:41 +00:00
Marek Olšák
38829bc373 radeonsi: don't fail a CB_RESOLVE assertion on gfx11
CB_RESOLVE doesn't exist on gfx11.

Fixes: 1a105e1b1f - radeonsi: remove CB_RESOLVE

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39921>
2026-02-17 13:54:13 +00:00
Daniel Schürmann
d66de1bb49 glsl_to_nir: emit loop continue construct
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39777>
2026-02-17 13:15:36 +00:00
Paulo Zanoni
143370f1a7 anv: extract anv_get_color_format_features()
This commit extracts the third and final variant of function
anv_get_image_format_features2(). It is still a 296-line function, but
that is already significantly smaller than the 444-line behemoth that
anv_get_image_format_features2() was at the start of this patch
series.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39840>
2026-02-17 11:49:47 +00:00
Paulo Zanoni
1e0f6feb40 anv: extract 2 subvariants of anv_get_image_format_features2()
Function anv_get_image_format_features2() has 3 clear subvariants that
take paths independent of each other: one for compressed_emulated
formats, another for depth/stencil formats, and a third one for color
formats. Extract the 2 first subvariatns to their own sub-functions.
We'll extract the color variant in the next commit in order to make
the diff easier to review.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39840>
2026-02-17 11:49:47 +00:00
Paulo Zanoni
3946bb6b84 anv: extract anv_color_format_supports_drm_modifier_tiling()
A 76-line chunk of code just to decide if the format is supported,
let's move it to its own function.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39840>
2026-02-17 11:49:47 +00:00
Paulo Zanoni
f160d8db91 anv: unify blit_cts_workaround handling
This makes the code easier to read.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39840>
2026-02-17 11:49:46 +00:00
Paulo Zanoni
5fbaef795a anv: don't pass vk_format to anv_get_image_format_features2()
It's redundant information, as it's already part of struct anv_format.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39840>
2026-02-17 11:49:46 +00:00
Paulo Zanoni
3f3e0a4774 anv: anv_get_image_format_features2() can be static
No callers outside anv_formats.c.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39840>
2026-02-17 11:49:45 +00:00
Samuel Pitoiset
95c4d8d726 radv/meta: rework get_image_stride_for_96bit() and make it non-static
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39909>
2026-02-17 10:39:01 +00:00