Update connector caps with drm_edid data before parsing info for
freesync.

Signed-off-by: Melissa Wen <m...@igalia.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index edc5418db5be..b3c396d626e9 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -3292,13 +3292,11 @@ void amdgpu_dm_update_connector_after_detect(
                                        "failed to create 
aconnector->requested_timing\n");
                }
 
-               drm_edid_connector_update(connector, aconnector->edid);
                amdgpu_dm_update_freesync_caps(connector, aconnector->edid);
                update_connector_ext_caps(aconnector);
        } else {
                drm_dp_cec_unset_edid(&aconnector->dm_dp_aux.aux);
                amdgpu_dm_update_freesync_caps(connector, NULL);
-               drm_edid_connector_update(connector, NULL);
                aconnector->num_modes = 0;
                dc_sink_release(aconnector->dc_sink);
                aconnector->dc_sink = NULL;
@@ -11249,6 +11247,8 @@ void amdgpu_dm_update_freesync_caps(struct 
drm_connector *connector,
                amdgpu_dm_connector->dc_sink :
                amdgpu_dm_connector->dc_em_sink;
 
+       drm_edid_connector_update(connector, drm_edid);
+
        if (!drm_edid || !sink) {
                dm_con_state = to_dm_connector_state(connector->state);
 
-- 
2.43.0

Reply via email to