[PATCH 2/2]i-g-t: gem_dummy_reloc_loop.c: add vebox test case Signed-off-by: Zhong Li <zhong.li@xxxxxxxxx>

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I made a mistake for the patch subject. I will send a new series of patch. Please ignore this patch.

-----Original Message-----
From: Li, Zhong 
Sent: Friday, May 03, 2013 2:26 PM
To: intel-gfx at lists.freedesktop.org
Cc: Li, Zhong; Xiang, Haihao; Li, Jocelyn; Vetter, Daniel; ben at bwidawsk.net
Subject: [Intel-gfx][PATCH 2/2]i-g-t: gem_dummy_reloc_loop.c: add vebox test case Signed-off-by: Zhong Li <zhong.li at intel.com>

---
 tests/gem_dummy_reloc_loop.c |   21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/tests/gem_dummy_reloc_loop.c b/tests/gem_dummy_reloc_loop.c index b67c7d3..c56d559 100644
--- a/tests/gem_dummy_reloc_loop.c
+++ b/tests/gem_dummy_reloc_loop.c
@@ -42,6 +42,8 @@
 #include "intel_gpu_tools.h"
 #include "i830_reg.h"
 
+#define LOCACL_I915_EXEC_VEBOX (4<<0)
+
 static drm_intel_bufmgr *bufmgr;
 struct intel_batchbuffer *batch;
 static drm_intel_bo *target_buffer;
@@ -88,14 +90,14 @@ dummy_reloc_loop(int ring)  }
 
 static void
-dummy_reloc_loop_random_ring(void)
+dummy_reloc_loop_random_ring(int fd, int num_rings)
 {
 	int i;
 
 	srandom(0xdeadbeef);
 
 	for (i = 0; i < 0x100000; i++) {
-		int ring = random() % 3 + 1;
+		int ring = random() % num_rings + 1;
 
 		if (ring == I915_EXEC_RENDER) {
 			BEGIN_BATCH(4);
@@ -126,11 +128,13 @@ int main(int argc, char **argv)  {
 	int fd;
 	int devid;
+	int num_rings = 1; /*render ring is alwyas available*/
 
 	drmtest_subtest_init(argc, argv);
 
 	fd = drm_open_any();
 	devid = intel_get_drm_devid(fd);
+	num_rings = gem_get_num_rings(fd);
 	if (!HAS_BLT_RING(devid)) {
 		fprintf(stderr, "not (yet) implemented for pre-snb\n");
 		return 77;
@@ -179,11 +183,20 @@ int main(int argc, char **argv)
 		}
 	}
 
+	if (drmtest_run_subtest("vebox")) {
+		if (gem_has_vebox(fd)) {
+			sleep(2);
+			printf("running dummy loop on vebox\n");
+			dummy_reloc_loop(LOCACL_I915_EXEC_VEBOX);
+			printf("dummy loop run on vebox completed\n");
+		}
+	}
+
 	if (drmtest_run_subtest("mixed")) {
-		if (HAS_BLT_RING(devid) && HAS_BSD_RING(devid)) {
+		if (num_rings > 1) {
 			sleep(2);
 			printf("running dummy loop on random rings\n");
-			dummy_reloc_loop_random_ring();
+			dummy_reloc_loop_random_ring(fd, num_rings);
 			printf("dummy loop run on random rings completed\n");
 		}
 	}
--
1.7.9.5



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux