drm/i915/dp: Simplify forcing a link retraining

Since both the DP SST and MST HPD IRQ handlers call
intel_dp_handle_link_service_irq() with LINK_STATUS_CHANGED set in
irq_mask if intel_dp->link.force_retrain is set, checking for the former
flag is sufficient to determine if the link status needs to be checked
(which includes retraining the link if this is forced); remove checking
for the latter flag.

Since LINK_STATUS_CHANGED is currently set unconditionally for DP SST,
extend the related comment to note that it must be set if
intel_dp->link.force_retrain is set (in case setting LINK_STATUS_CHANGED
becomes conditional on DPCD_REV).

Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260311153152.133744-2-imre.deak@intel.com
This commit is contained in:
Imre Deak
2026-03-11 17:31:52 +02:00
parent e41e992cb6
commit 95acbb0746

View File

@@ -5925,7 +5925,7 @@ static bool intel_dp_handle_link_service_irq(struct intel_dp *intel_dp, u8 irq_m
if (irq_mask & RX_CAP_CHANGED)
reprobe_needed = true;
if ((irq_mask & LINK_STATUS_CHANGED) || intel_dp->link.force_retrain)
if (irq_mask & LINK_STATUS_CHANGED)
intel_dp_check_link_state(intel_dp);
if (irq_mask & HDMI_LINK_STATUS_CHANGED)
@@ -5984,7 +5984,7 @@ intel_dp_short_pulse(struct intel_dp *intel_dp)
/*
* Force checking the link status for DPCD_REV < 1.2
* TODO: let the link status check depend on LINK_STATUS_CHANGED
* for DPCD_REV >= 1.2
* or intel_dp->link.force_retrain for DPCD_REV >= 1.2
*/
esi[3] |= LINK_STATUS_CHANGED;
if (intel_dp_handle_link_service_irq(intel_dp, esi[3]))