Prepare for 64bit relocation addresses
[platform/upstream/intel-gpu-tools.git] / tests / gem_tiled_partial_pwrite_pread.c
index da52f7a..a4a9d0b 100644 (file)
 #include <errno.h>
 #include <sys/stat.h>
 #include <sys/time.h>
-#include "drm.h"
-#include "i915_drm.h"
+
+#include <drm.h>
+
+#include "ioctl_wrappers.h"
 #include "drmtest.h"
-#include "intel_bufmgr.h"
-#include "intel_batchbuffer.h"
-#include "intel_gpu_tools.h"
+#include "intel_chipset.h"
+#include "intel_io.h"
+#include "igt_aux.h"
 
 /*
  * Testcase: pwrite/pread consistency when touching partial cachelines
@@ -82,11 +84,7 @@ copy_bo(drm_intel_bo *src, int src_tiled,
                cmd_bits |= XY_SRC_COPY_BLT_SRC_TILED;
        }
 
-       BEGIN_BATCH(8);
-       OUT_BATCH(XY_SRC_COPY_BLT_CMD |
-                 XY_SRC_COPY_BLT_WRITE_ALPHA |
-                 XY_SRC_COPY_BLT_WRITE_RGB |
-                 cmd_bits);
+       BLIT_COPY_BATCH_START(devid, cmd_bits);
        OUT_BATCH((3 << 24) | /* 32 bits */
                  (0xcc << 16) | /* copy ROP */
                  dst_pitch);
@@ -131,7 +129,6 @@ static void test_partial_reads(void)
 {
        int i, j;
 
-       printf("checking partial reads\n");
        for (i = 0; i < ROUNDS; i++) {
                int start, len;
                int val = i % 256;
@@ -143,11 +140,9 @@ static void test_partial_reads(void)
 
                drm_intel_bo_get_subdata(scratch_bo, start, len, tmp);
                for (j = 0; j < len; j++) {
-                       if (tmp[j] != val) {
-                               printf("mismatch at %i, got: %i, expected: %i\n",
-                                      start + j, tmp[j], val);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(tmp[j] == val,
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    start + j, tmp[j], val);
                }
 
                igt_progress("partial reads test: ", i, ROUNDS);
@@ -158,7 +153,6 @@ static void test_partial_writes(void)
 {
        int i, j;
 
-       printf("checking partial writes\n");
        for (i = 0; i < ROUNDS; i++) {
                int start, len;
                int val = i % 256;
@@ -177,25 +171,19 @@ static void test_partial_writes(void)
                                         compare_tmp);
 
                for (j = 0; j < start; j++) {
-                       if (compare_tmp[j] != val) {
-                               printf("amismatch at %i, got: %i, expected: %i\n",
-                                      j, tmp[j], val);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(compare_tmp[j] == val,
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    j, tmp[j], val);
                }
                for (; j < start + len; j++) {
-                       if (compare_tmp[j] != tmp[0]) {
-                               printf("bmismatch at %i, got: %i, expected: %i\n",
-                                      j, tmp[j], i);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(compare_tmp[j] == tmp[0],
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    j, tmp[j], i);
                }
                for (; j < BO_SIZE; j++) {
-                       if (compare_tmp[j] != val) {
-                               printf("cmismatch at %i, got: %i, expected: %i\n",
-                                      j, tmp[j], val);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(compare_tmp[j] == val,
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    j, tmp[j], val);
                }
                drm_intel_gem_bo_unmap_gtt(staging_bo);
 
@@ -207,7 +195,6 @@ static void test_partial_read_writes(void)
 {
        int i, j;
 
-       printf("checking partial writes after partial reads\n");
        for (i = 0; i < ROUNDS; i++) {
                int start, len;
                int val = i % 256;
@@ -220,11 +207,9 @@ static void test_partial_read_writes(void)
 
                drm_intel_bo_get_subdata(scratch_bo, start, len, tmp);
                for (j = 0; j < len; j++) {
-                       if (tmp[j] != val) {
-                               printf("mismatch in read at %i, got: %i, expected: %i\n",
-                                      start + j, tmp[j], val);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(tmp[j] == val,
+                                    "mismatch in read at %i, got: %i, expected: %i\n",
+                                    start + j, tmp[j], val);
                }
 
                /* Change contents through gtt to make the pread cachelines
@@ -245,25 +230,19 @@ static void test_partial_read_writes(void)
                                         compare_tmp);
 
                for (j = 0; j < start; j++) {
-                       if (compare_tmp[j] != val) {
-                               printf("mismatch at %i, got: %i, expected: %i\n",
-                                      j, tmp[j], val);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(compare_tmp[j] == val,
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    j, tmp[j], val);
                }
                for (; j < start + len; j++) {
-                       if (compare_tmp[j] != tmp[0]) {
-                               printf("mismatch at %i, got: %i, expected: %i\n",
-                                      j, tmp[j], tmp[0]);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(compare_tmp[j] == tmp[0],
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    j, tmp[j], tmp[0]);
                }
                for (; j < BO_SIZE; j++) {
-                       if (compare_tmp[j] != val) {
-                               printf("mismatch at %i, got: %i, expected: %i\n",
-                                      j, tmp[j], val);
-                               igt_fail(1);
-                       }
+                       igt_assert_f(compare_tmp[j] == val,
+                                    "mismatch at %i, got: %i, expected: %i\n",
+                                    j, tmp[j], val);
                }
                drm_intel_gem_bo_unmap_gtt(staging_bo);
 
@@ -271,11 +250,10 @@ static void test_partial_read_writes(void)
        }
 }
 
-int main(int argc, char **argv)
+igt_main
 {
        uint32_t tiling_mode = I915_TILING_X;
 
-       igt_subtest_init(argc, argv);
        igt_skip_on_simulation();
 
        srandom(0xdeadbeef);
@@ -319,6 +297,4 @@ int main(int argc, char **argv)
 
                close(fd);
        }
-
-       igt_exit();
 }