Was not this implemented once and then dropped for some reason?

On ke, 2016-07-20 at 16:18 +0300, ville.syrj...@linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrj...@linux.intel.com>
> 
> Add "bad-rotation" subtest to make sure the kernel rejects some
> invalid rotation values (0 and specifying multiple angles at one).
> 
> Signed-off-by: Ville Syrjälä <ville.syrj...@linux.intel.com>
> ---
>  tests/kms_rotation_crc.c | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
> 
> diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
> index 6cc15337fff9..e10a0a770437 100644
> --- a/tests/kms_rotation_crc.c
> +++ b/tests/kms_rotation_crc.c
> @@ -237,6 +237,31 @@ static void wait_for_pageflip(int fd)
>       igt_assert(drmHandleEvent(fd, &evctx) == 0);
>  }
>  
> +static void test_bad_prop_value(data_t *data)
> +{
> +     igt_display_t *display = &data->display;
> +     int valid_tests = 0;
> +     enum pipe pipe;
> +     igt_plane_t *plane;
> +     int ret;
> +
> +     for_each_pipe(display, pipe)  {
> +             for_each_plane_on_pipe(display, pipe, plane) {
> +                     igt_require(igt_plane_supports_rotation(plane));
> +
> +                     ret = drmModeObjectSetProperty(display->drm_fd,
> +                                                    
> plane->drm_plane->plane_id,
> +                                                    DRM_MODE_OBJECT_PLANE,
> +                                                    plane->rotation_property,
> +                                                    data->rotation);
> +
> +                     igt_assert_eq(ret, -EINVAL);
> +                     valid_tests++;
> +             }
> +     }
> +     igt_require_f(valid_tests, "no valid crtc/connector combinations 
> found\n");
> +}
> +
>  static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
>  {
>       igt_display_t *display = &data->display;
> @@ -508,6 +533,14 @@ igt_main
>  
>               igt_display_init(&data.display, data.gfx_fd);
>       }
> +     igt_subtest_f("bad-rotation") {
> +             data.rotation = 0;
> +             test_bad_prop_value(&data);
> +
> +             data.rotation = IGT_ROTATION_0 | IGT_ROTATION_180;
> +             test_bad_prop_value(&data);
> +     }
> +
>       igt_subtest_f("primary-rotation-180") {
>               data.rotation = IGT_ROTATION_180;
>               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to