All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix
@ 2022-05-05 21:32 David Zhang
  2022-05-05 21:32 ` [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case David Zhang
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: David Zhang @ 2022-05-05 21:32 UTC (permalink / raw)
  To: igt-dev

- add two scaling sub-tests to validate amdgpu PSR-SU
- some fixes for other PSR-SU test cases

David Zhang (4):
  tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case
  tests/amdgpu/amd_psr: clean-up the code
  tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case
  tests/amdgpu/amd_psr: add PSR-SU scaling test cases

 tests/amdgpu/amd_psr.c | 190 +++++++++++++++++++++++++++--------------
 1 file changed, 127 insertions(+), 63 deletions(-)

-- 
2.25.1

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case
  2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
@ 2022-05-05 21:32 ` David Zhang
  2022-05-09 18:47   ` Leo
  2022-05-05 21:32 ` [igt-dev] [PATCH 2/4] tests/amdgpu/amd_psr: clean-up the code David Zhang
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 11+ messages in thread
From: David Zhang @ 2022-05-05 21:32 UTC (permalink / raw)
  To: igt-dev

[why]
Analogous to usermode behavior, when there are primary plane and
overlay plane committed, alpha region of overlay corresponding to
the primary plane position/size should be set to zero to explicitly
display the content of primary plane (emulated as video playback in
this test case) in general.

The input arguments of width/height of the helper to paint the
framebuffer should not exceed the size of the created framebuffer.

[how]
- set the alpha region of overlay plane framebuffer to zero aligned
  to the position/size of the primary plane
- paint the primary plane framebuffer background/foreground w/ the
  valid width/height.

Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Jay Pillai <aurabindo.pillai@amd.com>
Cc: Wayne Lin <wayne.lin@amd.com>

Signed-off-by: David Zhang <dingchen.zhang@amd.com>
---
 tests/amdgpu/amd_psr.c | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
index b930b20e..5d190720 100644
--- a/tests/amdgpu/amd_psr.c
+++ b/tests/amdgpu/amd_psr.c
@@ -351,9 +351,9 @@ static void run_check_psr_su_mpo(data_t *data)
 		cr = igt_get_cairo_ctx(data->fd, &rect_fb[i]);
 		igt_assert_f(cr, "Failed to get cairo context\n");
 		/* background in black */
-		igt_paint_color(cr, 0, 0, data->w, data->h, .0, .0, .0);
+		igt_paint_color(cr, 0, 0, data->w / 2, data->h / 2, .0, .0, .0);
 		/* foreground (megenta strip) */
-		igt_paint_color(cr, i * strip_w, 0, strip_w, data->h, 1.0, .0, 1.0);
+		igt_paint_color(cr, i * strip_w, 0, strip_w, data->h / 2, 1.0, .0, 1.0);
 
 		igt_put_cairo_ctx(cr);
 	}
@@ -364,8 +364,18 @@ static void run_check_psr_su_mpo(data_t *data)
 	igt_plane_set_position(data->primary, 0, 0);
 	igt_plane_set_size(data->primary, data->w / 2, data->h / 2);
 
-	/* adjust alpha for vpb (primary plane) region in overlay */
-	draw_color_alpha(&ov_fb, 0, 0, data->w / 2, data->h / 2, .5, .5, .5, .3);
+	/**
+	 * adjust alpha for vpb (primary plane) region in overlay
+	 * given alpha, we have:
+	 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+	 *    blended = alpha * toplay + (1 - alpha) * underlay
+	 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+	 * since primary plane is underlay while overlay plane is toplay, to
+	 * display the content of primary plane w/ blending, we'd set the alpha
+	 * of each pixel in overlay corresponding to primary plane position/size
+	 * to be zero.
+	 */
+	draw_color_alpha(&ov_fb, 0, 0, data->w / 2, data->h / 2, .5, .5, .5, .0);
 
 	igt_output_set_pipe(data->output, data->pipe_id);
 	igt_display_commit_atomic(&data->display, 0, NULL);
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [igt-dev] [PATCH 2/4] tests/amdgpu/amd_psr: clean-up the code
  2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
  2022-05-05 21:32 ` [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case David Zhang
@ 2022-05-05 21:32 ` David Zhang
  2022-05-09 18:57   ` Leo
  2022-05-05 21:32 ` [igt-dev] [PATCH 3/4] tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case David Zhang
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 11+ messages in thread
From: David Zhang @ 2022-05-05 21:32 UTC (permalink / raw)
  To: igt-dev

[why]
We'd clean-up the code to avoid repeated variable declarations in
different psr-su test cases.

[how]
- add primary/overlay framebuffer width/height to generic data
  structure
- add cursor framebuffer instance to data structure
- clean-up the code for mpo/ffu/cusor test cases by using above
  re-useable variables

Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Jay Pillai <aurabindo.pillai@amd.com>
Cc: Wayne Lin <wayne.lin@amd.com>

Signed-off-by: David Zhang <dingchen.zhang@amd.com>
---
 tests/amdgpu/amd_psr.c | 65 +++++++++++++++++++-----------------------
 1 file changed, 30 insertions(+), 35 deletions(-)

diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
index 5d190720..29982605 100644
--- a/tests/amdgpu/amd_psr.c
+++ b/tests/amdgpu/amd_psr.c
@@ -56,12 +56,14 @@ typedef struct data {
 	igt_pipe_crc_t *pipe_crc;
 	igt_fb_t ov_fb[2];
 	igt_fb_t pm_fb[2];
+	igt_fb_t cs_fb;		/* cursor framebuffer */
 	drmModeModeInfo *mode;
 	enum pipe pipe_id;
 	int fd;
 	int debugfs_fd;
-	int w;
-	int h;
+	int w, h;
+	int pfb_w, pfb_h;
+	int ofb_w, ofb_h;
 } data_t;
 
 enum cursor_move {
@@ -170,6 +172,10 @@ static void test_init(data_t *data)
 
 	data->w = data->mode->hdisplay;
 	data->h = data->mode->vdisplay;
+	data->ofb_w = data->w;
+	data->ofb_h = data->h;
+	data->pfb_w = data->w / 2;
+	data->pfb_h = data->h / 2;
 
 	if (opt.visual_confirm) {
 		/**
@@ -308,7 +314,6 @@ static void run_check_psr(data_t *data, bool test_null_crtc) {
 static void run_check_psr_su_mpo(data_t *data)
 {
 	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
-	igt_fb_t ov_fb;		/* fb for overlay */
 	igt_fb_t rect_fb[N_MPO_TEST_RECT_FB]; 	/* rectangle fbs for primary, emulate as video playback region */
 	igt_fb_t ref_fb;	/* reference fb */
 	igt_fb_t *flip_fb;
@@ -341,28 +346,28 @@ static void run_check_psr_su_mpo(data_t *data)
 	 * thus the overlay fb be initialized w/ ARGB pixel format to support blending
 	 */
 	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
-			    1.0, 1.0, 1.0, &ov_fb);
+			    1.0, 1.0, 1.0, &data->ov_fb[0]);
 	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i) {
 		cairo_t *cr;
 		int strip_w = data->w / (2 * N_MPO_TEST_RECT_FB);
 
-		igt_create_fb(data->fd, data->w / 2, data->h / 2, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
+		igt_create_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
 			      &rect_fb[i]);
 		cr = igt_get_cairo_ctx(data->fd, &rect_fb[i]);
 		igt_assert_f(cr, "Failed to get cairo context\n");
 		/* background in black */
-		igt_paint_color(cr, 0, 0, data->w / 2, data->h / 2, .0, .0, .0);
+		igt_paint_color(cr, 0, 0, data->pfb_w, data->pfb_h, .0, .0, .0);
 		/* foreground (megenta strip) */
-		igt_paint_color(cr, i * strip_w, 0, strip_w, data->h / 2, 1.0, .0, 1.0);
+		igt_paint_color(cr, i * strip_w, 0, strip_w, data->pfb_h, 1.0, .0, 1.0);
 
 		igt_put_cairo_ctx(cr);
 	}
 
 	/* tie fbs to planes and set position/size/blending */
-	igt_plane_set_fb(data->overlay, &ov_fb);
+	igt_plane_set_fb(data->overlay, &data->ov_fb[0]);
 	igt_plane_set_fb(data->primary, &rect_fb[0]);
 	igt_plane_set_position(data->primary, 0, 0);
-	igt_plane_set_size(data->primary, data->w / 2, data->h / 2);
+	igt_plane_set_size(data->primary, data->pfb_w, data->pfb_h);
 
 	/**
 	 * adjust alpha for vpb (primary plane) region in overlay
@@ -375,7 +380,7 @@ static void run_check_psr_su_mpo(data_t *data)
 	 * of each pixel in overlay corresponding to primary plane position/size
 	 * to be zero.
 	 */
-	draw_color_alpha(&ov_fb, 0, 0, data->w / 2, data->h / 2, .5, .5, .5, .0);
+	draw_color_alpha(&data->ov_fb[0], 0, 0, data->pfb_w, data->pfb_h, .5, .5, .5, .0);
 
 	igt_output_set_pipe(data->output, data->pipe_id);
 	igt_display_commit_atomic(&data->display, 0, NULL);
@@ -398,7 +403,7 @@ static void run_check_psr_su_mpo(data_t *data)
 
 	/* fini */
 	igt_remove_fb(data->fd, &ref_fb);
-	igt_remove_fb(data->fd, &ov_fb);
+	igt_remove_fb(data->fd, &data->ov_fb[0]);
 	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i)
 		igt_remove_fb(data->fd, &rect_fb[i]);
 	test_fini(data);
@@ -438,17 +443,13 @@ static void panning_rect_fb(data_t *data, igt_fb_t *rect_fb, int rect_w, int rec
 static void run_check_psr_su_ffu(data_t *data)
 {
 	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
-	igt_fb_t rect_fb; 	/* rectangle fbs for primary */
 	igt_fb_t ref_fb;	/* reference fb */
-	int pb_w, pb_h;
 
 	/* skip the test run if no eDP sink detected */
 	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
 
 	/* init */
 	test_init(data);
-	pb_w = data->w / 2;
-	pb_h = data->h / 2;
 
 	/* run the test i.i.f. eDP panel supports and kernel driver both support PSR-SU  */
 	igt_skip_on(!psr_su_supported(data));
@@ -492,26 +493,26 @@ static void run_check_psr_su_ffu(data_t *data)
 	/* step 1 */
 	igt_create_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &data->ov_fb[0]);
 	igt_create_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &data->ov_fb[1]);
-	igt_create_color_fb(data->fd, pb_w, pb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
-			    1.0, .0, 1.0, &rect_fb); /* magenta primary */
+	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
+			    1.0, .0, 1.0, &data->pm_fb[0]); /* magenta primary */
 
 	/* step 2 & 3 */
-	panning_rect_fb(data, &rect_fb, pb_w, pb_h, 0, 0);
+	panning_rect_fb(data, &data->pm_fb[0], data->pfb_w, data->pfb_h, 0, 0);
 	sleep(5);
 
 	/* step 4 & 5 */
-	panning_rect_fb(data, &rect_fb, pb_w, pb_h, pb_w / 2, pb_h / 2);
+	panning_rect_fb(data, &data->pm_fb[0], data->pfb_w, data->pfb_h, data->pfb_w / 2, data->pfb_h / 2);
 	sleep(5);
 
 	/* step 6 & 7 */
-	panning_rect_fb(data, &rect_fb, pb_w, pb_h, pb_w, pb_h);
+	panning_rect_fb(data, &data->pm_fb[0], data->pfb_w, data->pfb_h, data->pfb_w, data->pfb_h);
 	sleep(5);
 
 	/* fini */
 	igt_remove_fb(data->fd, &ref_fb);
 	igt_remove_fb(data->fd, &data->ov_fb[0]);
 	igt_remove_fb(data->fd, &data->ov_fb[1]);
-	igt_remove_fb(data->fd, &rect_fb);
+	igt_remove_fb(data->fd, &data->pm_fb[0]);
 	test_fini(data);
 }
 
@@ -556,21 +557,15 @@ static void test_cursor_movement(data_t *data, int iters, int cs_size, enum curs
 static void run_check_psr_su_cursor(data_t *data, bool test_mpo)
 {
 	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
-	igt_fb_t cs_fb;		/* cursor FB */
 	const int cs_size = 128;
 	const int delay_sec = 5; /* seconds */
 	int frame_rate = 0;
-	int pb_w, pb_h, ob_w, ob_h;
 
 	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
 
 	test_init(data);
 	igt_skip_on(!psr_su_supported(data));
 
-	ob_w = data->w;
-	ob_h = data->h;
-	pb_w = data->w / 2;
-	pb_h = data->h / 2;
 	frame_rate = data->mode->vrefresh;
 
 	/*
@@ -578,26 +573,26 @@ static void run_check_psr_su_cursor(data_t *data, bool test_mpo)
 	 * - create primary FBs of quarter screen size of different colors (blue and green)
 	 * - create overlay FB of screen size of white color (default alpha 1.0)
 	 */
-	igt_create_color_fb(data->fd, pb_w, pb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
+	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
 			    .0, .0, 1.0, &data->pm_fb[0]);
-	igt_create_color_fb(data->fd, pb_w, pb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
+	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
 			    .0, 1.0, .0, &data->pm_fb[1]);
-	igt_create_color_fb(data->fd, ob_w, ob_h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
+	igt_create_color_fb(data->fd, data->ofb_w, data->ofb_h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
 			    1.0, 1.0, 1.0, &data->ov_fb[0]);
 
 	/* cursor FB creation, draw cursor pattern/set alpha regions */
-	igt_create_fb(data->fd, cs_size, cs_size, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &cs_fb);
-	draw_color_cursor(&cs_fb, cs_size, 1.0, .0, 1.0);
+	igt_create_fb(data->fd, cs_size, cs_size, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &data->cs_fb);
+	draw_color_cursor(&data->cs_fb, cs_size, 1.0, .0, 1.0);
 
 	/*
 	 * panning the primary plane at the top-left of screen
 	 * set alpha region in overlay plane and set alpha to 0.0 to show primary plane
 	 * set cursor plane and starting from position of (0, 0)
 	 */ 
-	draw_color_alpha(&data->ov_fb[0], 0, 0, pb_w, pb_h, 1.0, 1.0, 1.0, .0);
+	draw_color_alpha(&data->ov_fb[0], 0, 0, data->pfb_w, data->pfb_h, 1.0, 1.0, 1.0, .0);
 	igt_plane_set_fb(data->primary, &data->pm_fb[0]);
 	igt_plane_set_fb(data->overlay, &data->ov_fb[0]);
-	igt_plane_set_fb(data->cursor, &cs_fb);
+	igt_plane_set_fb(data->cursor, &data->cs_fb);
 	igt_plane_set_position(data->cursor, 0, 0);
 
 	igt_output_set_pipe(data->output, data->pipe_id);
@@ -624,7 +619,7 @@ static void run_check_psr_su_cursor(data_t *data, bool test_mpo)
 
 	igt_remove_fb(data->fd, &data->pm_fb[0]);
 	igt_remove_fb(data->fd, &data->pm_fb[1]);
-	igt_remove_fb(data->fd, &cs_fb);
+	igt_remove_fb(data->fd, &data->cs_fb);
 	igt_remove_fb(data->fd, &data->ov_fb[0]);
 	test_fini(data);
 }
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [igt-dev] [PATCH 3/4] tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case
  2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
  2022-05-05 21:32 ` [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case David Zhang
  2022-05-05 21:32 ` [igt-dev] [PATCH 2/4] tests/amdgpu/amd_psr: clean-up the code David Zhang
@ 2022-05-05 21:32 ` David Zhang
  2022-05-09 19:10   ` Leo
  2022-05-05 21:32 ` [igt-dev] [PATCH 4/4] tests/amdgpu/amd_psr: add PSR-SU scaling test cases David Zhang
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 11+ messages in thread
From: David Zhang @ 2022-05-05 21:32 UTC (permalink / raw)
  To: igt-dev

[why]
Current implementation to emulate the MPO video playback is via
creating 20 framebuffers (FB) and each FB has a colorful strip
pattern in a different position. From usrmode's view, in general
it would not create so many FBs for primary plane. Instead, it
only creates double or tripple buffers.

[how]
- drop the 20 framebuffers in current implementation
- use the double primary plane framebuffers defined in data struct
  and update the strip pattern alternatively on the double FBs and
  do page flip for each iteration

Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Jay Pillai <aurabindo.pillai@amd.com>
Cc: Wayne Lin <wayne.lin@amd.com>

Signed-off-by: David Zhang <dingchen.zhang@amd.com>
---
 tests/amdgpu/amd_psr.c | 76 +++++++++++++++++++++++++++---------------
 1 file changed, 49 insertions(+), 27 deletions(-)

diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
index 29982605..81ebebd3 100644
--- a/tests/amdgpu/amd_psr.c
+++ b/tests/amdgpu/amd_psr.c
@@ -40,10 +40,11 @@ IGT_TEST_DESCRIPTION("Basic test for enabling Panel Self Refresh for eDP display
 #define N_FLIPS 6
 /* DMCUB takes some time to actually enable PSR. Worst case delay is 4 seconds */
 #define PSR_SETTLE_DELAY 4
-/* # of framebuffers for PSR-SU MPO test case to emulate video playback */
-#ifndef N_MPO_TEST_RECT_FB
-#define N_MPO_TEST_RECT_FB 20
-#endif
+
+typedef struct {
+	int x, y;
+	int w, h;
+} pos_t;
 
 /* Common test data. */
 typedef struct data {
@@ -138,6 +139,29 @@ static void draw_color_cursor(igt_fb_t *fb, int size, double r, double g, double
 	igt_put_cairo_ctx(cr);
 }
 
+/* update the given framebuffer and draw colorful strip in new position */
+static void update_color_strip(igt_fb_t *fb, pos_t *old, pos_t *new, double r, double g, double b)
+{
+	cairo_t *cr;
+
+	if (!fb || !new || !old)
+		return;
+
+	cr = igt_get_cairo_ctx(fb->fd, fb);
+	igt_assert_f(cr, "Failed to get cairo context\n");
+
+	/**
+	 * we'd draw the strip in the new position w/ given color
+	 * and make the background of the framebuffer as black
+	 * - render black BG in the old position of strip instead of rendering the whole FB
+	 * - render colorful strip in the new position
+	 */
+	igt_paint_color(cr, old->x, old->y, old->w, old->h, .0, .0, .0);
+	igt_paint_color(cr, new->x, new->y, new->w, new->h, r, g, b);
+
+	igt_put_cairo_ctx(cr);
+}
+
 /* Common test setup. */
 static void test_init(data_t *data)
 {
@@ -314,12 +338,12 @@ static void run_check_psr(data_t *data, bool test_null_crtc) {
 static void run_check_psr_su_mpo(data_t *data)
 {
 	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
-	igt_fb_t rect_fb[N_MPO_TEST_RECT_FB]; 	/* rectangle fbs for primary, emulate as video playback region */
 	igt_fb_t ref_fb;	/* reference fb */
 	igt_fb_t *flip_fb;
 	int ret;
 	const int run_sec = 5;
 	int frame_rate = 0;
+	pos_t old[2], new;
 
 	/* skip the test run if no eDP sink detected */
 	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
@@ -327,6 +351,10 @@ static void run_check_psr_su_mpo(data_t *data)
 	/* init */
 	test_init(data);
 	frame_rate = data->mode->vrefresh;
+	memset(&old, 0, sizeof(pos_t) * 2);
+	memset(&new, 0, sizeof(pos_t));
+	old[0].w = old[1].w = new.w = 30;
+	old[0].h = old[1].h = new.h = data->pfb_h;
 
 	/* run the test i.i.f. eDP panel supports and kernel driver both support PSR-SU  */
 	igt_skip_on(!psr_su_supported(data));
@@ -347,25 +375,14 @@ static void run_check_psr_su_mpo(data_t *data)
 	 */
 	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
 			    1.0, 1.0, 1.0, &data->ov_fb[0]);
-	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i) {
-		cairo_t *cr;
-		int strip_w = data->w / (2 * N_MPO_TEST_RECT_FB);
-
-		igt_create_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
-			      &rect_fb[i]);
-		cr = igt_get_cairo_ctx(data->fd, &rect_fb[i]);
-		igt_assert_f(cr, "Failed to get cairo context\n");
-		/* background in black */
-		igt_paint_color(cr, 0, 0, data->pfb_w, data->pfb_h, .0, .0, .0);
-		/* foreground (megenta strip) */
-		igt_paint_color(cr, i * strip_w, 0, strip_w, data->pfb_h, 1.0, .0, 1.0);
-
-		igt_put_cairo_ctx(cr);
-	}
+	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
+			    .0, .0, .0, &data->pm_fb[0]);
+	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
+			    .0, .0, .0, &data->pm_fb[1]);
 
 	/* tie fbs to planes and set position/size/blending */
 	igt_plane_set_fb(data->overlay, &data->ov_fb[0]);
-	igt_plane_set_fb(data->primary, &rect_fb[0]);
+	igt_plane_set_fb(data->primary, &data->pm_fb[1]);
 	igt_plane_set_position(data->primary, 0, 0);
 	igt_plane_set_size(data->primary, data->pfb_w, data->pfb_h);
 
@@ -389,23 +406,28 @@ static void run_check_psr_su_mpo(data_t *data)
 	igt_info("\n start flipping ...\n");
 
 	for (int i = 0; i < run_sec * frame_rate; ++i) {
-		igt_info(" About to commit a primary plane (FB %d), loop %d \n", i % N_MPO_TEST_RECT_FB, i);
-		flip_fb = &rect_fb[i % N_MPO_TEST_RECT_FB];
+		flip_fb = &data->pm_fb[i & 1];
+		/* draw the color strip onto primary plane FB */
+		update_color_strip(flip_fb, &old[i & 1], &new, 1.0, .0, 1.0);
 
 		igt_plane_set_fb(data->primary, flip_fb);
 		igt_output_set_pipe(data->output, data->pipe_id);
 
-		ret = drmModePageFlip(data->fd, data->output->config.crtc->crtc_id,
-				      flip_fb->fb_id, DRM_MODE_PAGE_FLIP_EVENT, NULL);
+		ret = igt_display_try_commit_atomic(&data->display, DRM_MODE_PAGE_FLIP_EVENT, NULL);
 		igt_require(ret == 0);
 		kmstest_wait_for_pageflip(data->fd);
+
+		/* update strip position */
+		old[i & 1].x = new.x;
+		new.x += 3;
+		new.x = (new.x + new.w > data->pfb_w) ? 0 : new.x;
 	}
 
 	/* fini */
 	igt_remove_fb(data->fd, &ref_fb);
 	igt_remove_fb(data->fd, &data->ov_fb[0]);
-	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i)
-		igt_remove_fb(data->fd, &rect_fb[i]);
+	igt_remove_fb(data->fd, &data->pm_fb[0]);
+	igt_remove_fb(data->fd, &data->pm_fb[1]);
 	test_fini(data);
 }
 
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [igt-dev] [PATCH 4/4] tests/amdgpu/amd_psr: add PSR-SU scaling test cases
  2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
                   ` (2 preceding siblings ...)
  2022-05-05 21:32 ` [igt-dev] [PATCH 3/4] tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case David Zhang
@ 2022-05-05 21:32 ` David Zhang
  2022-05-09 20:27   ` Leo
  2022-05-05 22:31 ` [igt-dev] ✓ Fi.CI.BAT: success for amdgpu PSR-SU scaling tests and some fix Patchwork
  2022-05-06  1:16 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  5 siblings, 1 reply; 11+ messages in thread
From: David Zhang @ 2022-05-05 21:32 UTC (permalink / raw)
  To: igt-dev

[why]
We need test cases to validate PSR-SU disabled when a specific
plane scaling occurs by visual confirm. From driver's perspective,
any plane's height/width change detected, it would cause PSR-SU
be disabled.

[how]
- based on the existed MPO test case, we'd add two more input
  arguments to the test function, i.e. one as flag indicating if
  to test scaling, another as scaling ratio for the primary plane
- start from 1/3 iteration in test run, scaling the primary plane
  w/ the given ratio and update the overlay as well, and observe
  if PSR-SU is disabled as expected by allowing some delay to
  check
- add two sub-test cases, one w/ scaling ratio 1.5, another 0.75

Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Jay Pillai <aurabindo.pillai@amd.com>
Cc: Wayne Lin <wayne.lin@amd.com>

Signed-off-by: David Zhang <dingchen.zhang@amd.com>
---
 tests/amdgpu/amd_psr.c | 41 +++++++++++++++++++++++++++++++++++++++--
 1 file changed, 39 insertions(+), 2 deletions(-)

diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
index 81ebebd3..5ad8c7fe 100644
--- a/tests/amdgpu/amd_psr.c
+++ b/tests/amdgpu/amd_psr.c
@@ -335,7 +335,7 @@ static void run_check_psr(data_t *data, bool test_null_crtc) {
 	test_fini(data);
 }
 
-static void run_check_psr_su_mpo(data_t *data)
+static void run_check_psr_su_mpo(data_t *data, bool scaling, float scaling_ratio)
 {
 	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
 	igt_fb_t ref_fb;	/* reference fb */
@@ -344,6 +344,7 @@ static void run_check_psr_su_mpo(data_t *data)
 	const int run_sec = 5;
 	int frame_rate = 0;
 	pos_t old[2], new;
+	int pm_w_scale, pm_h_scale;	/* primary plane width/heigh after scaling */
 
 	/* skip the test run if no eDP sink detected */
 	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
@@ -355,6 +356,10 @@ static void run_check_psr_su_mpo(data_t *data)
 	memset(&new, 0, sizeof(pos_t));
 	old[0].w = old[1].w = new.w = 30;
 	old[0].h = old[1].h = new.h = data->pfb_h;
+	if (scaling) {
+		pm_w_scale = (int) (data->pfb_w * scaling_ratio);
+		pm_h_scale = (int) (data->pfb_h * scaling_ratio);
+	}
 
 	/* run the test i.i.f. eDP panel supports and kernel driver both support PSR-SU  */
 	igt_skip_on(!psr_su_supported(data));
@@ -375,6 +380,8 @@ static void run_check_psr_su_mpo(data_t *data)
 	 */
 	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
 			    1.0, 1.0, 1.0, &data->ov_fb[0]);
+	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
+			    1.0, 1.0, 1.0, &data->ov_fb[1]);
 	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
 			    .0, .0, .0, &data->pm_fb[0]);
 	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
@@ -398,6 +405,7 @@ static void run_check_psr_su_mpo(data_t *data)
 	 * to be zero.
 	 */
 	draw_color_alpha(&data->ov_fb[0], 0, 0, data->pfb_w, data->pfb_h, .5, .5, .5, .0);
+	draw_color_alpha(&data->ov_fb[1], 0, 0, pm_w_scale, pm_h_scale, .5, .5, .5, .0);
 
 	igt_output_set_pipe(data->output, data->pipe_id);
 	igt_display_commit_atomic(&data->display, 0, NULL);
@@ -411,12 +419,32 @@ static void run_check_psr_su_mpo(data_t *data)
 		update_color_strip(flip_fb, &old[i & 1], &new, 1.0, .0, 1.0);
 
 		igt_plane_set_fb(data->primary, flip_fb);
+		igt_plane_set_position(data->primary, 0, 0);
+		/* do scaling at 1/3 iteration, update both primary/overlay */
+		if (scaling && (i >= run_sec * frame_rate / 3)) {
+			igt_plane_set_fb(data->overlay, &data->ov_fb[1]);
+			igt_plane_set_size(data->primary, pm_w_scale, pm_h_scale);
+		}
 		igt_output_set_pipe(data->output, data->pipe_id);
 
 		ret = igt_display_try_commit_atomic(&data->display, DRM_MODE_PAGE_FLIP_EVENT, NULL);
 		igt_require(ret == 0);
 		kmstest_wait_for_pageflip(data->fd);
 
+		/**
+		 * allow some time to observe visual confirm of PSR-SU disabled
+		 * once the plane scaling occurs, i.e. green bar on the right side
+		 * screen disappears. From driver's view, the PSR-SU would be
+		 * disabled when the specific plane height/width detected changed.
+		 * and w/ the test run continues, each MPO FB is scaled to the same
+		 * size as the first scaled frame, then the PSR-SU is expected to
+		 * be re-enabled and green bar should be appear again if visual
+		 * confirm debug option is ON.
+		 */
+		if (scaling && (i == run_sec * frame_rate / 3)) {
+			sleep(2);
+		}
+
 		/* update strip position */
 		old[i & 1].x = new.x;
 		new.x += 3;
@@ -426,6 +454,7 @@ static void run_check_psr_su_mpo(data_t *data)
 	/* fini */
 	igt_remove_fb(data->fd, &ref_fb);
 	igt_remove_fb(data->fd, &data->ov_fb[0]);
+	igt_remove_fb(data->fd, &data->ov_fb[1]);
 	igt_remove_fb(data->fd, &data->pm_fb[0]);
 	igt_remove_fb(data->fd, &data->pm_fb[1]);
 	test_fini(data);
@@ -703,7 +732,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 
 	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
 		     "and to imitate Multiplane Overlay video playback scenario");
-	igt_subtest("psr_su_mpo") run_check_psr_su_mpo(&data);
+	igt_subtest("psr_su_mpo") run_check_psr_su_mpo(&data, false, .0);
 
 	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
 		     "and to validate Full Frame Update scenario");
@@ -717,6 +746,14 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		     "and to validate cursor movement + MPO scenario");
 	igt_subtest("psr_su_cursor_mpo") run_check_psr_su_cursor(&data, true);
 
+	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
+		     "and to validate PSR SU disable/re-enable w/ primary scaling ratio 1.5");
+	igt_subtest("psr_su_mpo_scaling_1_5") run_check_psr_su_mpo(&data, true, 1.5);
+
+	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
+		     "and to validate PSR SU disable/re-enable w/ primary scaling ratio 0.75");
+	igt_subtest("psr_su_mpo_scaling_0_75") run_check_psr_su_mpo(&data, true, .75);
+
 	igt_fixture
 	{
 		if (opt.visual_confirm) {
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for amdgpu PSR-SU scaling tests and some fix
  2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
                   ` (3 preceding siblings ...)
  2022-05-05 21:32 ` [igt-dev] [PATCH 4/4] tests/amdgpu/amd_psr: add PSR-SU scaling test cases David Zhang
@ 2022-05-05 22:31 ` Patchwork
  2022-05-06  1:16 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  5 siblings, 0 replies; 11+ messages in thread
From: Patchwork @ 2022-05-05 22:31 UTC (permalink / raw)
  To: David Zhang; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 7062 bytes --]

== Series Details ==

Series: amdgpu PSR-SU scaling tests and some fix
URL   : https://patchwork.freedesktop.org/series/103635/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11612 -> IGTPW_7044
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/index.html

Participating hosts (41 -> 43)
------------------------------

  Additional (3): bat-rpls-1 bat-adlm-1 fi-icl-u2 
  Missing    (1): fi-bsw-cyan 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_7044:

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@i915_selftest@live@gt_contexts:
    - {bat-adlm-1}:       NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/bat-adlm-1/igt@i915_selftest@live@gt_contexts.html

  
Known issues
------------

  Here are the changes found in IGTPW_7044 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_huc_copy@huc-copy:
    - fi-icl-u2:          NOTRUN -> [SKIP][2] ([i915#2190])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@parallel-random-engines:
    - fi-icl-u2:          NOTRUN -> [SKIP][3] ([i915#4613]) +3 similar issues
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@gem_lmem_swapping@parallel-random-engines.html

  * igt@i915_selftest@live@gt_engines:
    - fi-rkl-guc:         [PASS][4] -> [INCOMPLETE][5] ([i915#4418])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/fi-rkl-guc/igt@i915_selftest@live@gt_engines.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-rkl-guc/igt@i915_selftest@live@gt_engines.html

  * igt@i915_selftest@live@hangcheck:
    - fi-hsw-4770:        [PASS][6] -> [INCOMPLETE][7] ([i915#4785])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html

  * igt@kms_chamelium@hdmi-hpd-fast:
    - fi-icl-u2:          NOTRUN -> [SKIP][8] ([fdo#111827]) +8 similar issues
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
    - fi-icl-u2:          NOTRUN -> [SKIP][9] ([fdo#109278]) +2 similar issues
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_force_connector_basic@force-load-detect:
    - fi-icl-u2:          NOTRUN -> [SKIP][10] ([fdo#109285])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - fi-icl-u2:          NOTRUN -> [SKIP][11] ([i915#3555])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-userptr:
    - fi-icl-u2:          NOTRUN -> [SKIP][12] ([i915#3301])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-icl-u2/igt@prime_vgem@basic-userptr.html

  * igt@runner@aborted:
    - fi-rkl-guc:         NOTRUN -> [FAIL][13] ([i915#4312])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-rkl-guc/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gt_pm:
    - fi-tgl-1115g4:      [DMESG-FAIL][14] ([i915#3987]) -> [PASS][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/fi-tgl-1115g4/igt@i915_selftest@live@gt_pm.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-tgl-1115g4/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@hangcheck:
    - {fi-jsl-1}:         [INCOMPLETE][16] ([i915#3921] / [i915#5153]) -> [PASS][17]
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/fi-jsl-1/igt@i915_selftest@live@hangcheck.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/fi-jsl-1/igt@i915_selftest@live@hangcheck.html

  * igt@kms_busy@basic@flip:
    - {bat-adlp-6}:       [DMESG-WARN][18] ([i915#3576]) -> [PASS][19]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/bat-adlp-6/igt@kms_busy@basic@flip.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/bat-adlp-6/igt@kms_busy@basic@flip.html
    - bat-adlp-4:         [DMESG-WARN][20] ([i915#3576]) -> [PASS][21] +1 similar issue
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/bat-adlp-4/igt@kms_busy@basic@flip.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/bat-adlp-4/igt@kms_busy@basic@flip.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3921]: https://gitlab.freedesktop.org/drm/intel/issues/3921
  [i915#3987]: https://gitlab.freedesktop.org/drm/intel/issues/3987
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4418]: https://gitlab.freedesktop.org/drm/intel/issues/4418
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4785]: https://gitlab.freedesktop.org/drm/intel/issues/4785
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5153]: https://gitlab.freedesktop.org/drm/intel/issues/5153


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_6467 -> IGTPW_7044

  CI-20190529: 20190529
  CI_DRM_11612: 9f6ebefdd3fadb37d1e284e7f0bf0cfcd2fef75b @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7044: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/index.html
  IGT_6467: 929abc51cdd48d673efa03e025b1f31b557972ed @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


Testlist changes
----------------

+igt@amdgpu/amd_psr@psr_su_mpo_scaling_0_75
+igt@amdgpu/amd_psr@psr_su_mpo_scaling_1_5

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/index.html

[-- Attachment #2: Type: text/html, Size: 7704 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [igt-dev] ✗ Fi.CI.IGT: failure for amdgpu PSR-SU scaling tests and some fix
  2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
                   ` (4 preceding siblings ...)
  2022-05-05 22:31 ` [igt-dev] ✓ Fi.CI.BAT: success for amdgpu PSR-SU scaling tests and some fix Patchwork
@ 2022-05-06  1:16 ` Patchwork
  5 siblings, 0 replies; 11+ messages in thread
From: Patchwork @ 2022-05-06  1:16 UTC (permalink / raw)
  To: David Zhang; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 59612 bytes --]

== Series Details ==

Series: amdgpu PSR-SU scaling tests and some fix
URL   : https://patchwork.freedesktop.org/series/103635/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_11612_full -> IGTPW_7044_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_7044_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_7044_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/index.html

Participating hosts (12 -> 9)
------------------------------

  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_7044_full:

### IGT changes ###

#### Possible regressions ####

  * igt@device_reset@unbind-reset-rebind:
    - shard-snb:          [PASS][1] -> [DMESG-WARN][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-snb6/igt@device_reset@unbind-reset-rebind.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-snb7/igt@device_reset@unbind-reset-rebind.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * {igt@kms_plane_scaling@downscale-with-modifier-factor-0-25@pipe-d-edp-1-downscale-with-modifier}:
    - shard-tglb:         NOTRUN -> [SKIP][3] +3 similar issues
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@kms_plane_scaling@downscale-with-modifier-factor-0-25@pipe-d-edp-1-downscale-with-modifier.html

  * {igt@kms_plane_scaling@scaler-with-modifier-unity-scaling}:
    - {shard-rkl}:        NOTRUN -> [SKIP][4]
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-2/igt@kms_plane_scaling@scaler-with-modifier-unity-scaling.html

  
New tests
---------

  New tests have been introduced between CI_DRM_11612_full and IGTPW_7044_full:

### New IGT tests (3) ###

  * igt@kms_plane_scaling@upscale-with-modifier-20x20@pipe-b-hdmi-a-1-upscale-with-modifier:
    - Statuses : 1 pass(s)
    - Exec time: [0.21] s

  * igt@kms_plane_scaling@upscale-with-modifier-20x20@pipe-d-edp-1-upscale-with-modifier:
    - Statuses : 1 pass(s)
    - Exec time: [1.41] s

  * igt@kms_plane_scaling@upscale-with-modifier-20x20@pipe-d-hdmi-a-1-upscale-with-modifier:
    - Statuses : 1 pass(s)
    - Exec time: [0.21] s

  

Known issues
------------

  Here are the changes found in IGTPW_7044_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_create@create-massive:
    - shard-snb:          NOTRUN -> [DMESG-WARN][5] ([i915#4991])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-snb6/igt@gem_create@create-massive.html
    - shard-kbl:          NOTRUN -> [DMESG-WARN][6] ([i915#4991])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl3/igt@gem_create@create-massive.html

  * igt@gem_ctx_sseu@invalid-sseu:
    - shard-tglb:         NOTRUN -> [SKIP][7] ([i915#280])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@gem_ctx_sseu@invalid-sseu.html

  * igt@gem_eio@unwedge-stress:
    - shard-tglb:         NOTRUN -> [FAIL][8] ([i915#5784])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@parallel:
    - shard-kbl:          NOTRUN -> [DMESG-WARN][9] ([i915#5076] / [i915#5614]) +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl7/igt@gem_exec_balancer@parallel.html

  * igt@gem_exec_balancer@parallel-balancer:
    - shard-iclb:         NOTRUN -> [SKIP][10] ([i915#4525])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb8/igt@gem_exec_balancer@parallel-balancer.html

  * igt@gem_exec_fair@basic-flow@rcs0:
    - shard-tglb:         [PASS][11] -> [FAIL][12] ([i915#2842]) +1 similar issue
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-tglb7/igt@gem_exec_fair@basic-flow@rcs0.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@gem_exec_fair@basic-flow@rcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-iclb:         [PASS][13] -> [FAIL][14] ([i915#2842])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb5/igt@gem_exec_fair@basic-none-share@rcs0.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
    - shard-tglb:         NOTRUN -> [FAIL][15] ([i915#2842])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb5/igt@gem_exec_fair@basic-none-vip@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-glk:          [PASS][16] -> [FAIL][17] ([i915#2842])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-glk1/igt@gem_exec_fair@basic-none@vcs0.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk4/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_exec_fair@basic-none@vecs0:
    - shard-kbl:          [PASS][18] -> [FAIL][19] ([i915#2842])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-kbl7/igt@gem_exec_fair@basic-none@vecs0.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl6/igt@gem_exec_fair@basic-none@vecs0.html

  * igt@gem_exec_fair@basic-pace@rcs0:
    - shard-kbl:          NOTRUN -> [FAIL][20] ([i915#2842]) +1 similar issue
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl4/igt@gem_exec_fair@basic-pace@rcs0.html

  * igt@gem_exec_flush@basic-batch-kernel-default-cmd:
    - shard-tglb:         NOTRUN -> [SKIP][21] ([fdo#109313])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html

  * igt@gem_exec_flush@basic-wb-rw-before-default:
    - shard-snb:          [PASS][22] -> [SKIP][23] ([fdo#109271]) +1 similar issue
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-snb7/igt@gem_exec_flush@basic-wb-rw-before-default.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-snb6/igt@gem_exec_flush@basic-wb-rw-before-default.html

  * igt@gem_exec_params@no-vebox:
    - shard-tglb:         NOTRUN -> [SKIP][24] ([fdo#109283] / [i915#4877])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@gem_exec_params@no-vebox.html

  * igt@gem_exec_params@rsvd2-dirt:
    - shard-tglb:         NOTRUN -> [SKIP][25] ([fdo#109283])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@gem_exec_params@rsvd2-dirt.html

  * igt@gem_lmem_swapping@heavy-multi:
    - shard-apl:          NOTRUN -> [SKIP][26] ([fdo#109271] / [i915#4613]) +3 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl8/igt@gem_lmem_swapping@heavy-multi.html
    - shard-tglb:         NOTRUN -> [SKIP][27] ([i915#4613]) +3 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@gem_lmem_swapping@heavy-multi.html
    - shard-glk:          NOTRUN -> [SKIP][28] ([fdo#109271] / [i915#4613])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk4/igt@gem_lmem_swapping@heavy-multi.html

  * igt@gem_lmem_swapping@parallel-random:
    - shard-iclb:         NOTRUN -> [SKIP][29] ([i915#4613]) +2 similar issues
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@gem_lmem_swapping@parallel-random.html

  * igt@gem_lmem_swapping@smem-oom:
    - shard-kbl:          NOTRUN -> [SKIP][30] ([fdo#109271] / [i915#4613]) +4 similar issues
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl7/igt@gem_lmem_swapping@smem-oom.html

  * igt@gem_pxp@verify-pxp-execution-after-suspend-resume:
    - shard-tglb:         NOTRUN -> [SKIP][31] ([i915#4270])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html
    - shard-iclb:         NOTRUN -> [SKIP][32] ([i915#4270])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html

  * igt@gem_render_copy@y-tiled-to-vebox-linear:
    - shard-iclb:         NOTRUN -> [SKIP][33] ([i915#768]) +1 similar issue
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@gem_render_copy@y-tiled-to-vebox-linear.html

  * igt@gem_softpin@evict-single-offset:
    - shard-kbl:          NOTRUN -> [FAIL][34] ([i915#4171])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl6/igt@gem_softpin@evict-single-offset.html

  * igt@gem_softpin@evict-snoop:
    - shard-iclb:         NOTRUN -> [SKIP][35] ([fdo#109312])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb8/igt@gem_softpin@evict-snoop.html
    - shard-tglb:         NOTRUN -> [SKIP][36] ([fdo#109312])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@gem_softpin@evict-snoop.html

  * igt@gen3_render_linear_blits:
    - shard-tglb:         NOTRUN -> [SKIP][37] ([fdo#109289]) +4 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@gen3_render_linear_blits.html

  * igt@gen9_exec_parse@basic-rejected:
    - shard-iclb:         NOTRUN -> [SKIP][38] ([i915#2856]) +1 similar issue
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb7/igt@gen9_exec_parse@basic-rejected.html

  * igt@gen9_exec_parse@bb-start-param:
    - shard-tglb:         NOTRUN -> [SKIP][39] ([i915#2527] / [i915#2856]) +4 similar issues
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@gen9_exec_parse@bb-start-param.html

  * igt@i915_hangman@engine-engine-hang:
    - shard-snb:          NOTRUN -> [SKIP][40] ([fdo#109271]) +187 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-snb5/igt@i915_hangman@engine-engine-hang.html

  * igt@i915_pm_rc6_residency@rc6-fence:
    - shard-tglb:         NOTRUN -> [WARN][41] ([i915#2681])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@i915_pm_rc6_residency@rc6-fence.html
    - shard-iclb:         NOTRUN -> [WARN][42] ([i915#2684])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@i915_pm_rc6_residency@rc6-fence.html

  * igt@i915_query@query-topology-known-pci-ids:
    - shard-tglb:         NOTRUN -> [SKIP][43] ([fdo#109303])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@i915_query@query-topology-known-pci-ids.html
    - shard-iclb:         NOTRUN -> [SKIP][44] ([fdo#109303])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@i915_query@query-topology-known-pci-ids.html

  * igt@i915_suspend@forcewake:
    - shard-kbl:          NOTRUN -> [DMESG-WARN][45] ([i915#180])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl1/igt@i915_suspend@forcewake.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-0:
    - shard-iclb:         NOTRUN -> [SKIP][46] ([i915#5286]) +6 similar issues
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@kms_big_fb@4-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0:
    - shard-tglb:         NOTRUN -> [SKIP][47] ([i915#5286]) +8 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0.html

  * igt@kms_big_fb@linear-32bpp-rotate-90:
    - shard-tglb:         NOTRUN -> [SKIP][48] ([fdo#111614]) +1 similar issue
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@kms_big_fb@linear-32bpp-rotate-90.html

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270:
    - shard-iclb:         NOTRUN -> [SKIP][49] ([fdo#110725] / [fdo#111614]) +2 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb8/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-90:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([fdo#110723])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb8/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-180:
    - shard-tglb:         NOTRUN -> [SKIP][51] ([fdo#111615]) +5 similar issues
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_big_fb@yf-tiled-8bpp-rotate-180.html

  * igt@kms_big_joiner@basic:
    - shard-tglb:         NOTRUN -> [SKIP][52] ([i915#2705])
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@kms_big_joiner@basic.html
    - shard-iclb:         NOTRUN -> [SKIP][53] ([i915#2705])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@kms_big_joiner@basic.html

  * igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][54] ([i915#3689] / [i915#3886]) +2 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb7/igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][55] ([fdo#109271] / [i915#3886]) +8 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl7/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][56] ([i915#3689]) +4 similar issues
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_ccs.html

  * igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs:
    - shard-kbl:          NOTRUN -> [SKIP][57] ([fdo#109271] / [i915#3886]) +10 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl6/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-random-ccs-data-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][58] ([fdo#111615] / [i915#3689]) +3 similar issues
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb5/igt@kms_ccs@pipe-a-random-ccs-data-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][59] ([fdo#109278] / [i915#3886]) +3 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc:
    - shard-glk:          NOTRUN -> [SKIP][60] ([fdo#109271] / [i915#3886]) +2 similar issues
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk6/igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_cdclk@plane-scaling:
    - shard-tglb:         NOTRUN -> [SKIP][61] ([i915#3742])
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@kms_cdclk@plane-scaling.html

  * igt@kms_chamelium@dp-crc-multiple:
    - shard-apl:          NOTRUN -> [SKIP][62] ([fdo#109271] / [fdo#111827]) +14 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl4/igt@kms_chamelium@dp-crc-multiple.html

  * igt@kms_chamelium@dp-frame-dump:
    - shard-iclb:         NOTRUN -> [SKIP][63] ([fdo#109284] / [fdo#111827]) +8 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@kms_chamelium@dp-frame-dump.html
    - shard-glk:          NOTRUN -> [SKIP][64] ([fdo#109271] / [fdo#111827]) +6 similar issues
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk6/igt@kms_chamelium@dp-frame-dump.html

  * igt@kms_chamelium@hdmi-hpd-enable-disable-mode:
    - shard-snb:          NOTRUN -> [SKIP][65] ([fdo#109271] / [fdo#111827]) +8 similar issues
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-snb7/igt@kms_chamelium@hdmi-hpd-enable-disable-mode.html

  * igt@kms_color@pipe-d-ctm-green-to-red:
    - shard-iclb:         NOTRUN -> [SKIP][66] ([fdo#109278] / [i915#1149])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@kms_color@pipe-d-ctm-green-to-red.html

  * igt@kms_color_chamelium@pipe-a-ctm-blue-to-red:
    - shard-kbl:          NOTRUN -> [SKIP][67] ([fdo#109271] / [fdo#111827]) +23 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl4/igt@kms_color_chamelium@pipe-a-ctm-blue-to-red.html

  * igt@kms_color_chamelium@pipe-b-ctm-0-75:
    - shard-tglb:         NOTRUN -> [SKIP][68] ([fdo#109284] / [fdo#111827]) +15 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_color_chamelium@pipe-b-ctm-0-75.html

  * igt@kms_color_chamelium@pipe-d-ctm-0-75:
    - shard-iclb:         NOTRUN -> [SKIP][69] ([fdo#109278] / [fdo#109284] / [fdo#111827])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb6/igt@kms_color_chamelium@pipe-d-ctm-0-75.html

  * igt@kms_content_protection@dp-mst-lic-type-1:
    - shard-iclb:         NOTRUN -> [SKIP][70] ([i915#3116])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@kms_content_protection@dp-mst-lic-type-1.html

  * igt@kms_content_protection@dp-mst-type-0:
    - shard-tglb:         NOTRUN -> [SKIP][71] ([i915#3116] / [i915#3299]) +1 similar issue
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_content_protection@dp-mst-type-0.html

  * igt@kms_content_protection@legacy:
    - shard-kbl:          NOTRUN -> [TIMEOUT][72] ([i915#1319]) +1 similar issue
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl6/igt@kms_content_protection@legacy.html

  * igt@kms_content_protection@lic:
    - shard-apl:          NOTRUN -> [TIMEOUT][73] ([i915#1319])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl6/igt@kms_content_protection@lic.html

  * igt@kms_content_protection@srm:
    - shard-tglb:         NOTRUN -> [SKIP][74] ([i915#1063]) +1 similar issue
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@kms_content_protection@srm.html
    - shard-iclb:         NOTRUN -> [SKIP][75] ([fdo#109300] / [fdo#111066])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb8/igt@kms_content_protection@srm.html

  * igt@kms_content_protection@uevent:
    - shard-kbl:          NOTRUN -> [FAIL][76] ([i915#2105])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl6/igt@kms_content_protection@uevent.html

  * igt@kms_cursor_crc@pipe-a-cursor-32x32-rapid-movement:
    - shard-tglb:         NOTRUN -> [SKIP][77] ([i915#3319]) +2 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb5/igt@kms_cursor_crc@pipe-a-cursor-32x32-rapid-movement.html

  * igt@kms_cursor_crc@pipe-a-cursor-512x512-sliding:
    - shard-iclb:         NOTRUN -> [SKIP][78] ([fdo#109278] / [fdo#109279]) +4 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@kms_cursor_crc@pipe-a-cursor-512x512-sliding.html

  * igt@kms_cursor_crc@pipe-b-cursor-32x10-onscreen:
    - shard-iclb:         NOTRUN -> [SKIP][79] ([fdo#109278]) +25 similar issues
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@kms_cursor_crc@pipe-b-cursor-32x10-onscreen.html

  * igt@kms_cursor_crc@pipe-c-cursor-max-size-rapid-movement:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([i915#3359]) +7 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_cursor_crc@pipe-c-cursor-max-size-rapid-movement.html

  * igt@kms_cursor_crc@pipe-d-cursor-512x512-rapid-movement:
    - shard-tglb:         NOTRUN -> [SKIP][81] ([fdo#109279] / [i915#3359]) +7 similar issues
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb5/igt@kms_cursor_crc@pipe-d-cursor-512x512-rapid-movement.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-legacy:
    - shard-iclb:         NOTRUN -> [SKIP][82] ([fdo#109274] / [fdo#109278]) +3 similar issues
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-glk:          [PASS][83] -> [FAIL][84] ([i915#2346] / [i915#533])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-glk8/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk9/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@flip-vs-cursor-varying-size:
    - shard-iclb:         [PASS][85] -> [FAIL][86] ([i915#2346])
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb5/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-tglb:         NOTRUN -> [SKIP][87] ([i915#4103])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_dp_tiled_display@basic-test-pattern:
    - shard-iclb:         NOTRUN -> [SKIP][88] ([i915#426])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@kms_dp_tiled_display@basic-test-pattern.html
    - shard-tglb:         NOTRUN -> [SKIP][89] ([i915#426])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@kms_dp_tiled_display@basic-test-pattern.html

  * igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium:
    - shard-tglb:         NOTRUN -> [SKIP][90] ([i915#3528])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium.html
    - shard-iclb:         NOTRUN -> [SKIP][91] ([i915#3528])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@kms_draw_crc@draw-method-rgb565-mmap-cpu-4tiled:
    - shard-tglb:         NOTRUN -> [SKIP][92] ([i915#5287]) +4 similar issues
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb5/igt@kms_draw_crc@draw-method-rgb565-mmap-cpu-4tiled.html

  * igt@kms_draw_crc@draw-method-xrgb2101010-mmap-wc-4tiled:
    - shard-iclb:         NOTRUN -> [SKIP][93] ([i915#5287]) +1 similar issue
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb6/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-wc-4tiled.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-apl:          NOTRUN -> [FAIL][94] ([i915#4767])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl1/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
    - shard-iclb:         NOTRUN -> [SKIP][95] ([fdo#109274]) +5 similar issues
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html

  * igt@kms_flip@2x-plain-flip-ts-check:
    - shard-tglb:         NOTRUN -> [SKIP][96] ([fdo#109274] / [fdo#111825]) +10 similar issues
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@kms_flip@2x-plain-flip-ts-check.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-dp1:
    - shard-apl:          [PASS][97] -> [DMESG-WARN][98] ([i915#180])
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-apl6/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html

  * igt@kms_flip@flip-vs-suspend@c-dp1:
    - shard-kbl:          [PASS][99] -> [DMESG-WARN][100] ([i915#180]) +4 similar issues
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-kbl7/igt@kms_flip@flip-vs-suspend@c-dp1.html
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html

  * igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt:
    - shard-iclb:         NOTRUN -> [SKIP][101] ([fdo#109280]) +22 similar issues
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt:
    - shard-tglb:         NOTRUN -> [SKIP][102] ([fdo#109280] / [fdo#111825]) +33 similar issues
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
    - shard-tglb:         NOTRUN -> [SKIP][103] ([i915#5439])
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render:
    - shard-glk:          NOTRUN -> [SKIP][104] ([fdo#109271]) +75 similar issues
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk4/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render.html

  * igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
    - shard-tglb:         NOTRUN -> [SKIP][105] ([i915#1839]) +1 similar issue
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb7/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
    - shard-iclb:         NOTRUN -> [SKIP][106] ([i915#1839]) +1 similar issue
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html

  * igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes:
    - shard-iclb:         NOTRUN -> [SKIP][107] ([fdo#109289]) +4 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb6/igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-pipe-d-frame-sequence:
    - shard-kbl:          NOTRUN -> [SKIP][108] ([fdo#109271] / [i915#533])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl1/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-d-frame-sequence.html

  * igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb:
    - shard-glk:          NOTRUN -> [FAIL][109] ([i915#265])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk5/igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb:
    - shard-apl:          NOTRUN -> [FAIL][110] ([i915#265]) +1 similar issue
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl2/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb:
    - shard-kbl:          NOTRUN -> [FAIL][111] ([i915#265]) +1 similar issue
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl7/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html

  * igt@kms_plane_lowres@pipe-a-tiling-x:
    - shard-iclb:         NOTRUN -> [SKIP][112] ([i915#3536]) +1 similar issue
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@kms_plane_lowres@pipe-a-tiling-x.html

  * igt@kms_plane_lowres@pipe-a-tiling-y:
    - shard-tglb:         NOTRUN -> [SKIP][113] ([i915#3536]) +1 similar issue
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@kms_plane_lowres@pipe-a-tiling-y.html

  * igt@kms_plane_lowres@pipe-d-tiling-4:
    - shard-tglb:         NOTRUN -> [SKIP][114] ([i915#5288])
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb5/igt@kms_plane_lowres@pipe-d-tiling-4.html

  * igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-a-edp-1-downscale-with-pixel-format:
    - shard-iclb:         NOTRUN -> [SKIP][115] ([i915#5176]) +2 similar issues
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-a-edp-1-downscale-with-pixel-format.html

  * igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-b-edp-1-downscale-with-pixel-format:
    - shard-tglb:         NOTRUN -> [SKIP][116] ([i915#5176]) +3 similar issues
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-b-edp-1-downscale-with-pixel-format.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-a-edp-1-planes-upscale-downscale:
    - shard-iclb:         NOTRUN -> [SKIP][117] ([i915#5235]) +2 similar issues
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb8/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-a-edp-1-planes-upscale-downscale.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-c-edp-1-planes-upscale-downscale:
    - shard-tglb:         NOTRUN -> [SKIP][118] ([i915#5235]) +3 similar issues
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-c-edp-1-planes-upscale-downscale.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
    - shard-tglb:         NOTRUN -> [SKIP][119] ([i915#2920])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb8/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-tglb:         NOTRUN -> [SKIP][120] ([i915#1911]) +1 similar issue
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb7/igt@kms_psr2_su@page_flip-nv12.html
    - shard-iclb:         NOTRUN -> [SKIP][121] ([fdo#109642] / [fdo#111068] / [i915#658])
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr2_su@page_flip-xrgb8888:
    - shard-kbl:          NOTRUN -> [SKIP][122] ([fdo#109271] / [i915#658]) +5 similar issues
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl7/igt@kms_psr2_su@page_flip-xrgb8888.html
    - shard-apl:          NOTRUN -> [SKIP][123] ([fdo#109271] / [i915#658]) +3 similar issues
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl1/igt@kms_psr2_su@page_flip-xrgb8888.html
    - shard-glk:          NOTRUN -> [SKIP][124] ([fdo#109271] / [i915#658]) +1 similar issue
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk3/igt@kms_psr2_su@page_flip-xrgb8888.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - shard-tglb:         NOTRUN -> [FAIL][125] ([i915#132] / [i915#3467])
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@kms_psr@psr2_primary_mmap_gtt.html
    - shard-iclb:         NOTRUN -> [SKIP][126] ([fdo#109441])
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-iclb:         [PASS][127] -> [SKIP][128] ([i915#5519])
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb6/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb6/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_rotation_crc@primary-4-tiled-reflect-x-180:
    - shard-tglb:         NOTRUN -> [SKIP][129] ([i915#5289])
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html

  * igt@kms_scaling_modes@scaling-mode-full-aspect:
    - shard-kbl:          NOTRUN -> [SKIP][130] ([fdo#109271]) +320 similar issues
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl6/igt@kms_scaling_modes@scaling-mode-full-aspect.html

  * igt@kms_vblank@pipe-d-ts-continuation-idle:
    - shard-apl:          NOTRUN -> [SKIP][131] ([fdo#109271]) +219 similar issues
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl1/igt@kms_vblank@pipe-d-ts-continuation-idle.html

  * igt@kms_vrr@flipline:
    - shard-tglb:         NOTRUN -> [SKIP][132] ([i915#3555]) +5 similar issues
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb3/igt@kms_vrr@flipline.html
    - shard-iclb:         NOTRUN -> [SKIP][133] ([i915#3555])
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@kms_vrr@flipline.html

  * igt@kms_writeback@writeback-fb-id:
    - shard-glk:          NOTRUN -> [SKIP][134] ([fdo#109271] / [i915#2437])
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk6/igt@kms_writeback@writeback-fb-id.html
    - shard-apl:          NOTRUN -> [SKIP][135] ([fdo#109271] / [i915#2437])
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl3/igt@kms_writeback@writeback-fb-id.html
    - shard-kbl:          NOTRUN -> [SKIP][136] ([fdo#109271] / [i915#2437])
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl3/igt@kms_writeback@writeback-fb-id.html
    - shard-tglb:         NOTRUN -> [SKIP][137] ([i915#2437])
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@kms_writeback@writeback-fb-id.html
    - shard-iclb:         NOTRUN -> [SKIP][138] ([i915#2437])
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb7/igt@kms_writeback@writeback-fb-id.html

  * igt@nouveau_crc@pipe-c-source-outp-inactive:
    - shard-tglb:         NOTRUN -> [SKIP][139] ([i915#2530]) +2 similar issues
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb2/igt@nouveau_crc@pipe-c-source-outp-inactive.html
    - shard-iclb:         NOTRUN -> [SKIP][140] ([i915#2530]) +1 similar issue
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@nouveau_crc@pipe-c-source-outp-inactive.html

  * igt@nouveau_crc@pipe-d-source-outp-complete:
    - shard-iclb:         NOTRUN -> [SKIP][141] ([fdo#109278] / [i915#2530]) +1 similar issue
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb7/igt@nouveau_crc@pipe-d-source-outp-complete.html

  * igt@perf@polling-parameterized:
    - shard-tglb:         [PASS][142] -> [FAIL][143] ([i915#5639])
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-tglb7/igt@perf@polling-parameterized.html
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@perf@polling-parameterized.html

  * igt@prime_nv_api@i915_nv_import_twice_check_flink_name:
    - shard-iclb:         NOTRUN -> [SKIP][144] ([fdo#109291]) +2 similar issues
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb7/igt@prime_nv_api@i915_nv_import_twice_check_flink_name.html

  * igt@prime_nv_api@i915_nv_reimport_twice_check_flink_name:
    - shard-tglb:         NOTRUN -> [SKIP][145] ([fdo#109291]) +5 similar issues
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb1/igt@prime_nv_api@i915_nv_reimport_twice_check_flink_name.html

  * igt@sysfs_clients@sema-10:
    - shard-tglb:         NOTRUN -> [SKIP][146] ([i915#2994]) +1 similar issue
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb6/igt@sysfs_clients@sema-10.html

  * igt@sysfs_clients@sema-25:
    - shard-kbl:          NOTRUN -> [SKIP][147] ([fdo#109271] / [i915#2994]) +1 similar issue
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl4/igt@sysfs_clients@sema-25.html

  
#### Possible fixes ####

  * igt@gem_exec_fair@basic-deadline:
    - shard-kbl:          [FAIL][148] ([i915#2846]) -> [PASS][149]
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-kbl3/igt@gem_exec_fair@basic-deadline.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl3/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-glk:          [FAIL][150] ([i915#2842]) -> [PASS][151]
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-glk8/igt@gem_exec_fair@basic-none-share@rcs0.html
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk9/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-apl:          [FAIL][152] ([i915#2842]) -> [PASS][153]
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-apl6/igt@gem_exec_fair@basic-none@vcs0.html
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl8/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - {shard-rkl}:        [FAIL][154] ([i915#2842]) -> [PASS][155]
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-2/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-5/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_flush@basic-batch-kernel-default-uc:
    - shard-snb:          [SKIP][156] ([fdo#109271]) -> [PASS][157] +1 similar issue
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-snb6/igt@gem_exec_flush@basic-batch-kernel-default-uc.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-snb4/igt@gem_exec_flush@basic-batch-kernel-default-uc.html

  * igt@i915_pm_backlight@fade:
    - {shard-rkl}:        [SKIP][158] ([i915#3012]) -> [PASS][159]
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@i915_pm_backlight@fade.html
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@i915_pm_backlight@fade.html

  * igt@kms_atomic@test-only:
    - {shard-rkl}:        [SKIP][160] ([i915#1845] / [i915#4098]) -> [PASS][161] +24 similar issues
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_atomic@test-only.html
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_atomic@test-only.html

  * igt@kms_color@pipe-a-gamma:
    - {shard-rkl}:        [SKIP][162] ([i915#1149] / [i915#1849] / [i915#4070] / [i915#4098]) -> [PASS][163]
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_color@pipe-a-gamma.html
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_color@pipe-a-gamma.html

  * igt@kms_color@pipe-b-ctm-green-to-red:
    - {shard-rkl}:        [SKIP][164] ([i915#1149] / [i915#4070] / [i915#4098]) -> [PASS][165]
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_color@pipe-b-ctm-green-to-red.html
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_color@pipe-b-ctm-green-to-red.html

  * igt@kms_cursor_crc@pipe-a-cursor-128x42-sliding:
    - {shard-rkl}:        [SKIP][166] ([fdo#112022] / [i915#4070]) -> [PASS][167] +8 similar issues
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_cursor_crc@pipe-a-cursor-128x42-sliding.html
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_cursor_crc@pipe-a-cursor-128x42-sliding.html

  * igt@kms_cursor_crc@pipe-a-cursor-suspend:
    - shard-kbl:          [DMESG-WARN][168] ([i915#180]) -> [PASS][169] +5 similar issues
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-kbl7/igt@kms_cursor_crc@pipe-a-cursor-suspend.html

  * igt@kms_cursor_edge_walk@pipe-a-256x256-right-edge:
    - {shard-rkl}:        [SKIP][170] ([i915#1849] / [i915#4070] / [i915#4098]) -> [PASS][171] +5 similar issues
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_cursor_edge_walk@pipe-a-256x256-right-edge.html
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_cursor_edge_walk@pipe-a-256x256-right-edge.html

  * igt@kms_cursor_legacy@pipe-c-single-bo:
    - {shard-rkl}:        [SKIP][172] ([i915#4070]) -> [PASS][173] +3 similar issues
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-1/igt@kms_cursor_legacy@pipe-c-single-bo.html
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-4/igt@kms_cursor_legacy@pipe-c-single-bo.html

  * igt@kms_cursor_legacy@short-flip-after-cursor-toggle:
    - {shard-rkl}:        [SKIP][174] ([fdo#111825] / [i915#4070]) -> [PASS][175] +6 similar issues
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_cursor_legacy@short-flip-after-cursor-toggle.html
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_cursor_legacy@short-flip-after-cursor-toggle.html

  * igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled:
    - shard-glk:          [FAIL][176] ([i915#1888] / [i915#5160]) -> [PASS][177]
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-glk4/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled.html
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk3/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled.html

  * igt@kms_draw_crc@draw-method-rgb565-mmap-wc-ytiled:
    - {shard-rkl}:        [SKIP][178] ([fdo#111314] / [i915#4098] / [i915#4369]) -> [PASS][179] +4 similar issues
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_draw_crc@draw-method-rgb565-mmap-wc-ytiled.html
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_draw_crc@draw-method-rgb565-mmap-wc-ytiled.html

  * igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled:
    - {shard-rkl}:        [SKIP][180] ([i915#4098] / [i915#4369]) -> [PASS][181] +2 similar issues
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled.html
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled.html

  * igt@kms_flip@flip-vs-expired-vblank@a-dp1:
    - shard-apl:          [FAIL][182] ([i915#79]) -> [PASS][183]
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-apl2/igt@kms_flip@flip-vs-expired-vblank@a-dp1.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl3/igt@kms_flip@flip-vs-expired-vblank@a-dp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling:
    - shard-iclb:         [SKIP][184] ([i915#3701]) -> [PASS][185]
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb7/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render:
    - {shard-rkl}:        [SKIP][186] ([i915#1849] / [i915#4098]) -> [PASS][187] +27 similar issues
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html

  * igt@kms_hdmi_inject@inject-audio:
    - {shard-tglu}:       [SKIP][188] ([i915#433]) -> [PASS][189]
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-tglu-4/igt@kms_hdmi_inject@inject-audio.html
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglu-3/igt@kms_hdmi_inject@inject-audio.html
    - shard-tglb:         [SKIP][190] ([i915#433]) -> [PASS][191]
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-tglb8/igt@kms_hdmi_inject@inject-audio.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-tglb7/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_invalid_mode@bad-vtotal:
    - {shard-rkl}:        [SKIP][192] ([i915#4278]) -> [PASS][193]
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_invalid_mode@bad-vtotal.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_invalid_mode@bad-vtotal.html

  * igt@kms_plane@plane-panning-top-left@pipe-b-planes:
    - {shard-rkl}:        [SKIP][194] ([i915#3558]) -> [PASS][195] +1 similar issue
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_plane@plane-panning-top-left@pipe-b-planes.html
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_plane@plane-panning-top-left@pipe-b-planes.html

  * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid:
    - {shard-rkl}:        [SKIP][196] ([i915#4070] / [i915#4098]) -> [PASS][197]
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid.html
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid.html

  * igt@kms_properties@plane-properties-atomic:
    - {shard-rkl}:        [SKIP][198] ([i915#4098]) -> [PASS][199]
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-4/igt@kms_properties@plane-properties-atomic.html
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_properties@plane-properties-atomic.html

  * igt@kms_psr@psr2_primary_page_flip:
    - shard-iclb:         [SKIP][200] ([fdo#109441]) -> [PASS][201]
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb5/igt@kms_psr@psr2_primary_page_flip.html
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html

  * igt@kms_psr@sprite_blt:
    - {shard-rkl}:        [SKIP][202] ([i915#1072]) -> [PASS][203] +2 similar issues
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_psr@sprite_blt.html
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_psr@sprite_blt.html

  * igt@kms_universal_plane@universal-plane-pipe-b-sanity:
    - {shard-rkl}:        [SKIP][204] ([i915#1845] / [i915#4070] / [i915#4098]) -> [PASS][205]
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-rkl-5/igt@kms_universal_plane@universal-plane-pipe-b-sanity.html
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-rkl-6/igt@kms_universal_plane@universal-plane-pipe-b-sanity.html

  * igt@kms_vblank@pipe-a-ts-continuation-suspend:
    - shard-apl:          [DMESG-WARN][206] ([i915#180]) -> [PASS][207] +4 similar issues
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-apl2/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl6/igt@kms_vblank@pipe-a-ts-continuation-suspend.html

  * igt@kms_vblank@pipe-c-wait-forked-hang:
    - shard-apl:          [SKIP][208] ([fdo#109271]) -> [PASS][209]
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-apl6/igt@kms_vblank@pipe-c-wait-forked-hang.html
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-apl1/igt@kms_vblank@pipe-c-wait-forked-hang.html
    - shard-glk:          [SKIP][210] ([fdo#109271]) -> [PASS][211]
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-glk5/igt@kms_vblank@pipe-c-wait-forked-hang.html
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-glk6/igt@kms_vblank@pipe-c-wait-forked-hang.html

  
#### Warnings ####

  * igt@gem_exec_balancer@parallel:
    - shard-iclb:         [SKIP][212] ([i915#4525]) -> [DMESG-WARN][213] ([i915#5614]) +1 similar issue
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb5/igt@gem_exec_balancer@parallel.html
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb4/igt@gem_exec_balancer@parallel.html

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-iclb:         [DMESG-WARN][214] ([i915#5614]) -> [SKIP][215] ([i915#4525])
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb2/igt@gem_exec_balancer@parallel-keep-submit-fence.html
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb3/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-iclb:         [DMESG-FAIL][216] ([i915#5614]) -> [SKIP][217] ([i915#4525])
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb2/igt@gem_exec_balancer@parallel-ordering.html
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb5/igt@gem_exec_balancer@parallel-ordering.html

  * igt@i915_pm_dc@dc3co-vpb-simulation:
    - shard-iclb:         [SKIP][218] ([i915#658]) -> [SKIP][219] ([i915#588])
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb6/igt@i915_pm_dc@dc3co-vpb-simulation.html
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-sf:
    - shard-iclb:         [SKIP][220] ([i915#2920]) -> [SKIP][221] ([i915#658])
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-sf.html
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb6/igt@kms_psr2_sf@cursor-plane-move-continuous-sf.html

  * igt@kms_psr2_su@page_flip-p010:
    - shard-iclb:         [FAIL][222] -> [SKIP][223] ([fdo#109642] / [fdo#111068] / [i915#658])
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11612/shard-iclb2/igt@kms_psr2_su@page_flip-p010.html
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/shard-iclb1/igt@kms_psr2_su@page_flip-p010.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112022]: https://bugs.freedesktop.org/show_bug.cgi?id=112022
  [i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1149]: https://gitlab.freedesktop.org/drm/intel/issues/1149
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
  [i915#1911]: https://gitlab.freedesktop.org/drm/intel/issues/1911
  [i915#2105]: https://gitlab.freedesktop.org/drm/intel/issues/2105
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2684]: https://gitlab.freedesktop.org/drm/intel/issues/2684
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
  [i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3319]: https://gitlab.freedesktop.org/drm/intel/issues/3319
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3376]: https://gitlab.freedesktop.org/drm/intel/issues/3376
  [i915#3464]: https://gitlab.freedesktop.org/drm/intel/issues/3464
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
  [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3639]: https://gitlab.freedesktop.org/drm/intel/issues/3639
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3701]: https://gitlab.freedesktop.org/drm/intel/issues/3701
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
  [i915#3825]: https://gitlab.freedesktop.org/drm/intel/issues/3825
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
  [i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4278]: https://gitlab.freedesktop.org/drm/intel/issues/4278
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
  [i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893
  [i915#4941]: https://gitlab.freedesktop.org/drm/intel/issues/4941
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5076]: https://gitlab.freedesktop.org/drm/intel/issues/5076
  [i915#5160]: https://gitlab.freedesktop.org/drm/intel/issues/5160
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5614]: https://gitlab.freedesktop.org/drm/intel/issues/5614
  [i915#5639]: https://gitlab.freedesktop.org/drm/intel/issues/5639
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_6467 -> IGTPW_7044
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_11612: 9f6ebefdd3fadb37d1e284e7f0bf0cfcd2fef75b @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7044: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/index.html
  IGT_6467: 929abc51cdd48d673efa03e025b1f31b557972ed @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7044/index.html

[-- Attachment #2: Type: text/html, Size: 71430 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case
  2022-05-05 21:32 ` [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case David Zhang
@ 2022-05-09 18:47   ` Leo
  0 siblings, 0 replies; 11+ messages in thread
From: Leo @ 2022-05-09 18:47 UTC (permalink / raw)
  To: David Zhang, igt-dev



On 2022-05-05 17:32, David Zhang wrote:
> [why]
> Analogous to usermode behavior, when there are primary plane and
> overlay plane committed, alpha region of overlay corresponding to
> the primary plane position/size should be set to zero to explicitly
> display the content of primary plane (emulated as video playback in
> this test case) in general.
> 
> The input arguments of width/height of the helper to paint the
> framebuffer should not exceed the size of the created framebuffer.
> 
> [how]
> - set the alpha region of overlay plane framebuffer to zero aligned
>   to the position/size of the primary plane
> - paint the primary plane framebuffer background/foreground w/ the
>   valid width/height.
> 
> Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Jay Pillai <aurabindo.pillai@amd.com>
> Cc: Wayne Lin <wayne.lin@amd.com>
> 
> Signed-off-by: David Zhang <dingchen.zhang@amd.com>
> ---
>  tests/amdgpu/amd_psr.c | 18 ++++++++++++++----
>  1 file changed, 14 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
> index b930b20e..5d190720 100644
> --- a/tests/amdgpu/amd_psr.c
> +++ b/tests/amdgpu/amd_psr.c
> @@ -351,9 +351,9 @@ static void run_check_psr_su_mpo(data_t *data)
>  		cr = igt_get_cairo_ctx(data->fd, &rect_fb[i]);
>  		igt_assert_f(cr, "Failed to get cairo context\n");
>  		/* background in black */
> -		igt_paint_color(cr, 0, 0, data->w, data->h, .0, .0, .0);
> +		igt_paint_color(cr, 0, 0, data->w / 2, data->h / 2, .0, .0, .0);
>  		/* foreground (megenta strip) */
> -		igt_paint_color(cr, i * strip_w, 0, strip_w, data->h, 1.0, .0, 1.0);
> +		igt_paint_color(cr, i * strip_w, 0, strip_w, data->h / 2, 1.0, .0, 1.0);
>  
>  		igt_put_cairo_ctx(cr);
>  	}
> @@ -364,8 +364,18 @@ static void run_check_psr_su_mpo(data_t *data)
>  	igt_plane_set_position(data->primary, 0, 0);
>  	igt_plane_set_size(data->primary, data->w / 2, data->h / 2);
>  
> -	/* adjust alpha for vpb (primary plane) region in overlay */
> -	draw_color_alpha(&ov_fb, 0, 0, data->w / 2, data->h / 2, .5, .5, .5, .3);
> +	/**
> +	 * adjust alpha for vpb (primary plane) region in overlay
> +	 * given alpha, we have:
> +	 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +	 *    blended = alpha * toplay + (1 - alpha) * underlay
> +	 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +	 * since primary plane is underlay while overlay plane is toplay, to
> +	 * display the content of primary plane w/ blending, we'd set the alpha
> +	 * of each pixel in overlay corresponding to primary plane position/size
> +	 * to be zero.
> +	 */

nit: do you mean s/toplay/overlay/ ?
With that fixed,

Reviewed-by: Leo Li <sunpeng.li@amd.com>

> +	draw_color_alpha(&ov_fb, 0, 0, data->w / 2, data->h / 2, .5, .5, .5, .0);
>  
>  	igt_output_set_pipe(data->output, data->pipe_id);
>  	igt_display_commit_atomic(&data->display, 0, NULL);

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [igt-dev] [PATCH 2/4] tests/amdgpu/amd_psr: clean-up the code
  2022-05-05 21:32 ` [igt-dev] [PATCH 2/4] tests/amdgpu/amd_psr: clean-up the code David Zhang
@ 2022-05-09 18:57   ` Leo
  0 siblings, 0 replies; 11+ messages in thread
From: Leo @ 2022-05-09 18:57 UTC (permalink / raw)
  To: David Zhang, igt-dev



On 2022-05-05 17:32, David Zhang wrote:
> [why]
> We'd clean-up the code to avoid repeated variable declarations in
> different psr-su test cases.
> 
> [how]
> - add primary/overlay framebuffer width/height to generic data
>   structure
> - add cursor framebuffer instance to data structure
> - clean-up the code for mpo/ffu/cusor test cases by using above
>   re-useable variables
> 
> Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Jay Pillai <aurabindo.pillai@amd.com>
> Cc: Wayne Lin <wayne.lin@amd.com>
> 
> Signed-off-by: David Zhang <dingchen.zhang@amd.com>

Reviewed-by: Leo Li <sunpeng.li@amd.com>

> ---
>  tests/amdgpu/amd_psr.c | 65 +++++++++++++++++++-----------------------
>  1 file changed, 30 insertions(+), 35 deletions(-)
> 
> diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
> index 5d190720..29982605 100644
> --- a/tests/amdgpu/amd_psr.c
> +++ b/tests/amdgpu/amd_psr.c
> @@ -56,12 +56,14 @@ typedef struct data {
>  	igt_pipe_crc_t *pipe_crc;
>  	igt_fb_t ov_fb[2];
>  	igt_fb_t pm_fb[2];
> +	igt_fb_t cs_fb;		/* cursor framebuffer */
>  	drmModeModeInfo *mode;
>  	enum pipe pipe_id;
>  	int fd;
>  	int debugfs_fd;
> -	int w;
> -	int h;
> +	int w, h;
> +	int pfb_w, pfb_h;
> +	int ofb_w, ofb_h;
>  } data_t;
>  
>  enum cursor_move {
> @@ -170,6 +172,10 @@ static void test_init(data_t *data)
>  
>  	data->w = data->mode->hdisplay;
>  	data->h = data->mode->vdisplay;
> +	data->ofb_w = data->w;
> +	data->ofb_h = data->h;
> +	data->pfb_w = data->w / 2;
> +	data->pfb_h = data->h / 2;
>  
>  	if (opt.visual_confirm) {
>  		/**
> @@ -308,7 +314,6 @@ static void run_check_psr(data_t *data, bool test_null_crtc) {
>  static void run_check_psr_su_mpo(data_t *data)
>  {
>  	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
> -	igt_fb_t ov_fb;		/* fb for overlay */
>  	igt_fb_t rect_fb[N_MPO_TEST_RECT_FB]; 	/* rectangle fbs for primary, emulate as video playback region */
>  	igt_fb_t ref_fb;	/* reference fb */
>  	igt_fb_t *flip_fb;
> @@ -341,28 +346,28 @@ static void run_check_psr_su_mpo(data_t *data)
>  	 * thus the overlay fb be initialized w/ ARGB pixel format to support blending
>  	 */
>  	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
> -			    1.0, 1.0, 1.0, &ov_fb);
> +			    1.0, 1.0, 1.0, &data->ov_fb[0]);
>  	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i) {
>  		cairo_t *cr;
>  		int strip_w = data->w / (2 * N_MPO_TEST_RECT_FB);
>  
> -		igt_create_fb(data->fd, data->w / 2, data->h / 2, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> +		igt_create_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
>  			      &rect_fb[i]);
>  		cr = igt_get_cairo_ctx(data->fd, &rect_fb[i]);
>  		igt_assert_f(cr, "Failed to get cairo context\n");
>  		/* background in black */
> -		igt_paint_color(cr, 0, 0, data->w / 2, data->h / 2, .0, .0, .0);
> +		igt_paint_color(cr, 0, 0, data->pfb_w, data->pfb_h, .0, .0, .0);
>  		/* foreground (megenta strip) */
> -		igt_paint_color(cr, i * strip_w, 0, strip_w, data->h / 2, 1.0, .0, 1.0);
> +		igt_paint_color(cr, i * strip_w, 0, strip_w, data->pfb_h, 1.0, .0, 1.0);
>  
>  		igt_put_cairo_ctx(cr);
>  	}
>  
>  	/* tie fbs to planes and set position/size/blending */
> -	igt_plane_set_fb(data->overlay, &ov_fb);
> +	igt_plane_set_fb(data->overlay, &data->ov_fb[0]);
>  	igt_plane_set_fb(data->primary, &rect_fb[0]);
>  	igt_plane_set_position(data->primary, 0, 0);
> -	igt_plane_set_size(data->primary, data->w / 2, data->h / 2);
> +	igt_plane_set_size(data->primary, data->pfb_w, data->pfb_h);
>  
>  	/**
>  	 * adjust alpha for vpb (primary plane) region in overlay
> @@ -375,7 +380,7 @@ static void run_check_psr_su_mpo(data_t *data)
>  	 * of each pixel in overlay corresponding to primary plane position/size
>  	 * to be zero.
>  	 */
> -	draw_color_alpha(&ov_fb, 0, 0, data->w / 2, data->h / 2, .5, .5, .5, .0);
> +	draw_color_alpha(&data->ov_fb[0], 0, 0, data->pfb_w, data->pfb_h, .5, .5, .5, .0);
>  
>  	igt_output_set_pipe(data->output, data->pipe_id);
>  	igt_display_commit_atomic(&data->display, 0, NULL);
> @@ -398,7 +403,7 @@ static void run_check_psr_su_mpo(data_t *data)
>  
>  	/* fini */
>  	igt_remove_fb(data->fd, &ref_fb);
> -	igt_remove_fb(data->fd, &ov_fb);
> +	igt_remove_fb(data->fd, &data->ov_fb[0]);
>  	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i)
>  		igt_remove_fb(data->fd, &rect_fb[i]);
>  	test_fini(data);
> @@ -438,17 +443,13 @@ static void panning_rect_fb(data_t *data, igt_fb_t *rect_fb, int rect_w, int rec
>  static void run_check_psr_su_ffu(data_t *data)
>  {
>  	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
> -	igt_fb_t rect_fb; 	/* rectangle fbs for primary */
>  	igt_fb_t ref_fb;	/* reference fb */
> -	int pb_w, pb_h;
>  
>  	/* skip the test run if no eDP sink detected */
>  	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
>  
>  	/* init */
>  	test_init(data);
> -	pb_w = data->w / 2;
> -	pb_h = data->h / 2;
>  
>  	/* run the test i.i.f. eDP panel supports and kernel driver both support PSR-SU  */
>  	igt_skip_on(!psr_su_supported(data));
> @@ -492,26 +493,26 @@ static void run_check_psr_su_ffu(data_t *data)
>  	/* step 1 */
>  	igt_create_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &data->ov_fb[0]);
>  	igt_create_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &data->ov_fb[1]);
> -	igt_create_color_fb(data->fd, pb_w, pb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> -			    1.0, .0, 1.0, &rect_fb); /* magenta primary */
> +	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> +			    1.0, .0, 1.0, &data->pm_fb[0]); /* magenta primary */
>  
>  	/* step 2 & 3 */
> -	panning_rect_fb(data, &rect_fb, pb_w, pb_h, 0, 0);
> +	panning_rect_fb(data, &data->pm_fb[0], data->pfb_w, data->pfb_h, 0, 0);
>  	sleep(5);
>  
>  	/* step 4 & 5 */
> -	panning_rect_fb(data, &rect_fb, pb_w, pb_h, pb_w / 2, pb_h / 2);
> +	panning_rect_fb(data, &data->pm_fb[0], data->pfb_w, data->pfb_h, data->pfb_w / 2, data->pfb_h / 2);
>  	sleep(5);
>  
>  	/* step 6 & 7 */
> -	panning_rect_fb(data, &rect_fb, pb_w, pb_h, pb_w, pb_h);
> +	panning_rect_fb(data, &data->pm_fb[0], data->pfb_w, data->pfb_h, data->pfb_w, data->pfb_h);
>  	sleep(5);
>  
>  	/* fini */
>  	igt_remove_fb(data->fd, &ref_fb);
>  	igt_remove_fb(data->fd, &data->ov_fb[0]);
>  	igt_remove_fb(data->fd, &data->ov_fb[1]);
> -	igt_remove_fb(data->fd, &rect_fb);
> +	igt_remove_fb(data->fd, &data->pm_fb[0]);
>  	test_fini(data);
>  }
>  
> @@ -556,21 +557,15 @@ static void test_cursor_movement(data_t *data, int iters, int cs_size, enum curs
>  static void run_check_psr_su_cursor(data_t *data, bool test_mpo)
>  {
>  	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
> -	igt_fb_t cs_fb;		/* cursor FB */
>  	const int cs_size = 128;
>  	const int delay_sec = 5; /* seconds */
>  	int frame_rate = 0;
> -	int pb_w, pb_h, ob_w, ob_h;
>  
>  	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
>  
>  	test_init(data);
>  	igt_skip_on(!psr_su_supported(data));
>  
> -	ob_w = data->w;
> -	ob_h = data->h;
> -	pb_w = data->w / 2;
> -	pb_h = data->h / 2;
>  	frame_rate = data->mode->vrefresh;
>  
>  	/*
> @@ -578,26 +573,26 @@ static void run_check_psr_su_cursor(data_t *data, bool test_mpo)
>  	 * - create primary FBs of quarter screen size of different colors (blue and green)
>  	 * - create overlay FB of screen size of white color (default alpha 1.0)
>  	 */
> -	igt_create_color_fb(data->fd, pb_w, pb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> +	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
>  			    .0, .0, 1.0, &data->pm_fb[0]);
> -	igt_create_color_fb(data->fd, pb_w, pb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> +	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
>  			    .0, 1.0, .0, &data->pm_fb[1]);
> -	igt_create_color_fb(data->fd, ob_w, ob_h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
> +	igt_create_color_fb(data->fd, data->ofb_w, data->ofb_h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
>  			    1.0, 1.0, 1.0, &data->ov_fb[0]);
>  
>  	/* cursor FB creation, draw cursor pattern/set alpha regions */
> -	igt_create_fb(data->fd, cs_size, cs_size, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &cs_fb);
> -	draw_color_cursor(&cs_fb, cs_size, 1.0, .0, 1.0);
> +	igt_create_fb(data->fd, cs_size, cs_size, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR, &data->cs_fb);
> +	draw_color_cursor(&data->cs_fb, cs_size, 1.0, .0, 1.0);
>  
>  	/*
>  	 * panning the primary plane at the top-left of screen
>  	 * set alpha region in overlay plane and set alpha to 0.0 to show primary plane
>  	 * set cursor plane and starting from position of (0, 0)
>  	 */ 
> -	draw_color_alpha(&data->ov_fb[0], 0, 0, pb_w, pb_h, 1.0, 1.0, 1.0, .0);
> +	draw_color_alpha(&data->ov_fb[0], 0, 0, data->pfb_w, data->pfb_h, 1.0, 1.0, 1.0, .0);
>  	igt_plane_set_fb(data->primary, &data->pm_fb[0]);
>  	igt_plane_set_fb(data->overlay, &data->ov_fb[0]);
> -	igt_plane_set_fb(data->cursor, &cs_fb);
> +	igt_plane_set_fb(data->cursor, &data->cs_fb);
>  	igt_plane_set_position(data->cursor, 0, 0);
>  
>  	igt_output_set_pipe(data->output, data->pipe_id);
> @@ -624,7 +619,7 @@ static void run_check_psr_su_cursor(data_t *data, bool test_mpo)
>  
>  	igt_remove_fb(data->fd, &data->pm_fb[0]);
>  	igt_remove_fb(data->fd, &data->pm_fb[1]);
> -	igt_remove_fb(data->fd, &cs_fb);
> +	igt_remove_fb(data->fd, &data->cs_fb);
>  	igt_remove_fb(data->fd, &data->ov_fb[0]);
>  	test_fini(data);
>  }

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [igt-dev] [PATCH 3/4] tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case
  2022-05-05 21:32 ` [igt-dev] [PATCH 3/4] tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case David Zhang
@ 2022-05-09 19:10   ` Leo
  0 siblings, 0 replies; 11+ messages in thread
From: Leo @ 2022-05-09 19:10 UTC (permalink / raw)
  To: David Zhang, igt-dev



On 2022-05-05 17:32, David Zhang wrote:
> [why]
> Current implementation to emulate the MPO video playback is via
> creating 20 framebuffers (FB) and each FB has a colorful strip
> pattern in a different position. From usrmode's view, in general
> it would not create so many FBs for primary plane. Instead, it
> only creates double or tripple buffers.
> 
> [how]
> - drop the 20 framebuffers in current implementation
> - use the double primary plane framebuffers defined in data struct
>   and update the strip pattern alternatively on the double FBs and
>   do page flip for each iteration
> 
> Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Jay Pillai <aurabindo.pillai@amd.com>
> Cc: Wayne Lin <wayne.lin@amd.com>
> 
> Signed-off-by: David Zhang <dingchen.zhang@amd.com>

Reviewed-by: Leo Li <sunpeng.li@amd.com>

> ---
>  tests/amdgpu/amd_psr.c | 76 +++++++++++++++++++++++++++---------------
>  1 file changed, 49 insertions(+), 27 deletions(-)
> 
> diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
> index 29982605..81ebebd3 100644
> --- a/tests/amdgpu/amd_psr.c
> +++ b/tests/amdgpu/amd_psr.c
> @@ -40,10 +40,11 @@ IGT_TEST_DESCRIPTION("Basic test for enabling Panel Self Refresh for eDP display
>  #define N_FLIPS 6
>  /* DMCUB takes some time to actually enable PSR. Worst case delay is 4 seconds */
>  #define PSR_SETTLE_DELAY 4
> -/* # of framebuffers for PSR-SU MPO test case to emulate video playback */
> -#ifndef N_MPO_TEST_RECT_FB
> -#define N_MPO_TEST_RECT_FB 20
> -#endif
> +
> +typedef struct {
> +	int x, y;
> +	int w, h;
> +} pos_t;
>  
>  /* Common test data. */
>  typedef struct data {
> @@ -138,6 +139,29 @@ static void draw_color_cursor(igt_fb_t *fb, int size, double r, double g, double
>  	igt_put_cairo_ctx(cr);
>  }
>  
> +/* update the given framebuffer and draw colorful strip in new position */
> +static void update_color_strip(igt_fb_t *fb, pos_t *old, pos_t *new, double r, double g, double b)
> +{
> +	cairo_t *cr;
> +
> +	if (!fb || !new || !old)
> +		return;
> +
> +	cr = igt_get_cairo_ctx(fb->fd, fb);
> +	igt_assert_f(cr, "Failed to get cairo context\n");
> +
> +	/**
> +	 * we'd draw the strip in the new position w/ given color
> +	 * and make the background of the framebuffer as black
> +	 * - render black BG in the old position of strip instead of rendering the whole FB
> +	 * - render colorful strip in the new position
> +	 */
> +	igt_paint_color(cr, old->x, old->y, old->w, old->h, .0, .0, .0);
> +	igt_paint_color(cr, new->x, new->y, new->w, new->h, r, g, b);
> +
> +	igt_put_cairo_ctx(cr);
> +}
> +
>  /* Common test setup. */
>  static void test_init(data_t *data)
>  {
> @@ -314,12 +338,12 @@ static void run_check_psr(data_t *data, bool test_null_crtc) {
>  static void run_check_psr_su_mpo(data_t *data)
>  {
>  	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
> -	igt_fb_t rect_fb[N_MPO_TEST_RECT_FB]; 	/* rectangle fbs for primary, emulate as video playback region */
>  	igt_fb_t ref_fb;	/* reference fb */
>  	igt_fb_t *flip_fb;
>  	int ret;
>  	const int run_sec = 5;
>  	int frame_rate = 0;
> +	pos_t old[2], new;
>  
>  	/* skip the test run if no eDP sink detected */
>  	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
> @@ -327,6 +351,10 @@ static void run_check_psr_su_mpo(data_t *data)
>  	/* init */
>  	test_init(data);
>  	frame_rate = data->mode->vrefresh;
> +	memset(&old, 0, sizeof(pos_t) * 2);
> +	memset(&new, 0, sizeof(pos_t));
> +	old[0].w = old[1].w = new.w = 30;
> +	old[0].h = old[1].h = new.h = data->pfb_h;
>  
>  	/* run the test i.i.f. eDP panel supports and kernel driver both support PSR-SU  */
>  	igt_skip_on(!psr_su_supported(data));
> @@ -347,25 +375,14 @@ static void run_check_psr_su_mpo(data_t *data)
>  	 */
>  	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
>  			    1.0, 1.0, 1.0, &data->ov_fb[0]);
> -	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i) {
> -		cairo_t *cr;
> -		int strip_w = data->w / (2 * N_MPO_TEST_RECT_FB);
> -
> -		igt_create_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> -			      &rect_fb[i]);
> -		cr = igt_get_cairo_ctx(data->fd, &rect_fb[i]);
> -		igt_assert_f(cr, "Failed to get cairo context\n");
> -		/* background in black */
> -		igt_paint_color(cr, 0, 0, data->pfb_w, data->pfb_h, .0, .0, .0);
> -		/* foreground (megenta strip) */
> -		igt_paint_color(cr, i * strip_w, 0, strip_w, data->pfb_h, 1.0, .0, 1.0);
> -
> -		igt_put_cairo_ctx(cr);
> -	}
> +	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> +			    .0, .0, .0, &data->pm_fb[0]);
> +	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> +			    .0, .0, .0, &data->pm_fb[1]);
>  
>  	/* tie fbs to planes and set position/size/blending */
>  	igt_plane_set_fb(data->overlay, &data->ov_fb[0]);
> -	igt_plane_set_fb(data->primary, &rect_fb[0]);
> +	igt_plane_set_fb(data->primary, &data->pm_fb[1]);
>  	igt_plane_set_position(data->primary, 0, 0);
>  	igt_plane_set_size(data->primary, data->pfb_w, data->pfb_h);
>  
> @@ -389,23 +406,28 @@ static void run_check_psr_su_mpo(data_t *data)
>  	igt_info("\n start flipping ...\n");
>  
>  	for (int i = 0; i < run_sec * frame_rate; ++i) {
> -		igt_info(" About to commit a primary plane (FB %d), loop %d \n", i % N_MPO_TEST_RECT_FB, i);
> -		flip_fb = &rect_fb[i % N_MPO_TEST_RECT_FB];
> +		flip_fb = &data->pm_fb[i & 1];
> +		/* draw the color strip onto primary plane FB */
> +		update_color_strip(flip_fb, &old[i & 1], &new, 1.0, .0, 1.0);
>  
>  		igt_plane_set_fb(data->primary, flip_fb);
>  		igt_output_set_pipe(data->output, data->pipe_id);
>  
> -		ret = drmModePageFlip(data->fd, data->output->config.crtc->crtc_id,
> -				      flip_fb->fb_id, DRM_MODE_PAGE_FLIP_EVENT, NULL);
> +		ret = igt_display_try_commit_atomic(&data->display, DRM_MODE_PAGE_FLIP_EVENT, NULL);
>  		igt_require(ret == 0);
>  		kmstest_wait_for_pageflip(data->fd);
> +
> +		/* update strip position */
> +		old[i & 1].x = new.x;
> +		new.x += 3;
> +		new.x = (new.x + new.w > data->pfb_w) ? 0 : new.x;
>  	}
>  
>  	/* fini */
>  	igt_remove_fb(data->fd, &ref_fb);
>  	igt_remove_fb(data->fd, &data->ov_fb[0]);
> -	for (int i = 0; i < N_MPO_TEST_RECT_FB; ++i)
> -		igt_remove_fb(data->fd, &rect_fb[i]);
> +	igt_remove_fb(data->fd, &data->pm_fb[0]);
> +	igt_remove_fb(data->fd, &data->pm_fb[1]);
>  	test_fini(data);
>  }
>  

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [igt-dev] [PATCH 4/4] tests/amdgpu/amd_psr: add PSR-SU scaling test cases
  2022-05-05 21:32 ` [igt-dev] [PATCH 4/4] tests/amdgpu/amd_psr: add PSR-SU scaling test cases David Zhang
@ 2022-05-09 20:27   ` Leo
  0 siblings, 0 replies; 11+ messages in thread
From: Leo @ 2022-05-09 20:27 UTC (permalink / raw)
  To: David Zhang, igt-dev



On 2022-05-05 17:32, David Zhang wrote:
> [why]
> We need test cases to validate PSR-SU disabled when a specific
> plane scaling occurs by visual confirm. From driver's perspective,
> any plane's height/width change detected, it would cause PSR-SU
> be disabled.
> 
> [how]
> - based on the existed MPO test case, we'd add two more input
>   arguments to the test function, i.e. one as flag indicating if
>   to test scaling, another as scaling ratio for the primary plane
> - start from 1/3 iteration in test run, scaling the primary plane
>   w/ the given ratio and update the overlay as well, and observe
>   if PSR-SU is disabled as expected by allowing some delay to
>   check
> - add two sub-test cases, one w/ scaling ratio 1.5, another 0.75
> 
> Cc: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Jay Pillai <aurabindo.pillai@amd.com>
> Cc: Wayne Lin <wayne.lin@amd.com>
> 
> Signed-off-by: David Zhang <dingchen.zhang@amd.com>

Reviewed-by: Leo Li <sunpeng.li@amd.com>

Thanks!
> ---
>  tests/amdgpu/amd_psr.c | 41 +++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 39 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/amdgpu/amd_psr.c b/tests/amdgpu/amd_psr.c
> index 81ebebd3..5ad8c7fe 100644
> --- a/tests/amdgpu/amd_psr.c
> +++ b/tests/amdgpu/amd_psr.c
> @@ -335,7 +335,7 @@ static void run_check_psr(data_t *data, bool test_null_crtc) {
>  	test_fini(data);
>  }
>  
> -static void run_check_psr_su_mpo(data_t *data)
> +static void run_check_psr_su_mpo(data_t *data, bool scaling, float scaling_ratio)
>  {
>  	int edp_idx = check_conn_type(data, DRM_MODE_CONNECTOR_eDP);
>  	igt_fb_t ref_fb;	/* reference fb */
> @@ -344,6 +344,7 @@ static void run_check_psr_su_mpo(data_t *data)
>  	const int run_sec = 5;
>  	int frame_rate = 0;
>  	pos_t old[2], new;
> +	int pm_w_scale, pm_h_scale;	/* primary plane width/heigh after scaling */
>  
>  	/* skip the test run if no eDP sink detected */
>  	igt_skip_on_f(edp_idx == -1, "no eDP connector found\n");
> @@ -355,6 +356,10 @@ static void run_check_psr_su_mpo(data_t *data)
>  	memset(&new, 0, sizeof(pos_t));
>  	old[0].w = old[1].w = new.w = 30;
>  	old[0].h = old[1].h = new.h = data->pfb_h;
> +	if (scaling) {
> +		pm_w_scale = (int) (data->pfb_w * scaling_ratio);
> +		pm_h_scale = (int) (data->pfb_h * scaling_ratio);
> +	}
>  
>  	/* run the test i.i.f. eDP panel supports and kernel driver both support PSR-SU  */
>  	igt_skip_on(!psr_su_supported(data));
> @@ -375,6 +380,8 @@ static void run_check_psr_su_mpo(data_t *data)
>  	 */
>  	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
>  			    1.0, 1.0, 1.0, &data->ov_fb[0]);
> +	igt_create_color_fb(data->fd, data->w, data->h, DRM_FORMAT_ARGB8888, DRM_FORMAT_MOD_LINEAR,
> +			    1.0, 1.0, 1.0, &data->ov_fb[1]);
>  	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
>  			    .0, .0, .0, &data->pm_fb[0]);
>  	igt_create_color_fb(data->fd, data->pfb_w, data->pfb_h, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR,
> @@ -398,6 +405,7 @@ static void run_check_psr_su_mpo(data_t *data)
>  	 * to be zero.
>  	 */
>  	draw_color_alpha(&data->ov_fb[0], 0, 0, data->pfb_w, data->pfb_h, .5, .5, .5, .0);
> +	draw_color_alpha(&data->ov_fb[1], 0, 0, pm_w_scale, pm_h_scale, .5, .5, .5, .0);
>  
>  	igt_output_set_pipe(data->output, data->pipe_id);
>  	igt_display_commit_atomic(&data->display, 0, NULL);
> @@ -411,12 +419,32 @@ static void run_check_psr_su_mpo(data_t *data)
>  		update_color_strip(flip_fb, &old[i & 1], &new, 1.0, .0, 1.0);
>  
>  		igt_plane_set_fb(data->primary, flip_fb);
> +		igt_plane_set_position(data->primary, 0, 0);
> +		/* do scaling at 1/3 iteration, update both primary/overlay */
> +		if (scaling && (i >= run_sec * frame_rate / 3)) {
> +			igt_plane_set_fb(data->overlay, &data->ov_fb[1]);
> +			igt_plane_set_size(data->primary, pm_w_scale, pm_h_scale);
> +		}
>  		igt_output_set_pipe(data->output, data->pipe_id);
>  
>  		ret = igt_display_try_commit_atomic(&data->display, DRM_MODE_PAGE_FLIP_EVENT, NULL);
>  		igt_require(ret == 0);
>  		kmstest_wait_for_pageflip(data->fd);
>  
> +		/**
> +		 * allow some time to observe visual confirm of PSR-SU disabled
> +		 * once the plane scaling occurs, i.e. green bar on the right side
> +		 * screen disappears. From driver's view, the PSR-SU would be
> +		 * disabled when the specific plane height/width detected changed.
> +		 * and w/ the test run continues, each MPO FB is scaled to the same
> +		 * size as the first scaled frame, then the PSR-SU is expected to
> +		 * be re-enabled and green bar should be appear again if visual
> +		 * confirm debug option is ON.
> +		 */
> +		if (scaling && (i == run_sec * frame_rate / 3)) {
> +			sleep(2);
> +		}
> +
>  		/* update strip position */
>  		old[i & 1].x = new.x;
>  		new.x += 3;
> @@ -426,6 +454,7 @@ static void run_check_psr_su_mpo(data_t *data)
>  	/* fini */
>  	igt_remove_fb(data->fd, &ref_fb);
>  	igt_remove_fb(data->fd, &data->ov_fb[0]);
> +	igt_remove_fb(data->fd, &data->ov_fb[1]);
>  	igt_remove_fb(data->fd, &data->pm_fb[0]);
>  	igt_remove_fb(data->fd, &data->pm_fb[1]);
>  	test_fini(data);
> @@ -703,7 +732,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>  
>  	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
>  		     "and to imitate Multiplane Overlay video playback scenario");
> -	igt_subtest("psr_su_mpo") run_check_psr_su_mpo(&data);
> +	igt_subtest("psr_su_mpo") run_check_psr_su_mpo(&data, false, .0);
>  
>  	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
>  		     "and to validate Full Frame Update scenario");
> @@ -717,6 +746,14 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>  		     "and to validate cursor movement + MPO scenario");
>  	igt_subtest("psr_su_cursor_mpo") run_check_psr_su_cursor(&data, true);
>  
> +	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
> +		     "and to validate PSR SU disable/re-enable w/ primary scaling ratio 1.5");
> +	igt_subtest("psr_su_mpo_scaling_1_5") run_check_psr_su_mpo(&data, true, 1.5);
> +
> +	igt_describe("Test to validate PSR SU enablement with Visual Confirm "
> +		     "and to validate PSR SU disable/re-enable w/ primary scaling ratio 0.75");
> +	igt_subtest("psr_su_mpo_scaling_0_75") run_check_psr_su_mpo(&data, true, .75);
> +
>  	igt_fixture
>  	{
>  		if (opt.visual_confirm) {

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2022-05-09 20:27 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-05 21:32 [igt-dev] [PATCH 0/4] amdgpu PSR-SU scaling tests and some fix David Zhang
2022-05-05 21:32 ` [igt-dev] [PATCH 1/4] tests/amdgpu/amd_psr: some fix for PSR-SU MPO test case David Zhang
2022-05-09 18:47   ` Leo
2022-05-05 21:32 ` [igt-dev] [PATCH 2/4] tests/amdgpu/amd_psr: clean-up the code David Zhang
2022-05-09 18:57   ` Leo
2022-05-05 21:32 ` [igt-dev] [PATCH 3/4] tests/amdgpu/amd_psr: use double framebuffers to emulate MPO case David Zhang
2022-05-09 19:10   ` Leo
2022-05-05 21:32 ` [igt-dev] [PATCH 4/4] tests/amdgpu/amd_psr: add PSR-SU scaling test cases David Zhang
2022-05-09 20:27   ` Leo
2022-05-05 22:31 ` [igt-dev] ✓ Fi.CI.BAT: success for amdgpu PSR-SU scaling tests and some fix Patchwork
2022-05-06  1:16 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.