mesa/src/gallium/drivers
Boris Brezillon 62dcc4c01b panfrost: Explictly filter out AFBC(SNORM)
We are about to allow any type that is not FLOAT on v9+ at the
pan_afbc_format() level, but this regresses
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.*_snorm*
tests because of the clamping that's done on values that fall outside
the [-2^(b-1)+1, 2^(b-1)-1] range (b being the number of bits in the
SNORM component).

In order to fix that, we would have to use a _UNORM type when copying,
but:

1. There are many places where internal copies can happen and it's hard
   to identify all of them
2. If we do it at the panfrost_blit_no_afbc_legalization() level, we
   might do format re-interpretation that's not wanted by the gallium
   layer

Given AFBC(SNORM) has not been supported so far, let's just go for the
simple solution and filter it out explicitly in panfrost_should_afbc().

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37158>
2025-09-15 10:59:04 +00:00
..
asahi gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
crocus gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
d3d12 pipe: Remove PIPE_VIDEO_CAP_PREFERS/SUPPORTS_INTERLACED 2025-09-10 12:33:57 +00:00
etnaviv etnaviv: Support PIPE_FORMAT_S8_UINT stencil format 2025-09-15 10:45:17 +00:00
freedreno freedreno/a6xx: Fix snorm rounding 2025-09-12 10:10:29 +00:00
i915 nir: remove has_ddx_intrinsics option 2025-09-15 10:16:27 +00:00
iris iris: Limit max_shader_buffer_size to INT32_MAX 2025-09-12 20:45:39 +00:00
lima gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
llvmpipe sw_winsys: Add winsys_handle to displaytarget_create_mapped 2025-09-13 06:47:58 +00:00
nouveau nir: remove has_ddx_intrinsics option 2025-09-15 10:16:27 +00:00
panfrost panfrost: Explictly filter out AFBC(SNORM) 2025-09-15 10:59:04 +00:00
r300 pipe: Remove PIPE_VIDEO_CAP_PREFERS/SUPPORTS_INTERLACED 2025-09-10 12:33:57 +00:00
r600 r600/sfn: Filter lowering of b2f32(comp(x,y)) for 64 bit sources 2025-09-11 23:00:21 +00:00
radeonsi radeonsi: really support eglExportDMABUFImageQueryMESA 2025-09-15 09:39:19 +00:00
rocket build: avoid redefining unreachable() which is standard in C23 2025-07-31 17:49:42 +00:00
softpipe gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
svga gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
tegra gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
v3d v3d: Don't enable Early-z with discards when stencil updates are enabled 2025-09-15 09:06:25 +00:00
vc4 gallium: add pipe_context::resource_release to eliminate buffer refcounting 2025-09-09 20:47:38 +00:00
virgl pipe: Remove PIPE_VIDEO_CAP_PREFERS/SUPPORTS_INTERLACED 2025-09-10 12:33:57 +00:00
zink gallium: add PIPE_RESOURCE_PARAM_DISJOINT_PLANES 2025-09-15 09:39:19 +00:00