diff options
author | Mika Kuoppala <mika.kuoppala@linux.intel.com> | 2016-06-07 10:19:06 -0400 |
---|---|---|
committer | Mika Kuoppala <mika.kuoppala@intel.com> | 2016-07-15 08:51:26 -0400 |
commit | b90420467232529a4448364d8bd860fc0176d3b6 (patch) | |
tree | 1dda22c75604a54a3692b972ec1e061fb9f556d6 | |
parent | 4ac4199434ac1d847e02c61a6e9d1cb35bb91b0e (diff) |
drm/i915/kbl: Add WaDisableDynamicCreditSharing
Bspec states that we need to turn off dynamic credit
sharing on kbl revid a0 and b0. This happens by writing bit 28
on 0x4ab8.
References: HSD#2225601, HSD#2226938, HSD#2225763
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1465309159-30531-15-git-send-email-mika.kuoppala@intel.com
(cherry picked from commit c0b730d572ea00d427f6112b17982c6b9d5e97bb)
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
-rw-r--r-- | drivers/gpu/drm/i915/i915_reg.h | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_ringbuffer.c | 5 |
2 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index 3e16b9dadd92..b7cfb38c3fb8 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h | |||
@@ -1672,6 +1672,9 @@ enum skl_disp_power_wells { | |||
1672 | 1672 | ||
1673 | #define GEN7_TLB_RD_ADDR _MMIO(0x4700) | 1673 | #define GEN7_TLB_RD_ADDR _MMIO(0x4700) |
1674 | 1674 | ||
1675 | #define GAMT_CHKN_BIT_REG _MMIO(0x4ab8) | ||
1676 | #define GAMT_CHKN_DISABLE_DYNAMIC_CREDIT_SHARING (1<<28) | ||
1677 | |||
1675 | #if 0 | 1678 | #if 0 |
1676 | #define PRB0_TAIL _MMIO(0x2030) | 1679 | #define PRB0_TAIL _MMIO(0x2030) |
1677 | #define PRB0_HEAD _MMIO(0x2034) | 1680 | #define PRB0_HEAD _MMIO(0x2034) |
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c index 421e03d99c28..8106a700681a 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.c +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c | |||
@@ -1202,6 +1202,11 @@ static int kbl_init_workarounds(struct intel_engine_cs *engine) | |||
1202 | I915_WRITE(GEN8_GARBCNTL, (I915_READ(GEN8_GARBCNTL) | | 1202 | I915_WRITE(GEN8_GARBCNTL, (I915_READ(GEN8_GARBCNTL) | |
1203 | GEN9_GAPS_TSV_CREDIT_DISABLE)); | 1203 | GEN9_GAPS_TSV_CREDIT_DISABLE)); |
1204 | 1204 | ||
1205 | /* WaDisableDynamicCreditSharing:kbl */ | ||
1206 | if (IS_KBL_REVID(dev_priv, 0, KBL_REVID_B0)) | ||
1207 | WA_SET_BIT(GAMT_CHKN_BIT_REG, | ||
1208 | GAMT_CHKN_DISABLE_DYNAMIC_CREDIT_SHARING); | ||
1209 | |||
1205 | /* WaDisableFenceDestinationToSLM:kbl (pre-prod) */ | 1210 | /* WaDisableFenceDestinationToSLM:kbl (pre-prod) */ |
1206 | if (IS_KBL_REVID(dev_priv, KBL_REVID_A0, KBL_REVID_A0)) | 1211 | if (IS_KBL_REVID(dev_priv, KBL_REVID_A0, KBL_REVID_A0)) |
1207 | WA_SET_BIT_MASKED(HDC_CHICKEN0, | 1212 | WA_SET_BIT_MASKED(HDC_CHICKEN0, |