Commit graph

67625 commits

Author SHA1 Message Date
Lars-Ivar Hesselberg Simonsen
12f69d26dc panfrost: Standardize naming of sampler reswizzle
This aligns the functions for reswizzling the sampler with the
equivalent functionality in texture for easier grepping.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32515>
2024-12-09 12:09:31 +01:00
Lars-Ivar Hesselberg Simonsen
3a187036f0 panfrost: Decouple reswizzling from texture build
Move the decision on whether to enable AFBC reswizzle in the texture
descriptor from the shared function to the upper layers, as that allows
each API flexibility in when to apply it.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32515>
2024-12-09 12:09:28 +01:00
Lars-Ivar Hesselberg Simonsen
d83e374150 panfrost: Limit reswizzle to AFBC formats
The texture/sampler reswizzle is implemented to allow AFBC for non
canonical component order formats, but it's enabled regardless of
whether the format supports AFBC.

Limit the reswizzling to only apply to formats that support AFBC.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32515>
2024-12-09 12:09:24 +01:00
Lars-Ivar Hesselberg Simonsen
86527273b9 panfrost: Disable AFRC texture/sampler reswizzle
There should be no limitation on component order support for AFRC, so
the reswizzling of texture/sampler should not be necessary in this case.

For PanVK, only the texture reswizzling was implemented (with the
equivalent sampler reswizzling missing), so removing it allows us to
pass various border-color tests.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32515>
2024-12-09 12:09:05 +01:00
Dave Airlie
a0918ca13d lavapipe: fix beta build due to changes in AMDX ext
This is probably not correct, but this needs an overhaul,
fixes the -Dvulkan-beta=true build.

Fixes: fcaf0f2590 ("vulkan: update to 302 headers for av1 encode")
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32520>
2024-12-09 06:30:32 +10:00
GKraats
bed66430ab i915g: fix glClearColor using a 1 byte color format
Unscissored glClearColor is using i915_fill_blit().
Clearing can be done with the 1 byte formats
GL_ALPHA, GL_LUMINANCE or GL_INTENSITY.
Routine i915_fill_blit() is called with a rgba-mask containing
1 byte, but it is handling this as a 2-byte color.
This fix adds the needed 1 byte setup to both
i915_fill_blit() and i915_copy_blit().

It solves 1 piglit-test concerning arb_clear_texture-base-formats
and 15 tests concerning fbo-clear-formats.

No regression is shown at other piglit-tests.

Cc: mesa-stable

Signed-off-by: GKraats <vd.kraats@hccnet.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32178>
2024-12-08 17:33:27 +01:00
liuqiang
8dda40c6e9 d3d10umd: Modify comment
Modify comments that do not match

Signed-off-by: liuqiang <liuqiang@kylinos.cn>
Reviewed-by: Max Ramanouski <max8rr8@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32294>
2024-12-07 07:05:27 +00:00
Alyssa Rosenzweig
972f8aa287 vulkan: rename depth bias graphics states
"constant" is a special keyword in OpenCL C, and we'd like to #define it
suitably in host C23 to facilitate compatiblity between host/device headers.
That means we can't have any identifiers named "global" or "constant".
Fortunately, this is the only 'constant' in any file I'm hitting.

To avoid the clash, don't abbreviate "constant factor", use "constant_factor"
instead. For consistency, "slope factor" then becomes "slope_factor".
The new names are longer but match the Vulkan API exactly.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> [Intel]
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> [NVK and panvk]
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> [V3DV]
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com> [IMG]
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32505>
2024-12-06 13:48:26 -05:00
Dylan Baker
33a1acb0da clc: Tell clang to track imported dependencies
Clang is capable of tacking what headers it imports, as long as we set
it up to do that. While that isn't important for rusticl, it would be
useful for the various `_clc` tools, as they can then tell Ninja which
headers they read to make rebuilds more reliable.

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Dylan Baker <dylan.c.baker@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32505>
2024-12-06 13:48:26 -05:00
Martin Krastev
fec6ef6d7f svga/ci: drop FDO_CI_CONCURRENT to 1
* drop FDO_CI_CONCURRENT to 1; eliminate intermittent piglit concurrecy issues
* bump PIGLIT_FRACTION to 2; lowering concurrency increases exec time, so
  for now compensate with job fraction set to 50%
* triage piglit failures

Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32526>
2024-12-06 16:38:43 +00:00
Martin Krastev
82d2e1df6c svga/ci: update svga/ci KERNEL_TAG
A new kernel build was provided, update the KERNEL_TAG accordingly.

Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32526>
2024-12-06 16:38:43 +00:00
Martin Krastev
2f3335d878 svga/ci: triage piglit failures
Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32526>
2024-12-06 16:38:43 +00:00
Martin Krastev
3cf17feb2a svga/ci: set vmware piglit job parallelism to 2
Job parallelism controls the number of DUTs employed by the job.
As vmware CI farm enabled multiple DUTs recently, bump this to 2
DUTs for the time being.

Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32526>
2024-12-06 16:38:43 +00:00
Martin Krastev
5f31cec10a svga/ci: enable vmware farm
* enable vmware farm after maintenance
* update svga/ci KERNEL_TAG

Signed-off-by: Martin Krastev <martin.krastev@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32526>
2024-12-06 16:38:43 +00:00
Tomeu Vizoso
da77188d7d etnaviv/ml: Implement FullyConnected
Lower FullyConnected to a regular convolution so it executes in the NN
cores.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32510>
2024-12-06 16:03:05 +00:00
Tomeu Vizoso
ad82a7c388 teflon: Add tests for FullyConnected
Same as we do with convolutions and additions.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32510>
2024-12-06 16:03:05 +00:00
Tomeu Vizoso
3d8f108514 teflon: Add support for FullyConnected
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32510>
2024-12-06 16:03:05 +00:00
Tomeu Vizoso
3e74234450 etnaviv/ml: Add support for tensor padding operations
Just one more TP operation, at least for the pad modes supported.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32509>
2024-12-06 15:09:52 +00:00
Tomeu Vizoso
02e92bbcea teflon: Add support for tensor padding operations
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32509>
2024-12-06 15:09:52 +00:00
Tomeu Vizoso
6c70b10f03 etna/ml: Write out the size of the requested tensor
Instead of the size of its backing resource.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Tomeu Vizoso
fe08834004 teflon: Limit support for Add to two unpopulated tensors
As the only implementations depend of both inputs coming from
convolutions.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Tomeu Vizoso
c2d1f08116 etnaviv/ml: Add support for tensor split and concatenation operations
Just point previous and further operations to offsets in a combined
tensor.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Tomeu Vizoso
4ced6480ea teflon: Add support for tensor split and concatenation operations
These are often use to reuse the output from a previous operation, or to
implement convolution groups.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Tomeu Vizoso
418f864ae4 etnaviv/ml: Take offsets into account in TP operations
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Tomeu Vizoso
566166b0aa etnaviv/ml: Fix in_image_slice in transposes when width != height
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Tomeu Vizoso
10bd5c23c6 etnaviv/ml: Specify which of the input tensors need transposing.
In preparation for operations that have more than one input that may
need transposing, such as Add.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32498>
2024-12-06 13:29:11 +00:00
Georg Lehmann
d47deba142 zink: spec@ext_framebuffer_multisample@blit-mismatched-formats was fixed
Fixed in https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31378

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32522>
2024-12-06 12:58:47 +00:00
David Rosca
3dd6ddde3b radeonsi/vcn: Cleanup JPEG supported formats
Stop reporting L8_UNORM as supported.
Remove unsupported IYUV, YV12, P010 and P016 formats from list,
add rest of the supported formats and add assert.

Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32504>
2024-12-06 11:24:53 +00:00
David Rosca
22ced06ee6 radeonsi/vcn: Make sure JPEG target buffer format matches sampling factor
Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32504>
2024-12-06 11:24:53 +00:00
David Rosca
1a7d956c75 radeonsi/vcn: Gracefully handle decode errors and report to frontend
Previously it would print error message and then most likely crash later.

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32504>
2024-12-06 11:24:53 +00:00
David Rosca
9a3a1027a6 radeonsi/vcn: Unmap bitstream buffer in radeon_dec_destroy
If an error occured, the bitstream buffer may still be mapped when
calling radeon_dec_destroy and this would trigger assert when destroying
the bo.

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32504>
2024-12-06 11:24:53 +00:00
David Rosca
ed5794c5e3 radeonsi/vcn: Remove code handling buffer_get_virtual_address failure
buffer_get_virtual_address can't return zero.

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32504>
2024-12-06 11:24:53 +00:00
David Rosca
5f3a93dacf frontends/va: Move mjpeg sampling_factor to pipe_mjpeg_picture_desc
Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32504>
2024-12-06 11:24:53 +00:00
David Rosca
1a90c3102b radeonsi/vcn: Don't allow encoding H264 B-frame references
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12242

Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32479>
2024-12-06 10:00:47 +00:00
David Rosca
cd8ad03364 frontends/va: Store picture type for buffers in encode DPB
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32479>
2024-12-06 10:00:47 +00:00
Eric R. Smith
a2f96667e2 mesa: update more drivers to handle pipe_blit_info swizzle_enable
Handle swizzling by falling through to the software path. Swizzle
should be rarely enabled, so this shouldn't affect performance in
most cases.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31378>
2024-12-05 18:27:37 +00:00
Eric R. Smith
3da4a404ae aux: add support for dumping the swizzle in pipe_blit_info
Just some additional debug code for the new blit swizzle feature.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31378>
2024-12-05 18:27:37 +00:00
Eric R. Smith
b81aefcc19 mesa: when blitting between formats clear any unused components
If the state tracker chooses to implement one format with a more
general one (e.g. GL_ALPHA implemented with GL_RGBA) we end up
in a situation where some components should be ignored. Readpix
handles this correctly, but blit does not, which means that if
we blit between different formats we can end up writing garbage
into some components. Work around this by adding an explicit
swizzle to the pipe_blit_info struct, which can re-arrange elements
and/or put 0 or 1 into appropriate channels, and use this to
set the appropriate values into unused channels via the sampler
view.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31378>
2024-12-05 18:27:37 +00:00
Tomeu Vizoso
3aad0afc30 teflon/tests: Also use the cache for models in the test suite
To speed things up now that we have more models under testing.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32485>
2024-12-05 17:02:27 +00:00
Tomeu Vizoso
74239aeb77 teflon/tests: Add support for models with float inputs and outputs
Ended up deciding to drop C++ collections and use instead C pointers
because the template use was starting to get ridiculous.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32485>
2024-12-05 17:02:27 +00:00
Tomeu Vizoso
f21d8af43a teflon: Don't crash when a tensor isn't quantized
We don't support yet hardware that can deal with floats, but it is
better not to crash.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32485>
2024-12-05 17:02:27 +00:00
Tomeu Vizoso
a548b17b4e teflon: Rename model tests so they aren't skipped by gtest-runner
The regular expression engine in gtest-runner was matching more tests
than we wanted, so we weren't testing all we thought.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32485>
2024-12-05 17:02:26 +00:00
Tomeu Vizoso
1e117478d4 teflon: Support tests with inputs with less than 4 dims
Needed in models such as YOLOX.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32485>
2024-12-05 17:02:26 +00:00
Tomeu Vizoso
140150083e teflon: Add tests for the YOLOX model
The model was generated from:

https://github.com/Megvii-BaseDetection/YOLOXa (Apache License 2.0)

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32485>
2024-12-05 17:02:26 +00:00
David Rosca
8d3d35bf05 frontends/va: Add support for VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_3
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32113>
2024-12-05 16:34:09 +00:00
Eric R. Smith
aba90c1523 panfrost: check afbc status in panfrost_query_compression_modifiers
In panfrost_query_compression_modifiers we need to ignore AFBC
modifiers if the device does not support AFBC. In order to avoid
duplicating code, we do this by calling panfrost_walk_dmabuf_modifiers
with a flag that indicates we do not want AFRC modifiers.

Reviewed-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32406>
2024-12-05 14:54:09 +00:00
Marek Olšák
dfc2f054b6 radeonsi/ci: update navi31 failures
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32288>
2024-12-05 12:07:06 +00:00
Marek Olšák
ed4606a062 radeonsi/ci: remove --slow
The tests were split or reduced in glcts.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32288>
2024-12-05 12:07:06 +00:00
Marek Olšák
c0ccae84a7 radeonsi/ci: remove most flakes and some skips, update navi31 failures
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32288>
2024-12-05 12:07:06 +00:00
Marek Olšák
af618dd907 radeonsi/ci: stop using a global flakes list, only use a per-chip flakes list
We need to start treating flakes as fails and they are likely different
between chips.

I removed the gfx9 flakes file and renamed the original flakes file
to gfx6-tahiti-flakes.csv, but it would be better to add a new flakes
file for each generation we test.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32288>
2024-12-05 12:07:06 +00:00