Hi,

On Lenovo ThinkPad T14s Gen 6 (Snapdragon X1E78100, kernel 7.0.0-29-qcom-x1e), the external DisplayPort output via USB-C Alt Mode fails to recover after a prolonged s2idle suspend. After waking, the msm-dp-display driver attempts link training but immediately hits max voltage swing level and fails:

  [drm:msm_dp_ctrl_link_train_1] *ERROR* max v_level reached
  [drm:msm_dp_ctrl_link_train_1_2] *ERROR* link training #1 on phy 0 failed. ret=-11   [drm:msm_dp_ctrl_link_train] *ERROR* link training on sink failed. ret=-11   [drm:msm_dp_display_process_hpd_high] *ERROR* failed to complete DP link training

The failure also produces an EDID read failure during the suspend/resume transition itself:

  [drm:msm_dp_panel_read_sink_caps] *ERROR* panel edid read failed

The issue is reproducible after longer suspends (multi-hour/overnight) but not always after short ones, suggesting the PHY voltage swing and pre-emphasis state is not being reset before link training is re-attempted on resume.

Affected controllers: ae90000.displayport-controller, ae98000.displayport-controller (USB-C DP Alt Mode). ae9a000 and aea0000 (internal eDP) are unaffected.

Hardware: Lenovo ThinkPad T14s Gen 6, Snapdragon X1E78100
Kernel: 7.0.0-29-qcom-x1e (ubuntu upstream for these AMR64 cpu laptops)
Dock: Dell D6000 via USB-C
OS: Ubuntu 26.04 beta

Happy to provide further logs or test patches.

Nino

Reply via email to