diff options
author | Oscar Mateo <oscar.mateo@intel.com> | 2018-05-08 17:29:29 -0400 |
---|---|---|
committer | Mika Kuoppala <mika.kuoppala@linux.intel.com> | 2018-05-11 08:56:08 -0400 |
commit | 6b967dc392090831954644549676409ca22fe8bf (patch) | |
tree | 27617e2633cae9c8915333616f713fb352af577c | |
parent | 5246ae4bdb4ceae9778a7966db1d9522c6cb0ea7 (diff) |
drm/i915/icl: WaCL2SFHalfMaxAlloc
This workarounds an issue with insufficient storage for the
CL2 and SF units.
v2: Renamed to Wa_1405766107
v3: Wrapped the commit message
v4: Rebased on top of the WA refactoring
v5: Added References (Mika)
v6:
- Rebased
- s/MACALLOC/MAXALLOC (Mika)
- C, not lisp (Chris)
References: HSDES#1405766107
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1525814984-20039-8-git-send-email-oscar.mateo@intel.com
-rw-r--r-- | drivers/gpu/drm/i915/i915_reg.h | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_workarounds.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index a7bd739fde82..d325fad480f0 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h | |||
@@ -8269,6 +8269,10 @@ enum { | |||
8269 | #define GEN11_HASH_CTRL_BIT0 (1 << 0) | 8269 | #define GEN11_HASH_CTRL_BIT0 (1 << 0) |
8270 | #define GEN11_HASH_CTRL_BIT4 (1 << 12) | 8270 | #define GEN11_HASH_CTRL_BIT4 (1 << 12) |
8271 | 8271 | ||
8272 | #define GEN11_LSN_UNSLCVC _MMIO(0xB43C) | ||
8273 | #define GEN11_LSN_UNSLCVC_GAFS_HALF_CL2_MAXALLOC (1 << 9) | ||
8274 | #define GEN11_LSN_UNSLCVC_GAFS_HALF_SF_MAXALLOC (1 << 7) | ||
8275 | |||
8272 | /* IVYBRIDGE DPF */ | 8276 | /* IVYBRIDGE DPF */ |
8273 | #define GEN7_L3CDERRST1(slice) _MMIO(0xB008 + (slice) * 0x200) /* L3CD Error Status 1 */ | 8277 | #define GEN7_L3CDERRST1(slice) _MMIO(0xB008 + (slice) * 0x200) /* L3CD Error Status 1 */ |
8274 | #define GEN7_L3CDERRST1_ROW_MASK (0x7ff<<14) | 8278 | #define GEN7_L3CDERRST1_ROW_MASK (0x7ff<<14) |
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c index 7e8bcc2ae091..a6758bdd74dd 100644 --- a/drivers/gpu/drm/i915/intel_workarounds.c +++ b/drivers/gpu/drm/i915/intel_workarounds.c | |||
@@ -726,6 +726,13 @@ static void icl_gt_workarounds_apply(struct drm_i915_private *dev_priv) | |||
726 | */ | 726 | */ |
727 | I915_WRITE(GEN8_L3SQCREG4, I915_READ(GEN8_L3SQCREG4) | | 727 | I915_WRITE(GEN8_L3SQCREG4, I915_READ(GEN8_L3SQCREG4) | |
728 | GEN11_LQSC_CLEAN_EVICT_DISABLE); | 728 | GEN11_LQSC_CLEAN_EVICT_DISABLE); |
729 | |||
730 | /* Wa_1405766107:icl | ||
731 | * Formerly known as WaCL2SFHalfMaxAlloc | ||
732 | */ | ||
733 | I915_WRITE(GEN11_LSN_UNSLCVC, I915_READ(GEN11_LSN_UNSLCVC) | | ||
734 | GEN11_LSN_UNSLCVC_GAFS_HALF_SF_MAXALLOC | | ||
735 | GEN11_LSN_UNSLCVC_GAFS_HALF_CL2_MAXALLOC); | ||
729 | } | 736 | } |
730 | 737 | ||
731 | void intel_gt_workarounds_apply(struct drm_i915_private *dev_priv) | 738 | void intel_gt_workarounds_apply(struct drm_i915_private *dev_priv) |