diff options
| author | Damien Lespiau <damien.lespiau@intel.com> | 2015-02-11 13:21:44 -0500 |
|---|---|---|
| committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-02-13 17:28:39 -0500 |
| commit | a86eb582e3863daa00f6f60355d7fb91252d0e43 (patch) | |
| tree | 478757bdf140338d42a362cc12e471c86d5f29de | |
| parent | 35c8ce6ac5c2efedf76912c86b2021a6e4ec1655 (diff) | |
drm/i915/skl: Use a LRI for WaDisableDgMirrorFixInHalfSliceChicken5
I have no idea how that crept in, but we need to do the write from the
ring and this is a masked register. Two fixes in 1!
Cc: Nick Hoath <nicholas.hoath@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Nick Hoath <nicholas.hoath@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
| -rw-r--r-- | drivers/gpu/drm/i915/intel_ringbuffer.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c index ab8ce4ceed2e..e758c0592675 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.c +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c | |||
| @@ -959,13 +959,9 @@ static int gen9_init_workarounds(struct intel_engine_cs *ring) | |||
| 959 | 959 | ||
| 960 | if (INTEL_REVID(dev) == SKL_REVID_A0 || | 960 | if (INTEL_REVID(dev) == SKL_REVID_A0 || |
| 961 | INTEL_REVID(dev) == SKL_REVID_B0) { | 961 | INTEL_REVID(dev) == SKL_REVID_B0) { |
| 962 | /* | 962 | /* WaDisableDgMirrorFixInHalfSliceChicken5:skl */ |
| 963 | * WaDisableDgMirrorFixInHalfSliceChicken5:skl | 963 | WA_CLR_BIT_MASKED(GEN9_HALF_SLICE_CHICKEN5, |
| 964 | * This is a pre-production w/a. | 964 | GEN9_DG_MIRROR_FIX_ENABLE); |
| 965 | */ | ||
| 966 | I915_WRITE(GEN9_HALF_SLICE_CHICKEN5, | ||
| 967 | I915_READ(GEN9_HALF_SLICE_CHICKEN5) & | ||
| 968 | ~GEN9_DG_MIRROR_FIX_ENABLE); | ||
| 969 | } | 965 | } |
| 970 | 966 | ||
| 971 | if (IS_SKYLAKE(dev) && INTEL_REVID(dev) <= SKL_REVID_B0) { | 967 | if (IS_SKYLAKE(dev) && INTEL_REVID(dev) <= SKL_REVID_B0) { |
