summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/i915/display/intel_dp.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 5381b993a346..a80d96ced198 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -4455,6 +4455,12 @@ intel_dp_detect(struct drm_connector *connector,
memset(&intel_dp->compliance, 0, sizeof(intel_dp->compliance));
memset(intel_dp->dsc_dpcd, 0, sizeof(intel_dp->dsc_dpcd));
+ /* Reset VRR Capable property */
+ drm_dbg_kms(&dev_priv->drm, "[CONNECTOR:%d:%s] VRR capable: FALSE\n",
+ connector->base.id, connector->name);
+ drm_connector_set_vrr_capable_property(connector,
+ false);
+
if (intel_dp->is_mst) {
drm_dbg_kms(&dev_priv->drm,
"MST device may have disappeared %d vs %d\n",
@@ -4569,15 +4575,18 @@ static int intel_dp_get_modes(struct drm_connector *connector)
{
struct intel_connector *intel_connector = to_intel_connector(connector);
struct edid *edid;
+ struct drm_i915_private *i915 = to_i915(connector->dev);
int num_modes = 0;
edid = intel_connector->detect_edid;
if (edid) {
- num_modes = intel_connector_update_modes(connector, edid);
+ bool vrr_capable;
- if (intel_vrr_is_capable(connector))
- drm_connector_set_vrr_capable_property(connector,
- true);
+ num_modes = intel_connector_update_modes(connector, edid);
+ vrr_capable = intel_vrr_is_capable(connector);
+ drm_dbg_kms(&i915->drm, "[CONNECTOR:%d:%s] VRR capable: %s\n",
+ connector->base.id, connector->name, yesno(vrr_capable));
+ drm_connector_set_vrr_capable_property(connector, vrr_capable);
}
/* Also add fixed mode, which may or may not be present in EDID */