[SRU][R][PATCH 1/1] UBUNTU: SAUCE: drm/i915/tc: Revert forced DP-alt connected workaround
ChunAn Wu
an.wu at canonical.com
Tue Aug 11 06:18:39 UTC 2026
BugLink: https://bugs.launchpad.net/bugs/2160082
The reverted workaround made intel_tc_port_connected() return true when a
TC port has an active link reference, is in DP-alt mode, and the display
still owns the PHY. That was added to avoid a false disconnect during a
long HPD pulse from the HP Type-C to HDMI dongle tracked by LP: #2143879.
The original issue is now fixed in TC firmware, so the kernel workaround
is no longer required. It is also too broad: TC PHY ownership and
link_refcount are driver/ownership state, not proof that the sink is still
present. During a real USB-C/TBT dock unplug the PHY can remain owned
while the sink is already gone, causing the port to be reported connected
incorrectly.
When the port is forced connected, the disconnected-port AUX fast-fail
path does not run. The driver then attempts real AUX transactions against
a removed sink and can spend seconds in repeated -ETIMEDOUT retries,
causing display stalls/freezes.
Revert the workaround so TC port connected state is again based on live
status. This lets real disconnects return -ENXIO from the AUX guard while
relying on the firmware fix for the original transient HPD issue.
This reverts commit e9cdae7685d79e4cb30337a9f771a245febd5557.
Signed-off-by: ChunAn Wu <an.wu at canonical.com>
---
drivers/gpu/drm/i915/display/intel_tc.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_tc.c b/drivers/gpu/drm/i915/display/intel_tc.c
index 87b635c0667a..18218e450b16 100644
--- a/drivers/gpu/drm/i915/display/intel_tc.c
+++ b/drivers/gpu/drm/i915/display/intel_tc.c
@@ -1733,11 +1733,6 @@ bool intel_tc_port_connected(struct intel_encoder *encoder)
if (tc->mode != TC_PORT_DISCONNECTED)
mask = BIT(tc->mode);
- if (tc->link_refcount > 0 &&
- tc->mode == TC_PORT_DP_ALT &&
- tc_phy_is_owned(tc))
- return true;
-
return tc_phy_hpd_live_status(tc) & mask;
}
--
2.34.1
More information about the kernel-team
mailing list