pan/crc: Check CRC buffer validity and coverage on v5 and v6 too

CRC RT selection for v5 and v6 (v4 isn't supported) currently returns
0 (instead of -1) as long as the CRC buffer is usable but without
checking its validity like it's done for v7+. While it doesn't
incorrectly enable Transaction Elimination, it uselessly makes
dependent CRC code paths taken.

Signed-off-by: Loïc Molinari <loic.molinari@collabora.com>
This commit is contained in:
Loïc Molinari 2026-02-09 15:08:49 +01:00
parent bda7f8572e
commit e39e303e23

View file

@ -124,7 +124,8 @@ GENX(pan_select_crc_rt)(const struct pan_fb_info *fb, unsigned tile_size)
#if PAN_ARCH <= 6
if (fb->rt_count == 1 && fb->rts[0].view && !fb->rts[0].discard &&
pan_image_view_has_crc(fb->rts[0].view) &&
renderblock_fits_in_single_pass(fb->rts[0].view, tile_size))
renderblock_fits_in_single_pass(fb->rts[0].view, tile_size) &&
(*(fb->rts[0].crc_valid) || pan_fb_is_fully_covered(fb)))
return 0;
return -1;