[igt-dev] [PATCH i-g-t] tests/kms_plane_cursor: Pipe-D is invalid in big joiner

Nidhi Gupta nidhi1.gupta at intel.com
Thu Jun 15 05:24:38 UTC 2023


Pipe D is invalid in big joiner and because of that currently
test throws as skip for all the pipes as it is within the
dynamic subtest block.
Fixed in IGT by not executing the subtest if valid combo of pipe
and output not found for big joiner and go on to check for the
next pipe.

Signed-off-by: Nidhi Gupta <nidhi1.gupta at intel.com>
---
 tests/kms_plane_cursor.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/tests/kms_plane_cursor.c b/tests/kms_plane_cursor.c
index 59b105c6..b1f3cecc 100644
--- a/tests/kms_plane_cursor.c
+++ b/tests/kms_plane_cursor.c
@@ -86,7 +86,6 @@ static void test_init(data_t *data, enum pipe pipe_id, igt_output_t *output)
 	data->cursor = igt_pipe_get_plane_type(data->pipe, DRM_PLANE_TYPE_CURSOR);
 
 	igt_output_set_pipe(data->output, data->pipe_id);
-	igt_require(i915_pipe_output_combo_valid(display));
 
 	igt_info("Using (pipe %s + %s) to run the subtest.\n",
 		 kmstest_pipe_name(data->pipe_id), igt_output_name(data->output));
@@ -268,6 +267,7 @@ igt_main
 	static const int cursor_sizes[] = { 64, 128, 256 };
 	data_t data = { .max_curw = 64, .max_curh = 64 };
 	enum pipe pipe;
+	bool result;
 	igt_output_t *output;
 	int i, j;
 	struct {
@@ -312,6 +312,13 @@ igt_main
 
 				test_init(&data, pipe, output);
 
+				result = i915_pipe_output_combo_valid(&data.display);
+				if (result == false) {
+					igt_info("pipe %s + %s is not a valid combo for big joiner\n",
+						kmstest_pipe_name(data.pipe_id), igt_output_name(data.output));
+					continue;
+				}
+
 				for (j = 0; j < ARRAY_SIZE(cursor_sizes); j++) {
 					int size = cursor_sizes[j];
 
-- 
2.39.0



More information about the igt-dev mailing list