From: Mika Kuoppala Date: Thu, 6 Aug 2015 14:00:59 +0000 (+0300) Subject: drm/i915: Use masked write for Context Status Buffer Pointer X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=cc53699b25b59eb1020af8064f99edd0014b7071;p=openwrt%2Fstaging%2Fblogic.git drm/i915: Use masked write for Context Status Buffer Pointer This register needs to be updated with masked writes. This was found by code inspection and comparison with Bspec and doesn't seem to fix any known issue. Signed-off-by: Mika Kuoppala Reviewed-by: Michel Thierry [danvet: Add note about impact.] Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c index 99bba8ece464..29347e7a9565 100644 --- a/drivers/gpu/drm/i915/intel_lrc.c +++ b/drivers/gpu/drm/i915/intel_lrc.c @@ -521,7 +521,7 @@ void intel_lrc_irq_handler(struct intel_engine_cs *ring) ring->next_context_status_buffer = write_pointer % 6; I915_WRITE(RING_CONTEXT_STATUS_PTR(ring), - ((u32)ring->next_context_status_buffer & 0x07) << 8); + _MASKED_FIELD(0x07 << 8, ((u32)ring->next_context_status_buffer & 0x07) << 8)); } static int execlists_context_queue(struct drm_i915_gem_request *request)