Treat R8_G8B8_420_UNORM and NV12 the same, because dri2 frontend doesn't
understand or care about the difference from the sampler PoV.
Fixes:
1e820ac12850 ("freedreno: Rework supported-modifiers handling")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26601>
(cherry picked from commit
2132f95de0b0f291b116a67149793eaac2e2b5bf)
"description": "freedreno/a6xx: Fix NV12+UBWC import",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "1e820ac128506bd66a20fb7345fd562feb9e730b",
"notes": null
return info->a6xx.has_z24uint_s8uint;
case PIPE_FORMAT_R8_G8B8_420_UNORM:
+ /* The difference between NV12 and R8_G8B8_420_UNORM is only where the
+ * conversion to RGB happens, with the latter it happens _after_ the
+ * texture samp instruction. But dri2_get_mapping_by_fourcc() doesn't
+ * know this, so it asks for NV12 when it really meant to ask for
+ * R8_G8B8_420_UNORM. Just treat them the same here to work around it:
+ */
+ case PIPE_FORMAT_NV12:
return true;
default: