[igt-dev] [PATCH 2/2] tests/kms_universal_plane: skip when pipe and primary plane cannot be off
Mark Yacoub
markyacoub at chromium.org
Thu Oct 13 14:21:33 UTC 2022
On Wed, Oct 12, 2022 at 7:57 PM Alex Hung <alex.hung at amd.com> wrote:
>
> amdgpu rejects when crtc is on + primary plane is off. As a result,
> skipping these scenario when they cannot be turned off together, i.e.
> crtc cannot be off when reading crc values.
>
> Signed-off-by: Alex Hung <alex.hung at amd.com>
Reviewed-by: Mark Yacoub <markyacoub at chromium.org>
> ---
> tests/kms_universal_plane.c | 22 +++++++++++++---------
> 1 file changed, 13 insertions(+), 9 deletions(-)
>
> diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
> index 468f7a4e..8d51f288 100644
> --- a/tests/kms_universal_plane.c
> +++ b/tests/kms_universal_plane.c
> @@ -197,9 +197,11 @@ functional_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> igt_pipe_crc_collect_crc(test.pipe_crc, &test.crc_4);
>
> /* Step 5: Universal API's, disable primary plane (CRC 5) */
> - igt_plane_set_fb(primary, NULL);
> - igt_display_commit2(display, COMMIT_UNIVERSAL);
> - igt_pipe_crc_collect_crc(test.pipe_crc, &test.crc_5);
> + if (!is_amdgpu_device(data->drm_fd)) {
> + igt_plane_set_fb(primary, NULL);
> + igt_display_commit2(display, COMMIT_UNIVERSAL);
> + igt_pipe_crc_collect_crc(test.pipe_crc, &test.crc_5);
> + }
>
> /* Step 6: Universal API's, re-enable primary with blue (CRC 6) */
> igt_plane_set_fb(primary, &test.blue_fb);
> @@ -271,9 +273,11 @@ functional_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> * Step 15: Explicitly disable primary after it's already been
> * implicitly disabled (CRC 10).
> */
> - igt_plane_set_fb(primary, NULL);
> - igt_display_commit2(display, COMMIT_UNIVERSAL);
> - igt_pipe_crc_collect_crc(test.pipe_crc, &test.crc_10);
> + if (!is_amdgpu_device(data->drm_fd)) {
> + igt_plane_set_fb(primary, NULL);
> + igt_display_commit2(display, COMMIT_UNIVERSAL);
> + igt_pipe_crc_collect_crc(test.pipe_crc, &test.crc_10);
> + }
>
> /* Step 16: Legacy API's, blue primary, red sprite */
> igt_plane_set_fb(primary, &test.blue_fb);
> @@ -284,7 +288,8 @@ functional_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> igt_assert_crc_equal(&test.crc_2, &test.crc_4);
>
> /* Disabling primary plane should be same as black primary */
> - igt_assert_crc_equal(&test.crc_1, &test.crc_5);
> + if (!is_amdgpu_device(data->drm_fd))
> + igt_assert_crc_equal(&test.crc_1, &test.crc_5);
>
> /* Re-enabling primary should return to blue properly */
> igt_assert_crc_equal(&test.crc_2, &test.crc_6);
> @@ -306,8 +311,7 @@ functional_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
> * and have it disable successfully. Skip on amdgpu since crc_9 was
> * skipped with offscreen planes previously.
> */
> - if (!is_amdgpu_device(data->drm_fd))
> - igt_assert_crc_equal(&test.crc_5, &test.crc_9);
> + igt_assert_crc_equal(&test.crc_5, &test.crc_9);
>
> /*
> * We should be able to explicitly disable an already
> --
> 2.38.0
>
More information about the igt-dev
mailing list