On 3/12/24 09:47, Harry Wentland wrote:
We need the min/max vfreq on the amdgpu_dm_connector in order to
program VRR.

Fixes: db3e4f1cbb84 ("drm/amd/display: Use freesync when 
`DRM_EDID_FEATURE_CONTINUOUS_FREQ` found")
Signed-off-by: Harry Wentland <harry.wentl...@amd.com>

Acked-by: Hamza Mahfooz <hamza.mahf...@amd.com>

---
  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 7 +++++--
  1 file changed, 5 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 b1ca0aee0b30..cffb2655177c 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -11278,12 +11278,15 @@ void amdgpu_dm_update_freesync_caps(struct 
drm_connector *connector,
if (is_dp_capable_without_timing_msa(adev->dm.dc,
                                                     amdgpu_dm_connector)) {
-                       if (edid->features & DRM_EDID_FEATURE_CONTINUOUS_FREQ)
+                       if (edid->features & DRM_EDID_FEATURE_CONTINUOUS_FREQ) {
                                freesync_capable = true;
-                       else
+                               amdgpu_dm_connector->min_vfreq = 
connector->display_info.monitor_range.min_vfreq;
+                               amdgpu_dm_connector->max_vfreq = 
connector->display_info.monitor_range.max_vfreq;
+                       } else {
                                edid_check_required = edid->version > 1 ||
                                                      (edid->version == 1 &&
                                                       edid->revision > 1);
+                       }
                }
if (edid_check_required) {
--
Hamza

Reply via email to