summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Hopf <mhopf@suse.de>2010-11-19 04:29:57 +0100
committerOwain G. Ainsworth <oga@openbsd.org>2011-05-29 21:46:57 +0100
commit5613395d3bb3e428e58434d65f0c522fac47facd (patch)
tree8a2ee4c1ae136f674953dd0e1facb2a2a5d04d35
parent551fd61380347af023f405071d7a7b3acc24274c (diff)
Don't use hardware acceleration on Sandybridge rev 07 hardware or earlier.
This is known to lock up the GPU even with the workaround in place. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=31773 Signed-off-by: Matthias Hopf <mhopf@suse.de> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> (cherry picked from commit c2fac6ca108734dd9566570b15f01cc476fa53dc) Signed-off-by: Owain G. Ainsworth <oga@openbsd.org>
-rw-r--r--src/intel_driver.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/intel_driver.c b/src/intel_driver.c
index e7637003..63278863 100644
--- a/src/intel_driver.c
+++ b/src/intel_driver.c
@@ -1321,6 +1321,17 @@ static Bool can_accelerate_blt(struct intel_screen_private *intel)
return FALSE;
}
+ if (INTEL_INFO(intel)->gen == 60) {
+ struct pci_device *const device = intel->PciInfo;
+
+ /* Sandybridge rev07 locks up easily, even with the
+ * BLT ring workaround in place.
+ * Thus use shadowfb by default.
+ */
+ if (device->revision < 8)
+ return FALSE;
+ }
+
return TRUE;
}