Gen10 onwards 90 and 270 degree rotations are supported for RGB565 format.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikk...@gmail.com>
---
 tests/kms_rotation_crc.c | 30 +++++++++++++++++++++++++++---
 1 file changed, 27 insertions(+), 3 deletions(-)

diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 27d1f80..f22bcb5 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -423,11 +423,10 @@ static void test_plane_rotation(data_t *data, int 
plane_type)
 
 static void test_plane_rotation_ytiled_obj(data_t *data,
                                           igt_output_t *output,
-                                          int plane_type)
+                                          int plane_type, uint32_t format)
 {
        igt_display_t *display = &data->display;
        uint64_t tiling = LOCAL_I915_FORMAT_MOD_Y_TILED;
-       uint32_t format = DRM_FORMAT_XRGB8888;
        int bpp = igt_drm_format_to_bpp(format);
        enum igt_commit_style commit = COMMIT_LEGACY;
        int fd = data->gfx_fd;
@@ -709,6 +708,29 @@ igt_main
                test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
        }
 
+       igt_subtest_f("primary-rotation-90-Y-tiled-16bpp") {
+               enum pipe pipe;
+               igt_output_t *output;
+               int valid_tests = 0;
+
+               igt_require(gen > 9);
+               data.rotation = IGT_ROTATION_90;
+
+               for_each_pipe_with_valid_output(&data.display, pipe, output) {
+                       igt_output_set_pipe(output, pipe);
+
+                       test_plane_rotation_ytiled_obj(&data, output,
+                                                      DRM_PLANE_TYPE_PRIMARY,
+                                                      DRM_FORMAT_RGB565);
+
+                       valid_tests++;
+                       break;
+               }
+
+               igt_require_f(valid_tests,
+                             "no valid crtc/connector combinations found\n");
+       }
+
        igt_subtest_f("primary-rotation-90-Y-tiled") {
                enum pipe pipe;
                igt_output_t *output;
@@ -720,7 +742,9 @@ igt_main
                for_each_pipe_with_valid_output(&data.display, pipe, output) {
                        igt_output_set_pipe(output, pipe);
 
-                       test_plane_rotation_ytiled_obj(&data, output, 
DRM_PLANE_TYPE_PRIMARY);
+                       test_plane_rotation_ytiled_obj(&data, output,
+                                                      DRM_PLANE_TYPE_PRIMARY,
+                                                      DRM_FORMAT_XRGB8888);
 
                        valid_tests++;
                        break;
-- 
2.7.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to