[igt-dev] [PATCHv3 i-g-t 2/4] tests/kms_async_flips: Run the test for all outputs

Karthik B S karthik.b.s at intel.com
Thu May 18 11:56:42 UTC 2023


On 5/18/2023 4:55 PM, Arun R Murthy wrote:
> Iterate all outputs, in case we have output specific stuff
> (eg. PSR) that could affect the behaviour or async flips
>
> v2: corrected commit message
> v3: run test for all outputs
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Signed-off-by: Arun R Murthy <arun.r.murthy at intel.com>
> ---
>   tests/kms_async_flips.c | 43 ++++++++---------------------------------
>   1 file changed, 8 insertions(+), 35 deletions(-)
>
> diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c
> index fe27a9ec..99653f1e 100644
> --- a/tests/kms_async_flips.c
> +++ b/tests/kms_async_flips.c
> @@ -58,7 +58,6 @@ typedef struct {
>   	int flip_count;
>   	int frame_count;
>   	bool flip_pending;
> -	bool extended;
>   	enum pipe pipe;
>   	bool alternate_sync_async;
>   } data_t;
> @@ -548,49 +547,23 @@ static void test_crc(data_t *data)
>   
>   static void run_test(data_t *data, void (*test)(data_t *))
>   {
> -	igt_output_t *output;
> -	enum pipe pipe;
>   	igt_display_t *display = &data->display;
>   
> -	for_each_pipe(display, pipe) {
> -		for_each_valid_output_on_pipe(display, pipe, output) {
> -			igt_display_reset(display);
> -
> -			igt_output_set_pipe(output, pipe);
> -			if (!i915_pipe_output_combo_valid(display))
> -				continue;
> -
> -			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
> -				data->output = output;
> -				data->pipe = pipe;
> -				test(data);
> -			}
> -
> -			if (!data->extended)
> -				break;
> -		}
> -	}
> -}
> +	for_each_valid_output_on_pipe(display, data->pipe, data->output) {

Hi,

Please replace this with 'for_each_pipe_with_valid_output' to iterate 
over all pipes.

Thanks,
Karthik.B.S
> +		igt_display_reset(display);
>   
> -static int opt_handler(int opt, int opt_index, void *_data)
> -{
> -	data_t *data = _data;
> +		igt_output_set_pipe(data->output, data->pipe);
> +		if (!i915_pipe_output_combo_valid(display))
> +			continue;
>   
> -	switch (opt) {
> -	case 'e':
> -		data->extended = true;
> -		break;
> +		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(data->pipe), data->output->name)
> +			test(data);
>   	}
> -
> -	return IGT_OPT_HANDLER_SUCCESS;
>   }
>   
> -static const char help_str[] =
> -	"  --e \t\tRun the extended tests\n";
> -
>   static data_t data;
>   
> -igt_main_args("e", NULL, help_str, opt_handler, &data)
> +igt_main_args("e", NULL, NULL, NULL, &data)
>   {
>   	int i;
>   


More information about the igt-dev mailing list