Skip to content

Commit cd6cc92

Browse files
Shixiong OuSasha Levin
Shixiong Ou
authored and
Sasha Levin
committed
drm/radeon: Delay Connector detecting when HPD singals is unstable
[ Upstream commit 949658c ] In some causes, HPD signals will jitter when plugging in or unplugging HDMI. Rescheduling the hotplug work for a second when EDID may still be readable but HDP is disconnected, and fixes this issue. Signed-off-by: Shixiong Ou <[email protected]> Signed-off-by: Alex Deucher <[email protected]> Stable-dep-of: 979bfe2 ("Revert "drm/radeon: Delay Connector detecting when HPD singals is unstable"") Signed-off-by: Sasha Levin <[email protected]>
1 parent 7802fc8 commit cd6cc92

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

drivers/gpu/drm/radeon/radeon_connectors.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1267,6 +1267,16 @@ radeon_dvi_detect(struct drm_connector *connector, bool force)
12671267
goto exit;
12681268
}
12691269
}
1270+
1271+
if (dret && radeon_connector->hpd.hpd != RADEON_HPD_NONE &&
1272+
!radeon_hpd_sense(rdev, radeon_connector->hpd.hpd) &&
1273+
connector->connector_type == DRM_MODE_CONNECTOR_HDMIA) {
1274+
DRM_DEBUG_KMS("EDID is readable when HPD disconnected\n");
1275+
schedule_delayed_work(&rdev->hotplug_work, msecs_to_jiffies(1000));
1276+
ret = connector_status_disconnected;
1277+
goto exit;
1278+
}
1279+
12701280
if (dret) {
12711281
radeon_connector->detected_by_load = false;
12721282
radeon_connector_free_edid(connector);

0 commit comments

Comments
 (0)