mesa/src/panfrost/util
Boris Brezillon 4477daf957 panfrost: Rework the way we compute thread info
Rework the way we compute thread info to make it mostly GPU-agnostic
outside of the kmod backend.

The new logic is based on the following information extracted from
GPU registers:

- mximum number of threads per core
- maximum number ot threads per workgroup
- number of registers per core

If the GPU doesn't provide this information (registers are zero), we
pick the per-arch defaults we had in panfrost_max_thread_count().

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26358>
2024-03-01 10:42:43 +00:00
..
lcra.c panfrost: clang-format the tree 2022-12-24 02:22:57 +00:00
lcra.h panfrost: clang-format the tree 2022-12-24 02:22:57 +00:00
meson.build panfrost: add lowering pass for multisampled images 2024-02-26 19:01:32 +00:00
pan_collect_varyings.c nir: Drop nir_dest 2023-08-14 21:22:53 +00:00
pan_ir.c panfrost: clang-format the tree 2022-12-24 02:22:57 +00:00
pan_ir.h panfrost: Rework the way we compute thread info 2024-03-01 10:42:43 +00:00
pan_liveness.c panfrost: clang-format the tree 2022-12-24 02:22:57 +00:00
pan_lower_framebuffer.c treewide: Drop nir_ssa_for_src users 2023-09-18 10:25:17 -04:00
pan_lower_framebuffer.h pan/lower_framebuffer: Lower MSAA blend shaders 2023-03-23 23:53:46 +00:00
pan_lower_helper_invocation.c treewide: Use nir_shader_intrinsic_pass sometimes 2023-08-24 15:48:02 +00:00
pan_lower_image_ms.c panfrost: add lowering pass for multisampled images 2024-02-26 19:01:32 +00:00
pan_lower_sample_position.c treewide: Also handle struct nir_builder form 2023-08-24 15:48:02 +00:00
pan_lower_store_component.c treewide: Use nir_shader_intrinsic_pass sometimes 2023-08-24 15:48:02 +00:00
pan_lower_writeout.c panfrost: Fix dual-source blending 2024-02-05 13:25:56 +00:00
pan_lower_xfb.c treewide: Use nir_shader_intrinsic_pass sometimes 2023-08-24 15:48:02 +00:00