public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Swati Sharma <swati2.sharma@intel.com>
To: "Modem, Bhanuprakash" <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: Wed, 4 Jan 2023 12:34:13 +0530	[thread overview]
Message-ID: <90c30634-31cb-8c02-a265-bbc754c5b6cd@intel.com> (raw)
In-Reply-To: <a8ff2616-a5e5-d02a-75f3-8d0d25adc9f4@intel.com>



On 30-Dec-22 11:15 AM, Modem, Bhanuprakash wrote:
> On Thu-29-12-2022 02:58 pm, Swati Sharma wrote:
>> 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?
> 
> I thought, we just need to check the clock by changing the resolution in 
> any order (high to low (or) high to low).
> 
> Also, realized this test is limited to 4K, hence we can drop this patch.
> 
> - Bhanu
> 
hmm..since we were validating on max 4K res panels in CI. We had 
restricted test for max 4K res. Now, if tests will be executed on
8K too; we need to modify test to consider max res. as 8K/4K 
accordingly. Though this shouldn't be in scope of this change.
>>
>> 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

  parent reply	other threads:[~2023-01-04  7:04 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
2022-12-30  5:45     ` Modem, Bhanuprakash
2022-12-30 14:01       ` Swati Sharma
2023-01-04  7:04       ` Swati Sharma [this message]
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=90c30634-31cb-8c02-a265-bbc754c5b6cd@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