Karol Herbst
79656dbcd3
rusticl: implement cl_khr_priority_hints
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35456 >
2025-06-15 13:12:11 +02:00
Lucas Stach
1c3f238ce9
etnaviv: expose ARB_seamless_cube_map
...
While AMD_seamless_cubemap_per_texture gives more control over seamless
filtering than the base extension, the cap isn't strictly handled as a
superset, so we also need to set the cap for the context wide handling
to expose ARB_seamless_cube_map.
Makes piglit spec@amd_seamless_cubemap_per_texture go from skip to pass
as this test (correctly) also checks the presence of the base extension.
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/35527 >
2025-06-14 21:50:49 +00:00
Lucas Stach
340dc7787f
etnaviv/ci: update expection after blit fixes
...
With the blit now using the correct shadow a bunch of
blit related tests start passing.
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/35526 >
2025-06-14 21:37:06 +00:00
Lucas Stach
ede41372f4
etnaviv: use most recent shadow of resources as blit source/target
...
The frontend does not know that etnaviv may keep multiple shadows around
for a resource, so it will always pass in the base resource as blit source
and destination. For those blits to work as expected by the API we need to
work out which shadow is the most recent one and use those as blit source
and destination resources.
CC: mesa-stable
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/35526 >
2025-06-14 21:37:06 +00:00
Lucas Stach
d4780f03fc
etnaviv: use direct BLT/RS blit hook for internal copies
...
etna_copy_resource() and etna_copy_resource_box() are used to keep the
internal shadow copies of a resource up to date. They are supposed to
always use the RS or BLT engines to do the copy, never requiring any
fallbacks or fake format handling. They should also work regardless of
the current render condition state. So instead of going through the
pipe_context blit hook, directly call the RS or BLT blit hook on the
etna_context.
CC: mesa-stable
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/35526 >
2025-06-14 21:37:06 +00:00
Mary Guillemard
b5004298aa
pan/lib: Add a test for pan_compute_npot_divisor
...
This ensures proper behaviors of pan_compute_npot_divisor by using the
same algorithm as the hardware to perform the division.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35490 >
2025-06-14 17:20:10 +02:00
Mary Guillemard
0d9ac8f448
pan/lib: Rename pan_compute_magic_divisor to pan_compute_npot_divisor
...
It's not that magical those days.
This also give proper names around the codebase for exponent and
epsilon.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35490 >
2025-06-14 17:20:02 +02:00
Mary Guillemard
5743bd703d
pan/lib: Inline pan_atributes.c in pan_encoder.h
...
We are going to need those functions in indirect CL codepaths.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35490 >
2025-06-14 17:19:55 +02:00
Mary Guillemard
c1cd05771f
pan/lib: Refactor pan_padded_vertex_count
...
We are going to move everything in pan_encode.h for CL usage.
This inline the code used by pan_padded_vertex_count.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35490 >
2025-06-14 17:19:45 +02:00
Mary Guillemard
b53d98eb41
pan/lib: Rewrite npot divisor algorithm
...
It was based on reverse engineering and inaccurate.
This also get ride of fp64 usage and will allow us to use it in OpenCL C
shaders for indirect/indexed draw.
On the full 32-bit range, this fixes ~10 millions inaccurate results.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Fixes: 467ae0d39d ("panfrost: Factor out panfrost_compute_magic_divisor")
Acked-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35490 >
2025-06-14 17:19:28 +02:00
Rhys Perry
01fae0c5c2
ac/llvm: use ds_bpermute_b32 for GFX12 wave64
...
It works.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:11 +00:00
Rhys Perry
9a5073e3a4
ac/llvm: rewrite shuffle waterfall loop
...
This can't break until we have read all lanes, otherwise it might read
from an inactive lane.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:11 +00:00
Rhys Perry
2ff53fd97c
ac/llvm: convert to integer after reductions
...
These return floating point types for floating point ops.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
8609008aeb
ac/llvm: fix mul24 intrinsic overloading
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Fixes: e3edc6029b ("ac/llvm: use mul24 intrinsics")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
3c2b3fbd03
ac/llvm: fix overloading of intrinsic names
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
ac2e36b377
ac/nir: create lowered inverse_ballot
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Fixes: b49eab68a8 ("ac/nir: use s_sendmsg(HS_TESSFACTOR) to optimize writing tess factors for gfx11")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Georg Lehmann
29787911e7
vulkan: update headers/xml for 1.4.318
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35517 >
2025-06-14 08:21:31 +00:00
Olivia Lee
a7276d0010
ci: update CI contact list
...
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35521 >
2025-06-13 23:21:37 -07:00
Olivia Lee
e1856d7152
ci: document process for disabling broken farms in more detail
...
Reading the previous version of the docs, I had the impression that the
correct action when a farm is broken is to ping Daniel or Emma in
the #freedesktop channel. I learned that just creating an MR to disable
it immediately is fine, and am documenting this. The farm maintainer
table also wasn't mentioned in the docs previously.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35521 >
2025-06-13 23:21:37 -07:00
Faith Ekstrand
6a77c8e953
nvk: Add an nvk_sampler_header struct and return it by value
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35475 >
2025-06-14 03:52:34 +00:00
Faith Ekstrand
bbc6f50963
nil: Don't use Fermi bits in the Maxwell null descriptor
...
Fixes: c8d8e2249a ("nil: Add a helper for populating the null descriptor")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35475 >
2025-06-14 03:52:34 +00:00
Faith Ekstrand
40b59a5c26
nil: Rework the descriptor interface
...
This adds a new Descriptor (nil_descriptor) struct and reworks all the
methods/functions to return a Descriptor. This is less janky than all
the output pointers. It also gives us a struct type that's the right
size so we're not declaring uint32_t[8] arrays everywhere.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35475 >
2025-06-14 03:52:34 +00:00
Yiwei Zhang
12e94a91e3
zink: leave can_do_invalid_linear_modifier open for venus
...
Venus is able to force LINEAR modifier to ensure the handshake across
the legacy modifier-unaware boundaries. e.g. Xorg
Acked-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35453 >
2025-06-14 03:31:32 +00:00
Yiwei Zhang
d6bff136bd
venus: fix maint7 layered vk props query
...
We should not touch the pNext of the nested props2 struct.
Fixes: 8c6a5250ec ("venus: support VK_KHR_maintenance7")
Reviewed-by: Corentin Noël <corentin.noel@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35453 >
2025-06-14 03:31:32 +00:00
Yiwei Zhang
6781dcc565
lvp: fix wsi platform swapchain image bind
...
The prior incomplete ANB support broke it.
Fixes: 0dce939e6d ("lavapipe: Add android platform integration")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35506 >
2025-06-13 21:54:04 +00:00
Mel Henning
7d974c32ce
zink: Handle null instance in 2nd create_screen
...
If zink_internal_create_screen is called twice and the first call fails
with instance==NULL, then the second call also needs to goto fail
instead of just asserting that instance is non-null.
Fixes: 015eda4a ("zink: deduplicate VkDevice and VkInstance")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13337
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35518 >
2025-06-13 19:43:25 +00:00
Christian Gmeiner
6d8bc4c98a
etnaviv: tex_desc: Add seamless cube map support
...
Seamless cube map filtering requires setting the SEAMLESS_CUBE_MAP bit
in the texture descriptor's CONFIG1 field. Since this bit is controlled
by sampler state but stored in the texture descriptor, we need to handle
the mismatch between sampler state lifetime and descriptor immutability.
Create two texture descriptors per sampler view: one with seamless cube
map disabled and one enabled. At emission time, select the appropriate
descriptor based on the current sampler state's seamless_cube_map flag.
Passes all dEQP-GLES3.functional.texture.filtering.cube.* tests on GC7000.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35499 >
2025-06-13 19:28:57 +00:00
Olivia Lee
5fe5e3176f
panvk: advertise descriptor indexing on valhall
...
Our existing descriptor implementation already supports
update-after-bind on both bifrost and valhall, but on bifrost the some
of the descriptor limits are lower than the minimum required by the
extension.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
f90b9b3642
panvk: raise descriptor limits on valhall
...
Previously, our descriptor set limits were set based on the hardware
limits on bifrost. On valhall, the hardware descriptor table limits are
much higher. We need to advertise higher update-after-bind descriptor
limits for descriptor indexing, so might as well increase these also.
The 2^20 limit is the same as nvk and honeykrisp.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
88ac602cc2
panvk: implement shaderInputAttachmentArrayNonUniformIndexing
...
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
8e4c6990a1
panvk: implement non uniform indexing except for input attachments
...
We need to lower everything on bifrost, and everything except nonuniform
texture offsets on valhall. With texture offsets, the hardware supports
nonuniform offsets passed in a staging register, but does not support
passing nonuniform offsets as src1 in the narrow layout. We need to make
sure we check for this if we implement narrow offsetms later.
Input attachments are skipped in this commit because they need
additional changes.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
e7a439f73b
panvk: implement runtimeDescriptorArray and descriptorBindingVariableDescriptorCount
...
Runtime descriptor array doesn't require any changes, variable descriptor
count is already mostly supported and just needs handling for
maxVariableDescriptorCount.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
f725bc4475
panvk: implement shaderInputAttachmentArrayDynamicIndexing
...
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
a268412533
panvk: allow sysvals to be dynamically-indexed
...
We already do this for push constants, just extend the existing
implementation. We need to update the push_consts sysval inside the
cmd_prepare_push_uniforms loop now because indirect draws patch the
sysvals. Previously this value was only used to read push constant FAUs,
so we didn't care.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
7ca2d51cf6
panvk: advertise texel buffer dynamic indexing
...
These don't require any changes for support.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
9399258af6
panvk: move descriptor set limits to constant macros
...
This simplifies get_physical_device_properties and allows us to use the
limits elsewhere.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
e9388f3d2d
panvk: use constants from other headers in device properties
...
We were not able to use these previously because the headers require
PAN_ARCH.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
91ebeddbad
panvk: make extensions, features, and properties per-arch
...
This makes things a little more flexible for groups of fields that are
arch-dependent, and allows us to use existing per-arch constant macros
instead of open-coding their values.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
a681b4f107
panvk: fix outdated comment
...
The name of the struct that we're currently using is panvk_ssbo_addr.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
5554cca4a2
panvk: add missing include to panvk_cmd_draw.h
...
This is needed for the panvk_descriptor_state struct. All of the current
sites already included panvk_cmd_desc_state.h, so it wasn't a visible
issue.
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408 >
2025-06-13 19:02:19 +00:00
Olivia Lee
b1caa2ae86
ci: disable vmware farm
...
I am getting spurious CI failures. See:
<https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35408#note_2957802 >
Signed-off-by: Olivia Lee <olivia.lee@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35520 >
2025-06-13 18:59:26 +00:00
Lucas Stach
03c40b5aa0
etnaviv: get rid of etna_surface
...
Now that nothing calls the driver create/destroy surface hooks
anymore, we can get rid of what's left from the code.
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/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
8b1ee7adb4
etnaviv: state: stop using etna_surface
...
Use pipe_surface to fill in the color and ZS buffer states.
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/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
999dd209f5
etnaviv: blt: stop using etna_surface
...
Use pipe_surface to get the necessary information for the
various clears.
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/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
f034323c20
etnaviv: rs: stop using etna_surface
...
Use pipe_surface to get the necessary information for the
various clears.
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/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
9ee9b109ca
etnaviv: move render compatible handling from surface to resource
...
So it can be reused from different places in the driver when
etna_surface is gone.
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/35406 >
2025-06-13 18:44:37 +00:00
Lucas Stach
d479573f8e
etnaviv: return render resource from render_handle_incompatible if it exists
...
If a render resource already exists, we know that a earlier check already
determined that the resource isn't compatible with the PE requirements, so
there is no point in checking again. Simply return the render resource if
it exists.
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/35406 >
2025-06-13 18:44:36 +00:00
Lucas Stach
0acee3bfbf
etnaviv: stop caching RS clear commands on surface
...
As we want to get rid of the etna_surface, stop caching the (fast) clear
commands for the RS engine on the surface. As the pipe_surface is no
longer a CSO, we were regenerating those commands on each framebuffer
state change anyway, so the additional CPU overhead of doing this for
each clear shouldn't be too much worse.
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/35406 >
2025-06-13 18:44:36 +00:00
Lucas Stach
6111d07048
etnaviv: drop precomputed offset from etna_surface
...
As another step in the direction of getting rid of etna_surface,
plug the offset calculation into all places that need it and drop
the precomputed offset from the surface struct.
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/35406 >
2025-06-13 18:44:36 +00:00
Lucas Stach
cd58efd055
etnaviv: drop superfluous PE alignment check
...
This check and especially the XXX in the comment hasn't been valid
for a long time, as our mipmap layout and render shadow code makes
sure that all levels are properly aligned for PE usage.
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/35406 >
2025-06-13 18:44:35 +00:00