From: Swati Sharma <swati2.sharma@intel.com>
To: Bhanuprakash Modem <bhanuprakash.modem@intel.com>,
igt-dev@lists.freedesktop.org
Subject: Re: [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add support for Bigjoiner
Date: Thu, 29 Dec 2022 14:58:15 +0530 [thread overview]
Message-ID: <92331c54-3b97-5eb8-d1c0-ff2783f0b356@intel.com> (raw)
In-Reply-To: <20221115170855.196572-42-bhanuprakash.modem@intel.com>
Hi Bhanu,
The intention of cdclk test is to bump cdclk when we have transition
from low resolution to high resolution (this was tested)
Changes done in test_mode_transition_on_all_outputs, you have set
high resolution first followed by low resolution. Why?
On 15-Nov-22 10:38 PM, 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>
> ---
> tests/i915/kms_cdclk.c | 93 +++++++++++++++++++++++-------------------
> 1 file changed, 51 insertions(+), 42 deletions(-)
>
> diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
> index 991a7c50..ce945623 100644
> --- a/tests/i915/kms_cdclk.c
> +++ b/tests/i915/kms_cdclk.c
> @@ -243,20 +243,17 @@ static void test_mode_transition_on_all_outputs(data_t *data)
> int debugfs_fd = data->debugfs_fd;
> drmModeModeInfo *mode, *mode_hi, *mode_lo;
> igt_output_t *output;
> - int valid_outputs = 0;
> int cdclk_ref, cdclk_new;
> uint16_t width = 0, height = 0;
> struct igt_fb fb;
> igt_pipe_t *pipe;
> igt_plane_t *plane;
> - int i = 0, j = 0;
> + enum pipe p, active_pipes[IGT_MAX_PIPES];
> + int i = 0, active_pipe_count = 0;
>
> do_cleanup_display(display);
> igt_display_reset(display);
>
> - for_each_connected_output(&data->display, output)
> - valid_outputs++;
> -
> for_each_connected_output(display, output) {
> mode = igt_output_get_mode(output);
> igt_assert(mode);
> @@ -269,52 +266,59 @@ static void test_mode_transition_on_all_outputs(data_t *data)
>
> igt_create_pattern_fb(data->drm_fd, width, height, DRM_FORMAT_XRGB8888,
> DRM_FORMAT_MOD_LINEAR, &fb);
> - i = 0;
> +
> for_each_connected_output(display, output) {
> - pipe = &display->pipes[i];
> - plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> + for_each_pipe(display, p) {
> + mode = NULL;
>
> - mode = NULL;
> + igt_output_set_pipe(output, p);
> + mode = igt_output_get_mode(output);
> + igt_assert(mode);
>
> - igt_output_set_pipe(output, i);
> - mode = igt_output_get_mode(output);
> - igt_assert(mode);
> + mode_hi = get_highres_mode(output);
> + igt_require(mode_hi != NULL);
> +
> + igt_output_override_mode(output, mode_hi);
> + if (!i915_pipe_output_combo_valid(display)) {
> + igt_output_set_pipe(output, PIPE_NONE);
> + continue;
> + }
>
> - mode_lo = get_lowres_mode(output);
> + active_pipes[active_pipe_count++] = p;
> + pipe = &display->pipes[p];
> + plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> + igt_plane_set_fb(plane, &fb);
> + igt_fb_set_size(&fb, plane, mode_hi->hdisplay, mode_hi->vdisplay);
> + igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
>
> - igt_output_override_mode(output, mode_lo);
> - igt_plane_set_fb(plane, &fb);
> - igt_fb_set_size(&fb, plane, mode_lo->hdisplay, mode_lo->vdisplay);
> - igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
> - i++;
> + break;
> + }
> }
>
> igt_display_commit2(display, COMMIT_ATOMIC);
> - cdclk_ref = get_current_cdclk_freq(debugfs_fd);
> + cdclk_new = get_current_cdclk_freq(debugfs_fd);
>
> - j = 0;
> for_each_connected_output(display, output) {
> - pipe = &display->pipes[j];
> - plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> + for (i = 0; i < active_pipe_count; i++) {
> + pipe = &display->pipes[active_pipes[i]];
> + plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>
> - mode = NULL;
> + mode = NULL;
> + igt_output_set_pipe(output, i);
> + mode = igt_output_get_mode(output);
> + igt_assert(mode);
>
> - igt_output_set_pipe(output, j);
> - mode = igt_output_get_mode(output);
> - igt_assert(mode);
> -
> - mode_hi = get_highres_mode(output);
> - igt_require(mode_hi != NULL);
> + mode_lo = get_lowres_mode(output);
>
> - igt_output_override_mode(output, mode_hi);
> - igt_plane_set_fb(plane, &fb);
> - igt_fb_set_size(&fb, plane, mode_hi->hdisplay, mode_hi->vdisplay);
> - igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
> - j++;
> + igt_output_override_mode(output, mode_lo);
> + igt_plane_set_fb(plane, &fb);
> + igt_fb_set_size(&fb, plane, mode_lo->hdisplay, mode_lo->vdisplay);
> + igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
> + }
> }
>
> igt_display_commit2(display, COMMIT_ATOMIC);
> - cdclk_new = get_current_cdclk_freq(debugfs_fd);
> + cdclk_ref = get_current_cdclk_freq(debugfs_fd);
> igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
>
> /* cdclk should bump */
> @@ -332,13 +336,18 @@ static void run_cdclk_test(data_t *data, uint32_t flags)
> enum pipe pipe;
>
> for_each_pipe_with_valid_output(display, pipe, output) {
> - igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
> - if (igt_pipe_connector_valid(pipe, output)) {
> - if (flags & TEST_PLANESCALING)
> - test_plane_scaling(data, pipe, output);
> - if (flags & TEST_MODETRANSITION)
> - test_mode_transition(data, pipe, output);
> - }
> + igt_output_set_pipe(output, pipe);
> + if (!i915_pipe_output_combo_valid(display)) {
> + igt_output_set_pipe(output, PIPE_NONE);
> + continue;
> + }
> +
> + igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
> + if (flags & TEST_PLANESCALING)
> + test_plane_scaling(data, pipe, output);
> + if (flags & TEST_MODETRANSITION)
> + test_mode_transition(data, pipe, output);
> + }
> }
> }
>
--
~Swati Sharma
next prev parent reply other threads:[~2022-12-29 9:28 UTC|newest]
Thread overview: 95+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 01/52] lib/igt_kms: Add a helper for valid pipe/output constraint Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 02/52] lib/igt_kms: Bigjoiner check in max_bpc constraint Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner Bhanuprakash Modem
2022-12-23 6:29 ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-23 8:05 ` Karthik B S
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: " Bhanuprakash Modem
2022-12-28 18:30 ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 06/52] tests/kms_atomic_transition: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 07/52] tests/kms_color_helper: Helper to check Bigjoiner constraint Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 08/52] tests/kms_color: Add support for Bigjoiner Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 09/52] tests/chamelium/kms_color_chamelium: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: " Bhanuprakash Modem
2022-12-27 6:36 ` Karthik B S
2022-12-27 14:55 ` Modem, Bhanuprakash
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: " Bhanuprakash Modem
2022-12-27 6:57 ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: " Bhanuprakash Modem
2022-12-27 6:31 ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: " Bhanuprakash Modem
2022-12-27 16:24 ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 15/52] tests/kms_display_modes: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 16/52] tests/kms_dp_tiled_display: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 17/52] tests/kms_flip_event_leak: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 19/52] tests/kms_lease: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 20/52] tests/kms_multipipe_modeset: Find the suitable mode instead of using default Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner Bhanuprakash Modem
2022-12-27 6:24 ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 22/52] tests/kms_plane: " Bhanuprakash Modem
2022-12-15 10:40 ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-27 6:20 ` Karthik B S
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 23/52] tests/kms_plane_alpha_blend: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: " Bhanuprakash Modem
2022-12-27 7:21 ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 25/52] tests/kms_plane_lowres: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 26/52] tests/kms_plane_multiple: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 27/52] tests/kms_plane_scaling: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 28/52] tests/kms_prime: " Bhanuprakash Modem
2022-12-28 5:58 ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 29/52] tests/kms_properties: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 30/52] tests/kms_rmfb: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: " Bhanuprakash Modem
2022-12-23 8:23 ` B, Jeevan
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: " Bhanuprakash Modem
2022-12-30 17:48 ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: " Bhanuprakash Modem
2022-12-28 10:54 ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: " Bhanuprakash Modem
2022-12-30 18:41 ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 36/52] tests/kms_vrr: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: " Bhanuprakash Modem
2022-12-23 8:06 ` B, Jeevan
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 38/52] tests/i915/kms_big_joiner: Negative tests " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: Add support " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: " Bhanuprakash Modem
2022-12-23 8:27 ` Karthik B S
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: " Bhanuprakash Modem
2022-12-29 9:28 ` Swati Sharma [this message]
2022-12-30 5:45 ` Modem, Bhanuprakash
2022-12-30 14:01 ` Swati Sharma
2023-01-04 7:04 ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: " Bhanuprakash Modem
2022-12-26 10:58 ` Sharma, Ananya
2022-12-27 8:58 ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
2022-12-28 18:43 ` Swati Sharma
2022-12-29 5:02 ` Modem, Bhanuprakash
2022-12-29 5:17 ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-30 14:06 ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
2022-12-23 8:11 ` B, Jeevan
2022-12-23 8:36 ` Modem, Bhanuprakash
2022-12-23 8:40 ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-26 6:09 ` B, Jeevan
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 47/52] tests/i915/kms_mmap_write_crc: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 48/52] tests/i915/kms_psr2_sf: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 49/52] tests/i915/kms_psr2_su: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 50/52] tests/i915/kms_psr: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 51/52] tests/i915/kms_psr_stress_test: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 52/52] tests/i915/kms_pwrite_crc: " Bhanuprakash Modem
2022-11-15 20:21 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev9) Patchwork
2022-11-16 3:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2022-12-15 12:18 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev10) Patchwork
2022-12-16 13:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2022-12-23 7:12 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev11) Patchwork
2022-12-23 9:29 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev12) Patchwork
2022-12-23 10:37 ` [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev11) Patchwork
2022-12-23 11:01 ` [igt-dev] ✓ Fi.CI.IGT: success for Add IGT support for Bigjoiner (rev12) Patchwork
-- strict thread matches above, loose matches on Subject: below --
2022-11-15 16:58 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
2022-11-15 16:59 ` [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add " Bhanuprakash Modem
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=92331c54-3b97-5eb8-d1c0-ff2783f0b356@intel.com \
--to=swati2.sharma@intel.com \
--cc=bhanuprakash.modem@intel.com \
--cc=igt-dev@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox