[igt-dev] [PATCH i-g-t v2] tests/i915/kms_dsc: add limited flag
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Tue May 30 17:35:10 UTC 2023
On Mon, May 29, 2023 at 10:10:22PM +0530, Swati Sharma wrote:
> Add limited flag to restrict test execution to one valid pipe-output
> combination. By default all tests will run on all valid pipe-output
> combinations.
>
> v2: -rename extended to limited (Kamil)
>
> Cc: Kamil Konieczny <kamil.konieczny at linux.intel.com>
> Signed-off-by: Swati Sharma <swati2.sharma at intel.com>
> ---
> tests/i915/kms_dsc.c | 26 ++++++++++++++++++++++++--
> 1 file changed, 24 insertions(+), 2 deletions(-)
>
> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
> index 3ce28f84..9ddb441d 100644
> --- a/tests/i915/kms_dsc.c
> +++ b/tests/i915/kms_dsc.c
> @@ -51,6 +51,7 @@ typedef struct {
> int input_bpc;
> int disp_ver;
> enum pipe pipe;
> + bool limited;
> } data_t;
>
> static int output_format_list[] = {DSC_FORMAT_YCBCR420, DSC_FORMAT_YCBCR444};
> @@ -250,13 +251,34 @@ static void test_dsc(data_t *data, enum dsc_test_type test_type, int bpc,
>
> igt_dynamic_f("pipe-%s-%s%s", kmstest_pipe_name(data->pipe), data->output->name, name)
> update_display(data, test_type);
> +
> + if (data->limited)
> + break;
> }
> }
>
> -igt_main
> +static int opt_handler(int opt, int opt_index, void *_data)
> {
> - data_t data = {};
You don't need to introduce static data below, handler has pointer
to it, and functions are called with &data so keeping this on stack
is better for me (protects from global access in any place).
> + data_t *data = _data;
> +
> + switch (opt) {
> + case 'l':
> + data->limited = true;
> + break;
> + default:
> + return IGT_OPT_HANDLER_ERROR;
> + }
> +
> + return IGT_OPT_HANDLER_SUCCESS;
> +}
> +
> +static const char help_str[] =
> + " --limited\t\tLimit execution to 1 valid pipe-output combo\n";
I see you're using short option '-l', just add this to line above like:
" --limited\t-l\tLimit ..."
>
> +static data_t data = {};
Keep this on stack. With this nit fixed:
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
--
Zbigniew
> +
> +igt_main_args("l", NULL, help_str, opt_handler, &data)
> +{
> igt_fixture {
> data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
> data.devid = intel_get_drm_devid(data.drm_fd);
> --
> 2.25.1
>
More information about the igt-dev
mailing list