diff --git a/drivers/drm/meson_hdmi.c b/drivers/drm/meson_hdmi.c index 1b61e9e35..796d8f9a9 100644 --- a/drivers/drm/meson_hdmi.c +++ b/drivers/drm/meson_hdmi.c @@ -478,6 +478,10 @@ int meson_hdmitx_get_modes(struct drm_connector *connector) count++; } } + + connector->display_info.monitor_range.max_vfreq = am_hdmi_info.max_vfreq; + connector->display_info.monitor_range.min_vfreq = am_hdmi_info.min_vfreq; + return count; } @@ -1477,6 +1481,8 @@ static void meson_hdmitx_cal_brr(struct am_hdmi_tx *hdmitx, if (group->vrr_max >= brr) { brr = group->vrr_max; vic = group->brr_vic; + am_hdmi_info.min_vfreq = group->vrr_min; + am_hdmi_info.max_vfreq = group->vrr_max; } } } diff --git a/drivers/drm/meson_hdmi.h b/drivers/drm/meson_hdmi.h index 07d0dd49e..5d9b5a1c5 100644 --- a/drivers/drm/meson_hdmi.h +++ b/drivers/drm/meson_hdmi.h @@ -47,6 +47,9 @@ struct am_hdmi_tx { int hdmitx_on; + int min_vfreq; + int max_vfreq; + /* save sequence_id for drm connecter get raw edid */ u64 sequence_id;