Signed-off-by: Tomeu Vizoso <tomeu.viz...@collabora.com>
---
 tests/panfrost_submit.c | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

diff --git a/tests/panfrost_submit.c b/tests/panfrost_submit.c
index 5770dc24a42b..13ce85b73d9e 100644
--- a/tests/panfrost_submit.c
+++ b/tests/panfrost_submit.c
@@ -34,10 +34,11 @@
 #include <errno.h>
 #include <sys/stat.h>
 #include <sys/ioctl.h>
+#include "panfrost-job.h"
 #include "panfrost_drm.h"
 
-#define WIDTH          1366
-#define HEIGHT         768
+#define WIDTH          1920
+#define HEIGHT         1080
 #define CLEAR_COLOR    0xff7f7f7f
 
 /* One tenth of a second */
@@ -56,14 +57,30 @@ abs_timeout(uint64_t duration)
         return (uint64_t)current.tv_sec * NSECS_PER_SEC + current.tv_nsec + 
duration;
 }
 
+static void check_error(int fd, struct panfrost_submit *submit)
+{
+       struct mali_job_descriptor_header *header;
+
+        header = submit->submit_bo->map;
+        igt_assert_eq_u64(header->fault_pointer, 0);
+}
+
 static void check_fb(int fd, struct panfrost_bo *bo)
 {
+        int gpu_prod_id = igt_panfrost_get_param(fd, 
DRM_PANFROST_PARAM_GPU_PROD_ID);
         __uint32_t *fbo;
         int i;
 
         fbo = bo->map;
-        for (i = 0; i < ALIGN(WIDTH, 16) * HEIGHT; i++)
-                igt_assert_eq_u32(fbo[i], CLEAR_COLOR);
+
+        if (gpu_prod_id >= 0x0750) {
+                for (i = 0; i < ALIGN(WIDTH, 16) * HEIGHT; i++)
+                        igt_assert_eq_u32(fbo[i], CLEAR_COLOR);
+        } else {
+                // Mask the alpha away because on <=T720 we don't know how to 
have it
+                for (i = 0; i < ALIGN(WIDTH, 16) * HEIGHT; i++)
+                        igt_assert_eq_u32(fbo[i], CLEAR_COLOR & 0x00ffffff);
+        }
 }
 
 igt_main
@@ -84,6 +101,7 @@ igt_main
                 do_ioctl(fd, DRM_IOCTL_PANFROST_SUBMIT, submit->args);
                 igt_assert(syncobj_wait(fd, &submit->args->out_sync, 1,
                                         abs_timeout(SHORT_TIME_NSEC), 0, 
NULL));
+                check_error(fd, submit);
                 check_fb(fd, submit->fbo);
                 igt_panfrost_free_job(fd, submit);
         }
-- 
2.20.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to