drm/msm/dpu: Disable broken YUV on QSEED2 hardware
authorVladimir Lypak <vladimir.lypak@gmail.com>
Sat, 18 Oct 2025 14:33:43 +0000 (14:33 +0000)
committerDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Tue, 28 Oct 2025 22:20:47 +0000 (00:20 +0200)
YUV formats on this hardware needs scaling for chroma planes. However it
is not implemented for QSEED2 which breaks display pipeline if YUV format
is used (causing partial and corrupted output with PPDONE timeouts).
This patch temporarily disables YUV by switching affected sub-block to
RGB only format list.

Fixes: daf9a92daeb8 ("drm/msm/dpu: Add support for MSM8996")
Signed-off-by: Vladimir Lypak <vladimir.lypak@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/682061/
Link: https://lore.kernel.org/r/20251018-b4-dpu-fixes-v1-6-1852278064d0@gmail.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

index 6641455..9f8d1bb 100644 (file)
@@ -267,8 +267,8 @@ static const u32 wb2_formats_rgb_yuv[] = {
                .base = 0x200, .len = 0xa0,}, \
        .csc_blk = {.name = "csc", \
                .base = 0x320, .len = 0x100,}, \
-       .format_list = plane_formats_yuv, \
-       .num_formats = ARRAY_SIZE(plane_formats_yuv), \
+       .format_list = plane_formats, \
+       .num_formats = ARRAY_SIZE(plane_formats), \
        .rotation_cfg = NULL, \
        }