Christian Gmeiner
5c5dc646ed
etnaviv: hwdb: Import gc_feature_database from Amlogic
...
This commit imports the gc_feature_database.h from
https://github.com/khadas/android_vendor_amlogic_common_npu/blob/khadas-vim4-r-64bit/hal/kernel/inc/gc_feature_database.h
git commit: 9d81096a001af8a099ca767855d548983d037dd8
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
775eff3046
etnaviv: hwdb: Import gc_feature_database from NXP
...
This commit imports the gc_feature_database.h file from
https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/drivers/mxc/gpu-viv/hal/kernel/inc/gc_feature_database.h
git commit: ccf0a99701a701fb48a04e31ffe3f9d585a8374a
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
e1c6748cf4
etnaviv: drm: Query some id values in etna_gpu_new(..)
...
We want to fully initialise etna_device_info. We only query the kernel
for these values if the drm driver is recent enough.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
d600b45ccc
etnaviv: Switch to etna_core APIs
...
This removes the in-driver feature handling and switches to the one from
common.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
358e1f10c5
etnaviv: drm: Initialize etna_core_info based on kernel features
...
Query all the gpu features in etna_gpu_new(..) and update the feature
bitset in etna_core_info accordingly.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
8639367f55
etnaviv: common: Add feature bitset
...
Extend struct etna_core_info with a feature bitset and some helper
functions.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
df198d21f9
etnaviv: Introduce etna_feature enum
...
This etna_feature enum will be used as abstraction layer. We will add
support for a hardware database - borrowed from the binary blob.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
9eede9ba0b
etnaviv: Move hw header to common place
...
I am planning to make use of these headers outside of the gallium
driver.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
f4c90d4316
etnaviv: Switch to etna_core_info
...
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
d3f8e3ee42
etnaviv: drm: Add etna_gpu_get_core_info(..)
...
Makes it possible to access etna_core_info.
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
ad4b6cce30
etnaviv: drm: Make use of etna_core_info
...
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/28574 >
2024-04-13 12:43:52 +00:00
Christian Gmeiner
3b150bcba8
etnaviv: Introduce common etna_core_info
...
This struct will be used in different places outside of the gallium
driver.
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/28574 >
2024-04-13 12:43:52 +00:00
Timothy Arceri
1984712a8e
glsl: inline _mesa_copy_linked_program_data()
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28709 >
2024-04-13 11:36:08 +00:00
Timothy Arceri
4655381e3b
glsl: remove UsesEndPrimitive field
...
Here we store the value directly in shader info rather than passing
it around.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28709 >
2024-04-13 11:36:08 +00:00
Timothy Arceri
1139a703c1
glsl: remove ActiveStreamMask field
...
There is no need to pass this value around just store it directly
in the shader info.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28709 >
2024-04-13 11:36:08 +00:00
Timothy Arceri
1e13e9be45
glsl: remove FragDepthLayout field
...
Nothing uses it. I *looks* like _mesa_copy_linked_program_data()
copies it somewhere useful however that function is called before
the value are even initialised.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28709 >
2024-04-13 11:36:08 +00:00
Pavel Ondračka
9dc6ea2fad
r300: remove nir_to_rc_options wrapper
...
Just call nir_to_rc directly since we don't have any options anymore.
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28663 >
2024-04-13 09:49:38 +00:00
Pavel Ondračka
b1c98ffd9e
r300: move lower_fabb option out of the options struct
...
It is the last one, we don't need an extra struct for it...
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28663 >
2024-04-13 09:49:38 +00:00
Pavel Ondračka
2de9142f9f
r300: remove the ntr lower_cmp option
...
Only used in nir_lower_bool_to_float, so just hardcode the logic there.
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28663 >
2024-04-13 09:49:38 +00:00
Pavel Ondračka
4735265187
r300: get rid of the unused ubo_vec4_max ntr option
...
We now do the lowering in finalize_nir.
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28663 >
2024-04-13 09:49:38 +00:00
Pavel Ondračka
26bb068935
r300: inline unoptimized_ra ntr option
...
Also remove the check for overflowing 16bit TGSI register index.
If that ever happens we are out of luck anyway, no need to waste CPU
cycles on RA...
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28663 >
2024-04-13 09:49:38 +00:00
Marek Olšák
7de43c4fb8
ac: add helper ac_get_ip_type_string to remove duplication
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:22:04 -04:00
Marek Olšák
8597870dcb
ac/llvm: simplify the optimization barrier and apply it to the whole vector
...
Use the same code as the pointer type. It works with all types and works
with any vector, but we need to handle i1 and v3i16 as special cases,
otherwise LLVM fails when it sees them. The previous code only extracted
the first component, which is not what we want.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:22:04 -04:00
Marek Olšák
c7e30cdbbb
ac/llvm: remove unused fields of ac_shader_abi
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:22:04 -04:00
Marek Olšák
105e22f6fd
ac/llvm: remove handling of input and output loads/stores that are lowered
...
There is a lot that we still use.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:22:04 -04:00
Marek Olšák
ce7ca0d80b
ac/llvm: allow image loads to return less than 4 components, trim DMASK
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:22:04 -04:00
Marek Olšák
c91b56c271
ac/llvm: add support for 16-bit coordinates (A16) for image (non-sampler) opcodes
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:22:03 -04:00
Marek Olšák
c9ea9e96a7
ac/llvm: simplify extracting an element in get_image_coords
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:20:14 -04:00
Marek Olšák
f49cfa9a1c
ac/nir: allow 16-bit results for resinfo
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:20:14 -04:00
Marek Olšák
03d241b256
ac/surface: add radeon_surf::thick_tiling
...
It's not worth writing a compute shader for copying 3D textures yet.
I have a sophisticated compute shader that will do it properly.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28607 >
2024-04-12 22:20:14 -04:00
Yiwei Zhang
abc327a39a
venus: use more relaxed profile for TLS ring seqno wait
...
Excessive polling for TLS ring synchronous cmds is a waste of cpu
cycles.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28706 >
2024-04-13 00:52:22 +00:00
Mike Blumenkrantz
7f246bca04
zink: ci updates
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
Mike Blumenkrantz
0e0effe59b
zink: enable opt_varyings with ZINK_DEBUG=ioopt
...
uses copied instruction costs from radeonsi for AMD, need info for
other platforms...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
Mike Blumenkrantz
942f3d3a3f
zink: add a pass to fix vertex input locations
...
this is very stupid
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
Mike Blumenkrantz
e8c12c82ef
zink: set nir_io_glsl_lower_derefs in compiler options
...
this runs all the io lowering in the frontend and allows for code--
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
Mike Blumenkrantz
163bb2b9c1
zink: rework rework_io_vars
...
this should be a bit more robust and also maybe even readable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
Mike Blumenkrantz
c329ee200f
zink: set lower_to_scalar
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
Mike Blumenkrantz
0d756fd0bc
zink: set indirect io compiler flags
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28580 >
2024-04-12 21:30:45 +00:00
David Heidelberg
e511ffea4b
ci/intel: sona device_type is back online
...
Fixes: 44db558cea ("ci: disable sona devices, all devices are offline")
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28721 >
2024-04-12 19:37:56 +00:00
Mike Blumenkrantz
2e5d49b3dd
gallium: delete PIPE_CAP_NIR_COMPACT_ARRAYS
...
this is now nir_shader_compiler_options::compact_arrays
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
44aee09cfb
nine: stop checking PIPE_CAP_NIR_COMPACT_ARRAYS and use compact_arrays
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
8d9c5cc6ed
st/program: stop using PIPE_CAP_NIR_COMPACT_ARRAYS and use compact_arrays
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
cba1b03e86
mesa: delete LowerCombinedClipCullDistance from consts
...
no longer used
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
c9977f8de6
glsl: move an assert from st_context over to avoid using PIPE_CAP_NIR_COMPACT_ARRAYS
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
9f5e62df89
ttn: stop using PIPE_CAP_NIR_COMPACT_ARRAYS and check compact_arrays
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
20d0613c13
glsl: stop using PIPE_CAP_NIR_COMPACT_ARRAYS and check compact_arrays
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
d2abc7f9a6
freedreno: set compact_arrays in compiler options
...
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
39b66f9c84
intel: set compact_arrays in compiler options
...
Acked-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
d694c1b094
v3d: set compact_arrays in compiler options
...
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Mike Blumenkrantz
7967be922d
agx: set compact_arrays in compiler options
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00