drm/amd/display: Update MST edid property every time
authorJerry (Fangzhi) Zuo <Jerry.Zuo@amd.com>
Tue, 17 Apr 2018 17:49:48 +0000 (13:49 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 15 May 2018 18:44:12 +0000 (13:44 -0500)
Extended fix to: "Don't read EDID in atomic_check"

Fix display property not observed in GUI display after hot plug.

Call drm_mode_connector_update_edid_property every time in
.get_modes hook, due to the fact that edid property is getting
removed from usermode ioctl DRM_IOCTL_MODE_GETCONNECTOR each time
in hot unplug.

Signed-off-by: Jerry (Fangzhi) Zuo <Jerry.Zuo@amd.com>
Reviewed-by: Harry Wentland <Harry.Wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c

index 305292a9ff804ca404293a74ec2d6ca56509bddf..8c1d084429dc4a1638c99a9884e8813b5c9f6bf1 100644 (file)
@@ -253,11 +253,11 @@ static int dm_dp_mst_get_modes(struct drm_connector *connector)
                if (aconnector->dc_sink)
                        amdgpu_dm_add_sink_to_freesync_module(
                                        connector, edid);
-
-               drm_mode_connector_update_edid_property(
-                                               &aconnector->base, edid);
        }
 
+       drm_mode_connector_update_edid_property(
+                                       &aconnector->base, aconnector->edid);
+
        ret = drm_add_edid_modes(connector, aconnector->edid);
 
        return ret;