Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: "Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com>,
	"Dominik Grzegorzek" <dominik.grzegorzek@intel.com>
Subject: [PATCH i-g-t 1/3] tests/xe_gpgpu_fill: Add command line switch to dump the surface
Date: Thu, 14 Nov 2024 13:06:14 +0100	[thread overview]
Message-ID: <20241114120616.70229-2-zbigniew.kempczynski@intel.com> (raw)
In-Reply-To: <20241114120616.70229-1-zbigniew.kempczynski@intel.com>

When implementation for new platform is added and shader + pipeline
needs to be adopted there's useful to dump the surface data.

0xC4 pattern makes distinction from 0x4C written by the shader very
hard so change it to 0x88 makes dump more clear.

Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Cc: Dominik Grzegorzek <dominik.grzegorzek@intel.com>
---
 tests/intel/xe_gpgpu_fill.c | 43 ++++++++++++++++++++++++++++++++-----
 1 file changed, 38 insertions(+), 5 deletions(-)

diff --git a/tests/intel/xe_gpgpu_fill.c b/tests/intel/xe_gpgpu_fill.c
index 24fab519cc..4e1785432b 100644
--- a/tests/intel/xe_gpgpu_fill.c
+++ b/tests/intel/xe_gpgpu_fill.c
@@ -36,9 +36,11 @@
 #define HEIGHT 64
 #define STRIDE (WIDTH)
 #define SIZE (HEIGHT*STRIDE)
-#define COLOR_C4	0xc4
+#define COLOR_88	0x88
 #define COLOR_4C	0x4c
 
+static bool dump_surface;
+
 typedef struct {
 	int drm_fd;
 	uint32_t devid;
@@ -89,26 +91,57 @@ static void gpgpu_fill(data_t *data, igt_fillfunc_t fill, uint32_t region)
 	uint8_t *ptr;
 	int i, j;
 
-	buf = create_buf(data, WIDTH, HEIGHT, COLOR_C4, region);
+	buf = create_buf(data, WIDTH, HEIGHT, COLOR_88, region);
 	ptr = xe_bo_map(data->drm_fd, buf->handle, buf->surface[0].size);
 
 	for (i = 0; i < WIDTH; i++)
 		for (j = 0; j < HEIGHT; j++)
-			buf_check(ptr, i, j, COLOR_C4);
+			buf_check(ptr, i, j, COLOR_88);
 
 	fill(data->drm_fd, buf, 0, 0, WIDTH / 2, HEIGHT / 2, COLOR_4C);
 
+	if (dump_surface) {
+		for (j = 0; j < HEIGHT; j++) {
+			igt_info("[%04x] ", j);
+			for (i = 0; i < WIDTH; i++) {
+				igt_info("%02x", ptr[j * HEIGHT + i]);
+				if (i % 4 == 3)
+					igt_info(" ");
+			}
+			igt_info("\n");
+		}
+	}
+
 	for (i = 0; i < WIDTH; i++)
 		for (j = 0; j < HEIGHT; j++)
 			if (i < WIDTH / 2 && j < HEIGHT / 2)
 				buf_check(ptr, i, j, COLOR_4C);
 			else
-				buf_check(ptr, i, j, COLOR_C4);
+				buf_check(ptr, i, j, COLOR_88);
 
 	munmap(ptr, buf->surface[0].size);
 }
 
-igt_main
+static int opt_handler(int opt, int opt_index, void *data)
+{
+	switch (opt) {
+	case 'd':
+		dump_surface = true;
+		break;
+	default:
+		return IGT_OPT_HANDLER_ERROR;
+	}
+
+	return IGT_OPT_HANDLER_SUCCESS;
+}
+
+
+const char *help_str =
+	"  -d\tDump surface\n"
+	;
+
+
+igt_main_args("d", NULL, help_str, opt_handler, NULL)
 {
 	data_t data = {0, };
 	igt_fillfunc_t fill_fn = NULL;
-- 
2.34.1


  reply	other threads:[~2024-11-14 12:06 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-14 12:06 [PATCH i-g-t 0/3] GPGPU fill improvements Zbigniew Kempczyński
2024-11-14 12:06 ` Zbigniew Kempczyński [this message]
2024-11-14 13:33   ` [PATCH i-g-t 1/3] tests/xe_gpgpu_fill: Add command line switch to dump the surface Grzegorzek, Dominik
2024-11-14 12:06 ` [PATCH i-g-t 2/3] tests/xe_gpgpu_fill: Add width/height/x/y command line args Zbigniew Kempczyński
2024-11-14 13:36   ` Grzegorzek, Dominik
2024-11-14 12:06 ` [PATCH i-g-t 3/3] tests/xe_gpgpu_fill: Add offset-16x16 subtest Zbigniew Kempczyński
2024-11-14 13:37   ` Grzegorzek, Dominik
2024-11-14 14:05 ` ✗ Fi.CI.BAT: failure for GPGPU fill improvements Patchwork
2024-11-14 16:12   ` Zbigniew Kempczyński
2024-11-14 14:13 ` ✓ CI.xeBAT: success " Patchwork
2024-11-15  2:35 ` ✗ CI.xeFULL: failure " Patchwork
2024-11-18 22:17 ` ✗ GitLab.Pipeline: warning for GPGPU fill improvements (rev2) Patchwork
2024-11-18 22:41 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-11-18 23:00 ` ✗ CI.xeBAT: " Patchwork
2024-11-19  9:05 ` ✗ CI.xeFULL: " Patchwork
2024-11-19 19:01 ` ✓ CI.xeBAT: success for GPGPU fill improvements (rev3) Patchwork
2024-11-19 19:17 ` ✓ Fi.CI.BAT: " Patchwork
2024-11-20  5:08 ` ✗ CI.xeFULL: failure " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241114120616.70229-2-zbigniew.kempczynski@intel.com \
    --to=zbigniew.kempczynski@intel.com \
    --cc=dominik.grzegorzek@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox