linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/19] drm/msm/dp: Drop the HPD state machine
@ 2025-07-12  0:58 Jessica Zhang
  2025-07-12  0:58 ` [PATCH 01/19] drm/msm/dp: Track when DP is physically plugged in Jessica Zhang
                   ` (18 more replies)
  0 siblings, 19 replies; 30+ messages in thread
From: Jessica Zhang @ 2025-07-12  0:58 UTC (permalink / raw)
  To: Rob Clark, Abhinav Kumar, Dmitry Baryshkov, Sean Paul,
	Marijn Suijten, David Airlie, Simona Vetter, Jessica Zhang
  Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, Yongxing Mou,
	Abhinav Kumar

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.zhang@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2025-08-02 10:18 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-12  0:58 [PATCH 00/19] drm/msm/dp: Drop the HPD state machine Jessica Zhang
2025-07-12  0:58 ` [PATCH 01/19] drm/msm/dp: Track when DP is physically plugged in Jessica Zhang
2025-07-14 11:42   ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 02/19] drm/msm/dp: remove redundant checks related to ST_DISPLAY_OFF in plug/irq_ipd handlers Jessica Zhang
2025-07-12  0:58 ` [PATCH 03/19] drm/msm/dp: Return early from atomic_enable() if cable is not connected Jessica Zhang
2025-07-14 11:47   ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 04/19] drm/msm/dp: replace ST_DISPLAY_OFF with power_on in msm_dp_hpd_unplug_handle() Jessica Zhang
2025-07-14 12:27   ` Dmitry Baryshkov
2025-07-14 20:38     ` Jessica Zhang
2025-07-14 22:28       ` Dmitry Baryshkov
2025-07-14 20:47     ` Jessica Zhang
2025-07-12  0:58 ` [PATCH 05/19] drm/msm/dp: Replace ST_MAINLINK_READY with link_ready in plug/hpd_irq handlers Jessica Zhang
2025-07-12  0:58 ` [PATCH 06/19] drm/msm/dp: Replace ST_DISCONNECTED with checks for connected Jessica Zhang
2025-07-12  0:58 ` [PATCH 07/19] drm/msm/dp: Rework unplug handling Jessica Zhang
2025-07-12  0:58 ` [PATCH 08/19] drm/msm/dp: Don't delay plug-in handling when ST_DISCONNECT_PENDING Jessica Zhang
2025-07-12  0:58 ` [PATCH 09/19] drm/msm/dp: Replace ST_DISPLAY_OFF with power_on in atomic_enable() Jessica Zhang
2025-07-12  0:58 ` [PATCH 10/19] drm/msm/dp: Check if DP is disconnected in atomic post_disable() Jessica Zhang
2025-07-12  0:58 ` [PATCH 11/19] drm/msm/dp: remove ST_DISPLAY_OFF as a hpd_state Jessica Zhang
2025-07-12  0:58 ` [PATCH 12/19] drm/msm/dp: Drop ST_MAINLINK_READY hpd_state Jessica Zhang
2025-07-12  0:58 ` [PATCH 13/19] drm/msm/dp: Drop ST_DISCONNECTED Jessica Zhang
2025-07-12  0:58 ` [PATCH 14/19] drm/msm/dp: Drop ST_CONNECTED Jessica Zhang
2025-07-12  0:58 ` [PATCH 15/19] drm/msm/dp: Drop ST_DISCONNECT_PENDING Jessica Zhang
2025-07-12  0:58 ` [PATCH 16/19] drm/msm/dp: Drop hpd_state from msm_dp Jessica Zhang
2025-07-12  0:58 ` [PATCH 17/19] drm/msm/dp: Use drm_bridge_hpd_notify() Jessica Zhang
2025-07-14 12:25   ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 18/19] drm/msm/dp: Move link training to atomic_enable() Jessica Zhang
2025-07-14 11:54   ` Dmitry Baryshkov
2025-08-01 23:58     ` Jessica Zhang
2025-08-02 10:18       ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 19/19] drm/msm/dp: Log connected and link_ready for event handling Jessica Zhang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).