From: Greg Kroah-Hartman Date: Fri, 28 Sep 2012 16:09:50 +0000 (-0700) Subject: 3.4-stable patches X-Git-Tag: v3.0.44~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fe5c0e112de51710ee293a2ec3f340067fd19b79;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: revert-drm-i915-correctly-order-the-ring-init-sequence.patch --- diff --git a/queue-3.4/revert-drm-i915-correctly-order-the-ring-init-sequence.patch b/queue-3.4/revert-drm-i915-correctly-order-the-ring-init-sequence.patch new file mode 100644 index 00000000000..818e16392a4 --- /dev/null +++ b/queue-3.4/revert-drm-i915-correctly-order-the-ring-init-sequence.patch @@ -0,0 +1,45 @@ +From foo@baz Fri Sep 28 09:06:10 PDT 2012 +Date: Fri, 28 Sep 2012 09:06:10 -0700 +From: Greg Kroah-Hartman +Subject: Revert: drm/i915: correctly order the ring init sequence + +From: Greg Kroah-Hartman + +This reverts commit 57ecc93ce680b1ace1f9e79d588dabe32353202c which +really is commit 0d8957c8a90bbb5d34fab9a304459448a5131e06 upstream as it +has been reported to cause problems in the 3.4.y kernel series. + +Cc: Herton Ronaldo Krzesinski +Cc: Andreas Sturmlechner +Cc: Jani Nikula +Cc: Yang Guang +Cc: Daniel Vetter +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/intel_ringbuffer.c | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +--- a/drivers/gpu/drm/i915/intel_ringbuffer.c ++++ b/drivers/gpu/drm/i915/intel_ringbuffer.c +@@ -258,6 +258,8 @@ static int init_ring_common(struct intel + I915_WRITE_HEAD(ring, 0); + ring->write_tail(ring, 0); + ++ /* Initialize the ring. */ ++ I915_WRITE_START(ring, obj->gtt_offset); + head = I915_READ_HEAD(ring) & HEAD_ADDR; + + /* G45 ring initialization fails to reset head to zero */ +@@ -283,11 +285,6 @@ static int init_ring_common(struct intel + } + } + +- /* Initialize the ring. This must happen _after_ we've cleared the ring +- * registers with the above sequence (the readback of the HEAD registers +- * also enforces ordering), otherwise the hw might lose the new ring +- * register values. */ +- I915_WRITE_START(ring, obj->gtt_offset); + I915_WRITE_CTL(ring, + ((ring->size - PAGE_SIZE) & RING_NR_PAGES) + | RING_VALID); diff --git a/queue-3.4/series b/queue-3.4/series index c56d8a0669a..523cf77b5d2 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -215,3 +215,4 @@ gpio-lpc32xx-fix-value-handling-of-gpio_direction_output.patch drm-udl-limit-modes-to-the-sku-pixel-limits.patch drm-i915-fall-back-to-bit-banging-if-gmbus-fails-in-crt-edid-reads.patch vmwgfx-corruption-in-vmw_event_fence_action_create.patch +revert-drm-i915-correctly-order-the-ring-init-sequence.patch