--- /dev/null
+From ec6a890dfed7dd245beba5e5bcdfcffbd934c284 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Tue, 21 Jun 2011 18:37:59 +0100
+Subject: drm/i915: Apply HWSTAM workaround for BSD ring on
+ SandyBridge
+
+From: Chris Wilson <chris@chris-wilson.co.uk>
+
+commit ec6a890dfed7dd245beba5e5bcdfcffbd934c284 upstream.
+
+...we need to apply exactly the same workaround for missing interrupts
+from BSD as for the BLT ring, apparently.
+
+See also commit 498e720b96379d8ee9c294950a01534a73defcf3
+(drm/i915: Fix gen6 (SNB) missed BLT ring interrupts).
+
+Reported-and-tested-by: nkalkhof@web.de
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38529
+Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+Signed-off-by: Keith Packard <keithp@keithp.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/gpu/drm/i915/i915_irq.c | 1 +
+ drivers/gpu/drm/i915/i915_reg.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+--- a/drivers/gpu/drm/i915/i915_irq.c
++++ b/drivers/gpu/drm/i915/i915_irq.c
+@@ -1576,6 +1576,7 @@ static void ironlake_irq_preinstall(stru
+ * happens.
+ */
+ I915_WRITE(GEN6_BLITTER_HWSTAM, ~GEN6_BLITTER_USER_INTERRUPT);
++ I915_WRITE(GEN6_BSD_HWSTAM, ~GEN6_BSD_USER_INTERRUPT);
+ }
+
+ /* XXX hotplug from PCH */
+--- a/drivers/gpu/drm/i915/i915_reg.h
++++ b/drivers/gpu/drm/i915/i915_reg.h
+@@ -528,6 +528,7 @@
+ #define GEN6_BSD_SLEEP_PSMI_CONTROL_RC_ILDL_MESSAGE_ENABLE 0
+ #define GEN6_BSD_SLEEP_PSMI_CONTROL_IDLE_INDICATOR (1 << 3)
+
++#define GEN6_BSD_HWSTAM 0x12098
+ #define GEN6_BSD_IMR 0x120a8
+ #define GEN6_BSD_USER_INTERRUPT (1 << 12)
+