diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_ringbuffer.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c index f75806e5bff5..62892a826ede 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.c +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c | |||
@@ -398,6 +398,17 @@ static int init_render_ring(struct intel_ring_buffer *ring) | |||
398 | return ret; | 398 | return ret; |
399 | } | 399 | } |
400 | 400 | ||
401 | |||
402 | if (IS_GEN6(dev)) { | ||
403 | /* From the Sandybridge PRM, volume 1 part 3, page 24: | ||
404 | * "If this bit is set, STCunit will have LRA as replacement | ||
405 | * policy. [...] This bit must be reset. LRA replacement | ||
406 | * policy is not supported." | ||
407 | */ | ||
408 | I915_WRITE(CACHE_MODE_0, | ||
409 | CM0_STC_EVICT_DISABLE_LRA_SNB << CM0_MASK_SHIFT); | ||
410 | } | ||
411 | |||
401 | if (INTEL_INFO(dev)->gen >= 6) { | 412 | if (INTEL_INFO(dev)->gen >= 6) { |
402 | I915_WRITE(INSTPM, | 413 | I915_WRITE(INSTPM, |
403 | INSTPM_FORCE_ORDERING << 16 | INSTPM_FORCE_ORDERING); | 414 | INSTPM_FORCE_ORDERING << 16 | INSTPM_FORCE_ORDERING); |