[i-g-t V6 6/6] tests/kms_hdr: Use lib helper to check the pipe/output combo validity
B, Jeevan
jeevan.b at intel.com
Tue Jun 18 08:46:29 UTC 2024
LGTM.
Reviewed-by: Jeevan B <jeevan.b at intel.com>
> -----Original Message-----
> From: Modem, Bhanuprakash <bhanuprakash.modem at intel.com>
> Sent: Tuesday, June 18, 2024 11:54 AM
> To: igt-dev at lists.freedesktop.org
> Cc: Modem, Bhanuprakash <bhanuprakash.modem at intel.com>; B, Jeevan
> <jeevan.b at intel.com>
> Subject: [i-g-t V6 6/6] tests/kms_hdr: Use lib helper to check the pipe/output
> combo validity
>
> Use IGT lib helper intel_pipe_output_combo_valid() to make sure the selected
> pipe/output/mode combo is valid.
>
> Cc: Jeevan B <jeevan.b at intel.com>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
> ---
> tests/kms_hdr.c | 90 ++++++++++++++++++++++++++++---------------------
> 1 file changed, 51 insertions(+), 39 deletions(-)
>
> diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c index 99b78f7ef..475463c21
> 100644
> --- a/tests/kms_hdr.c
> +++ b/tests/kms_hdr.c
> @@ -261,6 +261,8 @@ static void test_bpc_switch(data_t *data, uint32_t
> flags)
> igt_display_t *display = &data->display;
> igt_output_t *output;
>
> + igt_display_reset(display);
> +
> for_each_connected_output(display, output) {
> enum pipe pipe;
>
> @@ -271,26 +273,30 @@ static void test_bpc_switch(data_t *data, uint32_t
> flags)
> continue;
>
> for_each_pipe(display, pipe) {
> - if (igt_pipe_connector_valid(pipe, output)) {
> - prepare_test(data, output, pipe);
> -
> - if (is_intel_device(data->fd) &&
> - !igt_max_bpc_constraint(display, pipe,
> output, 10)) {
> - test_fini(data);
> - break;
> - }
> -
> - data->mode = igt_output_get_mode(output);
> - data->w = data->mode->hdisplay;
> - data->h = data->mode->vdisplay;
> + igt_output_set_pipe(output, pipe);
> + if (intel_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)
> - test_bpc_switch_on_output(data,
> pipe, output, flags);
> + prepare_test(data, output, pipe);
>
> - /* One pipe is enough */
> + if (is_intel_device(data->fd) &&
> + !igt_max_bpc_constraint(display, pipe, output, 10))
> {
> + test_fini(data);
> break;
> }
> +
> + data->mode = igt_output_get_mode(output);
> + data->w = data->mode->hdisplay;
> + data->h = data->mode->vdisplay;
> +
> + igt_dynamic_f("pipe-%s-%s",
> + kmstest_pipe_name(pipe), output->name)
> + test_bpc_switch_on_output(data, pipe,
> output, flags);
> +
> + /* One pipe is enough */
> + break;
> }
> }
> }
> @@ -614,6 +620,8 @@ static void test_hdr(data_t *data, uint32_t flags)
> igt_display_t *display = &data->display;
> igt_output_t *output;
>
> + igt_display_reset(display);
> +
> for_each_connected_output(display, output) {
> enum pipe pipe;
>
> @@ -635,32 +643,36 @@ static void test_hdr(data_t *data, uint32_t flags)
> continue;
>
> for_each_pipe(display, pipe) {
> - if (igt_pipe_connector_valid(pipe, output)) {
> - prepare_test(data, output, pipe);
> + igt_output_set_pipe(output, pipe);
> + if (!intel_pipe_output_combo_valid(display)) {
> + igt_output_set_pipe(output, PIPE_NONE);
> + continue;
> + }
>
> - if (is_intel_device(data->fd) &&
> - !igt_max_bpc_constraint(display, pipe,
> output, 10)) {
> - test_fini(data);
> - break;
> - }
> -
> - data->mode = igt_output_get_mode(output);
> - data->w = data->mode->hdisplay;
> - data->h = data->mode->vdisplay;
> -
> - igt_dynamic_f("pipe-%s-%s",
> - kmstest_pipe_name(pipe), output-
> >name) {
> - if (flags & (TEST_NONE | TEST_DPMS
> | TEST_SUSPEND | TEST_INVALID_HDR))
> - test_static_toggle(data, pipe,
> output, flags);
> - if (flags & TEST_SWAP)
> - test_static_swap(data, pipe,
> output);
> - if (flags &
> TEST_INVALID_METADATA_SIZES)
> -
> test_invalid_metadata_sizes(data, output);
> - }
> -
> - /* One pipe is enough */
> + prepare_test(data, output, pipe);
> +
> + if (is_intel_device(data->fd) &&
> + !igt_max_bpc_constraint(display, pipe, output, 10))
> {
> + test_fini(data);
> break;
> }
> +
> + data->mode = igt_output_get_mode(output);
> + data->w = data->mode->hdisplay;
> + data->h = data->mode->vdisplay;
> +
> + igt_dynamic_f("pipe-%s-%s",
> + kmstest_pipe_name(pipe), output->name)
> {
> + if (flags & (TEST_NONE | TEST_DPMS |
> TEST_SUSPEND | TEST_INVALID_HDR))
> + test_static_toggle(data, pipe, output,
> flags);
> + if (flags & TEST_SWAP)
> + test_static_swap(data, pipe, output);
> + if (flags & TEST_INVALID_METADATA_SIZES)
> + test_invalid_metadata_sizes(data,
> output);
> + }
> +
> + /* One pipe is enough */
> + break;
> }
> }
> }
> --
> 2.43.2
More information about the igt-dev
mailing list