Hi Aemad,
Thanks for breaking the test into smaller subtests.
Some GPU drivers, including amdgpu, do not allow primary plane
off without turning crtc off
(https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c#L385),
but kms_universal_plane has many the below code which was guarded
with is_amdgpu_device()
igt_plane_set_fb(primary, NULL);
igt_display_commit2(&data->display,
COMMIT_UNIVERSAL);
Many of the is_amdgpu_device() are not present in your patches
and kms_universal fails. I needed to add is_amdgpu_device() to
patch 2~3 and 5~7 (I didn't check 8).
Please, let me know your thoughts.
On 2022-11-11 09:29, Alaa Emad wrote:
> Divide the `functional_test_pipe` test into seven
subtests based on CRC
> comparisons because this will make it easier to debug
the test and help
> in detecting the failure.
>
> First 7 patches decouple each subtest and run it
individually keeping
> `functional_test_pipe' test as it is. After making sure
that each
> subtest can run individually with the expected result
on both vkms and i915
> drivers, improve the test by creating
`run_functional_test_pipe` and
> call all subtests from it and call
`run_functional_test_pipe` in
> `igt_main`.
>
>
> Alaa Emad (8):
> tests/kms_universal_plane: decouple verification of
legacy and atomic
> api
> tests/kms_universal_plane: decouple verification of
disabling primary
> plane
> tests/kms_universal_plane: decouple verification of
re-enabling
> primary plane
> tests/kms_universal_plane: decouple verification of
setup plane FB's
> while CRTC is disabled
> tests/kms_universal_plane: decouple verification of
ablity to modeset
> with the primary plane off
> tests/kms_universal_plane: decouple verification of
ablity to move the
> primary plane completely offscreen
> tests/kms_universal_plane: decouple verification of
ablity to
> explicitly disable an already implicitly-disabled
primary plane
> tests/kms_universal_plane: create the
run_functional_test_pipe and
> call all tests from it
>
> tests/kms_universal_plane.c | 416
++++++++++++++++++++++--------------
> 1 file changed, 261 insertions(+), 155 deletions(-)