summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2011-11-27 02:39:14 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2011-11-27 02:39:14 +0100
commit7af82bb0e5af670add67996ff8d6e890b9622a0c (patch)
tree8ebe8816d4bf592ff0cfd4875d6ea0b4a61bde57
parent66b88b615cb5b1f483eb86d4623a5df0bbb2c1bf (diff)
tests: implement snb+ XY_SETUP_CLIP_BLT workaround
Better safe than sorry. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--tests/gem_hangcheck_forcewake.c8
-rw-r--r--tests/gem_stress.c8
2 files changed, 16 insertions, 0 deletions
diff --git a/tests/gem_hangcheck_forcewake.c b/tests/gem_hangcheck_forcewake.c
index 9aec90ed..96a30fef 100644
--- a/tests/gem_hangcheck_forcewake.c
+++ b/tests/gem_hangcheck_forcewake.c
@@ -102,6 +102,14 @@ int main(int argc, char **argv)
OUT_BATCH(pitch);
OUT_RELOC_FENCED(bo, I915_GEM_DOMAIN_RENDER, 0, 0);
ADVANCE_BATCH();
+
+ if (IS_GEN6(devid) || IS_GEN7(devid)) {
+ BEGIN_BATCH(3);
+ OUT_BATCH(XY_SETUP_CLIP_BLT_CMD);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ ADVANCE_BATCH();
+ }
}
printf("waiting\n");
diff --git a/tests/gem_stress.c b/tests/gem_stress.c
index 6ee0f988..df819b64 100644
--- a/tests/gem_stress.c
+++ b/tests/gem_stress.c
@@ -165,6 +165,14 @@ static void emit_blt(drm_intel_bo *src_bo, uint32_t src_tiling, unsigned src_pit
OUT_BATCH(src_pitch);
OUT_RELOC_FENCED(src_bo, I915_GEM_DOMAIN_RENDER, 0, 0);
ADVANCE_BATCH();
+
+ if (IS_GEN6(devid) || IS_GEN7(devid)) {
+ BEGIN_BATCH(3);
+ OUT_BATCH(XY_SETUP_CLIP_BLT_CMD);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ ADVANCE_BATCH();
+ }
}
/* All this gem trashing wastes too much cpu time, so give the gpu something to