Commit 922e7ee3 authored by Wayne Lin's avatar Wayne Lin Committed by Alex Deucher

drm/amd/display: Clear edid when unplug mst connector

[Why]
When unplug one sst monitor from a mst hub and plug in the same
port with another sst monitor, we don't read the corresponding
edid. That's because we detect there is already an edid stored in
aconnector->edid which is a stale one.

[How]
Clean up aconnector->edid when unplug mst connector.
Reviewed-by: default avatarHersen Wu <hersen.wu@amd.com>
Acked-by: default avatarSolomon Chiu <solomon.chiu@amd.com>
Signed-off-by: default avatarWayne Lin <Wayne.Lin@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 9dfc3ee1
...@@ -160,6 +160,7 @@ amdgpu_dm_mst_connector_early_unregister(struct drm_connector *connector) ...@@ -160,6 +160,7 @@ amdgpu_dm_mst_connector_early_unregister(struct drm_connector *connector)
dc_sink_release(dc_sink); dc_sink_release(dc_sink);
aconnector->dc_sink = NULL; aconnector->dc_sink = NULL;
aconnector->edid = NULL;
} }
drm_modeset_unlock(&root->mst_mgr.base.lock); drm_modeset_unlock(&root->mst_mgr.base.lock);
} }
...@@ -411,6 +412,7 @@ dm_dp_mst_detect(struct drm_connector *connector, ...@@ -411,6 +412,7 @@ dm_dp_mst_detect(struct drm_connector *connector,
dc_sink_release(aconnector->dc_sink); dc_sink_release(aconnector->dc_sink);
aconnector->dc_sink = NULL; aconnector->dc_sink = NULL;
aconnector->edid = NULL;
} }
return connection_status; return connection_status;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment