diff options
author | Wayne Lin <Wayne.Lin@amd.com> | 2022-06-22 19:36:49 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2022-07-12 16:50:29 -0400 |
commit | 922e7ee31defe461d8638f1277f0c8215c0707e6 (patch) | |
tree | ef9ff27e5e86d9564b2c9a81b70f9367dbb8b979 /drivers/gpu/drm/amd/display/amdgpu_dm | |
parent | 9dfc3ee1b0f22d9415c9b7c316447d47d4a702d1 (diff) | |
download | linux-922e7ee31defe461d8638f1277f0c8215c0707e6.tar.bz2 |
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: Hersen Wu <hersen.wu@amd.com>
Acked-by: Solomon Chiu <solomon.chiu@amd.com>
Signed-off-by: Wayne Lin <Wayne.Lin@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/amdgpu_dm')
-rw-r--r-- | drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c index f3ce37664143..03ca9083f5e9 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c @@ -160,6 +160,7 @@ amdgpu_dm_mst_connector_early_unregister(struct drm_connector *connector) dc_sink_release(dc_sink); aconnector->dc_sink = NULL; + aconnector->edid = NULL; } drm_modeset_unlock(&root->mst_mgr.base.lock); } @@ -411,6 +412,7 @@ dm_dp_mst_detect(struct drm_connector *connector, dc_sink_release(aconnector->dc_sink); aconnector->dc_sink = NULL; + aconnector->edid = NULL; } return connection_status; |