* Re: [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: Add support for Bigjoiner
@ 2022-12-27 5:27 Gupta, Nidhi1
2022-12-28 4:10 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: " Gupta, Nidhi1
0 siblings, 1 reply; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-27 5:27 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 7777 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>This patch will add a check to Skip the subtest if a selected
>pipe/output combo won't support Bigjoiner or 8K mode.
>
>Example:
>* Pipe-D wont support a mode > 5K
>* To use 8K mode on a pipe then consecutive pipe must be available & free.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com<mailto:bhanuprakash.modem@intel.com>>
Reviewed-by: Nidhi Gupta <nidhi1.gupta@intel.com<mailto:nidhi1.gupta@intel.com>>
---
tests/kms_atomic_interruptible.c | 40 ++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
>diff --git a/tests/kms_atomic_interruptible.c
>b/tests/kms_atomic_interruptible.c
>index f461a15c..74b2e246 100644
>--- a/tests/kms_atomic_interruptible.c
>+++ b/tests/kms_atomic_interruptible.c
>@@ -82,11 +82,15 @@ static void run_plane_test(igt_display_t *display, enum pipe pipe, igt_output_t
> igt_plane_t *primary, *plane;
> int block;
>
>+ igt_info("Using (pipe %s + %s) to run the subtest.\n",
>+ kmstest_pipe_name(pipe), igt_output_name(output));
>+
> /*
> * Make sure we start with everything disabled to force a real modeset.
> * igt_display_require only sets sw state, and assumes the first test
> * doesn't care about hw state.
> */
>+ igt_display_reset(display);
> igt_display_commit2(display, COMMIT_ATOMIC);
>
> igt_output_set_pipe(output, pipe);
>@@ -265,6 +269,21 @@ static void run_plane_test(igt_display_t *display, enum pipe pipe, igt_output_t
> igt_remove_fb(display->drm_fd, &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;
>+}
>+
>igt_main
>{
> igt_display_t display;
>@@ -286,6 +305,9 @@ igt_main
> igt_describe("Tests the interrupt properties of legacy modeset");
> igt_subtest_with_dynamic("legacy-setmode") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_legacy_modeset, DRM_PLANE_TYPE_PRIMARY);
> break;
>@@ -295,6 +317,9 @@ igt_main
> igt_describe("Tests the interrupt properties of atomic modeset");
> igt_subtest_with_dynamic("atomic-setmode") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_atomic_modeset, DRM_PLANE_TYPE_PRIMARY);
> break;
>@@ -304,6 +329,9 @@ igt_main
> igt_describe("Tests the interrupt properties for DPMS");
> igt_subtest_with_dynamic("legacy-dpms") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_legacy_dpms, DRM_PLANE_TYPE_PRIMARY);
> break;
>@@ -313,6 +341,9 @@ igt_main
> igt_describe("Tests the interrupt properties for pageflip");
> igt_subtest_with_dynamic("legacy-pageflip") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_pageflip, DRM_PLANE_TYPE_PRIMARY);
> break;
>@@ -322,6 +353,9 @@ igt_main
> igt_describe("Tests the interrupt properties for cursor");
> igt_subtest_with_dynamic("legacy-cursor") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_setcursor, DRM_PLANE_TYPE_CURSOR);
> break;
>@@ -331,6 +365,9 @@ igt_main
> igt_describe("Tests the interrupt properties for primary plane");
> igt_subtest_with_dynamic("universal-setplane-primary") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_setplane, DRM_PLANE_TYPE_PRIMARY);
> break;
>@@ -340,6 +377,9 @@ igt_main
> igt_describe("Tests the interrupt properties for cursor plane");
> igt_subtest_with_dynamic("universal-setplane-cursor") {
> for_each_pipe_with_valid_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, pipe, output))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
> run_plane_test(&display, pipe, output, test_setplane, DRM_PLANE_TYPE_CURSOR);
> break;
[-- Attachment #2: Type: text/html, Size: 26401 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: Add support for Bigjoiner
2022-12-27 5:27 [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: Add support for Bigjoiner Gupta, Nidhi1
@ 2022-12-28 4:10 ` Gupta, Nidhi1
2022-12-29 3:26 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Gupta, Nidhi1
0 siblings, 1 reply; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-28 4:10 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 12611 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>This patch will add a check to Skip the subtest if a selected pipe/output
>combo won't support Bigjoiner or 8K mode.
>
>Example:
>* Pipe-D wont support a mode > 5K
>* To use 8K mode on a pipe then consecutive pipe must be available & free.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com<mailto:bhanuprakash.modem@intel.com>>
Reviewed-by: Nidhi Gupta <nidhi1.gupta@intel.com>
>---
>tests/i915/kms_busy.c | 106 ++++++++++++++++++++++++++++--------------
> 1 file changed, 71 insertions(+), 35 deletions(-)
>diff --git a/tests/i915/kms_busy.c b/tests/i915/kms_busy.c
>index b0642612..20d3058f 100644
>--- a/tests/i915/kms_busy.c
>+++ b/tests/i915/kms_busy.c
>@@ -32,15 +32,12 @@ IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers.");
>
>static bool all_pipes = false;
>
>-static igt_output_t *
>-set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb)
>+static void
>+set_fb_on_crtc(igt_display_t *dpy, int pipe,
>+ igt_output_t *output, struct igt_fb *fb)
> {
> drmModeModeInfoPtr mode;
> igt_plane_t *primary;
>- igt_output_t *output;
>-
>- output = igt_get_single_output_for_pipe(dpy, pipe);
>- igt_require(output);
>
> igt_output_set_pipe(output, pipe);
> mode = igt_output_get_mode(output);
>@@ -51,8 +48,6 @@ set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb)
>
> primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> igt_plane_set_fb(primary, fb);
>-
>- return output;
> }
>
> static void do_cleanup_display(igt_display_t *dpy)
>@@ -136,18 +131,23 @@ static void flip_to_fb(igt_display_t *dpy, int pipe,
> put_ahnd(ahnd);
> }
>
>-static void test_flip(igt_display_t *dpy, int pipe, bool modeset)
>+static void test_flip(igt_display_t *dpy, int pipe,
>+ igt_output_t *output, bool modeset)
>{
> struct igt_fb fb[2];
> int warmup[] = { 0, 1, 0, -1 };
> struct timespec tv = {};
>- igt_output_t *output;
> int timeout;
>
> if (modeset)
> igt_require(dpy->is_atomic);
>
>- output = set_fb_on_crtc(dpy, pipe, &fb[0]);
>+ igt_info("Using (pipe %s + %s) to run the subtest.\n",
>+ kmstest_pipe_name(pipe), igt_output_name(output));
>+
>+ igt_display_reset(dpy);
>+
>+ set_fb_on_crtc(dpy, pipe, output, &fb[0]);
> igt_display_commit2(dpy, COMMIT_LEGACY);
>
> igt_create_pattern_fb(dpy->drm_fd,
>@@ -224,13 +224,18 @@ static void test_atomic_commit_hang(igt_display_t *dpy, igt_plane_t *primary,
> }
>
> static void test_hang(igt_display_t *dpy,
>- enum pipe pipe, bool modeset, bool hang_newfb)
>+ enum pipe pipe, igt_output_t *output,
>+ bool modeset, bool hang_newfb)
> {
> struct igt_fb fb[2];
>- igt_output_t *output;
> igt_plane_t *primary;
>
>- output = set_fb_on_crtc(dpy, pipe, &fb[0]);
>+ igt_info("Using (pipe %s + %s) to run the subtest.\n",
>+ kmstest_pipe_name(pipe), igt_output_name(output));
>+
>+ igt_display_reset(dpy);
>+
>+ set_fb_on_crtc(dpy, pipe, output, &fb[0]);
> igt_display_commit2(dpy, COMMIT_ATOMIC);
> primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>
>@@ -265,16 +270,22 @@ static void test_hang(igt_display_t *dpy,
> igt_remove_fb(dpy->drm_fd, &fb[0]);
> }
>
>-static void test_pageflip_modeset_hang(igt_display_t *dpy, enum pipe pipe)
>+static void
>+test_pageflip_modeset_hang(igt_display_t *dpy,
>+ igt_output_t *output, enum pipe pipe)
> {
> struct igt_fb fb;
> struct drm_event_vblank ev;
>- igt_output_t *output;
> igt_plane_t *primary;
> igt_spin_t *t;
> uint64_t ahnd = get_reloc_ahnd(dpy->drm_fd, 0);
>
>- output = set_fb_on_crtc(dpy, pipe, &fb);
>+ igt_info("Using (pipe %s + %s) to run the subtest.\n",
>+ kmstest_pipe_name(pipe), igt_output_name(output));
>+
>+ igt_display_reset(dpy);
>+
>+ set_fb_on_crtc(dpy, pipe, output, &fb);
> primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>
> igt_display_commit2(dpy, dpy->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
>@@ -299,6 +310,22 @@ static void test_pageflip_modeset_hang(igt_display_t *dpy, enum pipe pipe)
> igt_remove_fb(dpy->drm_fd, &fb);
> }
>
>+static bool
>+pipe_output_combo_valid(igt_display_t *dpy,
>+ igt_output_t *output, enum pipe pipe)
>+{
>+ bool ret = true;
>+
>+ igt_display_reset(dpy);
>+
>+ igt_output_set_pipe(output, pipe);
>+ if (!i915_pipe_output_combo_valid(dpy))
>+ ret = false;
>+ igt_output_set_pipe(output, PIPE_NONE);
>+
>+ return ret;
>+}
>+
> static int opt_handler(int opt, int opt_index, void *data)
> {
> switch (opt) {
>@@ -346,7 +373,8 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
> {
> igt_display_t display = { .drm_fd = -1, .n_pipes = IGT_MAX_PIPES };
>
>- enum pipe active_pipes[IGT_MAX_PIPES];
>+ enum pipe pipe, active_pipes[IGT_MAX_PIPES];
>+ igt_output_t *output;
> uint32_t last_pipe = 0;
> int i;
> struct {
>@@ -367,8 +395,6 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
> int fd;
>
> igt_fixture {
>- enum pipe pipe;
>-
> fd = drm_open_driver_master(DRIVER_INTEL);
>
> igt_require_gem(fd);
>@@ -391,63 +417,72 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
>
> igt_describe("Test for basic check of KMS ABI with busy framebuffers.");
> igt_subtest_with_dynamic("basic") { /* just run on the first pipe */
>- enum pipe pipe;
>+ for_each_pipe_with_single_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, output, pipe))
>+ continue;
>
>- for_each_pipe(&display, pipe) {
> igt_dynamic("flip")
>- test_flip(&display, pipe, false);
>+ test_flip(&display, pipe, output, false);
> igt_dynamic("modeset")
>- test_flip(&display, pipe, true);
>+ test_flip(&display, pipe, output, true);
> break;
> }
> }
>
> igt_subtest_with_dynamic("basic-hang") {
>- enum pipe pipe;
> igt_hang_t hang = igt_allow_hang(display.drm_fd, 0, 0);
> errno = 0;
>
>- for_each_pipe(&display, pipe) {
>+ for_each_pipe_with_single_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, output, pipe))
>+ continue;
>+
> if (!all_pipes && pipe != active_pipes[0] &&
> pipe != active_pipes[last_pipe])
> continue;
>
> igt_dynamic_f("flip-pipe-%s", kmstest_pipe_name(pipe))
>- test_flip(&display, pipe, false);
>+ test_flip(&display, pipe, output, false);
> igt_dynamic_f("modeset-pipe-%s", kmstest_pipe_name(pipe))
>- test_flip(&display, pipe, true);
>+ test_flip(&display, pipe, output, true);
> }
>
> igt_disallow_hang(display.drm_fd, hang);
> }
>
> igt_subtest_with_dynamic("extended-pageflip-modeset-hang-oldfb") {
>- enum pipe pipe;
> igt_hang_t hang = igt_allow_hang(display.drm_fd, 0, 0);
> errno = 0;
>
>- for_each_pipe(&display, pipe) {
>+ for_each_pipe_with_single_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, output, pipe))
>+ continue;
>+
> if (!all_pipes && pipe != active_pipes[0] &&
> pipe != active_pipes[last_pipe])
> continue;
>
> igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
>- test_pageflip_modeset_hang(&display, pipe);
>+ test_pageflip_modeset_hang(&display, output, pipe);
> }
>
> igt_disallow_hang(display.drm_fd, hang);
> }
>
> for (i = 0; i < sizeof(tests) / sizeof (tests[0]); i++) {
>+ igt_fixture
>+ igt_require(display.is_atomic);
>+
> igt_subtest_with_dynamic(tests[i].name) {
>- enum pipe pipe;
> igt_hang_t hang;
> errno = 0;
>
>- igt_require(display.is_atomic);
> hang = igt_allow_hang(display.drm_fd, 0, 0);
>
>- for_each_pipe(&display, pipe) {
>+ for_each_pipe_with_single_output(&display, pipe, output) {
>+ if (!pipe_output_combo_valid(&display, output, pipe))
>+ continue;
>+
> if (!all_pipes && pipe != active_pipes[0] &&
> pipe != active_pipes[last_pipe])
> continue;
>@@ -456,7 +491,8 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
> if (tests[i].reset)
> igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 1);
>
>- test_hang(&display, pipe, tests[i].modeset, tests[i].hang_newfb);
>+ test_hang(&display, pipe, output,
>+ tests[i].modeset, tests[i].hang_newfb);
>
> if (tests[i].reset)
> igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 0);
>
[-- Attachment #2: Type: text/html, Size: 46684 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: Add support for Bigjoiner
2022-12-28 4:10 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: " Gupta, Nidhi1
@ 2022-12-29 3:26 ` Gupta, Nidhi1
2022-12-29 5:11 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Gupta, Nidhi1
0 siblings, 1 reply; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-29 3:26 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1853 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>This patch will add a check to Skip the subtest if a selected pipe/output
>combo won't support Bigjoiner or 8K mode.
>
>Example:
>* Pipe-D wont support a mode > 5K
>* To use 8K mode on a pipe then consecutive pipe must be available & free.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>---
Reviewed-by: Nidhi Gupta <nidhi1.gupta@intel.com>
>tests/kms_concurrent.c | 10 +++++++++-
>1 file changed, 9 insertions(+), 1 deletion(-)
>diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
>index 6f8ffd4a..e6d61a84 100644
>--- a/tests/kms_concurrent.c
>+++ b/tests/kms_concurrent.c
>@@ -330,9 +330,17 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
> igt_describe("Test atomic mode setting concurrently with multiple planes and screen "
> "resolution.");
> igt_subtest_with_dynamic_f("pipe-%s", kmstest_pipe_name(pipe)) {
>- for_each_valid_output_on_pipe(&data->display, pipe, output)
>+ for_each_valid_output_on_pipe(&data->display, pipe, output) {
>+ igt_display_reset(&data->display);
>+
>+ igt_output_set_pipe(output, pipe);
>+ if (!i915_pipe_output_combo_valid(&data->display))
>+ continue;
>+
>+ igt_output_set_pipe(output, PIPE_NONE);
> igt_dynamic_f("%s", igt_output_name(output))
> run_test(data, pipe, output);
>+ }
> }
>}
[-- Attachment #2: Type: text/html, Size: 7448 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: Add support for Bigjoiner
2022-12-29 3:26 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Gupta, Nidhi1
@ 2022-12-29 5:11 ` Gupta, Nidhi1
2022-12-30 14:37 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Gupta, Nidhi1
0 siblings, 1 reply; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-29 5:11 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1692 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>This patch will add a check to Skip the subtest if a selected pipe/output
>combo won't support Bigjoiner or 8K mode.
>
>Example:
>* Pipe-D wont support a mode > 5K
>* To use 8K mode on a pipe then consecutive pipe must be available & free.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>---
Reviewed-by: Nidhi Gupta <nidhi1.gupta@intel.com>
>tests/i915/kms_draw_crc.c | 10 ++++------
>1 file changed, 4 insertions(+), 6 deletions(-)
>diff --git a/tests/i915/kms_draw_crc.c b/tests/i915/kms_draw_crc.c
>index c2ac4721..01c3808c 100644
>--- a/tests/i915/kms_draw_crc.c
>+++ b/tests/i915/kms_draw_crc.c
>@@ -59,16 +59,14 @@ static void find_modeset_params(void)
> {
> enum pipe pipe;
>
>- igt_display_reset(&display);
>- igt_display_commit(&display);
>-
> for_each_pipe_with_valid_output(&display, pipe, output) {
>- igt_output_set_pipe(output, pipe);
>+ igt_display_reset(&display);
>
>- mode = igt_output_get_mode(output);
>- if (!mode)
>+ igt_output_set_pipe(output, pipe);
>+ if (!i915_pipe_output_combo_valid(&display))
> continue;
>
>+ mode = igt_output_get_mode(output);
> pipe_crc = igt_pipe_crc_new(drm_fd, pipe, IGT_PIPE_CRC_SOURCE_AUTO);
> /*Only one pipe/output is enough*/
> break;
[-- Attachment #2: Type: text/html, Size: 6747 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: Add support for Bigjoiner
2022-12-29 5:11 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Gupta, Nidhi1
@ 2022-12-30 14:37 ` Gupta, Nidhi1
2022-12-30 14:46 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Gupta, Nidhi1
0 siblings, 1 reply; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-30 14:37 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 2252 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>As many 2x tests are currently running on Pipe-A & B only, those
>tests will always SKIP if there is any 8K supported panel in the
>config. Instead of Skipping the test, add some intelligence to
>the subtest to identify the valid pipe/output combo to execute
>the subtest.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>---
Reviewed-by: Nidhi Gupta
>tests/i915/kms_frontbuffer_tracking.c | 16 ++++++++++++----
>1 file changed, 12 insertions(+), 4 deletions(-)
>diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
>index 5b47999e..650e14a7 100644
>--- a/tests/i915/kms_frontbuffer_tracking.c
>+++ b/tests/i915/kms_frontbuffer_tracking.c
>@@ -403,15 +403,23 @@ static bool find_connector(bool edp_only, bool pipe_a,
> if (pipe_a && pipe != PIPE_A)
> continue;
>
>- if (output == forbidden_output || pipe == forbidden_pipe)
>+ if (output == forbidden_output || pipe == forbidden_pipe) {
>+ igt_output_set_pipe(output, pipe);
>+ igt_output_override_mode(output, connector_get_mode(output));
>+
> continue;
>+ }
>
> if (c->connector_type == DRM_MODE_CONNECTOR_eDP && opt.no_edp)
> continue;
>
>- *ret_output = output;
>- *ret_pipe = pipe;
>- return true;
>+ igt_output_set_pipe(output, pipe);
>+ igt_output_override_mode(output, connector_get_mode(output));
>+ if (i915_pipe_output_combo_valid(&drm.display)) {
>+ *ret_output = output;
>+ *ret_pipe = pipe;
>+ return true;
>+ }
> }
>
> return false;
[-- Attachment #2: Type: text/html, Size: 9055 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: Add support for Bigjoiner
2022-12-30 14:37 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Gupta, Nidhi1
@ 2022-12-30 14:46 ` Gupta, Nidhi1
2022-12-30 15:27 ` [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: " Gupta, Nidhi1
0 siblings, 1 reply; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-30 14:46 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1772 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>This patch will add a check to Skip the subtest if a selected pipe/output
>combo won't support Bigjoiner or 8K mode.
>
>Example:
>* Pipe-D wont support a mode > 5K
>* To use 8K mode on a pipe then consecutive pipe must be available & free.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>---
Reviewed-by: Nidhi Gupta <nidhi1.gupta@intel.com>
> tests/kms_invalid_mode.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>diff --git a/tests/kms_invalid_mode.c b/tests/kms_invalid_mode.c
>index 40042d4e..86f529e8 100644
>--- a/tests/kms_invalid_mode.c
>+++ b/tests/kms_invalid_mode.c
>@@ -301,6 +301,12 @@ igt_main
> for (int i = 0; i < ARRAY_SIZE(subtests); i++) {
> igt_subtest_with_dynamic(subtests[i].name) {
> for_each_pipe_with_valid_output(&data.display, pipe, output) {
>+ igt_display_reset(&data.display);
>+
>+ igt_output_set_pipe(output, pipe);
>+ if (!i915_pipe_output_combo_valid(&data.display))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe)) {
> data.output = output;
> data.pipe = pipe;
[-- Attachment #2: Type: text/html, Size: 7279 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: Add support for Bigjoiner
2022-12-30 14:46 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Gupta, Nidhi1
@ 2022-12-30 15:27 ` Gupta, Nidhi1
0 siblings, 0 replies; 9+ messages in thread
From: Gupta, Nidhi1 @ 2022-12-30 15:27 UTC (permalink / raw)
To: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1912 bytes --]
On Tue, 2022-11-15 at 08:43 +0530, Bhanuprakash Modem wrote:
>This patch will add a check to Skip the subtest if a selected pipe/output
>combo won't support Bigjoiner or 8K mode.
>
>Example:
>* Pipe-D wont support a mode > 5K
>* To use 8K mode on a pipe then consecutive pipe must be available & free.
>
>V2: - Use updated helper name
>
>Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>---
Reviewed-by: Nidhi Gupta <nidhi1.gupta@intel.com>
> tests/kms_sequence.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>diff --git a/tests/kms_sequence.c b/tests/kms_sequence.c
>index c72857a3..c8a3d6bb 100644
>--- a/tests/kms_sequence.c
>+++ b/tests/kms_sequence.c
>@@ -285,6 +285,12 @@ igt_main
> "drmCrtcQueueSequence");
> igt_subtest_with_dynamic_f("%s-%s", f->name, m->name) {
> for_each_pipe_with_valid_output(&data.display, p, output) {
>+ igt_display_reset(&data.display);
>+
>+ igt_output_set_pipe(output, p);
>+ if (!i915_pipe_output_combo_valid(&data.display))
>+ continue;
>+
> igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(p)) {
> data.pipe = p;
> data.output = output;
[-- Attachment #2: Type: text/html, Size: 8367 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: Add support for Bigjoiner
2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
0 siblings, 0 replies; 9+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
To: igt-dev
This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.
Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.
V2: - Use updated helper name
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/i915/kms_draw_crc.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/tests/i915/kms_draw_crc.c b/tests/i915/kms_draw_crc.c
index c2ac4721..01c3808c 100644
--- a/tests/i915/kms_draw_crc.c
+++ b/tests/i915/kms_draw_crc.c
@@ -59,16 +59,14 @@ static void find_modeset_params(void)
{
enum pipe pipe;
- igt_display_reset(&display);
- igt_display_commit(&display);
-
for_each_pipe_with_valid_output(&display, pipe, output) {
- igt_output_set_pipe(output, pipe);
+ igt_display_reset(&display);
- mode = igt_output_get_mode(output);
- if (!mode)
+ igt_output_set_pipe(output, pipe);
+ if (!i915_pipe_output_combo_valid(&display))
continue;
+ mode = igt_output_get_mode(output);
pipe_crc = igt_pipe_crc_new(drm_fd, pipe, IGT_PIPE_CRC_SOURCE_AUTO);
/*Only one pipe/output is enough*/
break;
--
2.38.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: Add support for Bigjoiner
2022-11-15 16:58 [igt-dev] [i-g-t v5 00/52] Add IGT " Bhanuprakash Modem
@ 2022-11-15 16:59 ` Bhanuprakash Modem
0 siblings, 0 replies; 9+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 16:59 UTC (permalink / raw)
To: igt-dev
This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.
Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.
V2: - Use updated helper name
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/i915/kms_draw_crc.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/tests/i915/kms_draw_crc.c b/tests/i915/kms_draw_crc.c
index c2ac4721..01c3808c 100644
--- a/tests/i915/kms_draw_crc.c
+++ b/tests/i915/kms_draw_crc.c
@@ -59,16 +59,14 @@ static void find_modeset_params(void)
{
enum pipe pipe;
- igt_display_reset(&display);
- igt_display_commit(&display);
-
for_each_pipe_with_valid_output(&display, pipe, output) {
- igt_output_set_pipe(output, pipe);
+ igt_display_reset(&display);
- mode = igt_output_get_mode(output);
- if (!mode)
+ igt_output_set_pipe(output, pipe);
+ if (!i915_pipe_output_combo_valid(&display))
continue;
+ mode = igt_output_get_mode(output);
pipe_crc = igt_pipe_crc_new(drm_fd, pipe, IGT_PIPE_CRC_SOURCE_AUTO);
/*Only one pipe/output is enough*/
break;
--
2.38.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
end of thread, other threads:[~2022-12-30 15:28 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-27 5:27 [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: Add support for Bigjoiner Gupta, Nidhi1
2022-12-28 4:10 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: " Gupta, Nidhi1
2022-12-29 3:26 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Gupta, Nidhi1
2022-12-29 5:11 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Gupta, Nidhi1
2022-12-30 14:37 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Gupta, Nidhi1
2022-12-30 14:46 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Gupta, Nidhi1
2022-12-30 15:27 ` [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: " Gupta, Nidhi1
-- strict thread matches above, loose matches on Subject: below --
2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: Add " Bhanuprakash Modem
2022-11-15 16:58 [igt-dev] [i-g-t v5 00/52] Add IGT " Bhanuprakash Modem
2022-11-15 16:59 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: Add " Bhanuprakash Modem
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.