From: Paulo Zanoni <paulo.r.zan...@intel.com>

A previous commit added CNL to intel_has_sagv(), but forgot to adjust
the SAGV block time to gen 10 platforms.

Cc: Mahesh Kumar <mahesh1.ku...@intel.com>
Cc: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zan...@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.v...@intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 47b0be404acb..dac05ff1f970 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -3538,8 +3538,6 @@ bool ilk_disable_lp_wm(struct drm_device *dev)
        return _ilk_disable_lp_wm(dev_priv, WM_DIRTY_LP_ALL);
 }
 
-#define SKL_SAGV_BLOCK_TIME    30 /* µs */
-
 /*
  * FIXME: We still don't have the proper code detect if we need to apply the 
WA,
  * so assume we'll always need it in order to avoid underruns.
@@ -3664,12 +3662,13 @@ bool intel_can_enable_sagv(struct drm_atomic_state 
*state)
        struct intel_crtc_state *cstate;
        enum pipe pipe;
        int level, latency;
+       int sagv_block_time_us = IS_GEN9(dev_priv) ? 30 : 20;
 
        if (!intel_has_sagv(dev_priv))
                return false;
 
        /*
-        * SKL workaround: bspec recommends we disable the SAGV when we have
+        * SKL+ workaround: bspec recommends we disable the SAGV when we have
         * more then one pipe enabled
         *
         * If there are no active CRTCs, no additional checks need be performed
@@ -3708,11 +3707,11 @@ bool intel_can_enable_sagv(struct drm_atomic_state 
*state)
                        latency += 15;
 
                /*
-                * If any of the planes on this pipe don't enable wm levels
-                * that incur memory latencies higher then 30µs we can't enable
-                * the SAGV
+                * If any of the planes on this pipe don't enable wm levels that
+                * incur memory latencies higher than sagv_block_time_us we
+                * can't enable the SAGV.
                 */
-               if (latency < SKL_SAGV_BLOCK_TIME)
+               if (latency < sagv_block_time_us)
                        return false;
        }
 
-- 
2.13.2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to