Hi Dave, This is the last bit for v6.9, which was waiting on drm-misc-next-2024-02-29. Description below. The following changes since commit 177bce60cd10a4ffdc9881bf6f2dff7880408c1d: Merge tag 'drm-misc-next-2024-02-29' into msm-next (2024-03-03 18:32:11 -0800) are available in the Git repository at: https://gitlab.freedesktop.org/drm/msm.git tags/drm-msm-next-2024-03-07 for you to fetch changes up to 4be445f5b6b6810baf397b2d159bd07c3573fd75: drm/msm/dpu: capture snapshot on the first commit_done timeout (2024-03-04 11:44:03 +0200) ---------------------------------------------------------------- Late updates for v6.9, the main part is CDM (YUV over DP) which was waiting for drm-misc-next-2024-02-29. DPU: - Add support for YUV420 over DP - Patchset to ease debugging of vblank timeouts - Small cleanup ---------------------------------------------------------------- Dmitry Baryshkov (3): drm/msm/dpu: make "vblank timeout" more useful drm/msm/dpu: split dpu_encoder_wait_for_event into two functions drm/msm/dpu: capture snapshot on the first commit_done timeout Kuogee Hsieh (1): drm/msm/dpu: add support of new peripheral flush mechanism Paloma Arellano (18): drm/msm/dpu: allow certain formats for CDM for DP drm/msm/dpu: add division of drm_display_mode's hskew parameter drm/msm/dpu: pass mode dimensions instead of fb size in CDM setup drm/msm/dpu: allow dpu_encoder_helper_phys_setup_cdm to work for DP drm/msm/dpu: move dpu_encoder_helper_phys_setup_cdm to dpu_encoder drm/msm/dp: rename wide_bus_en to wide_bus_supported drm/msm/dp: store mode YUV420 information to be used by rest of DP drm/msm/dp: check if VSC SDP is supported in DP programming drm/msm/dpu: move widebus logic to its own API drm/msm/dp: program config ctrl for YUV420 over DP drm/msm/dp: change clock related programming for YUV420 over DP drm/msm/dp: move parity calculation to dp_utils drm/msm/dp: add VSC SDP support for YUV420 over DP drm/msm/dp: enable SDP and SDE periph flush update drm/msm/dpu: modify encoder programming for CDM over DP drm/msm/dpu: modify timing engine programming for YUV420 over DP drm/msm/dpu: reserve CDM blocks for DP if mode is YUV420 drm/msm/dp: allow YUV420 mode for DP connector when CDM available drivers/gpu/drm/msm/Makefile | 3 +- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 244 +++++++++++++++++---- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 26 +-- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 26 ++- .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 32 ++- .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_wb.c | 100 +-------- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.c | 2 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c | 17 ++ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h | 10 + drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 6 +- drivers/gpu/drm/msm/dp/dp_audio.c | 101 ++------- drivers/gpu/drm/msm/dp/dp_catalog.c | 115 +++++++++- drivers/gpu/drm/msm/dp/dp_catalog.h | 9 +- drivers/gpu/drm/msm/dp/dp_ctrl.c | 17 +- drivers/gpu/drm/msm/dp/dp_display.c | 82 +++++-- drivers/gpu/drm/msm/dp/dp_drm.c | 6 +- drivers/gpu/drm/msm/dp/dp_drm.h | 3 +- drivers/gpu/drm/msm/dp/dp_panel.c | 53 +++++ drivers/gpu/drm/msm/dp/dp_panel.h | 2 + drivers/gpu/drm/msm/dp/dp_reg.h | 9 + drivers/gpu/drm/msm/dp/dp_utils.c | 96 ++++++++ drivers/gpu/drm/msm/dp/dp_utils.h | 36 +++ drivers/gpu/drm/msm/msm_drv.h | 32 +-- 23 files changed, 736 insertions(+), 291 deletions(-) create mode 100644 drivers/gpu/drm/msm/dp/dp_utils.c create mode 100644 drivers/gpu/drm/msm/dp/dp_utils.h