[igt-dev] [PATCH i-g-t 3/6] tests/kms_invalid_mode: Move bigjoiner handling into the proper place

Ville Syrjala ville.syrjala at linux.intel.com
Thu Sep 16 15:35:12 UTC 2021


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

Since we're adding other subtests we don't want to muck around
with the dotclock unconditionally in the main test code. Move
the handling into the subtest specific adjust function.

Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
 tests/i915/kms_invalid_mode.c | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

diff --git a/tests/i915/kms_invalid_mode.c b/tests/i915/kms_invalid_mode.c
index 8b24993e40a3..a1899bd52214 100644
--- a/tests/i915/kms_invalid_mode.c
+++ b/tests/i915/kms_invalid_mode.c
@@ -69,7 +69,9 @@ can_bigjoiner(data_t *data)
 static bool
 adjust_mode_clock_too_high(data_t *data, drmModeModeInfoPtr mode)
 {
-	igt_require(data->max_dotclock != 0);
+	int max_dotclock = data->max_dotclock;
+
+	igt_require(max_dotclock != 0);
 
 	/*
 	 * FIXME When we have a fixed mode, the kernel will ignore
@@ -82,7 +84,18 @@ adjust_mode_clock_too_high(data_t *data, drmModeModeInfoPtr mode)
 	if (has_scaling_mode_prop(data))
 		return false;
 
-	mode->clock = data->max_dotclock + 1;
+	/*
+	 * Newer platforms can support modes higher than the maximum dot clock
+	 * by using pipe joiner, so set the mode clock twice that of maximum
+	 * dot clock;
+	 */
+	if (can_bigjoiner(data)) {
+		igt_info("Platform supports bigjoiner with %s\n",
+			 data->output->name);
+		max_dotclock *= 2;
+	}
+
+	mode->clock = max_dotclock + 1;
 
 	return true;
 }
@@ -103,17 +116,6 @@ test_output(data_t *data)
 	if (!data->adjust_mode(data, &mode))
 		return 0;
 
-	/*
-	 * Newer platforms can support modes higher than the maximum dot clock
-	 * by using pipe joiner, so set the mode clock twice that of maximum
-	 * dot clock;
-	 */
-	if (can_bigjoiner(data)) {
-		igt_info("Platform supports bigjoiner with %s\n",
-			  output->name);
-		mode.clock *= 2;
-	}
-
 	igt_create_fb(data->drm_fd,
 		      mode.hdisplay, mode.vdisplay,
 		      DRM_FORMAT_XRGB8888,
-- 
2.32.0



More information about the igt-dev mailing list