Ping? On Wed, Feb 28, 2024 at 4:12 PM Alex Deucher <alexander.deucher@xxxxxxx> wrote: > > Need to check the offset bits for values greater than 255. > > v2: also update amdgpu_dm_connector values. > > Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3203 > Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 19 ++++++++++++++----- > 1 file changed, 14 insertions(+), 5 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 32efce81a5a74..4e4cbf2e33dd2 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > @@ -11292,14 +11292,23 @@ void amdgpu_dm_update_freesync_caps(struct drm_connector *connector, > if (range->flags != 1) > continue; > > - amdgpu_dm_connector->min_vfreq = range->min_vfreq; > - amdgpu_dm_connector->max_vfreq = range->max_vfreq; > - amdgpu_dm_connector->pixel_clock_mhz = > - range->pixel_clock_mhz * 10; > - > connector->display_info.monitor_range.min_vfreq = range->min_vfreq; > connector->display_info.monitor_range.max_vfreq = range->max_vfreq; > > + if (edid->revision >= 4) { > + if (data->pad2 & DRM_EDID_RANGE_OFFSET_MIN_VFREQ) > + connector->display_info.monitor_range.min_vfreq += 255; > + if (data->pad2 & DRM_EDID_RANGE_OFFSET_MAX_VFREQ) > + connector->display_info.monitor_range.max_vfreq += 255; > + } > + > + amdgpu_dm_connector->min_vfreq = > + connector->display_info.monitor_range.min_vfreq; > + amdgpu_dm_connector->max_vfreq = > + connector->display_info.monitor_range.max_vfreq; > + amdgpu_dm_connector->pixel_clock_mhz = > + range->pixel_clock_mhz * 10; > + > break; > } > > -- > 2.44.0 >