[Intel-gfx] [PATCH i-g-t v2 4/9] tests/kms_plane_scaling: Convert from simple test to full test
Mika Kahola
mika.kahola at intel.com
Mon Jan 15 09:10:22 UTC 2018
On Fri, 2018-01-12 at 11:21 +0100, Maarten Lankhorst wrote:
> Convert the test to run subtests per pipe, before we start adding
> more subtests.
>
Reviewed-by: Mika Kahola <mika.kahola at intel.com>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
> tests/kms_plane_scaling.c | 46 +++++++++++++++++++++--------------
> -----------
> 1 file changed, 21 insertions(+), 25 deletions(-)
>
> diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
> index 5487f89e5149..624e20447780 100644
> --- a/tests/kms_plane_scaling.c
> +++ b/tests/kms_plane_scaling.c
> @@ -170,6 +170,9 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe
> pipe, igt_output_t *output)
> drmModeModeInfo *mode;
> int primary_plane_scaling = 0; /* For now */
>
> + igt_require(d->num_scalers > 0);
> +
> + igt_display_reset(display);
> igt_output_set_pipe(output, pipe);
> mode = igt_output_get_mode(output);
>
> @@ -296,39 +299,32 @@ cleanup:
> cleanup_crtc(d, output, d->plane1);
> }
>
> -static void test_plane_scaling(data_t *d, enum pipe pipe)
> -{
> - igt_output_t *output;
> - int valid_tests = 0;
> -
> - igt_require(d->num_scalers);
> -
> - for_each_valid_output_on_pipe(&d->display, pipe, output) {
> - test_plane_scaling_on_pipe(d, pipe, output);
> - igt_output_set_pipe(output, PIPE_ANY);
> - valid_tests++;
> - }
> -
> - igt_require_f(valid_tests, "no valid crtc/connector
> combinations found\n");
> -}
> -
> -igt_simple_main
> +igt_main
> {
> data_t data = {};
> enum pipe pipe;
>
> igt_skip_on_simulation();
>
> + igt_fixture {
> + data.drm_fd = drm_open_driver(DRIVER_INTEL);
> + igt_require_pipe_crc(data.drm_fd);
> + igt_display_init(&data.display, data.drm_fd);
> + data.devid = intel_get_drm_devid(data.drm_fd);
> + data.num_scalers = intel_gen(data.devid) >= 9 ? 2 :
> 0;
> + }
>
> - data.drm_fd = drm_open_driver(DRIVER_INTEL);
> - igt_require_pipe_crc(data.drm_fd);
> - igt_display_init(&data.display, data.drm_fd);
> - data.devid = intel_get_drm_devid(data.drm_fd);
> + for_each_pipe_static(pipe) igt_subtest_group {
> + igt_output_t *output;
>
> - data.num_scalers = intel_gen(data.devid) >= 9 ? 2 : 0;
> + igt_fixture
> + igt_display_require_output_on_pipe(&data.dis
> play, pipe);
>
> - for_each_pipe_static(pipe)
> - test_plane_scaling(&data, pipe);
> + igt_subtest_f("pipe-%s-plane-scaling",
> kmstest_pipe_name(pipe))
> + for_each_valid_output_on_pipe(&data.display,
> pipe, output)
> + test_plane_scaling_on_pipe(&data,
> pipe, output);
> + }
>
> - igt_display_fini(&data.display);
> + igt_fixture
> + igt_display_fini(&data.display);
> }
--
Mika Kahola - Intel OTC
More information about the Intel-gfx
mailing list