All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Hogander, Jouni" <jouni.hogander@intel.com>
To: "Joshi, Kunal1" <kunal1.joshi@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 3/3] tests/intel/kms_psr2_sf: extend tests for panel replay sf
Date: Mon, 19 Feb 2024 08:31:10 +0000	[thread overview]
Message-ID: <3a6a383406fbd5486b9cf25f08f36eff0ac08507.camel@intel.com> (raw)
In-Reply-To: <20240218091704.2259937-4-kunal1.joshi@intel.com>

On Sun, 2024-02-18 at 14:47 +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)
> v5: use static in get_psr_mode_str_for_output (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..c6d871dd8 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)

output is already part of data?

> +{
> +       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;

I think it is somehow wrong to return PSR_DISABLED here. It could be
PSR1 or PR full frame update. How about setting data->psr_mode and
return true if it's PSR2 or PR_SELECTIVE_UPDATE.

> +}
> +
> +static const char *get_psr_mode_str_for_output(data_t *data,
> igt_output_t *output)
> +{
> +       static const char *psr_mode = NULL;
> +
> +       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));
>  
>         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;

You have already psr_mode in data structure.

BR,

Jouni Högander
> +
> +       /* 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);


  reply	other threads:[~2024-02-19  8:32 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-18  9:17 [PATCH i-g-t 0/3] extend psr2_sf test for pr_sf Kunal Joshi
2024-02-18  9:17 ` [PATCH i-g-t 1/3] lib/igt_psr: modify library to support multiple PSR/PR outputs Kunal Joshi
2024-02-19  7:45   ` Hogander, Jouni
2024-02-19  8:07     ` Joshi, Kunal1
2024-02-19  8:33       ` Hogander, Jouni
2024-02-19  8:36         ` Joshi, Kunal1
2024-02-18  9:17 ` [PATCH i-g-t 2/3] lib/igt_psr: add support for PR selective update Kunal Joshi
2024-02-19  8:00   ` Hogander, Jouni
2024-02-19  8:12     ` Joshi, Kunal1
2024-02-19  8:56       ` Hogander, Jouni
2024-02-19  9:01         ` Joshi, Kunal1
2024-02-19 10:01   ` Joshi, Kunal1
2024-02-19 10:29     ` Hogander, Jouni
2024-02-18  9:17 ` [PATCH i-g-t 3/3] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi
2024-02-19  8:31   ` Hogander, Jouni [this message]
2024-02-18  9:36 ` ✗ GitLab.Pipeline: warning for extend psr2_sf test for pr_sf (rev5) Patchwork
2024-02-18  9:53 ` ✓ CI.xeBAT: success " Patchwork
2024-02-18 10:04 ` ✓ Fi.CI.BAT: " Patchwork
2024-02-18 11:26 ` ✗ Fi.CI.IGT: failure " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2024-02-21  9:01 [PATCH i-g-t 0/3] extend psr2_sf test for pr_sf Kunal Joshi
2024-02-21  9:01 ` [PATCH i-g-t 3/3] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi
2024-02-21  8:56   ` Hogander, Jouni
2024-02-19 16:33 [PATCH i-g-t 0/3] extend psr2_sf test for pr_sf Kunal Joshi
2024-02-19 16:33 ` [PATCH i-g-t 3/3] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi
2024-02-20  9:06   ` Hogander, Jouni
2024-02-21  8:54     ` Joshi, Kunal1
2024-02-07 13:53 [PATCH i-g-t 0/3] extend psr2_sf test for pr_sf Kunal Joshi
2024-02-07 13:53 ` [PATCH i-g-t 3/3] tests/intel/kms_psr2_sf: extend tests for panel replay sf Kunal Joshi
2024-02-08  9:05   ` Hogander, Jouni

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=3a6a383406fbd5486b9cf25f08f36eff0ac08507.camel@intel.com \
    --to=jouni.hogander@intel.com \
    --cc=animesh.manna@intel.com \
    --cc=arun.r.murthy@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=kunal1.joshi@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 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.