[igt-dev] [PATCH i-g-t v2] tests/kms_hdr: Fix failure to read output_bpc
Harry Wentland
harry.wentland at amd.com
Fri Oct 8 13:13:13 UTC 2021
On 2021-10-08 04:59, Stylon Wang wrote:
> The first commit with TEST_ONLY flag in bpc-switch subtests
> could fail the test, because previous state can be with any bpc
> or even wth no crtc assigned to the connector.
>
> v2:
> - Keep the test commit for its original purpose of checking
> if 512x512 plane size works for the hardware.
> - Add new atomic commit so the setting of 8 bpc really takes effect.
>
> Signed-off-by: Stylon Wang <stylon.wang at amd.com>
Acked-by: Harry Wentland <harry.wentland at amd.com>
Harry
> ---
> tests/kms_hdr.c | 22 +++++++++++++---------
> 1 file changed, 13 insertions(+), 9 deletions(-)
>
> diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c
> index 5b8529c8..273263db 100644
> --- a/tests/kms_hdr.c
> +++ b/tests/kms_hdr.c
> @@ -213,16 +213,27 @@ static void test_bpc_switch_on_output(data_t *data, igt_output_t *output,
>
> draw_hdr_pattern(&afb);
>
> - /* Start in 8bpc. */
> + /* Plane may be required to fit fullscreen. Check it here and allow
> + * smaller plane size in following tests.
> + */
> igt_plane_set_fb(data->primary, &afb);
> igt_plane_set_size(data->primary, data->w, data->h);
> - igt_output_set_prop_value(data->output, IGT_CONNECTOR_MAX_BPC, 8);
> ret = igt_display_try_commit_atomic(display, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
> if (!ret) {
> data->w = afb.width;
> data->h = afb.height;
> }
>
> + /* Start in 8bpc. */
> + igt_output_set_prop_value(data->output, IGT_CONNECTOR_MAX_BPC, 8);
> + igt_display_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> + /*
> + * i915 driver doesn't expose max bpc as debugfs entry,
> + * so limiting assert only for amd driver.
> + */
> + if (is_amdgpu_device(data->fd))
> + assert_output_bpc(data, 8);
> +
> /*
> * amdgpu requires a primary plane when the CRTC is enabled.
> * However, some older Intel hardware (hsw) have scaling
> @@ -232,13 +243,6 @@ static void test_bpc_switch_on_output(data_t *data, igt_output_t *output,
> if (!is_amdgpu_device(data->fd))
> igt_plane_set_fb(data->primary, NULL);
>
> - /*
> - * i915 driver doesn't expose max bpc as debugfs entry,
> - * so limiting assert only for amd driver.
> - */
> - if (is_amdgpu_device(data->fd))
> - assert_output_bpc(data, 8);
> -
> /* Switch to 10bpc. */
> igt_output_set_prop_value(data->output, IGT_CONNECTOR_MAX_BPC, 10);
> igt_display_commit_atomic(display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>
More information about the igt-dev
mailing list