[Intel-gfx] [PATCH i-g-t] igt/kms_rotation_crc: Add RGB565 90 degree test for gen>9

Juha-Pekka Heikkila juhapekka.heikkila at gmail.com
Fri Nov 3 14:26:30 UTC 2017


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

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila at 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



More information about the Intel-gfx mailing list