test/gen3_mixed_blits: Remember that the BLT engine cannot handle Y-tiling
authorChris Wilson <chris@chris-wilson.co.uk>
Sun, 5 Jun 2011 18:10:14 +0000 (19:10 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Sun, 5 Jun 2011 18:10:14 +0000 (19:10 +0100)
...even through a fence that can.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
tests/gen3_mixed_blits.c

index f5b3c4e..90a61a8 100644 (file)
@@ -453,10 +453,14 @@ copy(int fd,
      uint32_t dst, int dst_tiling,
      uint32_t src, int src_tiling)
 {
+retry:
        switch (random() % 3) {
        case 0: render_copy(fd, dst, dst_tiling, src, src_tiling, 0); break;
        case 1: render_copy(fd, dst, dst_tiling, src, src_tiling, 1); break;
-       case 2: blt_copy(fd, dst, src); break;
+       case 2: if (dst_tiling == I915_TILING_Y || src_tiling == I915_TILING_Y)
+                       goto retry;
+               blt_copy(fd, dst, src);
+               break;
        }
 }