Alyssa Rosenzweig
caa0854da8
nir: plumb load_global_bounded
...
this lets the backend implement bounded loads (i.e. robust SSBOs) in a way
that's more clever than a full branch. similar idea to
load_global_constant_bound which should eventually be merged into this.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Job Noorman <job@noorman.info >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35720 >
2025-06-26 16:41:53 +00:00
Dave Airlie
37e71a5cb2
radv/video: add support for AV1 encoding
...
Co-authored-by: Charlie Turner <cturner@igalia.com >
Co-authored-by: Benjamin Cheng <benjamin.cheng@amd.com >
Co-authored-by: David Rosca <david.rosca@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
Dave Airlie
724655bfc6
vulkan/video: add support for AV1 encoding to runtime
...
Co-authored-by: Charlie Turner <cturner@igalia.com >
Co-authored-by: Benjamin Cheng <benjamin.cheng@amd.com >
Co-authored-by: David Rosca <david.rosca@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
David Rosca
ac935c18b2
vulkan/video: Add bit depth to session and session params
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
Dave Airlie
ee9ec055d9
radv/video: move session defines to header as encode needs more.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32440 >
2025-06-26 15:41:01 +00:00
Dylan Baker
dd45e25dc3
meson: update b_sanitize check for Meson >= 1.8
...
In Meson 1.8 the b_sanitize option was changed from an enumerated set of
known sanitizers to an array of options to test with `-fsanitize`, this
means that the thread sanitizer could be used in conjunction with one
or more other sanitizers and we need to account for this. Use
`.contains()` to check if `thread` is in the sanitizer list
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35747 >
2025-06-26 14:59:27 +00:00
Mike Blumenkrantz
5cfaa6cd5f
zink: use smaller keys for surface/bufferview caching and switch to sets
...
this should be a bit more efficient
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
9ac256645e
zink: use samplerview obj to check buffer rebinds in non-db path
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
c88cc5d135
zink: unify bvci creation
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
3517ad1432
zink: remove redundant pipe_resource param from zink surface funcs
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
5cf6cb1c6d
zink: enforce pipe_surface::texture matching the resource in zink_get_surface()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
ef3f798957
zink: prune zink_surface down to the imageview and create/fetch on demand
...
this eliminates all pipe_surface allocations
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
309710c260
zink: various trivial struct access changes
...
ideally no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b8108d0e7a
zink: use temp struct for implicit feedback loop detection
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
9197de066c
zink: add layer info to bindless descriptor
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
daa07aba98
zink: directly return import2d resource
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
ed325d9309
zink: directly use imageview format for image descriptors for depth clamping
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
21fbe0f893
zink: track whether fb has swapchain bound on context
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
defc3dfa79
zink: use a better check for current fb zsbuf in zink_clear_depth_stencil()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
76e2b61a2f
zink: delete/simplify some bindless descriptor resource accesss
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
8805afd291
zink: delete zink_surface::ivci
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
a9c928954e
zink: allocate keys for surface cache to stop using zink_surface::ivci
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b3c02d2bca
zink: store/use fb attachment formats directly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b177136c56
zink: tweak zink_create_transient_surface to stop using zink_surface::ivci
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
35cd9f663b
zink: break out fb ivci init
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
25441082d9
zink: big resource view rework
...
* move/unify the cache onto zink_resource_object to streamline rebinds
* delete refcounts from surfaces and bufferviews
* only delete surfaces and bufferviews when owner object is destroyed
* cache swapchain surfaces onto the swapchain image
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
8eb5f272f2
zink: remove some usage of zink_surface::ivci
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
b030b20d72
zink: unify some z24 sampler clamping code
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
74cf4f4efc
zink: remove random format check in surface create
...
not sure why this was here
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
efcd6c11d9
zink: delete some redundant flagging of ctx->rp_changed
...
this already happens during unbind
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
635f0c5f4f
zink: delete transient attachments instead of leaking them
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
07cc25d968
zink: always directly create surfaces
...
no need to defer this anymore
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
a7bfa37c6a
zink: unify zink_resource_object_init_mutable() calling
...
this all goes through surface creation the same way
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
2ac0f97921
zink: delete surface handling of blockTexelViewCompatibleMultipleLayers
...
this is a pipe cap now
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
e7a2268ca2
zink: simplify code surrounding prep_fb_attachment()
...
there's no need to pass a surface here since no part
of the surface is actually used besides the resource
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
9a1f5e82ee
zink: clean up null surface case in prep_fb_attachment()
...
this is already checking for non-null surface in the caller,
and usage must be set after swapchain acquire to handle barriers
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
78cd7f17af
zink: move zink_prep_fb_attachment up and make static
...
no longer used externally
also move update_res_sampler_layouts() as a dependency
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
0f58227324
zink: remove pipe_resource ref from bufferviews
...
this was only ever needed for shader images and bindless, which both
now take their own refs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
3da0853867
zink: make pipe_resource refs for image views more consistent
...
now they always get a ref on bind and lose the ref on unbind
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
6658533ad5
zink: add a pipe_resource ref to bindless descriptors
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
f385b87963
zink: delete zink_surface::usage_info
...
not needed, just regenerated on creation
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
37bb3af312
zink: remove resource param from apply_view_usage_for_format()
...
not actually needed
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
a4d4fee9d3
zink: delete zink_surface::hash
...
this is barely used
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Mike Blumenkrantz
0a2c395394
zink: require nullDescriptor feature
...
this simplifies a huge amount of code and enables a lot of refactoring
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35722 >
2025-06-26 10:10:28 -04:00
Valentine Burley
bac51d2931
virtio/ci: Add nightly Android Venus jobs on Intel TGL and ADL
...
Introduce nightly Cuttlefish jobs on Intel Tiger Lake and Alder Lake.
Like `android-angle-venus-anv-cml`, these jobs run dEQP with the Android
guest using Venus + ANGLE, and the host using the ANV Vulkan driver.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Valentine Burley
bf98db1c45
virtio/ci: Split android-angle-venus-anv into reusable template
...
Move shared variables and configuration for the android-angle-venus-anv
job into a new template so that it can be reused by other jobs.
This follows the structure used everywhere else.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Valentine Burley
32264e7a00
virtio/ci: Increase timeout for AHB tests
...
Some of the tests occasionally time out on Tiger Lake.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Valentine Burley
e2ac66efdd
ci: Uprev kernel to enable Multi-Gen LRU
...
Update the kernel to enable CONFIG_LRU_GEN.
This is the only change from the previous kernel build.
Mutli-gen LRU improves how Linux handles high memory pressure, which
allows Cuttlefish to boot on devices with limited RAM.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35737 >
2025-06-26 12:51:54 +00:00
Lucas Stach
29eb30c747
etnaviv/ci: drop fails due to ignored stencil valuemask
...
Now that the workaround for stencil valuemask 0 is gone on more
recent cores, we can drop the failures that were caused by this
workaround.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35704 >
2025-06-26 12:17:06 +00:00
Lucas Stach
41b08a2040
etnaviv: allow 0 back stencil valuemask on new cores
...
Older cores have a hardware bug where the stencil test misbehaves when
the valuemask is 0 in the back stencil. The workaround is to effectively
switch to single sided stencil and hope for the best. This seems to be
okay for most actual use-cases and tests, as a 0 valuemask is quite rare.
However, as 0 is a valid value for the mask the workaround breaks some
edge cases. Newer cores don't seem to require the workaround and operate
correctly with all stencil valuemasks, so drop the workaround for them.
I don't know which feature bit tells us about the bugfix. I made an
educated guess by checking behavior on multiple GPUs: GC880r5106 and
GC2000r5108 need the workaround, GC3000r5450, GC7000r6204 and GC600r4653
work fine without it. By comparing the set BugFixes feature bits between
the cores and the fact that BugFixes15 already fixes some PE issues, I
think this one is the most likely candidate.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de >
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35704 >
2025-06-26 12:17:06 +00:00