[Intel-gfx] [PATCH] i-g-t: Adding rotation to plane scaling test

Chandra Konduru chandra.konduru at intel.com
Wed Apr 15 16:19:19 PDT 2015


From: chandra konduru <chandra.konduru at intel.com>

Adding rotation to kms_plane_scaling test.

Signed-off-by: chandra konduru <chandra.konduru at intel.com>
---
 tests/kms_plane_scaling.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 00db5cb..8d22ba4 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -101,11 +101,11 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
 	data->fb_id1 = igt_create_fb(data->drm_fd,
 			mode->hdisplay, mode->vdisplay,
 			DRM_FORMAT_XRGB8888,
-			LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
+			LOCAL_I915_FORMAT_MOD_Y_TILED, /* tiled */
 			&data->fb1);
 	igt_assert(data->fb_id1);
 
-	paint_color(data, &data->fb1, mode->hdisplay, mode->vdisplay);
+	paint_color(data, &data->fb1, data->fb1.width, data->fb1.height);
 
 	/*
 	 * We always set the primary plane to actually enable the pipe as
@@ -209,7 +209,7 @@ static void test_plane_scaling(data_t *d)
 	cairo_surface_t *image;
 	enum pipe pipe;
 	int valid_tests = 0;
-	int primary_plane_scaling = 0; /* For now */
+	int primary_plane_scaling = 1;
 
 	igt_require(d->display.has_universal_planes);
 	igt_require(d->num_scalers);
@@ -250,18 +250,20 @@ static void test_plane_scaling(data_t *d)
 		prepare_crtc(d, output, pipe, d->plane1, mode, COMMIT_UNIVERSAL);
 
 		if (primary_plane_scaling) {
-			/* Primary plane upscaling */
+			/* Primary plane upscaling with rotation */
 			igt_fb_set_position(&d->fb1, d->plane1, 100, 100);
 			igt_fb_set_size(&d->fb1, d->plane1, 500, 500);
 			igt_plane_set_position(d->plane1, 0, 0);
 			igt_plane_set_size(d->plane1, mode->hdisplay, mode->vdisplay);
+			igt_plane_set_rotation(d->plane1, IGT_ROTATION_90);
 			igt_display_commit2(display, COMMIT_UNIVERSAL);
 
-			/* Primary plane 1:1 no scaling */
+			/* Primary plane 1:1 no scaling & no rotation */
 			igt_fb_set_position(&d->fb1, d->plane1, 0, 0);
 			igt_fb_set_size(&d->fb1, d->plane1, d->fb1.width, d->fb1.height);
 			igt_plane_set_position(d->plane1, 0, 0);
 			igt_plane_set_size(d->plane1, mode->hdisplay, mode->vdisplay);
+			igt_plane_set_rotation(d->plane1, IGT_ROTATION_0);
 			igt_display_commit2(display, COMMIT_UNIVERSAL);
 		}
 
@@ -318,10 +320,10 @@ static void test_plane_scaling(data_t *d)
 		igt_plane_set_position(d->plane2, 100, 100);
 		igt_plane_set_size(d->plane2, d->fb2.width-200, d->fb2.height-200);
 
-		igt_fb_set_position(&d->fb3, d->plane3, 100, 100);
-		igt_fb_set_size(&d->fb3, d->plane3, d->fb3.width-400, d->fb3.height-400);
-		igt_plane_set_position(d->plane3, 10, 10);
-		igt_plane_set_size(d->plane3, mode->hdisplay-300, mode->vdisplay-300);
+		igt_fb_set_position(&d->fb3, d->plane3, 0, 0);
+		igt_fb_set_size(&d->fb3, d->plane3, d->fb3.width, d->fb3.height);
+		igt_plane_set_position(d->plane3, 500, 500);
+		igt_plane_set_size(d->plane3, d->fb3.width * 2/3, d->fb3.height * 2/3);
 		igt_display_commit2(display, COMMIT_UNIVERSAL);
 
 		if (primary_plane_scaling) {
-- 
1.9.1



More information about the Intel-gfx mailing list