This series is the SST-only prerequisite portion of the MSM DP MST work. It refactors the existing DP code paths so that MST can plug in cleanly in a follow-up series, without bundling the cleanup with MST functionality in the same submission.
SST behaviour is preserved end-to-end; no new functionality is added here. The intent is to land these refactors first to keep the follow-up MST series focused, smaller, and easier to review. Signed-off-by: Yongxing Mou <[email protected]> --- Changes in v6: - patch 4: fixed the RMW comments. [Dmitry] - patch 10: do not rename the existing struct. [Dmitry] - Link to v5: https://lore.kernel.org/r/[email protected] Changes in v5: - Split out from v4: only the SST prerequisite cleanup (patches 1-15) is sent here; the MST implementation will follow on top. - Rebased onto linux-next-20260527; adapted bridge callbacks to the new drm_atomic_commit* API. - patch 3: added Suggested-by: Dmitry Baryshkov. - patch 4: fixed "splite" typo, reworded body, added RMW comment covering both SST and MST paths. [Dmitry] - patch 10: drop cached panel from msm_dp_ctrl_private; pass panel explicitly to all stream-related dp_ctrl APIs. [Dmitry] - patch 13/14: introduce bridge wrappers and atomic_prepare with drm_atomic_commit* from the start to preserve bisectability. - patch 15: fixed pass panel inside the func. [Dmitry] - Link to v4: https://lore.kernel.org/all/[email protected]/ --- Abhinav Kumar (6): drm/msm/dp: break up dp_display_enable into two parts drm/msm/dp: re-arrange dp_display_disable() into functional parts drm/msm/dp: allow dp_ctrl stream APIs to use any panel passed to it drm/msm/dp: split dp_ctrl_off() into stream and link parts drm/msm/dp: make bridge helpers use dp_display to allow re-use drm/msm/dp: separate dp_display_prepare() into its own API Yongxing Mou (9): drm/msm/dp: remove cached drm_edid from panel drm/msm/dp: drop deprecated .mode_set() and use .atomic_enable drm/msm/dp: move mode setup into msm_dp_panel_init_panel_info() drm/msm/dp: split msm_dp_ctrl_config_ctrl() into link parts and stream parts drm/msm/dp: extract MISC1_MISC0 configuration into a separate function drm/msm/dp: split link setup from source params drm/msm/dp: move the pixel clock control to its own API drm/msm/dp: simplify link and clock disable sequence drm/msm/dp: pass panel to display enable/disable helpers drivers/gpu/drm/msm/dp/dp_ctrl.c | 383 ++++++++++++++++++++---------------- drivers/gpu/drm/msm/dp/dp_ctrl.h | 30 ++- drivers/gpu/drm/msm/dp/dp_display.c | 273 ++++++++++++------------- drivers/gpu/drm/msm/dp/dp_display.h | 8 + drivers/gpu/drm/msm/dp/dp_drm.c | 43 +++- drivers/gpu/drm/msm/dp/dp_drm.h | 12 -- drivers/gpu/drm/msm/dp/dp_panel.c | 75 ++----- drivers/gpu/drm/msm/dp/dp_panel.h | 17 +- 8 files changed, 452 insertions(+), 389 deletions(-) --- base-commit: e7d700e14934e68f86338c5610cf2ae76798b663 change-id: 20260528-dp_mstclean-f094cea8ca24 Best regards, -- Yongxing Mou <[email protected]>
