summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
authorJosé Roberto de Souza2018-09-18 22:47:13 +0200
committerRodrigo Vivi2018-09-27 02:06:22 +0200
commitc9b818d3f9f4eca54a2ad3083b4584f453b20bed (patch)
treefb2292ad539a58cb24709a3c6b35fe9820d52c17 /drivers/gpu/drm/i915/intel_pm.c
parentdrm/i915: Move SKL IPC WA to HAS_IPC() (diff)
downloadkernel-qcow2-linux-c9b818d3f9f4eca54a2ad3083b4584f453b20bed.tar.gz
kernel-qcow2-linux-c9b818d3f9f4eca54a2ad3083b4584f453b20bed.tar.xz
kernel-qcow2-linux-c9b818d3f9f4eca54a2ad3083b4584f453b20bed.zip
drm/i915: Move IPC WA #1141 to init_ipc()
symmetric_memory do not change after initialization so lets just set ipc_enabled once for this WA. Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20180918204714.27306-5-jose.souza@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_pm.c')
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 538bcde0bf7d..1392aa56a55a 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -6120,11 +6120,6 @@ void intel_enable_ipc(struct drm_i915_private *dev_priv)
if (!HAS_IPC(dev_priv))
return;
- /* Display WA #1141: SKL:all KBL:all CFL */
- if ((IS_KABYLAKE(dev_priv) || IS_COFFEELAKE(dev_priv)) &&
- !dev_priv->dram_info.symmetric_memory)
- dev_priv->ipc_enabled = false;
-
val = I915_READ(DISP_ARB_CTL2);
if (dev_priv->ipc_enabled)
@@ -6140,7 +6135,12 @@ void intel_init_ipc(struct drm_i915_private *dev_priv)
if (!HAS_IPC(dev_priv))
return;
- dev_priv->ipc_enabled = true;
+ /* Display WA #1141: SKL:all KBL:all CFL */
+ if (IS_KABYLAKE(dev_priv) || IS_COFFEELAKE(dev_priv))
+ dev_priv->ipc_enabled = dev_priv->dram_info.symmetric_memory;
+ else
+ dev_priv->ipc_enabled = true;
+
intel_enable_ipc(dev_priv);
}