Currently, all HPD interrupt handling must go through the HPD state machine.
This has caused many issues where the DRM framework assumes that DP is in one state while the state machine is stuck in another state. As discussed here [1], this series: - Removes the state machine - Moves link training to atomic_enable() - Changes the detect() behavior to return true if a display is physically plugged in (as opposed to if the DP link is ready). This has been validated on x1e80100-crd and sa8775p-ride. Any help testing on other platforms/use-cases would be appreciated! [1] https://patchwork.freedesktop.org/patch/656312/?series=142010&rev=2#comment_1201738 --- Abhinav Kumar (4): drm/msm/dp: remove redundant checks related to ST_DISPLAY_OFF in plug/irq_ipd handlers drm/msm/dp: replace ST_DISPLAY_OFF with power_on in msm_dp_hpd_unplug_handle() drm/msm/dp: Replace ST_DISPLAY_OFF with power_on in atomic_enable() drm/msm/dp: remove ST_DISPLAY_OFF as a hpd_state Jessica Zhang (15): drm/msm/dp: Track when DP is physically plugged in drm/msm/dp: Return early from atomic_enable() if cable is not connected drm/msm/dp: Replace ST_MAINLINK_READY with link_ready in plug/hpd_irq handlers drm/msm/dp: Replace ST_DISCONNECTED with checks for connected drm/msm/dp: Rework unplug handling drm/msm/dp: Don't delay plug-in handling when ST_DISCONNECT_PENDING drm/msm/dp: Check if DP is disconnected in atomic post_disable() drm/msm/dp: Drop ST_MAINLINK_READY hpd_state drm/msm/dp: Drop ST_DISCONNECTED drm/msm/dp: Drop ST_CONNECTED drm/msm/dp: Drop ST_DISCONNECT_PENDING drm/msm/dp: Drop hpd_state from msm_dp drm/msm/dp: Use drm_bridge_hpd_notify() drm/msm/dp: Move link training to atomic_enable() drm/msm/dp: Log connected and link_ready for event handling drivers/gpu/drm/msm/dp/dp_ctrl.c | 22 ----- drivers/gpu/drm/msm/dp/dp_ctrl.h | 1 - drivers/gpu/drm/msm/dp/dp_display.c | 190 ++++++++++++------------------------ drivers/gpu/drm/msm/dp/dp_display.h | 2 + drivers/gpu/drm/msm/dp/dp_drm.c | 8 +- 5 files changed, 69 insertions(+), 154 deletions(-) --- base-commit: 7a88d609b069b7d2f4d10113b18fea02921bedb1 change-id: 20250523-hpd-refactor-74e25b55620a Best regards, -- Jessica Zhang <jessica.zh...@oss.qualcomm.com>