]> git.itanic.dy.fi Git - linux-stable/blobdiff - drivers/gpu/drm/i915/display/intel_psr.c
drm/i915/display: Fix handling of enable_psr parameter
[linux-stable] / drivers / gpu / drm / i915 / display / intel_psr.c
index 195ed963112881312f0cf735177f0f10cf747722..8f09203e0cf03f5a5d66f51a6136b5e7a7283e69 100644 (file)
 
 static bool psr_global_enabled(struct intel_dp *intel_dp)
 {
+       struct intel_connector *connector = intel_dp->attached_connector;
        struct drm_i915_private *i915 = dp_to_i915(intel_dp);
 
        switch (intel_dp->psr.debug & I915_PSR_DEBUG_MODE_MASK) {
        case I915_PSR_DEBUG_DEFAULT:
+               if (i915->params.enable_psr == -1)
+                       return connector->panel.vbt.psr.enable;
                return i915->params.enable_psr;
        case I915_PSR_DEBUG_DISABLE:
                return false;
@@ -2371,10 +2374,6 @@ void intel_psr_init(struct intel_dp *intel_dp)
 
        intel_dp->psr.source_support = true;
 
-       if (dev_priv->params.enable_psr == -1)
-               if (!connector->panel.vbt.psr.enable)
-                       dev_priv->params.enable_psr = 0;
-
        /* Set link_standby x link_off defaults */
        if (DISPLAY_VER(dev_priv) < 12)
                /* For new platforms up to TGL let's respect VBT back again */