Thread (22 messages) read the whole thread 22 messages, 3 authors, 2021-10-18

Re: [igt-dev] [PATCH i-g-t 3/8] tests/i915/kms_flip_tiling: Drop ancient stride change restrictin

From: Karthik B S <hidden>
Date: 2021-10-18 06:56:38

On 10/14/2021 3:47 AM, Ville Syrjala wrote:
From: Ville Syrjälä <redacted>

The restriction on page flips not being able to change the stride
was only relevant when i915 was still using CS flips. Ever since
we switched to pure mmio there is no limitation on what a page
flip can do (though the drm core still disallows pixel format
changes).

Signed-off-by: Ville Syrjälä <redacted>
Please fix typo in subject. 'restrictin'

Reviewed-by: Karthik B S <redacted>
quoted hunk ↗ jump to hunk
---
  tests/i915/kms_flip_tiling.c | 27 +++++++--------------------
  1 file changed, 7 insertions(+), 20 deletions(-)
diff --git a/tests/i915/kms_flip_tiling.c b/tests/i915/kms_flip_tiling.c
index 49ed7cb4863a..0ed08f78f917 100644
--- a/tests/i915/kms_flip_tiling.c
+++ b/tests/i915/kms_flip_tiling.c
@@ -72,7 +72,7 @@ test_flip_tiling(data_t *data, enum pipe pipe, igt_output_t *output, uint64_t mo
  	igt_plane_t *primary;
  	igt_pipe_crc_t *pipe_crc;
  	igt_crc_t reference_crc, crc;
-	int fb_id, ret, width;
+	int fb_id, ret;
  
  	pipe_crc = pipe_crc_new(data, pipe);
  	igt_output_set_pipe(output, pipe);
@@ -88,30 +88,17 @@ test_flip_tiling(data_t *data, enum pipe pipe, igt_output_t *output, uint64_t mo
  
  	primary = igt_output_get_plane(output, 0);
  
-	width = mode->hdisplay;
-
-	if (modifier[0] != modifier[1] &&
-	    (modifier[0] != DRM_FORMAT_MOD_LINEAR ||
-	     modifier[1] != DRM_FORMAT_MOD_LINEAR)) {
-		/*
-		 * Since a page flip to a buffer with different stride
-		 * doesn't work, choose width so that the stride of both
-		 * buffers is the same.
-		 */
-		width = 512;
-		while (width < mode->hdisplay)
-			width *= 2;
-	}
-
-	fb_id = igt_create_pattern_fb(data->drm_fd, width, mode->vdisplay,
+	fb_id = igt_create_pattern_fb(data->drm_fd,
+				      mode->hdisplay, mode->vdisplay,
  				      data->testformat, modifier[0],
  				      &data->fb[0]);
  	igt_assert(fb_id);
  
  	/* Second fb has different background so CRC does not match. */
-	fb_id = igt_create_color_pattern_fb(data->drm_fd, width, mode->vdisplay,
-				      data->testformat, modifier[1],
-				      0.5, 0.5, 0.5, &data->fb[1]);
+	fb_id = igt_create_color_pattern_fb(data->drm_fd,
+					    mode->hdisplay, mode->vdisplay,
+					    data->testformat, modifier[1],
+					    0.5, 0.5, 0.5, &data->fb[1]);
  	igt_assert(fb_id);
  
  	/* Set the crtc and generate a reference CRC. */
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help