* [igt-dev] [PATCH i-g-t 1/2] tests/i915/kms_cdclk: Fixed mode selection for extended mode tests
@ 2022-08-30 11:42 Mohammed Thasleem
0 siblings, 0 replies; only message in thread
From: Mohammed Thasleem @ 2022-08-30 11:42 UTC (permalink / raw)
To: igt-dev
Added check on ENOSPC and EINVAL when two moniters connected
through MST. This will find the connector mode combo that
fits into the bandwidth when more than one monitor is connected.
Example:
When two monitors connected through MST, the second monitor
also tries to use the same mode. So two such modes may not
fit into the link bandwidth. So, iterate through connected
outputs & modes and find a combination of modes those fit
into the link BW.
Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
tests/i915/kms_cdclk.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
index 991a7c507..9ee2da5cb 100644
--- a/tests/i915/kms_cdclk.c
+++ b/tests/i915/kms_cdclk.c
@@ -313,7 +313,18 @@ static void test_mode_transition_on_all_outputs(data_t *data)
j++;
}
+ /* In case of DP-MST find suitable mode(s) to fit into the link BW. */
+ if ((igt_display_try_commit_atomic(display,
+ DRM_MODE_ATOMIC_ALLOW_MODESET,
+ NULL) != 0) && (errno == EINVAL
+ || errno == ENOSPC)) {
+ bool found = igt_override_all_active_output_modes_to_fit_bw(display);
+
+ igt_require_f(found, "No valid mode combo found.\n");
+ }
+
igt_display_commit2(display, COMMIT_ATOMIC);
+
cdclk_new = get_current_cdclk_freq(debugfs_fd);
igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
--
2.25.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2023-03-08 13:03 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-30 11:42 [igt-dev] [PATCH i-g-t 1/2] tests/i915/kms_cdclk: Fixed mode selection for extended mode tests Mohammed Thasleem
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox