Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Joshi, Kunal1" <kunal1.joshi@intel.com>
To: "Hogander, Jouni" <jouni.hogander@intel.com>,
	"igt-dev@lists.freedesktop.org" <igt-dev@lists.freedesktop.org>
Cc: "Murthy, Arun R" <arun.r.murthy@intel.com>,
	"Manna, Animesh" <animesh.manna@intel.com>
Subject: Re: [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: extend tests for panel replay sf
Date: Mon, 19 Feb 2024 10:55:13 +0530	[thread overview]
Message-ID: <111011c3-b33d-47c6-b888-b20ac4083b08@intel.com> (raw)
In-Reply-To: <b1f6b6d71b5275a69c527e3da3d5f0116e59f7fa.camel@intel.com>

[-- Attachment #1: Type: text/plain, Size: 37964 bytes --]

Hello Jouni,

On 2/16/2024 1:55 PM, Hogander, Jouni wrote:
> On Thu, 2024-02-08 at 20:24 +0530, Kunal Joshi wrote:
>> Extend the tests to cover panel replay selective fetch feature.
>>
>>  From kms_psr2_sf test point of view we have
>> check_pr_psr2_sel_fetch_support
>> function to check if PR/PSR2 selective fetch is supported for an
>> output
>> if output supports selective fetch then we check we enter DEEP_SLEEP
>> mode
>> in run function
>>
>> v2: fixed dynamic test name
>> v3: use check_psr2_support (Jouni)
>> v4: correct order of checks in check_pr_psr2_sel_fetch_support
>> (Jouni)
>>      use appropriate psr mode in psr_wait_entry (Jouni)
>>
>> Cc: Jouni Högander<jouni.hogander@intel.com>
>> Cc: Animesh Manna<animesh.manna@intel.com>
>> Cc: Arun R Murthy<arun.r.murthy@intel.com>
>> Signed-off-by: Kunal Joshi<kunal1.joshi@intel.com>
>> ---
>>   tests/intel/kms_psr2_sf.c | 147 +++++++++++++++++++++++++++++++-----
>> --
>>   1 file changed, 120 insertions(+), 27 deletions(-)
>>
>> diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
>> index 8e6a9e02c..0595c1f11 100644
>> --- a/tests/intel/kms_psr2_sf.c
>> +++ b/tests/intel/kms_psr2_sf.c
>> @@ -172,6 +172,7 @@ typedef struct {
>>          uint32_t screen_changes;
>>          int cur_x, cur_y;
>>          enum pipe pipe;
>> +       enum psr_mode psr_mode;
>>          enum {
>>                  FEATURE_NONE  = 0,
>>                  FEATURE_DSC   = 1,
>> @@ -179,6 +180,34 @@ typedef struct {
>>          } coexist_feature;
>>   } data_t;
>>   
>> +static enum psr_mode get_sel_fetch_mode_for_output(data_t *data,
>> igt_output_t *output)
>> +{
>> +       enum psr_mode mode = PSR_DISABLED;
>> +
>> +       if (psr_sink_support(data->drm_fd, data->debugfs_fd,
>> +                                                PR_MODE_SEL_FETCH,
>> output))
>> +               mode = PR_MODE_SEL_FETCH;
>> +       else if (psr_sink_support(data->drm_fd, data->debugfs_fd,
>> +                                                         PSR_MODE_2,
>> output))
>> +               mode = PSR_MODE_2;
>> +       else
>> +               igt_info("selective fetch not supported on output
>> %s\n", output->name);
>> +
>> +       return mode;
>> +}
>> +
>> +static const char *get_psr_mode_str_for_output(data_t *data,
>> igt_output_t *output)
>> +{
>> +       const char *psr_mode = NULL;
> If you are doing it this way this variable should be static. I'm not
> sure if renaming these testcases to pr-* and psr2-* gives any benefit.
> I'll guess it is ok, if you want to do that change.

Have addressed your comment in the next revision, kept the naming just 
to know
test executed on PR or PSR panel.

>
>> +
>> +       if (get_sel_fetch_mode_for_output(data, output) ==
>> PR_MODE_SEL_FETCH)
>> +               psr_mode = "pr-";
>> +       else if (get_sel_fetch_mode_for_output(data, output) ==
>> PSR_MODE_2)
>> +               psr_mode = "psr2-";
>> +       igt_assert_f(psr_mode, "Invalid psr mode\n");
>> +       return psr_mode;
>> +}
>> +
>>   static const char *op_str(enum operations op)
>>   {
>>          static const char * const name[] = {
>> @@ -688,7 +717,7 @@ static void damaged_plane_move(data_t *data)
>>   
>>          igt_display_commit2(&data->display, COMMIT_ATOMIC);
>>   
>> -       igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2,
>> NULL));
>> +       igt_assert(psr_wait_entry(data->debugfs_fd, data->psr_mode,
>> data->output));
> Not really matter of this patch. I think at some point you need one
> more patch to differentiate in psr_wait_entry (psr_active_check) based
> on output type eDP vs. DP. See Bspec 68920 "Additional programming
> considerations (registers common between eDP and DP)".
>
Sure will send this changes as separate later.
>
> BR,
>
> Jouni Högander
>
>>   
>>          expected_output(data);
>>   }
>> @@ -788,7 +817,7 @@ static void plane_move_continuous(data_t *data)
>>   {
>>          int target_x, target_y;
>>   
>> -       igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2,
>> NULL));
>> +       igt_assert(psr_wait_entry(data->debugfs_fd, data->psr_mode,
>> data->output));
>>   
>>          get_target_coords(data, &target_x, &target_y);
>>   
>> @@ -865,7 +894,7 @@ static void damaged_plane_update(data_t *data)
>>          igt_plane_set_position(data->test_plane, 0, 0);
>>          igt_display_commit2(&data->display, COMMIT_ATOMIC);
>>   
>> -       igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2,
>> NULL));
>> +       igt_assert(psr_wait_entry(data->debugfs_fd, data->psr_mode,
>> data->output));
>>   
>>          expected_output(data);
>>   }
>> @@ -874,7 +903,7 @@ static void run(data_t *data)
>>   {
>>          int i;
>>   
>> -       igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2,
>> NULL));
>> +       igt_assert(psr_wait_entry(data->debugfs_fd, data->psr_mode,
>> data->output));
>>   
>>          if (data->fbc_flag == true && data->op_fbc_mode ==
>> FBC_ENABLED)
>>                  igt_assert_f(intel_fbc_wait_until_enabled(data-
>>> drm_fd,
>> @@ -952,14 +981,24 @@ static void cleanup(data_t *data)
>>          igt_remove_fb(data->drm_fd, &data->fb_test);
>>   }
>>   
>> -static int check_psr2_support(data_t *data)
>> +static bool check_pr_psr2_sel_fetch_support(data_t *data)
>>   {
>> -       int status;
>> +       bool status = false;
>> +       enum psr_mode psr_mode;
>> +
>> +       /* Check sink supports PR/PSR2 selective fetch */
>> +       psr_mode = get_sel_fetch_mode_for_output(data, data->output);
>> +       if (psr_mode == PSR_DISABLED)
>> +               return false;
>> +
>> +       /* Check if selective fetch can be enabled */
>> +       if (!selective_fetch_check(data->debugfs_fd, data->output))
>> +               igt_assert("Selective fetch is not enabled even
>> though panel should support it\n");
>>   
>>          prepare(data);
>> -       status = psr_wait_entry(data->debugfs_fd, PSR_MODE_2, NULL);
>> +       /* We enter into DEEP_SLEEP for both PSR2 and PR sel fetch */
>> +       status = psr_wait_entry(data->debugfs_fd, psr_mode, data-
>>> output);
>>          cleanup(data);
>> -
>>          return status;
>>   }
>>   
>> @@ -981,6 +1020,8 @@ pipe_output_combo_valid(igt_display_t *display,
>>   
>>   igt_main
>>   {
>> +       bool output_supports_pr_psr2_sel_fetch = false;
>> +       bool pr_psr2_sel_fetch_supported = false;
>>          data_t data = {};
>>          igt_output_t *outputs[IGT_MAX_PIPES * IGT_MAX_PIPES];
>>          int i, j, k, y;
>> @@ -1000,11 +1041,6 @@ igt_main
>>                  data.debugfs_fd = igt_debugfs_dir(data.drm_fd);
>>                  kmstest_set_vt_graphics_mode();
>>   
>> -               igt_require_f(psr_sink_support(data.drm_fd,
>> -                                              data.debugfs_fd,
>> PSR_MODE_2,
>> -                                              NULL),
>> -                             "Sink does not support PSR2\n");
>> -
>>                  display_init(&data);
>>   
>>                  if
>> ((intel_display_ver(intel_get_drm_devid(data.drm_fd)) >= 20) &&
>> @@ -1023,7 +1059,8 @@ igt_main
>>   
>>                  for_each_pipe_with_valid_output(&data.display,
>> data.pipe, data.output) {
>>                          coexist_features[n_pipes] = 0;
>> -                       if (check_psr2_support(&data)) {
>> +                       output_supports_pr_psr2_sel_fetch =
>> check_pr_psr2_sel_fetch_support(&data);
>> +                       if (output_supports_pr_psr2_sel_fetch) {
>>                                  pipes[n_pipes] = data.pipe;
>>                                  outputs[n_pipes] = data.output;
>>   
>> @@ -1032,7 +1069,10 @@ igt_main
>>   
>>                                  n_pipes++;
>>                          }
>> +                       pr_psr2_sel_fetch_supported |=
>> output_supports_pr_psr2_sel_fetch;
>>                  }
>> +               igt_require_f(pr_psr2_sel_fetch_supported,
>> +                                         "No output supports
>> selective fetch\n");
>>          }
>>   
>>          for (y = 0; y < ARRAY_SIZE(fbc_status); y++) {
>> @@ -1053,13 +1093,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_PRIMARY;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  for (k = 1; k <=
>> MAX_DAMAGE_AREAS; k++) {
>>                                                          data.damage_a
>> rea_count = k;
>>                                                          prepare(&data
>> );
>> @@ -1086,7 +1130,8 @@ igt_main
>>                                          for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                                  if (j != FEATURE_NONE
>> && !(coexist_features[i] & j))
>>                                                          continue;
>> -                                               igt_dynamic_f("pipe-
>> %s-%s%s",
>> +                                               igt_dynamic_f("%s-
>> pipe-%s-%s%s",
>> +
>> get_psr_mode_str_for_output(&data, outputs[i]),
>>                                                               
>> kmstest_pipe_name(pipes[i]),
>>                                                               
>> igt_output_name(outputs[i]),
>>                                                               
>> coexist_feature_str(j)) {
>> @@ -1094,6 +1139,9 @@ igt_main
>>                                                          data.output =
>> outputs[i];
>>                                                          data.test_pla
>> ne_id = DRM_PLANE_TYPE_PRIMARY;
>>                                                          data.coexist_
>> feature = j;
>> +                                                       data.psr_mode
>> = get_sel_fetch_mode_for_output(&data, data.output);
>> +                                                       igt_assert_f(
>> data.psr_mode != PSR_DISABLED,
>> +
>>              "Invalid psr mode\n");
>>                                                          for (k = 1; k
>> <= MAX_DAMAGE_AREAS; k++) {
>>                                                                  data.
>> damage_area_count = k;
>>                                                                  prepa
>> re(&data);
>> @@ -1118,13 +1166,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_OVERLAY;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  for (k = 1; k <=
>> MAX_DAMAGE_AREAS; k++) {
>>                                                          data.damage_a
>> rea_count = k;
>>                                                          prepare(&data
>> );
>> @@ -1148,13 +1200,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_CURSOR;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);
>> @@ -1174,13 +1230,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_CURSOR;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);
>> @@ -1201,13 +1261,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_CURSOR;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);
>> @@ -1228,13 +1292,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_CURSOR;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);
>> @@ -1256,13 +1324,18 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s",
>> +
>> get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_OVERLAY;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  for (k =
>> POS_TOP_LEFT; k <= POS_BOTTOM_RIGHT ; k++) {
>>                                                          data.pos = k;
>>                                                          prepare(&data
>> );
>> @@ -1285,13 +1358,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                          data.pipe = pipes[i];
>>                                          data.output = outputs[i];
>>                                          data.test_plane_id =
>> DRM_PLANE_TYPE_OVERLAY;
>>                                          data.coexist_feature = j;
>> +                                       data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                       igt_assert_f(data.psr_mode !=
>> PSR_DISABLED,
>> +
>> "Invalid psr mode\n");
>>                                          prepare(&data);
>>                                          run(&data);
>>                                          cleanup(&data);
>> @@ -1312,13 +1389,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_OVERLAY;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);
>> @@ -1339,13 +1420,17 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>>                                                  data.output =
>> outputs[i];
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_OVERLAY;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);
>> @@ -1367,7 +1452,8 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", kmstest_pipe_name(pipes[i]),
>> +
>> get_psr_mode_str_for_output(&data, outputs[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>> @@ -1376,6 +1462,9 @@ igt_main
>>                                                          data.damage_a
>> rea_count = k;
>>                                                          data.test_pla
>> ne_id = DRM_PLANE_TYPE_PRIMARY;
>>                                                          data.coexist_
>> feature = j;
>> +                                                       data.psr_mode
>> = get_sel_fetch_mode_for_output(&data, data.output);
>> +                                                       igt_assert_f(
>> data.psr_mode != PSR_DISABLED,
>> +
>>              "Invalid psr mode\n");
>>                                                          prepare(&data
>> );
>>                                                          run(&data);
>>                                                          cleanup(&data
>> );
>> @@ -1400,7 +1489,8 @@ igt_main
>>                                  for (j = FEATURE_NONE; j <
>> FEATURE_COUNT; j++) {
>>                                          if (j != FEATURE_NONE &&
>> !(coexist_features[i] & j))
>>                                                  continue;
>> -                                       igt_dynamic_f("pipe-%s-%s%s",
>> kmstest_pipe_name(pipes[i]),
>> +                                       igt_dynamic_f("%s-pipe-%s-
>> %s%s", get_psr_mode_str_for_output(&data, outputs[i]),
>> +
>> kmstest_pipe_name(pipes[i]),
>>                                                       
>> igt_output_name(outputs[i]),
>>                                                       
>> coexist_feature_str(j)) {
>>                                                  data.pipe = pipes[i];
>> @@ -1412,6 +1502,9 @@ igt_main
>>                                                          data.primary_
>> format = DRM_FORMAT_NV12;
>>                                                  data.test_plane_id =
>> DRM_PLANE_TYPE_OVERLAY;
>>                                                  data.coexist_feature
>> = j;
>> +                                               data.psr_mode =
>> get_sel_fetch_mode_for_output(&data, data.output);
>> +                                               igt_assert_f(data.psr
>> _mode != PSR_DISABLED,
>> +
>>      "Invalid psr mode\n");
>>                                                  prepare(&data);
>>                                                  run(&data);
>>                                                  cleanup(&data);

Regards
Kunal Joshi

[-- Attachment #2: Type: text/html, Size: 94293 bytes --]

  reply	other threads:[~2024-02-19  5:25 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-08 14:54 [PATCH i-g-t 0/2] extend psr2_sf test for pr_sf Kunal Joshi
2024-02-08 14:54 ` [PATCH i-g-t 1/2] lib/igt_psr: add support for PR selective update Kunal Joshi
2024-02-16  7:01   ` Hogander, Jouni
2024-02-19  5:22     ` Joshi, Kunal1
2024-02-08 14:54 ` [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi
2024-02-16  8:25   ` Hogander, Jouni
2024-02-19  5:25     ` Joshi, Kunal1 [this message]
2024-02-08 19:04 ` ✓ Fi.CI.BAT: success for extend psr2_sf test for pr_sf (rev4) Patchwork
2024-02-08 21:10 ` ✓ CI.xeBAT: " Patchwork
2024-02-08 22:51 ` ✗ Fi.CI.IGT: failure " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2024-01-22  7:49 [PATCH i-g-t 0/2] extend psr2_sf test for pr_sf Kunal Joshi
2024-01-22  7:49 ` [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi
2024-02-05 12:28   ` Hogander, Jouni
2024-01-21 12:57 [PATCH i-g-t 0/2] extend psr2_sf test for pr_sf Kunal Joshi
2024-01-21 12:57 ` [PATCH i-g-t 2/2] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi

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=111011c3-b33d-47c6-b888-b20ac4083b08@intel.com \
    --to=kunal1.joshi@intel.com \
    --cc=animesh.manna@intel.com \
    --cc=arun.r.murthy@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=jouni.hogander@intel.com \
    /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