[igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner

Bhanuprakash Modem
2022-11-15T17:00:50Z

tests/kms_pipe_crc_basic.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
index 91a1b8ab..ffc77eb3 100644
--- a/tests/kms_pipe_crc_basic.c
+++ b/tests/kms_pipe_crc_basic.c
@@ -274,6 +274,21 @@ static void test_disable_crc_after_crtc(data_t *data, enum pipe pipe,
igt_remove_fb(data->drm_fd, &data->fb);
}

+static bool pipe_output_combo_valid(igt_display_t *display,
+ enum pipe pipe, igt_output_t *output)
+{
+ bool ret = true;
+
+ igt_display_reset(display);
+
+ igt_output_set_pipe(output, pipe);
+ if (!i915_pipe_output_combo_valid(display))
+ ret = false;
+ igt_output_set_pipe(output, PIPE_NONE);
+
+ return ret;
+}
+
data_t data = {0, };

igt_main
@@ -322,6 +337,9 @@ igt_main
igt_describe(tests[i].desc);
igt_subtest_with_dynamic(tests[i].name) {
for_each_pipe_with_single_output(&data.display, pipe, output) {
+ if(!pipe_output_combo_valid(&data.display, pipe, output))
+ continue;
+
igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
if (tests[i].flags & TEST_SUSPEND) {
test_read_crc(&data, pipe, output, 0);
@@ -350,6 +368,9 @@ igt_main
"does not cause issues.");
igt_subtest_with_dynamic("disable-crc-after-crtc") {
for_each_pipe_with_single_output(&data.display, pipe, output) {
+ if(!pipe_output_combo_valid(&data.display, pipe, output))
+ continue;
+
igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
test_disable_crc_after_crtc(&data, pipe, output);
}
@@ -358,6 +379,9 @@ igt_main
igt_describe("Basic sanity check for CRC mismatches");
igt_subtest_with_dynamic("compare-crc-sanitycheck") {
for_each_pipe_with_single_output(&data.display, pipe, output) {
+ if(!pipe_output_combo_valid(&data.display, pipe, output))
+ continue;
+
igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
test_compare_crc(&data, pipe, output);
}
--
2.38.0