Commit graph

172519 commits

Author SHA1 Message Date
norablackcat
a1189f4b7f docs/features update opencl extensions add rusticl
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23055>
2023-06-08 13:00:58 +00:00
norablackcat
be673fdd78 rusticl: add cl_khr_create_command_queue
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23055>
2023-06-08 13:00:58 +00:00
Eric Engestrom
c41faeb323 docs/relnotes/23.1.1: clear "new features"
I should've done this after 23.1.0/before 23.1.1, but I forgot :]

Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23521>
2023-06-08 11:16:15 +00:00
Rhys Perry
31c8c42f48 aco/tests: test that s_bfe bits is masked
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23464>
2023-06-08 11:54:45 +01:00
Rhys Perry
08064a5542 aco: mask bits source of s_bfe
The s_bfe instructions use 7 bits, not 5 like the NIR opcode requires.

No fossil-db changes (navi21).

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9162
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23464>
2023-06-08 11:54:17 +01:00
Matt Coster
4a2e62844b pvr: Add support for sampler border colors
Currently only the six vulkan 1.0 pre-defined formats are supported,
but some basic infrastructure that will be useful for implementing
VK_EXT_custom_border_color (and vulkan 1.1) is included.

Only formats currently listed in the pvr_format_table in pvr_formats.c
are currently supported. Unlike most (all?) other drivers, the PowerVR
hardware requires each entry in the border color table to be encoded
for every hardware format (of which there are 128 available, plus 128
for compressed formats).

Also in this commit:
 - Two new constants in rogue_texstate.xml:
    - IMAGE_WORD0_TEXFORMAT_MAX_SIZE, and
    - SAMPLER_BORDERCOLOR_INDEX_MAX_SIZE; and
 - A new device feature (tpu_border_colour_enhanced)

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21555>
2023-06-08 10:33:46 +00:00
Matt Coster
b8a32e7694 pvr: Declare dependency on idep_mesautil
Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21555>
2023-06-08 10:33:46 +00:00
Christian Gmeiner
ae828a33a7 etnaviv: make wider use of DBG_ENABLED(..)
Make the source code more consistent.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23495>
2023-06-08 10:09:14 +00:00
Andres Gomez
14782cf248 .mailmap: add an alias for Christian Gmeiner
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23498>
2023-06-08 09:16:25 +00:00
Karmjit Mahil
aae23fe68d pvr: HWRT creation simplifications.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20092>
2023-06-08 08:55:12 +00:00
Gert Wollny
9ace53f3cc r600/sfn: Don't rewrite TESS_EVAL inner tess level outputs
Fixes: 5cd3e3950 (r600/sfn: Make sure all components are usable when lowering TF inputs)

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23518>
2023-06-08 08:32:16 +00:00
Gert Wollny
976d6de232 r600/sfn: add read instruction for unused but required LDS op results
DS_XCHG_RET and LDS_CMP_XCHG_RET don't have a version that doesn't return
a value in the LDS red queue. so we have to read the value from the queue
and discard it.

Fixes: 79ca456b (r600/sfn: rewrite NIR backend)

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23518>
2023-06-08 08:32:16 +00:00
Luigi Santivetti
9396ba3be1 pvr: fixup assert in pvr_cmd_buffer_alloc_mem
Stop explicitly passing PVR_BO_ALLOC_FLAG_CPU_MAPPED to
pvr_cmd_buffer_alloc_mem(). This is redundant for sub-allocations,
as they are always unconditionally mapped to the CPU.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23463>
2023-06-08 08:14:04 +00:00
SoroushIMG
4dc82b4473 pvr: fix infinite recursion in pvr_cmd_buffer_{start,end}_sub_cmd
Reported-by: James Glanville <james.glanville@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23463>
2023-06-08 08:14:04 +00:00
Gert Wollny
cb41ef0d3f util/driconf: pin minImageCount to three for "Path of Exile"
"Path of Exile" will fail with an error "unsupported backbuffer image count"
when vkGetPhysicalDeviceSurfaceCapabilitiesKHR reports more than 3 as
minImageCount.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21547>
2023-06-08 07:41:53 +00:00
Caio Oliveira
75b63a5d3e r600/sfn: Fix warning about overloads hiding virtual functions
Fixes multiple warnings when building with g++ 13.1.1 that look like

```
./src/gallium/drivers/r600/sfn/sfn_scheduler.cpp:1111:9: warning: ‘virtual void r600::CheckArrayAccessVisitor::visit(const r600::InlineConstant&)’ was hidden [-Woverloaded-virtual=]
 1111 |    void visit(const InlineConstant& value) override {(void)value;}
      |         ^~~~~
../src/gallium/drivers/r600/sfn/sfn_scheduler.cpp:1125:9: note:   by ‘virtual void r600::UpdateArrayWrite::visit(const r600::LocalArrayValue&)’
 1125 |    void visit(const LocalArrayValue& value) override {
      |         ^~~~~
(...)
```

What's going on here is when mixing overloading and virtual functions,
compiler will warn when one of the variants is not overriden.  So tell
it to also use the base class definitions.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23509>
2023-06-08 07:17:21 +00:00
Yonggang Luo
1eda220f18 compiler: use align instead glsl_align and remove glsl_align
#include "util/u_math.h" when necessary to call align function

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:21 +00:00
Yonggang Luo
4134f9ac09 util: Do not use align as variable name
Because align is also a function in u_math.h

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:21 +00:00
Yonggang Luo
586391720b util: use uint32_t as the parameter of align function
align on negative value doesn't make sense

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:21 +00:00
Yonggang Luo
9ce8ff9bb1 util: Remove redundant type cast in function align64
Fixes: 0a06cf7523 ("util: migrate alignment functions and macros to use ALIGN_POT")

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:20 +00:00
Konstantin Seurer
93f047b6ff gallivm: Zero initialize param structs
Zero all param structs using {0} because it's shorter than a memset and
there were some instances where the structs weren't zero initialized.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
a2159dfe8a gallivm: Handle invalid image format/op combinations
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
1841dd7549 gallivm: Add lp_img_op_from_intrinsic
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
6a0383e518 gallivm: Add lp_build_nir_sample_key
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
9d3dbc6400 llvmpipe: Add lp_storage_render_image_format_supported
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
cfb37e7383 llvmpipe: Add lp_storage_image_format_supported
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
fbe7c970f6 llvmpipe: refactor out the pipe->lp_jit structure fillers.
These are useful later for descriptor indexing, but refactor them
out now.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
c3c9e28131 gallivm: Cast read_first_invocation source to an int
cc: mesa-stable

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
3101f900a0 gallivm: Fix anisotropic sampling with num_mips=1
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Dave Airlie
d99dca86ce lavapipe: ignore another yuv format.
Since these were added to generic translation, lavapipe has
been annoyed.

Cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23486>
2023-06-08 05:54:06 +00:00
Dave Airlie
da54b57888 radv/video: fix hevc scaling lists.
These need some zscan conversion, that I've taken from vaapi.

v2: move to common code for it_ptr updates, add defines

Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23476>
2023-06-08 05:34:06 +00:00
Dave Airlie
3f12103be9 radv/video: fix hevc st rps programming
These needs to be programmed to fix some video glitches.

Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23476>
2023-06-08 05:34:06 +00:00
Dave Airlie
f0597a1514 radv/video: rework h265 reference frame bindings.
This reworks the ref frame bindings and allows dropping the tier_2 workaround.

Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23476>
2023-06-08 05:34:06 +00:00
Dave Airlie
b8191cd603 radv/video: don't supply an 8-bit format for a 10-bit dpb.
The firmware can write an 8-bit output buffer, but still needs
a 10-bit dpb allocation.

This also puts the 8-bit format after the 10-bit format though
apps should be smart enough to pick the correct one.

Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23476>
2023-06-08 05:34:06 +00:00
Dave Airlie
b2e1e17ff6 radv/video: convert session memory requirements to outarray.
These are just standard	outarray so use	the common code.

Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23476>
2023-06-08 05:34:06 +00:00
Dave Airlie
28f2a6b281 radv/video: convert video format properties to an outarray
These are just standard outarray so use the common code.

Reviewed-by: Lynne <dev@lynne.ee>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23476>
2023-06-08 05:34:06 +00:00
Chia-I Wu
d0d7dda829 radv: fix non-square compressed image copy on gfx9
There is a typo in fixup_gfx9_cs_copy.

Fixed dEQP-VK.api.copy_and_blit.*.image_to_buffer.2d_images.mip_copies_bc*_64x192_* in deqp 1.3.6.0.

Fixes: 35f053ba8c ("radv: Fix corrupted mipmap copies on GFX9+")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23483>
2023-06-08 04:58:31 +00:00
Karol Herbst
8616c0a52c rusticl/event: flush queues from dependencies
We have to flush all event dependencies inside clWaitForEvents and
clFinish implicitly otherwise applications might wait forever.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9052
Fixes: ebfffa1dae ("rusticl/event: wrong but non crashing impl of clWaitForEvents")
Cc: mesa-stable
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23110>
2023-06-08 04:16:35 +00:00
Karol Herbst
86dd5dd853 rusticl: bump rust req to 1.60
We need this rustc bugfix:
6466f89fc5

Cc: mesa-stable
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23110>
2023-06-08 04:16:35 +00:00
Karol Herbst
e285a05c2a doc/rusticl: add Rust Update Policy
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23110>
2023-06-08 04:16:35 +00:00
Matt Turner
19092576ce u_format: Use memcpy to avoid unaligned accesses
These functions are used by gl[Get]TexImage, which imposes no
alignment restructions on the void *pixels parameter.

This fixes an unaligned access in GTK's "gtk:gdk / memorytexture" unit
test on SPARC, which causes the test to fail.

Fixes: 45ae4434b5 ("util: Use bitshift arithmetic to unpack pixels.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23482>
2023-06-08 03:42:39 +00:00
Pierre-Eric Pelloux-Prayer
96cf4531e1 Revert "gallium/u_threaded: buffer sharedness tracking"
This reverts commit 8f159a8576.

This commit is correct but it exposes an existing bug: DISCARD_RANGE doesn't
work well with shared buffers.
So for now revert this commit as it's causing hangs on some APUs (see
https://gitlab.freedesktop.org/drm/amd/-/issues/2447) and flickering in
Metro Last Light Redux.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9108
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23492>
2023-06-08 03:10:49 +00:00
Lionel Landwerlin
965503ae22 anv: allow binding tables allocations on compute only queues
COMPUTE_WALKER is using binding tables.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: eb2b309328 ("anv: defer binding table block allocation to when necessary")
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23506>
2023-06-08 02:37:44 +00:00
Dave Airlie
b1faeae4fe draw: repack some members of context.
this just fills a hole in

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23487>
2023-06-08 02:10:54 +00:00
Dave Airlie
73f7948298 draw: add a max stage define and use it in a few places
This should decrease the size of some memory allocations.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23487>
2023-06-08 02:10:54 +00:00
Dave Airlie
f922f1f902 draw: refactor resources to use arrays instead of explicit structs.
This should simplify the code and make it easier to refactor later.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23487>
2023-06-08 02:10:54 +00:00
Dave Airlie
d1cdf0d91a gallium/tgsi/draw/softpipe: remodel shader const/buffer bindings.
This remodels things around a buffer object.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23487>
2023-06-08 02:10:54 +00:00
Dave Airlie
370cd08a5e draw/tess: drop unused tgsi bits.
tess isn't supported by tgsi

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23487>
2023-06-08 02:10:54 +00:00
Dave Airlie
f1b752f650 draw: rename jit to vs_jit in lots of places.
we should have done this when geom shaders got added,
do it now, will make it easier to consolidate some code in macros

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23487>
2023-06-08 02:10:54 +00:00
Dave Airlie
c20df7e22e gallivm/nir: fix shuffleup tests.
So the shuffleup tests did a shuffle up with const 5,
we'd use invocation id (0..8) shuffle it down by 5,
get (-5..3), then call llvmshufflevector with that
which is totally illegal.

There might be a nicer way to fix this, but I can't see
it straight away, just bail on the fast path.

Fixes:
dEQP-VK.subgroups.shuffle.compute.subgroupshuffleup*

Cc: mesa-stable
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23484>
2023-06-08 01:40:45 +00:00