Commit graph

203039 commits

Author SHA1 Message Date
Aditya Swarup
1bb79e7e69 anv: Report address binding events for VkDescriptorPool
Report bind/unbind events for address binding report extension
during VkDescriptorPool creation/destruction.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37422>
2026-02-27 01:36:43 +00:00
Aditya Swarup
f0d46cc91d anv: Report address binding events for VkQueryPool
Report bind/unbind events for address binding report extension
during VkQueryPool creation/destruction.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37422>
2026-02-27 01:36:43 +00:00
Aditya Swarup
145eb76cb4 anv: Add BO helper macros for binding report extension
Macros that help extract anv address from BO info to use with
vk_address_binding_report().

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37422>
2026-02-27 01:36:43 +00:00
Aditya Swarup
b769311305 anv: Report address binding events for images
Report bind/unbind events for address binding report extension
during image creation/destruction.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37422>
2026-02-27 01:36:43 +00:00
Aditya Swarup
1fd887a8bc anv: Report address binding events for memory buffers
Report bind/unbind events with address binding report extension
for memory buffers.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37422>
2026-02-27 01:36:43 +00:00
Aditya Swarup
fe46a2ae9b anv: Add helper macros for address binding report extension
These macros provide support for reporting device address binding
info for VK_EXT_device_address_binding_report.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37422>
2026-02-27 01:36:42 +00:00
Rob Clark
2253afbc94 ir3: Lower 8b usub_sat
This shows up in CL CTS.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40130>
2026-02-27 01:08:12 +00:00
Valentine Burley
89c6db217c turnip/ci: Remove a618-vk-full job
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The pre-merge job now runs with fraction=1, and we can move the extra
test sets there.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39920>
2026-02-26 20:55:43 +00:00
Valentine Burley
7afd3b61ef turnip/ci: Skip more slow tests
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39920>
2026-02-26 20:55:43 +00:00
Valentine Burley
aa682376dd turnip/ci: Promote a618-vk-asan to pre-merge
Thanks to the new sc7180 runner, a few pre-merge slots are now free on
kingoftown.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39920>
2026-02-26 20:55:43 +00:00
Valentine Burley
8573a27447 turnip/ci: Move a618-vk job to new sc7180 runner
Add a new sc7180-trogdor-wormdingler-rev1-boe device type and move the
a618-vk job to it.

We'll have 12 boards, so we can increase parallelism and run fraction=1.
Update job settings and add one new expected fail, and skip a few
redundant tests in force-gmem mode.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39920>
2026-02-26 20:55:43 +00:00
Connor Abbott
ae8928b638 ir3: Fix constlen trimming when more than one stage is trimmed
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The logic is supposed to find the stage with the maximum constlen to
trim for each time we have to trim a stage. But by not resetting
max_constlen each time, we would "trim" the same stage repeatedly,
leaving us thinking the total is below the limit when it actually isn't.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40127>
2026-02-26 20:20:04 +00:00
Connor Abbott
68c0031f56 tu: Use HW offset 0 in 3d loads/clears with FDM
The HW uses ViewportIndex to select which GRAS_BIN_FOVEAT offset to use.
For normal 3d draws, either the ViewportIndex equals the view/layer or
we make the offset the same for all viewports/layers, but we aren't
aware of this in the 3d path and we always use viewport 0.

Use the HW offset 0 when subtracting the HW offset. This is a bit of a
hack, but it should work. This fixes LOAD_OP_LOAD with FDM.

Fixes: b34b089ca1 ("tu: Use GRAS bin offset registers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39976>
2026-02-26 19:53:31 +00:00
Caio Oliveira
df4042371f anv: Set PIPELINE_SELECT systolic mode based on shader usage
For Gfx125 workloads that use systolic mode, this might mean
an extra PIPELINE_SELECT when flipping between a compute shader
that use the mode and another that doesn't use the mode
(or vice-versa).

Reviewed-by: Iván Briano <ivan.briano@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40014>
2026-02-26 19:05:56 +00:00
Caio Oliveira
3debca7dc6 anv: Enable cooperativeMatrixPerElementOperations
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39904>
2026-02-26 18:45:20 +00:00
Caio Oliveira
ffc3219d57 brw: Add lowering for nir_cmat_call_op_per_element_op
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39904>
2026-02-26 18:45:20 +00:00
Lionel Landwerlin
095c470d25 anv: add missing handling for attachment locations in secondaries
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fixes:
  dEQP-VK.renderpasses.dynamic_rendering.partial_secondary_cmd_buff.local_read.interaction_with_shader_object
  dEQP-VK.renderpasses.dynamic_rendering.partial_secondary_cmd_buff.local_read.remap_single_attachment_shader_object

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: d2f7b6d5 ("anv: implement VK_KHR_dynamic_rendering_local_read")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40036>
2026-02-26 20:26:58 +02:00
Danylo Piliaiev
ab1d9cd929 tu: Add lrzWriteDisableReason to render_pass tracepoint
Useful to debug performance issues.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40122>
2026-02-26 17:53:28 +00:00
Jan Alexander Steffens (heftig)
8720bea4cb kk: Fix debug printf specifier
On i686-pc-linux-gnu, `offset` is larger than a long.

Signed-off-by: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
Reviewed-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40106>
2026-02-26 17:37:28 +00:00
Loïc Molinari
16c9cc9d08 panfrost: Fix -Wunused-but-set-variable warnings using ASSERTED
Signed-off-by: Loïc Molinari <loic.molinari@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39994>
2026-02-26 17:09:34 +00:00
Loïc Molinari
51c953cea0 panfrost: Fix -Wunused-variable warnings using ASSERTED
Signed-off-by: Loïc Molinari <loic.molinari@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39994>
2026-02-26 17:09:33 +00:00
Loïc Molinari
862d621002 panfrost: Fix -Wunused-variable warning on arch > 7
Signed-off-by: Loïc Molinari <loic.molinari@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39994>
2026-02-26 17:09:33 +00:00
Connor Abbott
8628523f0f tu: Fix condition for re-emitting FDM-related state
Even when FDM isn't enabled, we can still emit patchpoints and duplicate
the viewport per-view or per-layer because the pipeline may include
VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT.
Before 25202d3e47 ("tu: Remove fdm argument from tu6_emit_tile_select")
we just silently skipped applying those patchpoints, but now we actually
apply them which means we need to re-emit viewport and scissor for
subsequent render passes.

Fixes: 25202d3e47 ("tu: Remove fdm argument from tu6_emit_tile_select")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39965>
2026-02-26 16:45:13 +00:00
Lionel Landwerlin
f69c26fb06 anv: fix dynamic buffes again
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
There were 2 issues in the commit being fixed :

  1. loading from the wrong surface state
  2. not being able to have the optimization passes cleanup the
     nir_vector_extract()

We fix the first issue by reusing the nir_vector_extract() pattern in
the broken places.

We fix the second issue by reworking the internal vec4 format we use
for passing around descriptor information. In particular we put the
set in its own component so that it can be easily optimized and the
vector extraction constant folded.

Fixes: e94cb92cb0 ("anv: use internal surface state on Gfx12.5+ to access descriptor buffers")
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40076>
2026-02-26 16:14:45 +00:00
Rhys Perry
070a741855 radv: don't cache esgs_ring_size/gsvs_ring_size
These are calculated using ac_gpu_info::max_se.

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/39992>
2026-02-26 15:49:15 +00:00
Rhys Perry
7c66adf97e ac/llvm: pass ac_cu_info to ac_llvm_context_init
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/39992>
2026-02-26 15:49:15 +00:00
Rhys Perry
43603f9b1d amd: add ac_cu_info::local_invocation_ids_packed
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/39992>
2026-02-26 15:49:15 +00:00
Rhys Perry
5963eff1a2 amd: add ac_cu_info::has_vrs_frag_pos_z_bug
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/39992>
2026-02-26 15:49:14 +00:00
Rhys Perry
29f8237d30 amd: move various flags to ac_cu_info
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/39992>
2026-02-26 15:49:14 +00:00
Rhys Perry
567967350e ac/gpu_info: remove padding from ac_cu_info
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/39992>
2026-02-26 15:49:13 +00:00
Rhys Perry
c99345bd5a ac/gpu_info: fix outdated comment
This doesn't seem to be compiled into mesh/task shaders anymore.

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/39992>
2026-02-26 15:49:13 +00:00
Rhys Perry
78b3e07bed ac/nir: remove ac_nir_lower_ps_late_options::family
This is unused.

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/39992>
2026-02-26 15:49:12 +00:00
Rhys Perry
6d31054d86 ac/nir: remove gfx_level parameter from ac_nir_lower_indirect_derefs
This was unused.

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/39992>
2026-02-26 15:49:12 +00:00
Rhys Perry
724f65f96c radv: remove radv_physical_device::max_shared_size
lds_size_per_workgroup is the same thing.

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/39992>
2026-02-26 15:49:11 +00:00
Rhys Perry
8017478074 radv: fix size of reserved in radv_physical_device_cache_key
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/39992>
2026-02-26 15:49:11 +00:00
Luigi Santivetti
640bc3bc53 zink: fix format conversion logic for the alpha emulation case
cc: mesa-stable

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Fixes: 252bff0f ("zink: use real A8_UNORM when possible")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40118>
2026-02-26 15:22:42 +00:00
Georg Lehmann
6b464785b9 nir/opt_algebraic: optimize d3d9 iand(a, inot(b))
Foz-DB GFX1201:
Totals from 24 (0.02% of 112525) affected shaders:
Instrs: 15598 -> 15426 (-1.10%); split: -1.17%, +0.06%
CodeSize: 88716 -> 88260 (-0.51%); split: -0.98%, +0.46%
Latency: 54419 -> 53965 (-0.83%); split: -0.91%, +0.08%
InvThroughput: 10294 -> 10166 (-1.24%); split: -1.28%, +0.04%
VClause: 302 -> 300 (-0.66%)
SClause: 367 -> 363 (-1.09%); split: -1.63%, +0.54%
Copies: 712 -> 705 (-0.98%); split: -3.09%, +2.11%
PreSGPRs: 1402 -> 1424 (+1.57%); split: -0.14%, +1.71%
PreVGPRs: 850 -> 848 (-0.24%)
VALU: 9730 -> 9591 (-1.43%)
SALU: 1579 -> 1649 (+4.43%)

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40104>
2026-02-26 14:44:01 +00:00
Georg Lehmann
a3f9c347bf nir/opt_algebraic: optimize b2f(a) - 1.0 to -b2f(a)
Foz-DB GFX1201:
Totals from 81 (0.07% of 112525) affected shaders:
Instrs: 95048 -> 94965 (-0.09%); split: -0.13%, +0.05%
CodeSize: 532148 -> 531864 (-0.05%); split: -0.09%, +0.04%
SpillSGPRs: 122 -> 125 (+2.46%)
Latency: 440372 -> 440402 (+0.01%); split: -0.02%, +0.03%
InvThroughput: 296078 -> 296173 (+0.03%); split: -0.03%, +0.06%
VClause: 1449 -> 1456 (+0.48%); split: -0.21%, +0.69%
SClause: 2249 -> 2256 (+0.31%); split: -0.09%, +0.40%
Copies: 3956 -> 3965 (+0.23%); split: -0.10%, +0.33%
PreVGPRs: 2900 -> 2899 (-0.03%)
VALU: 61212 -> 61098 (-0.19%); split: -0.19%, +0.01%
SALU: 6970 -> 6981 (+0.16%)

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40104>
2026-02-26 14:44:01 +00:00
Georg Lehmann
5b974a922a nir: print all fp_math_ctrl bits
Examples:
div 32    %338 = ffma %89, %328.z, %335 // exact, preserve:sz,inf,nan
con 32    %28 = fmul %17.y, %27 (2.000000) // preserve:sz,inf,nan

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40093>
2026-02-26 14:14:26 +00:00
Luigi Santivetti
5e614215ff pvr/ci: update bxs flakes to add one ycbcr test
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This test has been reported failing by Mesa CI at 8f4de30d.
However it was seen passing and randomly failing in manual
testing, so mark it as a flake.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Acked-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/40117>
2026-02-26 13:58:55 +00:00
Lars-Ivar Hesselberg Simonsen
9cea0fd973 pan: Move buffer functions to pan_buffer
These don't really fit in pan_texture anymore, so move them to a
separate pan_buffer-file.

Acked-by: Eric R. Smith <eric.smith@collabora.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39294>
2026-02-26 13:27:12 +00:00
Lars-Ivar Hesselberg Simonsen
448354e792 pan: Drop ASTC support for v5 texel buffers building
The function pan_emit_bview_surface_with_stride is only used by
pan_buffer_texture_emit, which cannot use ASTC compressed formats
(already disabled in the format list).

As well as dropping this functionality, also inline the static function
in its only caller.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39294>
2026-02-26 13:27:12 +00:00
Christian Gmeiner
5e61368d3b etnaviv: Enable single-triangle blitter mode
Vivante hardware exhibits floating-point interpolation inconsistencies
at the diagonal seam when the blitter uses a two-triangle quad for scaled
NEAREST blits. Enable the single-triangle blitter mode to match the
proprietary driver's approach of using one oversized triangle
clipped by scissor.

Fixes dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_*
Fixes dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_*

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39973>
2026-02-26 12:18:05 +00:00
Christian Gmeiner
ec41afc7aa u_blitter: Add single-triangle draw mode for NEAREST blit consistency
When the blitter draws a textured quad using two triangles, the
interpolation at the diagonal seam between triangles can produce
slightly different texture coordinates for the same pixel position.
For NEAREST filtering this causes inconsistent texel selection at the
seam boundary, failing dEQP-GLES3 nearest_consistency_* tests.

V3D already works around a similar issue by reordering triangle indices
(use_index_buffer), but Vivante GPUs requires a stronger fix: drawing a
single oversized triangle and relying on scissor to clip to the actual
destination rectangle. This matches the approach used by Vivante's
proprietary driver.

Add a new use_single_triangle flag to blitter_context that drivers can
opt-in.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39973>
2026-02-26 12:18:05 +00:00
Benjamin Cheng
39839af4e1 radv/video: Disable qp map for h265 on vcn1
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Quantization maps cannot work with cu_qp_delta_enabled = 1, and VCN1 is
unlikely to ever support it.

See 1dda9d56cb ("radv/video: Disable rate control modes for H265 encode on VCN1")
for additional details.

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40052>
2026-02-26 11:54:13 +00:00
Faith Ekstrand
01ba87a7fc panvk: Relax ms2ss afbc disablement
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39324>
2026-02-26 11:15:31 +00:00
Christoph Pillmayer
05326726a9 panvk: Don't create MS2SS views for internal views
We never use MS2SS from meta.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39324>
2026-02-26 11:15:31 +00:00
Faith Ekstrand
c015759629 pan/fb: Force pre-frame shaders to ALWAYS for clean tiles
If we set clean_tile_enable but don't also force-enable pre-frame
shaders, we have a problem.

Fixes: 6a56d35705 ("pan/fb: Fill out our own descriptors")
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39324>
2026-02-26 11:15:31 +00:00
Faith Ekstrand
0c4f2aba51 pan/fb: Set clean_tile_write for mismatched superblock/tile sizes
Originally, I thought I could get away with not doing this because we
were sizing up the framebuffer boundary to include the superblocks.
However, that's not actually good enough because it's not just about
when we do a clear.  It's actually required for AFBC writes to work
properly with small tiles.

Fixes: 6a56d35705 ("pan/fb: Fill out our own descriptors")
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39324>
2026-02-26 11:15:31 +00:00
Faith Ekstrand
2fcee05abf pan/fb: Figure out clean tile enables up-front
Fixes: 6a56d35705 ("pan/fb: Fill out our own descriptors")
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39324>
2026-02-26 11:15:30 +00:00