aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/intel_pm.c')
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index d99e5fabe93c..1db9b8328275 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -2875,6 +2875,16 @@ static void intel_read_wm_latency(struct drm_i915_private *dev_priv,
2875 } 2875 }
2876 } 2876 }
2877 2877
2878 /*
2879 * WA Level-0 adjustment for 16GB DIMMs: SKL+
2880 * If we could not get dimm info enable this WA to prevent from
2881 * any underrun. If not able to get Dimm info assume 16GB dimm
2882 * to avoid any underrun.
2883 */
2884 if (!dev_priv->dram_info.valid_dimm ||
2885 dev_priv->dram_info.is_16gb_dimm)
2886 wm[0] += 1;
2887
2878 } else if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) { 2888 } else if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) {
2879 uint64_t sskpd = I915_READ64(MCH_SSKPD); 2889 uint64_t sskpd = I915_READ64(MCH_SSKPD);
2880 2890
@@ -6108,10 +6118,13 @@ void intel_enable_ipc(struct drm_i915_private *dev_priv)
6108 u32 val; 6118 u32 val;
6109 6119
6110 /* Display WA #0477 WaDisableIPC: skl */ 6120 /* Display WA #0477 WaDisableIPC: skl */
6111 if (IS_SKYLAKE(dev_priv)) { 6121 if (IS_SKYLAKE(dev_priv))
6122 dev_priv->ipc_enabled = false;
6123
6124 /* Display WA #1141: SKL:all KBL:all CFL */
6125 if ((IS_KABYLAKE(dev_priv) || IS_COFFEELAKE(dev_priv)) &&
6126 !dev_priv->dram_info.symmetric_memory)
6112 dev_priv->ipc_enabled = false; 6127 dev_priv->ipc_enabled = false;
6113 return;
6114 }
6115 6128
6116 val = I915_READ(DISP_ARB_CTL2); 6129 val = I915_READ(DISP_ARB_CTL2);
6117 6130