public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH i-g-t v2] panthor: Enable compilation on big-endian arch
@ 2026-02-19 15:05 Kamil Konieczny
  2026-02-19 15:23 ` Boris Brezillon
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Kamil Konieczny @ 2026-02-19 15:05 UTC (permalink / raw)
  To: igt-dev; +Cc: Kamil Konieczny, Daniel Almeida, Boris Brezillon

Compilation of Panthor was broken on big-endian due to a guard in
pathor lib against such arch. Fix this and create and use
function for skipping all panthor tests on such machines.

Also while at it, init fd so it could be safely used at last
fixture.

v2: simplify test for big-endian, fix typo (Boris)

Cc: Daniel Almeida <daniel.almeida@collabora.com>
Cc: Boris Brezillon <boris.brezillon@collabora.com>
Closes: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/200
Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
---
 lib/igt_panthor.c             | 11 +++++++++++
 lib/igt_panthor.h             |  6 ++----
 tests/panthor/panthor_gem.c   |  3 ++-
 tests/panthor/panthor_group.c |  3 ++-
 tests/panthor/panthor_query.c |  3 ++-
 tests/panthor/panthor_vm.c    |  3 ++-
 6 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/lib/igt_panthor.c b/lib/igt_panthor.c
index 49b427d4f..7ffb61eb3 100644
--- a/lib/igt_panthor.c
+++ b/lib/igt_panthor.c
@@ -6,6 +6,17 @@
 #include "ioctl_wrappers.h"
 #include "panthor_drm.h"
 
+/**
+ * igt_panthor_skip_on_big_endian:
+ *
+ * Skip Panthor test on big-endian machines.
+ */
+void igt_panthor_skip_on_big_endian(void)
+{
+	igt_skip_on_f(__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__,
+		      "Panthor is unsupported on big-endian arch\n");
+}
+
 /**
  * igt_panthor_group_create:
  * @fd: device file descriptor
diff --git a/lib/igt_panthor.h b/lib/igt_panthor.h
index 97a2b7497..be8490840 100644
--- a/lib/igt_panthor.h
+++ b/lib/igt_panthor.h
@@ -61,11 +61,9 @@ enum cs_flush_mode {
 };
 
 /* There's no plan to support big endian in the UMD, so keep
- * things simple and don't bother supporting it here either.
+ * things simple and don't bother supporting it.
  */
-#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
-#error "big endian not supported"
-#endif
+void igt_panthor_skip_on_big_endian(void);
 
 struct cs_instr {
 	union {
diff --git a/tests/panthor/panthor_gem.c b/tests/panthor/panthor_gem.c
index 57ba4bc82..6388addb0 100644
--- a/tests/panthor/panthor_gem.c
+++ b/tests/panthor/panthor_gem.c
@@ -8,9 +8,10 @@
 #include "igt_panthor.h"
 
 int igt_main() {
-	int fd;
+	int fd = -1;
 
 	igt_fixture() {
+		igt_panthor_skip_on_big_endian();
 		fd = drm_open_driver(DRIVER_PANTHOR);
 	}
 
diff --git a/tests/panthor/panthor_group.c b/tests/panthor/panthor_group.c
index 13636e60c..c79f8d629 100644
--- a/tests/panthor/panthor_group.c
+++ b/tests/panthor/panthor_group.c
@@ -41,9 +41,10 @@ issue_store_multiple(uint8_t *cs, uint64_t kernel_va, uint32_t constant)
 }
 
 int igt_main() {
-	int fd;
+	int fd = -1;
 
 	igt_fixture() {
+		igt_panthor_skip_on_big_endian();
 		fd = drm_open_driver(DRIVER_PANTHOR);
 	}
 
diff --git a/tests/panthor/panthor_query.c b/tests/panthor/panthor_query.c
index fa4f8ef26..afd58a5bd 100644
--- a/tests/panthor/panthor_query.c
+++ b/tests/panthor/panthor_query.c
@@ -8,9 +8,10 @@
 #include <stdint.h>
 
 int igt_main() {
-	int fd;
+	int fd = -1;
 
 	igt_fixture() {
+		igt_panthor_skip_on_big_endian();
 		fd = drm_open_driver(DRIVER_PANTHOR);
 	}
 
diff --git a/tests/panthor/panthor_vm.c b/tests/panthor/panthor_vm.c
index 76a669843..92b105b9e 100644
--- a/tests/panthor/panthor_vm.c
+++ b/tests/panthor/panthor_vm.c
@@ -7,9 +7,10 @@
 #include "panthor_drm.h"
 
 int igt_main() {
-	int fd;
+	int fd = -1;
 
 	igt_fixture() {
+		igt_panthor_skip_on_big_endian();
 		fd = drm_open_driver(DRIVER_PANTHOR);
 	}
 
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-03-02 10:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-19 15:05 [PATCH i-g-t v2] panthor: Enable compilation on big-endian arch Kamil Konieczny
2026-02-19 15:23 ` Boris Brezillon
2026-02-19 17:00 ` Daniel Almeida
2026-02-19 17:35 ` ✗ Fi.CI.BAT: failure for panthor: Enable compilation on big-endian arch (rev2) Patchwork
2026-02-23 10:49 ` [PATCH i-g-t v2] panthor: Enable compilation on big-endian arch Jani Nikula
2026-03-02 10:45   ` Boris Brezillon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox