* [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property
@ 2021-11-09 19:55 Jeevan B
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied Jeevan B
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: Jeevan B @ 2021-11-09 19:55 UTC (permalink / raw)
To: igt-dev; +Cc: daniel, petri.latvala
Change kms_psr2_sf test design, rename igt_debug_manual_check, patch the igt
functions igt_debug_wait_for_keypress() to assert if "all" is supplied and
change testcase design and add simple test cases to use FB_DAMAGE_CLIPS plane property.
Deepak Rawat (1):
tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane
property
Jeevan B (2):
lib/igt_aux: Rename igt_debug_manual_check and assert check if all is
supplied
tests/kms_psr2_sf: Change testcase design
lib/igt_aux.c | 9 +-
lib/igt_aux.h | 2 +-
tests/i915/kms_dsc.c | 2 +-
tests/i915/kms_psr.c | 2 +-
tests/i915/kms_psr2_sf.c | 28 ++---
tests/kms_atomic.c | 232 +++++++++++++++++++++++++++++++++++++++
6 files changed, 255 insertions(+), 20 deletions(-)
--
2.19.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied
2021-11-09 19:55 [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property Jeevan B
@ 2021-11-09 19:55 ` Jeevan B
2021-11-10 12:03 ` Petri Latvala
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 2/3] tests/kms_psr2_sf: Change testcase design Jeevan B
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Jeevan B @ 2021-11-09 19:55 UTC (permalink / raw)
To: igt-dev; +Cc: daniel, petri.latvala
rename igt_debug_manual_check and patch the igt function
igt_debug_wait_for_keypress() to assert if "all" is supplied.
v2: calling igt_debug_wait_for_keypress() with "all" will assert.
v3: Change igt_assert to igt_assert_f for adding clear log message.
Signed-off-by: Jeevan B <jeevan.b@intel.com>
---
lib/igt_aux.c | 9 ++++++---
lib/igt_aux.h | 2 +-
tests/i915/kms_dsc.c | 2 +-
tests/i915/kms_psr.c | 2 +-
tests/i915/kms_psr2_sf.c | 2 +-
5 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/lib/igt_aux.c b/lib/igt_aux.c
index 2445e483..c0e5b01a 100644
--- a/lib/igt_aux.c
+++ b/lib/igt_aux.c
@@ -972,7 +972,7 @@ void igt_drop_root(void)
* Waits for a key press when run interactively and when the corresponding debug
* var is set in the --interactive-debug=$var variable. Multiple keys
* can be specified as a comma-separated list or alternatively "all" if a wait
- * should happen for all cases.
+ * should happen for all cases. Calling this fucntion with "all" will assert.
*
* When not connected to a terminal interactive_debug is ignored
* and execution immediately continues.
@@ -993,6 +993,9 @@ void igt_debug_wait_for_keypress(const char *var)
if (!igt_interactive_debug)
return;
+ if (strstr(var, "all"))
+ igt_assert_f(false, "Bug in test: Do not call igt_debug_wait_for_keypress with \"all\"\n");
+
if (!strstr(igt_interactive_debug, var) &&
!strstr(igt_interactive_debug, "all"))
return;
@@ -1008,7 +1011,7 @@ void igt_debug_wait_for_keypress(const char *var)
}
/**
- * igt_debug_manual_check:
+ * igt_debug_interactive_mode_check:
* @var: var lookup to to enable this wait
* @expected: message to be printed as expected behaviour before wait for keys Y/n
*
@@ -1028,7 +1031,7 @@ void igt_debug_wait_for_keypress(const char *var)
*
* Force test fail when N/n is pressed.
*/
-void igt_debug_manual_check(const char *var, const char *expected)
+void igt_debug_interactive_mode_check(const char *var, const char *expected)
{
struct termios oldt, newt;
char key;
diff --git a/lib/igt_aux.h b/lib/igt_aux.h
index a3c477ab..9f2588ae 100644
--- a/lib/igt_aux.h
+++ b/lib/igt_aux.h
@@ -195,7 +195,7 @@ int igt_get_autoresume_delay(enum igt_suspend_state state);
void igt_drop_root(void);
void igt_debug_wait_for_keypress(const char *var);
-void igt_debug_manual_check(const char *var, const char *expected);
+void igt_debug_interactive_mode_check(const char *var, const char *expected);
/* sysinfo cross-arch wrappers from intel_os.c */
diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
index dcfe8b96..0292ed34 100644
--- a/tests/i915/kms_dsc.c
+++ b/tests/i915/kms_dsc.c
@@ -72,7 +72,7 @@ int force_dsc_restore_fd = -1;
static inline void manual(const char *expected)
{
- igt_debug_manual_check("all", expected);
+ igt_debug_interactive_mode_check("all", expected);
}
static void force_dsc_enable(data_t *data)
diff --git a/tests/i915/kms_psr.c b/tests/i915/kms_psr.c
index 83b8b709..480e2cc7 100644
--- a/tests/i915/kms_psr.c
+++ b/tests/i915/kms_psr.c
@@ -246,7 +246,7 @@ static bool psr_enable_if_enabled(data_t *data)
static inline void manual(const char *expected)
{
- igt_debug_manual_check("all", expected);
+ igt_debug_interactive_mode_check("all", expected);
}
static bool drrs_disabled(data_t *data)
diff --git a/tests/i915/kms_psr2_sf.c b/tests/i915/kms_psr2_sf.c
index a50c3e14..dca2d030 100644
--- a/tests/i915/kms_psr2_sf.c
+++ b/tests/i915/kms_psr2_sf.c
@@ -331,7 +331,7 @@ static void prepare(data_t *data)
static inline void manual(const char *expected)
{
- igt_debug_manual_check("all", expected);
+ igt_debug_interactive_mode_check("all", expected);
}
static void plane_update_expected_output(int plane_type, int box_count)
--
2.19.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [igt-dev] [PATCH i-g-t v3 2/3] tests/kms_psr2_sf: Change testcase design
2021-11-09 19:55 [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property Jeevan B
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied Jeevan B
@ 2021-11-09 19:55 ` Jeevan B
2021-11-10 12:04 ` Petri Latvala
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 3/3] tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane property Jeevan B
` (2 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Jeevan B @ 2021-11-09 19:55 UTC (permalink / raw)
To: igt-dev; +Cc: daniel, petri.latvala
Change testcase design so that it avoids new subtest for each block position.
Signed-off-by: Jeevan B <jeevan.b@intel.com>
---
tests/i915/kms_psr2_sf.c | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/tests/i915/kms_psr2_sf.c b/tests/i915/kms_psr2_sf.c
index dca2d030..7f88b514 100644
--- a/tests/i915/kms_psr2_sf.c
+++ b/tests/i915/kms_psr2_sf.c
@@ -582,9 +582,9 @@ igt_main
}
/* Verify primary plane selective fetch */
- for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
- igt_describe("Test that selective fetch works on primary plane");
- igt_subtest_f("primary-%s-sf-dmg-area-%d", op_str(data.op), i) {
+ igt_describe("Test that selective fetch works on primary plane");
+ igt_subtest_f("primary-%s-sf-dmg-area", op_str(data.op)) {
+ for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
data.damage_area_count = i;
data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
prepare(&data);
@@ -594,9 +594,9 @@ igt_main
}
/* Verify overlay plane selective fetch */
- for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
- igt_describe("Test that selective fetch works on overlay plane");
- igt_subtest_f("overlay-%s-sf-dmg-area-%d", op_str(data.op), i) {
+ igt_describe("Test that selective fetch works on overlay plane");
+ igt_subtest_f("overlay-%s-sf-dmg-area", op_str(data.op)) {
+ for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
data.damage_area_count = i;
data.test_plane_id = DRM_PLANE_TYPE_OVERLAY;
prepare(&data);
@@ -618,9 +618,9 @@ igt_main
/* Only for overlay plane */
data.op = PLANE_MOVE;
/* Verify overlay plane move selective fetch */
- for (i = POS_TOP_LEFT; i <= POS_BOTTOM_RIGHT ; i++) {
- igt_describe("Test that selective fetch works on moving overlay plane");
- igt_subtest_f("%s-sf-dmg-area-%d", op_str(data.op), i) {
+ igt_describe("Test that selective fetch works on moving overlay plane");
+ igt_subtest_f("%s-sf-dmg-area", op_str(data.op)) {
+ for (i = POS_TOP_LEFT; i <= POS_BOTTOM_RIGHT ; i++) {
data.pos = i;
data.test_plane_id = DRM_PLANE_TYPE_OVERLAY;
prepare(&data);
@@ -631,10 +631,10 @@ igt_main
/* Verify primary plane selective fetch with overplay plane blended */
data.op = OVERLAY_PRIM_UPDATE;
- for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
- igt_describe("Test that selective fetch works on primary plane "
- "with blended overlay plane");
- igt_subtest_f("%s-sf-dmg-area-%d", op_str(data.op), i) {
+ igt_describe("Test that selective fetch works on primary plane "
+ "with blended overlay plane");
+ igt_subtest_f("%s-sf-dmg-area", op_str(data.op)) {
+ for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
data.damage_area_count = i;
data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
prepare(&data);
--
2.19.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [igt-dev] [PATCH i-g-t v3 3/3] tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane property
2021-11-09 19:55 [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property Jeevan B
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied Jeevan B
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 2/3] tests/kms_psr2_sf: Change testcase design Jeevan B
@ 2021-11-09 19:55 ` Jeevan B
2021-11-23 11:33 ` Hogander, Jouni
2021-11-09 20:44 ` [igt-dev] ✓ Fi.CI.BAT: success for Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3) Patchwork
2021-11-09 21:50 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
4 siblings, 1 reply; 9+ messages in thread
From: Jeevan B @ 2021-11-09 19:55 UTC (permalink / raw)
To: igt-dev; +Cc: daniel, Deepak Rawat, petri.latvala
From: Deepak Rawat <drawat@vmware.com>
Some simple test cases to use FB_DAMAGE_CLIPS plane property.
Signed-off-by: Deepak Rawat <drawat@vmware.com>
Signed-off-by: Jeevan B <jeevan.b@intel.com>
---
tests/kms_atomic.c | 232 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 232 insertions(+)
diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
index 1657624e..4b7b6d38 100644
--- a/tests/kms_atomic.c
+++ b/tests/kms_atomic.c
@@ -62,6 +62,25 @@ enum kms_atomic_check_relax {
PLANE_RELAX_FB = (1 << 1)
};
+/* signed32 drm_mode_rect declared here for use with drm damage for page-flip */
+struct damage_rect {
+ int x1;
+ int y1;
+ int x2;
+ int y2;
+};
+
+static inline int damage_rect_width(struct damage_rect *r)
+{
+ return r->x2 - r->x1;
+}
+
+static inline int damage_rect_height(struct damage_rect *r)
+{
+ return r->y2 - r->y1;
+}
+
+
static bool plane_filter(enum igt_atomic_plane_properties prop)
{
if ((1 << prop) & IGT_PLANE_COORD_CHANGED_MASK)
@@ -1060,6 +1079,210 @@ static void atomic_invalid_params(igt_pipe_t *pipe,
do_ioctl_err(display->drm_fd, DRM_IOCTL_MODE_ATOMIC, &ioc, EFAULT);
}
+static void atomic_plane_damage(igt_pipe_t *pipe, igt_plane_t *plane, struct igt_fb *fb)
+{
+ struct damage_rect *damage;
+ struct igt_fb fb_1, fb_2;
+ cairo_t *cr_1, *cr_2;
+
+ damage = malloc(sizeof(*damage) * 2);
+ igt_assert(damage);
+
+ /* Color fb with white rect at center */
+ igt_create_color_fb(pipe->display->drm_fd, fb->width, fb->height,
+ fb->drm_format, I915_TILING_NONE, 0.2, 0.2, 0.2,
+ &fb_1);
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ igt_paint_color(cr_1, fb->width/4, fb->height/4, fb->width/2,
+ fb->height/2, 1.0, 1.0, 1.0);
+ igt_put_cairo_ctx(cr_1);
+
+ /*
+ * Flip the primary plane to new color fb using atomic API and check the
+ * state.
+ */
+ igt_plane_set_fb(plane, &fb_1);
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /*
+ * Change the color of top left clip from center and issue plane update
+ * with damage and verify the state.
+ */
+ damage[0].x1 = 0;
+ damage[0].y1 = 0;
+ damage[0].x2 = fb->width/2;
+ damage[0].y2 = fb->height/2;
+
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
+ damage_rect_width(&damage[0]),
+ damage_rect_height(&damage[0]), 1.0, 0, 0);
+ igt_put_cairo_ctx(cr_1);
+
+ igt_plane_set_fb(plane, &fb_1);
+ igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS, damage,
+ sizeof(*damage));
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /*
+ * Change the color of top left and bottom right clip from center and
+ * issue plane update with damage and verify the state.
+ */
+ igt_create_color_fb(pipe->display->drm_fd, fb->width, fb->height,
+ fb->drm_format, I915_TILING_NONE, 0.2, 0.2, 0.2,
+ &fb_2);
+
+ damage[0].x1 = fb->width/2;
+ damage[0].y1 = 0;
+ damage[0].x2 = fb->width;
+ damage[0].y2 = fb->height/2;
+
+ cr_2 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_2);
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ cairo_set_source_surface(cr_2, fb_1.cairo_surface, 0, 0);
+ cairo_paint(cr_2);
+ igt_paint_color(cr_2, damage[0].x1, damage[0].y1,
+ damage_rect_width(&damage[0]),
+ damage_rect_height(&damage[0]), 0, 1.0, 0);
+ igt_put_cairo_ctx(cr_1);
+ igt_put_cairo_ctx(cr_2);
+ igt_plane_set_fb(plane, &fb_2);
+ igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS, damage,
+ sizeof(*damage));
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /*
+ * Issue plane update with damage with a clip outside of plane src.
+ * NOTE: This will result in no update on plane as damage is outside, so
+ * will see no change on the screen.
+ */
+ /* Reszie fb_1 to be bigger than plane */
+ igt_remove_fb(pipe->display->drm_fd, &fb_1);
+ igt_create_color_fb(pipe->display->drm_fd, fb->width * 2, fb->height,
+ fb->drm_format, I915_TILING_NONE, 0.2, 0.2, 0.2,
+ &fb_1);
+
+ damage[0].x1 = fb->width;
+ damage[0].y1 = 0;
+ damage[0].x2 = fb->width + fb->width/2;
+ damage[0].y2 = fb->height/2;
+
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ cr_2 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_2);
+ cairo_set_source_surface(cr_1, fb_2.cairo_surface, 0, 0);
+ cairo_paint(cr_1);
+ igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
+ damage_rect_width(&damage[0]),
+ damage_rect_height(&damage[0]), 0, 1.0, 0);
+ igt_put_cairo_ctx(cr_2);
+ igt_put_cairo_ctx(cr_1);
+ igt_plane_set_fb(plane, &fb_1);
+ igt_plane_set_size(plane, fb->width, fb->height);
+ igt_fb_set_position(&fb_1, plane, 0, 0);
+ igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
+ igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS, damage,
+ sizeof(*damage));
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /*
+ * Issue a plane update with damage with a clip that overlap with plane
+ * src (Top right from center extending outside src in below case).
+ * NOTE: Here drm core should take care of intersecting the clip to
+ * plane src.
+ */
+ damage[0].x1 = fb->width/2;
+ damage[0].y1 = 0;
+ damage[0].x2 = fb->width/2 + fb->width;
+ damage[0].y2 = fb->height/2;
+
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
+ damage_rect_width(&damage[0]),
+ damage_rect_height(&damage[0]), 1.0, 1.0, 0);
+ igt_put_cairo_ctx(cr_1);
+ igt_plane_set_fb(plane, &fb_1);
+ igt_plane_set_size(plane, fb->width, fb->height);
+ igt_fb_set_position(&fb_1, plane, 0, 0);
+ igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
+ igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS, damage,
+ sizeof(*damage));
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /*
+ * Issue a plane update with damage with two clips one inside plane src
+ * and one outside
+ * NOTE: This will result in plane update with clip inside plane src.
+ */
+ damage[0].x1 = 0;
+ damage[0].y1 = fb->height/2;
+ damage[0].x2 = fb->width/2;
+ damage[0].y2 = fb->height;
+
+ damage[1].x1 = fb->width + fb->width/2;
+ damage[1].y1 = fb->height/2;
+ damage[1].x2 = fb->width * 2;
+ damage[1].y2 = fb->height;
+
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
+ damage_rect_width(&damage[0]),
+ damage_rect_height(&damage[0]), 0, 1.0, 1.0);
+ igt_paint_color(cr_1, damage[1].x1, damage[1].y1,
+ damage_rect_width(&damage[1]),
+ damage_rect_height(&damage[1]), 0, 1.0, 0);
+ igt_put_cairo_ctx(cr_1);
+ igt_plane_set_fb(plane, &fb_1);
+ igt_plane_set_size(plane, fb->width, fb->height);
+ igt_fb_set_position(&fb_1, plane, 0, 0);
+ igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
+ igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS, damage,
+ sizeof(*damage) * 2);
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /*
+ * Issue a plane update with overlapping damage clips. White rect in
+ * center overlap partially with top left red rect.
+ * NOTE: Drm core does not error for overlapping damage clips so if any
+ * driver does not support overlapping should have their own
+ * validations.
+ */
+ damage[0].x1 = 0;
+ damage[0].y1 = 0;
+ damage[0].x2 = fb->width/2;
+ damage[0].y2 = fb->height/2;
+
+ damage[1].x1 = fb->width/4;
+ damage[1].y1 = fb->height/4;
+ damage[1].x2 = fb->width/4 + fb->width/2;
+ damage[1].y2 = fb->height/4 + fb->height/2;
+
+ cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
+ igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
+ damage_rect_width(&damage[0]),
+ damage_rect_height(&damage[0]), 1.0, 0, 0);
+ igt_paint_color(cr_1, damage[1].x1, damage[1].y1,
+ damage_rect_width(&damage[1]),
+ damage_rect_height(&damage[1]), 1.0, 1.0, 1.0);
+ igt_put_cairo_ctx(cr_1);
+ igt_plane_set_fb(plane, &fb_1);
+ igt_plane_set_size(plane, fb->width, fb->height);
+ igt_fb_set_position(&fb_1, plane, 0, 0);
+ igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
+ igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS, damage,
+ sizeof(*damage) * 2);
+ crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /* Restore the primary plane */
+ igt_plane_set_fb(plane, fb);
+ plane_commit(plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
+
+ /* Remove the fb created for this test */
+ igt_remove_fb(pipe->display->drm_fd, &fb_1);
+ igt_remove_fb(pipe->display->drm_fd, &fb_2);
+
+ free(damage);
+}
+
static void atomic_setup(igt_display_t *display, enum pipe pipe, igt_output_t *output, igt_plane_t *primary, struct igt_fb *fb)
{
igt_output_set_pipe(output, pipe);
@@ -1219,6 +1442,15 @@ igt_main
atomic_invalid_params(pipe_obj, primary, output, &fb);
}
+ igt_describe("Simple test cases to use FB_DAMAGE_CLIPS plane property");
+ igt_subtest("atomic_plane_damage") {
+ igt_require(igt_plane_has_prop(primary, IGT_PLANE_FB_DAMAGE_CLIPS));
+
+ atomic_setup(&display, pipe, output, primary, &fb);
+
+ atomic_plane_damage(pipe_obj, primary, &fb);
+ }
+
igt_fixture {
atomic_clear(&display, pipe, primary, output);
igt_remove_fb(display.drm_fd, &fb);
--
2.19.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3)
2021-11-09 19:55 [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property Jeevan B
` (2 preceding siblings ...)
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 3/3] tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane property Jeevan B
@ 2021-11-09 20:44 ` Patchwork
2021-11-09 21:50 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2021-11-09 20:44 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 6733 bytes --]
== Series Details ==
Series: Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3)
URL : https://patchwork.freedesktop.org/series/94883/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_10858 -> IGTPW_6386
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/index.html
Participating hosts (36 -> 31)
------------------------------
Additional (1): fi-tgl-1115g4
Missing (6): fi-kbl-soraka bat-dg1-6 fi-tgl-u2 fi-bsw-cyan bat-adlp-4 fi-ctg-p8600
Known issues
------------
Here are the changes found in IGTPW_6386 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@query-info:
- fi-tgl-1115g4: NOTRUN -> [SKIP][1] ([fdo#109315])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@amdgpu/amd_basic@query-info.html
* igt@amdgpu/amd_cs_nop@nop-gfx0:
- fi-tgl-1115g4: NOTRUN -> [SKIP][2] ([fdo#109315] / [i915#2575]) +16 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@amdgpu/amd_cs_nop@nop-gfx0.html
* igt@amdgpu/amd_cs_nop@sync-fork-compute0:
- fi-snb-2600: NOTRUN -> [SKIP][3] ([fdo#109271]) +17 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-snb-2600/igt@amdgpu/amd_cs_nop@sync-fork-compute0.html
* igt@gem_huc_copy@huc-copy:
- fi-tgl-1115g4: NOTRUN -> [SKIP][4] ([i915#2190])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@gem_huc_copy@huc-copy.html
* igt@i915_pm_backlight@basic-brightness:
- fi-tgl-1115g4: NOTRUN -> [SKIP][5] ([i915#1155])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@i915_pm_backlight@basic-brightness.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-tgl-1115g4: NOTRUN -> [SKIP][6] ([fdo#111827]) +8 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-tgl-1115g4: NOTRUN -> [SKIP][7] ([i915#4103]) +1 similar issue
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_force_connector_basic@force-load-detect:
- fi-tgl-1115g4: NOTRUN -> [SKIP][8] ([fdo#109285])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_psr@primary_mmap_gtt:
- fi-tgl-1115g4: NOTRUN -> [SKIP][9] ([i915#1072]) +3 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@kms_psr@primary_mmap_gtt.html
* igt@prime_vgem@basic-userptr:
- fi-tgl-1115g4: NOTRUN -> [SKIP][10] ([i915#3301])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-tgl-1115g4/igt@prime_vgem@basic-userptr.html
* igt@runner@aborted:
- fi-bdw-5557u: NOTRUN -> [FAIL][11] ([i915#1602] / [i915#2426] / [i915#4312])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-bdw-5557u/igt@runner@aborted.html
#### Possible fixes ####
* igt@i915_selftest@live@hangcheck:
- fi-snb-2600: [INCOMPLETE][12] ([i915#3921]) -> [PASS][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/fi-snb-2600/igt@i915_selftest@live@hangcheck.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-snb-2600/igt@i915_selftest@live@hangcheck.html
* igt@kms_frontbuffer_tracking@basic:
- fi-cml-u2: [DMESG-WARN][14] ([i915#4269]) -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/fi-cml-u2/igt@kms_frontbuffer_tracking@basic.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/fi-cml-u2/igt@kms_frontbuffer_tracking@basic.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[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#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2426]: https://gitlab.freedesktop.org/drm/intel/issues/2426
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3921]: https://gitlab.freedesktop.org/drm/intel/issues/3921
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4269]: https://gitlab.freedesktop.org/drm/intel/issues/4269
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_6275 -> IGTPW_6386
CI-20190529: 20190529
CI_DRM_10858: 241dcaaa2bcb6503179c9a01194b399052c7e9d1 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_6386: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/index.html
IGT_6275: 6d172a5cf51ffff5f2780e2837860d613db5067f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Testlist changes ==
+igt@kms_atomic@atomic_plane_damage
+igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area
+igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area
+igt@kms_psr2_sf@plane-move-sf-dmg-area
+igt@kms_psr2_sf@primary-plane-update-sf-dmg-area
-igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1
-igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-2
-igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-3
-igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4
-igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-5
-igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-1
-igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-2
-igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3
-igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-4
-igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-5
-igt@kms_psr2_sf@plane-move-sf-dmg-area-0
-igt@kms_psr2_sf@plane-move-sf-dmg-area-1
-igt@kms_psr2_sf@plane-move-sf-dmg-area-2
-igt@kms_psr2_sf@plane-move-sf-dmg-area-3
-igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1
-igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2
-igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-3
-igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-4
-igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/index.html
[-- Attachment #2: Type: text/html, Size: 7866 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3)
2021-11-09 19:55 [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property Jeevan B
` (3 preceding siblings ...)
2021-11-09 20:44 ` [igt-dev] ✓ Fi.CI.BAT: success for Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3) Patchwork
@ 2021-11-09 21:50 ` Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2021-11-09 21:50 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 30297 bytes --]
== Series Details ==
Series: Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3)
URL : https://patchwork.freedesktop.org/series/94883/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_10858_full -> IGTPW_6386_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/index.html
Participating hosts (10 -> 7)
------------------------------
Missing (3): pig-skl-6260u pig-glk-j5005 shard-rkl
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_6386_full:
### IGT changes ###
#### Possible regressions ####
* {igt@kms_psr2_sf@primary-plane-update-sf-dmg-area} (NEW):
- shard-iclb: NOTRUN -> [SKIP][1] +4 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb7/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area.html
- shard-tglb: NOTRUN -> [SKIP][2] +3 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area.html
New tests
---------
New tests have been introduced between CI_DRM_10858_full and IGTPW_6386_full:
### New IGT tests (5) ###
* igt@kms_atomic@atomic_plane_damage:
- Statuses : 1 pass(s) 3 skip(s)
- Exec time: [0.0, 0.25] s
* igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area:
- Statuses : 6 skip(s)
- Exec time: [0.0] s
* igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
- Statuses : 6 skip(s)
- Exec time: [0.0] s
* igt@kms_psr2_sf@plane-move-sf-dmg-area:
- Statuses : 6 skip(s)
- Exec time: [0.0] s
* igt@kms_psr2_sf@primary-plane-update-sf-dmg-area:
- Statuses : 6 skip(s)
- Exec time: [0.0] s
Known issues
------------
Here are the changes found in IGTPW_6386_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@feature_discovery@chamelium:
- shard-tglb: NOTRUN -> [SKIP][3] ([fdo#111827])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb2/igt@feature_discovery@chamelium.html
* igt@gem_create@create-massive:
- shard-apl: NOTRUN -> [DMESG-WARN][4] ([i915#3002])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl4/igt@gem_create@create-massive.html
* igt@gem_ctx_persistence@legacy-engines-hostile-preempt:
- shard-snb: NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#1099])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-snb6/igt@gem_ctx_persistence@legacy-engines-hostile-preempt.html
* igt@gem_ctx_sseu@engines:
- shard-tglb: NOTRUN -> [SKIP][6] ([i915#280])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@gem_ctx_sseu@engines.html
* igt@gem_exec_fair@basic-deadline:
- shard-apl: NOTRUN -> [FAIL][7] ([i915#2846])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl8/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-none-rrul@rcs0:
- shard-iclb: NOTRUN -> [FAIL][8] ([i915#2852])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb5/igt@gem_exec_fair@basic-none-rrul@rcs0.html
- shard-tglb: NOTRUN -> [FAIL][9] ([i915#2842])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb3/igt@gem_exec_fair@basic-none-rrul@rcs0.html
* igt@gem_exec_fair@basic-pace@bcs0:
- shard-tglb: [PASS][10] -> [FAIL][11] ([i915#2842]) +1 similar issue
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-tglb8/igt@gem_exec_fair@basic-pace@bcs0.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@gem_exec_fair@basic-pace@bcs0.html
* igt@gem_exec_fair@basic-pace@rcs0:
- shard-kbl: [PASS][12] -> [FAIL][13] ([i915#2842]) +1 similar issue
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-kbl3/igt@gem_exec_fair@basic-pace@rcs0.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl6/igt@gem_exec_fair@basic-pace@rcs0.html
* igt@gem_exec_fair@basic-pace@vecs0:
- shard-glk: [PASS][14] -> [FAIL][15] ([i915#2842]) +3 similar issues
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-glk1/igt@gem_exec_fair@basic-pace@vecs0.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk6/igt@gem_exec_fair@basic-pace@vecs0.html
- shard-iclb: [PASS][16] -> [FAIL][17] ([i915#2842])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb3/igt@gem_exec_fair@basic-pace@vecs0.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb3/igt@gem_exec_fair@basic-pace@vecs0.html
* igt@gem_huc_copy@huc-copy:
- shard-tglb: [PASS][18] -> [SKIP][19] ([i915#2190])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-tglb3/igt@gem_huc_copy@huc-copy.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@gem_huc_copy@huc-copy.html
* igt@gem_pxp@regular-baseline-src-copy-readible:
- shard-tglb: NOTRUN -> [SKIP][20] ([i915#4270]) +6 similar issues
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@gem_pxp@regular-baseline-src-copy-readible.html
* igt@gem_pxp@verify-pxp-stale-buf-execution:
- shard-iclb: NOTRUN -> [SKIP][21] ([i915#4270])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb2/igt@gem_pxp@verify-pxp-stale-buf-execution.html
* igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs:
- shard-iclb: NOTRUN -> [SKIP][22] ([i915#768]) +1 similar issue
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb2/igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs.html
* igt@gem_userptr_blits@coherency-unsync:
- shard-iclb: NOTRUN -> [SKIP][23] ([i915#3297])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb3/igt@gem_userptr_blits@coherency-unsync.html
* igt@gem_userptr_blits@dmabuf-unsync:
- shard-tglb: NOTRUN -> [SKIP][24] ([i915#3297])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb8/igt@gem_userptr_blits@dmabuf-unsync.html
* igt@gem_workarounds@suspend-resume-fd:
- shard-kbl: NOTRUN -> [DMESG-WARN][25] ([i915#180]) +1 similar issue
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl1/igt@gem_workarounds@suspend-resume-fd.html
* igt@gen3_render_tiledy_blits:
- shard-tglb: NOTRUN -> [SKIP][26] ([fdo#109289]) +5 similar issues
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb3/igt@gen3_render_tiledy_blits.html
* igt@gen7_exec_parse@oacontrol-tracking:
- shard-iclb: NOTRUN -> [SKIP][27] ([fdo#109289]) +2 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb8/igt@gen7_exec_parse@oacontrol-tracking.html
* igt@gen9_exec_parse@shadow-peek:
- shard-tglb: NOTRUN -> [SKIP][28] ([i915#2856]) +4 similar issues
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@gen9_exec_parse@shadow-peek.html
* igt@gen9_exec_parse@valid-registers:
- shard-iclb: NOTRUN -> [SKIP][29] ([i915#2856]) +1 similar issue
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb7/igt@gen9_exec_parse@valid-registers.html
* igt@i915_pm_dc@dc6-dpms:
- shard-tglb: NOTRUN -> [FAIL][30] ([i915#454])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rpm@modeset-non-lpsp-stress-no-wait:
- shard-tglb: NOTRUN -> [SKIP][31] ([fdo#111644] / [i915#1397] / [i915#2411])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb3/igt@i915_pm_rpm@modeset-non-lpsp-stress-no-wait.html
* igt@i915_suspend@forcewake:
- shard-tglb: [PASS][32] -> [INCOMPLETE][33] ([i915#2411] / [i915#456])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-tglb2/igt@i915_suspend@forcewake.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@i915_suspend@forcewake.html
* igt@kms_atomic_transition@plane-all-modeset-transition:
- shard-tglb: NOTRUN -> [SKIP][34] ([i915#1769])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_atomic_transition@plane-all-modeset-transition.html
* igt@kms_big_fb@linear-32bpp-rotate-90:
- shard-tglb: NOTRUN -> [SKIP][35] ([fdo#111614]) +2 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb3/igt@kms_big_fb@linear-32bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-hflip:
- shard-kbl: NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#3777]) +2 similar issues
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl4/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-hflip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-apl: NOTRUN -> [SKIP][37] ([fdo#109271] / [i915#3777])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl1/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_big_fb@yf-tiled-8bpp-rotate-0:
- shard-iclb: NOTRUN -> [SKIP][38] ([fdo#110723]) +2 similar issues
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb5/igt@kms_big_fb@yf-tiled-8bpp-rotate-0.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
- shard-kbl: NOTRUN -> [SKIP][39] ([fdo#109271]) +239 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl1/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-tglb: NOTRUN -> [SKIP][40] ([fdo#111615]) +3 similar issues
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_joiner@2x-modeset:
- shard-tglb: NOTRUN -> [SKIP][41] ([i915#2705])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_big_joiner@2x-modeset.html
* igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs:
- shard-apl: NOTRUN -> [SKIP][42] ([fdo#109271]) +140 similar issues
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl8/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html
* igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_mc_ccs:
- shard-iclb: NOTRUN -> [SKIP][43] ([fdo#109278] / [i915#3886]) +4 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb3/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
- shard-glk: NOTRUN -> [SKIP][44] ([fdo#109271] / [i915#3886]) +6 similar issues
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk4/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
- shard-tglb: NOTRUN -> [SKIP][45] ([i915#3689] / [i915#3886]) +1 similar issue
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
- shard-apl: NOTRUN -> [SKIP][46] ([fdo#109271] / [i915#3886]) +4 similar issues
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl3/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
- shard-kbl: NOTRUN -> [SKIP][47] ([fdo#109271] / [i915#3886]) +12 similar issues
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl4/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-d-bad-rotation-90-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][48] ([i915#3689]) +11 similar issues
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_ccs@pipe-d-bad-rotation-90-yf_tiled_ccs.html
* igt@kms_chamelium@hdmi-cmp-planar-formats:
- shard-iclb: NOTRUN -> [SKIP][49] ([fdo#109284] / [fdo#111827]) +2 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb5/igt@kms_chamelium@hdmi-cmp-planar-formats.html
- shard-glk: NOTRUN -> [SKIP][50] ([fdo#109271] / [fdo#111827]) +4 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk4/igt@kms_chamelium@hdmi-cmp-planar-formats.html
* igt@kms_chamelium@hdmi-edid-change-during-suspend:
- shard-apl: NOTRUN -> [SKIP][51] ([fdo#109271] / [fdo#111827]) +6 similar issues
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl4/igt@kms_chamelium@hdmi-edid-change-during-suspend.html
* igt@kms_chamelium@vga-hpd-for-each-pipe:
- shard-kbl: NOTRUN -> [SKIP][52] ([fdo#109271] / [fdo#111827]) +21 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl4/igt@kms_chamelium@vga-hpd-for-each-pipe.html
* igt@kms_color@pipe-d-ctm-0-25:
- shard-iclb: NOTRUN -> [SKIP][53] ([fdo#109278] / [i915#1149])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb6/igt@kms_color@pipe-d-ctm-0-25.html
* igt@kms_color_chamelium@pipe-b-ctm-0-75:
- shard-tglb: NOTRUN -> [SKIP][54] ([fdo#109284] / [fdo#111827]) +8 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb1/igt@kms_color_chamelium@pipe-b-ctm-0-75.html
* igt@kms_color_chamelium@pipe-b-ctm-blue-to-red:
- shard-snb: NOTRUN -> [SKIP][55] ([fdo#109271] / [fdo#111827])
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-snb7/igt@kms_color_chamelium@pipe-b-ctm-blue-to-red.html
* igt@kms_content_protection@content_type_change:
- shard-tglb: NOTRUN -> [SKIP][56] ([fdo#111828])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_content_protection@content_type_change.html
* igt@kms_content_protection@legacy:
- shard-apl: NOTRUN -> [TIMEOUT][57] ([i915#1319])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl7/igt@kms_content_protection@legacy.html
* igt@kms_content_protection@srm:
- shard-kbl: NOTRUN -> [TIMEOUT][58] ([i915#1319])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl7/igt@kms_content_protection@srm.html
* igt@kms_cursor_crc@pipe-a-cursor-32x10-offscreen:
- shard-tglb: NOTRUN -> [SKIP][59] ([i915#3359]) +7 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_cursor_crc@pipe-a-cursor-32x10-offscreen.html
* igt@kms_cursor_crc@pipe-a-cursor-32x32-rapid-movement:
- shard-tglb: NOTRUN -> [SKIP][60] ([i915#3319]) +1 similar issue
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@kms_cursor_crc@pipe-a-cursor-32x32-rapid-movement.html
* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-kbl: [PASS][61] -> [DMESG-WARN][62] ([i915#180]) +3 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-kbl7/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
* igt@kms_cursor_crc@pipe-b-cursor-512x512-onscreen:
- shard-iclb: NOTRUN -> [SKIP][63] ([fdo#109278] / [fdo#109279]) +1 similar issue
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb4/igt@kms_cursor_crc@pipe-b-cursor-512x512-onscreen.html
* igt@kms_cursor_crc@pipe-d-cursor-512x512-onscreen:
- shard-tglb: NOTRUN -> [SKIP][64] ([fdo#109279] / [i915#3359]) +2 similar issues
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@kms_cursor_crc@pipe-d-cursor-512x512-onscreen.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions:
- shard-iclb: NOTRUN -> [SKIP][65] ([fdo#109274] / [fdo#109278]) +2 similar issues
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb4/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
- shard-iclb: [PASS][66] -> [FAIL][67] ([i915#2346])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@pipe-d-single-bo:
- shard-glk: NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#533])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk5/igt@kms_cursor_legacy@pipe-d-single-bo.html
* igt@kms_cursor_legacy@pipe-d-single-move:
- shard-iclb: NOTRUN -> [SKIP][69] ([fdo#109278]) +15 similar issues
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb4/igt@kms_cursor_legacy@pipe-d-single-move.html
* igt@kms_dither@fb-8bpc-vs-panel-8bpc@edp-1-pipe-a:
- shard-tglb: NOTRUN -> [SKIP][70] ([i915#3788])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@kms_dither@fb-8bpc-vs-panel-8bpc@edp-1-pipe-a.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-kbl: [PASS][71] -> [INCOMPLETE][72] ([i915#180] / [i915#636])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-kbl3/igt@kms_fbcon_fbt@fbc-suspend.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl6/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_flip@2x-flip-vs-suspend:
- shard-iclb: NOTRUN -> [SKIP][73] ([fdo#109274]) +3 similar issues
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb4/igt@kms_flip@2x-flip-vs-suspend.html
* igt@kms_flip@2x-plain-flip-ts-check:
- shard-tglb: NOTRUN -> [SKIP][74] ([fdo#111825]) +42 similar issues
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb6/igt@kms_flip@2x-plain-flip-ts-check.html
* igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2:
- shard-glk: [PASS][75] -> [FAIL][76] ([i915#2122])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-glk9/igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk5/igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2.html
* igt@kms_flip@flip-vs-suspend@b-dp1:
- shard-apl: [PASS][77] -> [DMESG-WARN][78] ([i915#180]) +4 similar issues
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-apl7/igt@kms_flip@flip-vs-suspend@b-dp1.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl8/igt@kms_flip@flip-vs-suspend@b-dp1.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs:
- shard-kbl: NOTRUN -> [SKIP][79] ([fdo#109271] / [i915#2672])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl6/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs.html
- shard-glk: NOTRUN -> [SKIP][80] ([fdo#109271] / [i915#2672])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk1/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt:
- shard-iclb: NOTRUN -> [SKIP][81] ([fdo#109280]) +17 similar issues
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-blt:
- shard-snb: NOTRUN -> [SKIP][82] ([fdo#109271]) +66 similar issues
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-snb6/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-suspend:
- shard-glk: NOTRUN -> [SKIP][83] ([fdo#109271]) +87 similar issues
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk7/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html
- shard-tglb: NOTRUN -> [INCOMPLETE][84] ([i915#2411] / [i915#456])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html
* igt@kms_hdmi_inject@inject-audio:
- shard-tglb: [PASS][85] -> [SKIP][86] ([i915#433])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-tglb5/igt@kms_hdmi_inject@inject-audio.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb1/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_hdr@static-toggle-dpms:
- shard-tglb: NOTRUN -> [SKIP][87] ([i915#1187])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb3/igt@kms_hdr@static-toggle-dpms.html
- shard-iclb: NOTRUN -> [SKIP][88] ([i915#1187])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb2/igt@kms_hdr@static-toggle-dpms.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d:
- shard-apl: NOTRUN -> [SKIP][89] ([fdo#109271] / [i915#533])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl7/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d.html
* igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb:
- shard-kbl: NOTRUN -> [FAIL][90] ([fdo#108145] / [i915#265])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl4/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max:
- shard-glk: NOTRUN -> [FAIL][91] ([fdo#108145] / [i915#265])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk1/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max.html
* igt@kms_plane_lowres@pipe-c-tiling-none:
- shard-iclb: NOTRUN -> [SKIP][92] ([i915#3536])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb8/igt@kms_plane_lowres@pipe-c-tiling-none.html
* igt@kms_plane_lowres@pipe-c-tiling-y:
- shard-tglb: NOTRUN -> [SKIP][93] ([i915#3536])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb8/igt@kms_plane_lowres@pipe-c-tiling-y.html
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: NOTRUN -> [SKIP][94] ([fdo#109441])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb5/igt@kms_psr@psr2_primary_mmap_cpu.html
- shard-tglb: NOTRUN -> [FAIL][95] ([i915#132] / [i915#3467])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@kms_vblank@pipe-d-wait-idle:
- shard-kbl: NOTRUN -> [SKIP][96] ([fdo#109271] / [i915#533]) +2 similar issues
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl7/igt@kms_vblank@pipe-d-wait-idle.html
* igt@kms_writeback@writeback-pixel-formats:
- shard-kbl: NOTRUN -> [SKIP][97] ([fdo#109271] / [i915#2437]) +1 similar issue
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl2/igt@kms_writeback@writeback-pixel-formats.html
- shard-apl: NOTRUN -> [SKIP][98] ([fdo#109271] / [i915#2437])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl8/igt@kms_writeback@writeback-pixel-formats.html
- shard-tglb: NOTRUN -> [SKIP][99] ([i915#2437])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@kms_writeback@writeback-pixel-formats.html
* igt@nouveau_crc@pipe-d-ctx-flip-detection:
- shard-tglb: NOTRUN -> [SKIP][100] ([i915#2530]) +1 similar issue
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@nouveau_crc@pipe-d-ctx-flip-detection.html
* igt@prime_nv_api@i915_nv_import_twice:
- shard-iclb: NOTRUN -> [SKIP][101] ([fdo#109291]) +2 similar issues
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb8/igt@prime_nv_api@i915_nv_import_twice.html
* igt@prime_nv_pcopy@test3_1:
- shard-tglb: NOTRUN -> [SKIP][102] ([fdo#109291]) +5 similar issues
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb5/igt@prime_nv_pcopy@test3_1.html
* igt@prime_vgem@fence-write-hang:
- shard-iclb: NOTRUN -> [SKIP][103] ([fdo#109295])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb6/igt@prime_vgem@fence-write-hang.html
* igt@sysfs_clients@fair-1:
- shard-apl: NOTRUN -> [SKIP][104] ([fdo#109271] / [i915#2994]) +3 similar issues
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl6/igt@sysfs_clients@fair-1.html
- shard-tglb: NOTRUN -> [SKIP][105] ([i915#2994]) +3 similar issues
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb7/igt@sysfs_clients@fair-1.html
* igt@sysfs_clients@sema-25:
- shard-kbl: NOTRUN -> [SKIP][106] ([fdo#109271] / [i915#2994]) +4 similar issues
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl1/igt@sysfs_clients@sema-25.html
* igt@sysfs_clients@split-25:
- shard-glk: NOTRUN -> [SKIP][107] ([fdo#109271] / [i915#2994]) +1 similar issue
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk9/igt@sysfs_clients@split-25.html
#### Possible fixes ####
* igt@gem_exec_fair@basic-deadline:
- shard-glk: [FAIL][108] ([i915#2846]) -> [PASS][109]
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-glk6/igt@gem_exec_fair@basic-deadline.html
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk4/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-pace@vcs0:
- shard-iclb: [FAIL][110] ([i915#2842]) -> [PASS][111]
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb3/igt@gem_exec_fair@basic-pace@vcs0.html
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb3/igt@gem_exec_fair@basic-pace@vcs0.html
* igt@gem_exec_fair@basic-throttle@rcs0:
- shard-glk: [FAIL][112] ([i915#2842]) -> [PASS][113] +1 similar issue
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-glk3/igt@gem_exec_fair@basic-throttle@rcs0.html
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html
* igt@gem_exec_parallel@engines@contexts:
- shard-iclb: [INCOMPLETE][114] -> [PASS][115]
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb6/igt@gem_exec_parallel@engines@contexts.html
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb7/igt@gem_exec_parallel@engines@contexts.html
* igt@gem_exec_whisper@basic-fds-all:
- shard-glk: [DMESG-WARN][116] ([i915#118]) -> [PASS][117] +1 similar issue
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-glk3/igt@gem_exec_whisper@basic-fds-all.html
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk1/igt@gem_exec_whisper@basic-fds-all.html
* igt@i915_pm_dc@dc9-dpms:
- shard-apl: [SKIP][118] ([fdo#109271]) -> [PASS][119]
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl3/igt@i915_pm_dc@dc9-dpms.html
- shard-iclb: [FAIL][120] ([i915#4275]) -> [PASS][121]
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb5/igt@i915_pm_dc@dc9-dpms.html
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb1/igt@i915_pm_dc@dc9-dpms.html
* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-tglb: [INCOMPLETE][122] ([i915#2828] / [i915#456]) -> [PASS][123] +1 similar issue
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-tglb7/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-tglb1/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
* igt@kms_flip@flip-vs-suspend-interruptible@c-dp1:
- shard-apl: [DMESG-WARN][124] ([i915#180]) -> [PASS][125] +2 similar issues
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-apl1/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile:
- shard-iclb: [SKIP][126] ([i915#3701]) -> [PASS][127]
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile.html
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb6/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
- shard-kbl: [INCOMPLETE][128] ([i915#3614]) -> [PASS][129]
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-kbl4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-kbl4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html
* igt@kms_psr@psr2_no_drrs:
- shard-iclb: [SKIP][130] ([fdo#109441]) -> [PASS][131] +1 similar issue
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-iclb6/igt@kms_psr@psr2_no_drrs.html
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
* igt@kms_setmode@basic:
- shard-glk: [FAIL][132] ([i915#31]) -> [PASS][133]
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10858/shard-glk1/igt@kms_setmode@basic.html
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/shard-glk7/igt@kms_setmode@basic.html
* igt@perf
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6386/index.html
[-- Attachment #2: Type: text/html, Size: 33956 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied Jeevan B
@ 2021-11-10 12:03 ` Petri Latvala
0 siblings, 0 replies; 9+ messages in thread
From: Petri Latvala @ 2021-11-10 12:03 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev, daniel
On Wed, Nov 10, 2021 at 01:25:49AM +0530, Jeevan B wrote:
> rename igt_debug_manual_check and patch the igt function
> igt_debug_wait_for_keypress() to assert if "all" is supplied.
>
> v2: calling igt_debug_wait_for_keypress() with "all" will assert.
>
> v3: Change igt_assert to igt_assert_f for adding clear log message.
>
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
> ---
> lib/igt_aux.c | 9 ++++++---
> lib/igt_aux.h | 2 +-
> tests/i915/kms_dsc.c | 2 +-
> tests/i915/kms_psr.c | 2 +-
> tests/i915/kms_psr2_sf.c | 2 +-
> 5 files changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/lib/igt_aux.c b/lib/igt_aux.c
> index 2445e483..c0e5b01a 100644
> --- a/lib/igt_aux.c
> +++ b/lib/igt_aux.c
> @@ -972,7 +972,7 @@ void igt_drop_root(void)
> * Waits for a key press when run interactively and when the corresponding debug
> * var is set in the --interactive-debug=$var variable. Multiple keys
> * can be specified as a comma-separated list or alternatively "all" if a wait
> - * should happen for all cases.
> + * should happen for all cases. Calling this fucntion with "all" will assert.
Typo in "function".
With that fixed,
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
> *
> * When not connected to a terminal interactive_debug is ignored
> * and execution immediately continues.
> @@ -993,6 +993,9 @@ void igt_debug_wait_for_keypress(const char *var)
> if (!igt_interactive_debug)
> return;
>
> + if (strstr(var, "all"))
> + igt_assert_f(false, "Bug in test: Do not call igt_debug_wait_for_keypress with \"all\"\n");
> +
> if (!strstr(igt_interactive_debug, var) &&
> !strstr(igt_interactive_debug, "all"))
> return;
> @@ -1008,7 +1011,7 @@ void igt_debug_wait_for_keypress(const char *var)
> }
>
> /**
> - * igt_debug_manual_check:
> + * igt_debug_interactive_mode_check:
> * @var: var lookup to to enable this wait
> * @expected: message to be printed as expected behaviour before wait for keys Y/n
> *
> @@ -1028,7 +1031,7 @@ void igt_debug_wait_for_keypress(const char *var)
> *
> * Force test fail when N/n is pressed.
> */
> -void igt_debug_manual_check(const char *var, const char *expected)
> +void igt_debug_interactive_mode_check(const char *var, const char *expected)
> {
> struct termios oldt, newt;
> char key;
> diff --git a/lib/igt_aux.h b/lib/igt_aux.h
> index a3c477ab..9f2588ae 100644
> --- a/lib/igt_aux.h
> +++ b/lib/igt_aux.h
> @@ -195,7 +195,7 @@ int igt_get_autoresume_delay(enum igt_suspend_state state);
> void igt_drop_root(void);
>
> void igt_debug_wait_for_keypress(const char *var);
> -void igt_debug_manual_check(const char *var, const char *expected);
> +void igt_debug_interactive_mode_check(const char *var, const char *expected);
>
> /* sysinfo cross-arch wrappers from intel_os.c */
>
> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
> index dcfe8b96..0292ed34 100644
> --- a/tests/i915/kms_dsc.c
> +++ b/tests/i915/kms_dsc.c
> @@ -72,7 +72,7 @@ int force_dsc_restore_fd = -1;
>
> static inline void manual(const char *expected)
> {
> - igt_debug_manual_check("all", expected);
> + igt_debug_interactive_mode_check("all", expected);
> }
>
> static void force_dsc_enable(data_t *data)
> diff --git a/tests/i915/kms_psr.c b/tests/i915/kms_psr.c
> index 83b8b709..480e2cc7 100644
> --- a/tests/i915/kms_psr.c
> +++ b/tests/i915/kms_psr.c
> @@ -246,7 +246,7 @@ static bool psr_enable_if_enabled(data_t *data)
>
> static inline void manual(const char *expected)
> {
> - igt_debug_manual_check("all", expected);
> + igt_debug_interactive_mode_check("all", expected);
> }
>
> static bool drrs_disabled(data_t *data)
> diff --git a/tests/i915/kms_psr2_sf.c b/tests/i915/kms_psr2_sf.c
> index a50c3e14..dca2d030 100644
> --- a/tests/i915/kms_psr2_sf.c
> +++ b/tests/i915/kms_psr2_sf.c
> @@ -331,7 +331,7 @@ static void prepare(data_t *data)
>
> static inline void manual(const char *expected)
> {
> - igt_debug_manual_check("all", expected);
> + igt_debug_interactive_mode_check("all", expected);
> }
>
> static void plane_update_expected_output(int plane_type, int box_count)
> --
> 2.19.1
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3 2/3] tests/kms_psr2_sf: Change testcase design
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 2/3] tests/kms_psr2_sf: Change testcase design Jeevan B
@ 2021-11-10 12:04 ` Petri Latvala
0 siblings, 0 replies; 9+ messages in thread
From: Petri Latvala @ 2021-11-10 12:04 UTC (permalink / raw)
To: Jeevan B; +Cc: igt-dev, daniel
On Wed, Nov 10, 2021 at 01:25:50AM +0530, Jeevan B wrote:
> Change testcase design so that it avoids new subtest for each block position.
>
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
> ---
> tests/i915/kms_psr2_sf.c | 26 +++++++++++++-------------
> 1 file changed, 13 insertions(+), 13 deletions(-)
>
> diff --git a/tests/i915/kms_psr2_sf.c b/tests/i915/kms_psr2_sf.c
> index dca2d030..7f88b514 100644
> --- a/tests/i915/kms_psr2_sf.c
> +++ b/tests/i915/kms_psr2_sf.c
> @@ -582,9 +582,9 @@ igt_main
> }
>
> /* Verify primary plane selective fetch */
> - for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
> - igt_describe("Test that selective fetch works on primary plane");
> - igt_subtest_f("primary-%s-sf-dmg-area-%d", op_str(data.op), i) {
> + igt_describe("Test that selective fetch works on primary plane");
> + igt_subtest_f("primary-%s-sf-dmg-area", op_str(data.op)) {
> + for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
> data.damage_area_count = i;
> data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
> prepare(&data);
> @@ -594,9 +594,9 @@ igt_main
> }
>
> /* Verify overlay plane selective fetch */
> - for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
> - igt_describe("Test that selective fetch works on overlay plane");
> - igt_subtest_f("overlay-%s-sf-dmg-area-%d", op_str(data.op), i) {
> + igt_describe("Test that selective fetch works on overlay plane");
> + igt_subtest_f("overlay-%s-sf-dmg-area", op_str(data.op)) {
> + for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
> data.damage_area_count = i;
> data.test_plane_id = DRM_PLANE_TYPE_OVERLAY;
> prepare(&data);
> @@ -618,9 +618,9 @@ igt_main
> /* Only for overlay plane */
> data.op = PLANE_MOVE;
> /* Verify overlay plane move selective fetch */
> - for (i = POS_TOP_LEFT; i <= POS_BOTTOM_RIGHT ; i++) {
> - igt_describe("Test that selective fetch works on moving overlay plane");
> - igt_subtest_f("%s-sf-dmg-area-%d", op_str(data.op), i) {
> + igt_describe("Test that selective fetch works on moving overlay plane");
> + igt_subtest_f("%s-sf-dmg-area", op_str(data.op)) {
> + for (i = POS_TOP_LEFT; i <= POS_BOTTOM_RIGHT ; i++) {
> data.pos = i;
> data.test_plane_id = DRM_PLANE_TYPE_OVERLAY;
> prepare(&data);
> @@ -631,10 +631,10 @@ igt_main
>
> /* Verify primary plane selective fetch with overplay plane blended */
> data.op = OVERLAY_PRIM_UPDATE;
> - for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
> - igt_describe("Test that selective fetch works on primary plane "
> - "with blended overlay plane");
> - igt_subtest_f("%s-sf-dmg-area-%d", op_str(data.op), i) {
> + igt_describe("Test that selective fetch works on primary plane "
> + "with blended overlay plane");
> + igt_subtest_f("%s-sf-dmg-area", op_str(data.op)) {
> + for (i = 1; i <= MAX_DAMAGE_AREAS; i++) {
> data.damage_area_count = i;
> data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
> prepare(&data);
> --
> 2.19.1
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3 3/3] tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane property
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 3/3] tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane property Jeevan B
@ 2021-11-23 11:33 ` Hogander, Jouni
0 siblings, 0 replies; 9+ messages in thread
From: Hogander, Jouni @ 2021-11-23 11:33 UTC (permalink / raw)
To: igt-dev, B, Jeevan; +Cc: drawat, Latvala, Petri, daniel
On Wed, 2021-11-10 at 01:25 +0530, Jeevan B wrote:
> From: Deepak Rawat <drawat@vmware.com>
>
> Some simple test cases to use FB_DAMAGE_CLIPS plane property.
Maybe you could describe a bit more what are the testcase you are
adding.
>
> Signed-off-by: Deepak Rawat <drawat@vmware.com>
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
> ---
> tests/kms_atomic.c | 232
> +++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 232 insertions(+)
>
> diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
> index 1657624e..4b7b6d38 100644
> --- a/tests/kms_atomic.c
> +++ b/tests/kms_atomic.c
> @@ -62,6 +62,25 @@ enum kms_atomic_check_relax {
> PLANE_RELAX_FB = (1 << 1)
> };
>
> +/* signed32 drm_mode_rect declared here for use with drm damage for
> page-flip */
> +struct damage_rect {
> + int x1;
> + int y1;
> + int x2;
> + int y2;
> +};
Consider using igt-gpu-tools/include/drm-uapi/drm_mode.h:drm_mode_rect.
> +
> +static inline int damage_rect_width(struct damage_rect *r)
> +{
> + return r->x2 - r->x1;
> +}
> +
> +static inline int damage_rect_height(struct damage_rect *r)
> +{
> + return r->y2 - r->y1;
> +}
> +
> +
> static bool plane_filter(enum igt_atomic_plane_properties prop)
> {
> if ((1 << prop) & IGT_PLANE_COORD_CHANGED_MASK)
> @@ -1060,6 +1079,210 @@ static void atomic_invalid_params(igt_pipe_t
> *pipe,
> do_ioctl_err(display->drm_fd, DRM_IOCTL_MODE_ATOMIC, &ioc,
> EFAULT);
> }
>
> +static void atomic_plane_damage(igt_pipe_t *pipe, igt_plane_t
> *plane, struct igt_fb *fb)
> +{
> + struct damage_rect *damage;
> + struct igt_fb fb_1, fb_2;
> + cairo_t *cr_1, *cr_2;
> +
> + damage = malloc(sizeof(*damage) * 2);
> + igt_assert(damage);
To my opinion it's better to have "drm_mode_rect damage_rect[2]" rather
than using malloc here. Anyways I think "free" is not done if there is
assertion later for some reason.
> +
> + /* Color fb with white rect at center */
> + igt_create_color_fb(pipe->display->drm_fd, fb->width, fb-
> >height,
> + fb->drm_format, I915_TILING_NONE, 0.2, 0.2,
> 0.2,
> + &fb_1);
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
> + igt_paint_color(cr_1, fb->width/4, fb->height/4, fb->width/2,
> + fb->height/2, 1.0, 1.0, 1.0);
> + igt_put_cairo_ctx(cr_1);
> +
> + /*
> + * Flip the primary plane to new color fb using atomic API and
> check the
> + * state.
> + */
> + igt_plane_set_fb(plane, &fb_1);
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
From here ->
> + /*
> + * Change the color of top left clip from center and issue
> plane update
> + * with damage and verify the state.
> + */
> + damage[0].x1 = 0;
> + damage[0].y1 = 0;
> + damage[0].x2 = fb->width/2;
> + damage[0].y2 = fb->height/2;
> +
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
> + igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
> + damage_rect_width(&damage[0]),
> + damage_rect_height(&damage[0]), 1.0, 0, 0);
> + igt_put_cairo_ctx(cr_1);
> +
> + igt_plane_set_fb(plane, &fb_1);
> + igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS,
> damage,
> + sizeof(*damage));
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
<- To here: consider putting the code into a function(s). You are
repeating this code 7 times.
> +
> + /*
> + * Change the color of top left and bottom right clip from
> center and
> + * issue plane update with damage and verify the state.
> + */
> + igt_create_color_fb(pipe->display->drm_fd, fb->width, fb-
> >height,
> + fb->drm_format, I915_TILING_NONE, 0.2, 0.2,
> 0.2,
> + &fb_2);
> +
> + damage[0].x1 = fb->width/2;
> + damage[0].y1 = 0;
> + damage[0].x2 = fb->width;
> + damage[0].y2 = fb->height/2;
> +
> + cr_2 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_2);
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
> + cairo_set_source_surface(cr_2, fb_1.cairo_surface, 0, 0);
> + cairo_paint(cr_2);
> + igt_paint_color(cr_2, damage[0].x1, damage[0].y1,
> + damage_rect_width(&damage[0]),
> + damage_rect_height(&damage[0]), 0, 1.0, 0);
> + igt_put_cairo_ctx(cr_1);
> + igt_put_cairo_ctx(cr_2);
> + igt_plane_set_fb(plane, &fb_2);
> + igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS,
> damage,
> + sizeof(*damage));
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
> + /*
> + * Issue plane update with damage with a clip outside of plane
> src.
> + * NOTE: This will result in no update on plane as damage is
> outside, so
> + * will see no change on the screen.
> + */
> + /* Reszie fb_1 to be bigger than plane */
> + igt_remove_fb(pipe->display->drm_fd, &fb_1);
> + igt_create_color_fb(pipe->display->drm_fd, fb->width * 2, fb-
> >height,
> + fb->drm_format, I915_TILING_NONE, 0.2, 0.2,
> 0.2,
> + &fb_1);
> +
> + damage[0].x1 = fb->width;
> + damage[0].y1 = 0;
> + damage[0].x2 = fb->width + fb->width/2;
> + damage[0].y2 = fb->height/2;
> +
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
> + cr_2 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_2);
> + cairo_set_source_surface(cr_1, fb_2.cairo_surface, 0, 0);
> + cairo_paint(cr_1);
> + igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
> + damage_rect_width(&damage[0]),
> + damage_rect_height(&damage[0]), 0, 1.0, 0);
> + igt_put_cairo_ctx(cr_2);
> + igt_put_cairo_ctx(cr_1);
> + igt_plane_set_fb(plane, &fb_1);
> + igt_plane_set_size(plane, fb->width, fb->height);
> + igt_fb_set_position(&fb_1, plane, 0, 0);
> + igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
> + igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS,
> damage,
> + sizeof(*damage));
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
> + /*
> + * Issue a plane update with damage with a clip that overlap
> with plane
> + * src (Top right from center extending outside src in below
> case).
> + * NOTE: Here drm core should take care of intersecting the
> clip to
> + * plane src.
> + */
> + damage[0].x1 = fb->width/2;
> + damage[0].y1 = 0;
> + damage[0].x2 = fb->width/2 + fb->width;
> + damage[0].y2 = fb->height/2;
> +
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
> + igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
> + damage_rect_width(&damage[0]),
> + damage_rect_height(&damage[0]), 1.0, 1.0, 0);
> + igt_put_cairo_ctx(cr_1);
> + igt_plane_set_fb(plane, &fb_1);
> + igt_plane_set_size(plane, fb->width, fb->height);
> + igt_fb_set_position(&fb_1, plane, 0, 0);
> + igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
> + igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS,
> damage,
> + sizeof(*damage));
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
> + /*
> + * Issue a plane update with damage with two clips one inside
> plane src
> + * and one outside
> + * NOTE: This will result in plane update with clip inside
> plane src.
> + */
> + damage[0].x1 = 0;
> + damage[0].y1 = fb->height/2;
> + damage[0].x2 = fb->width/2;
> + damage[0].y2 = fb->height;
> +
> + damage[1].x1 = fb->width + fb->width/2;
> + damage[1].y1 = fb->height/2;
> + damage[1].x2 = fb->width * 2;
> + damage[1].y2 = fb->height;
> +
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd, &fb_1);
> + igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
> + damage_rect_width(&damage[0]),
> + damage_rect_height(&damage[0]), 0, 1.0, 1.0);
> + igt_paint_color(cr_1, damage[1].x1, damage[1].y1,
> + damage_rect_width(&damage[1]),
> + damage_rect_height(&damage[1]), 0, 1.0, 0);
> + igt_put_cairo_ctx(cr_1);
> + igt_plane_set_fb(plane, &fb_1);
> + igt_plane_set_size(plane, fb->width, fb->height);
> + igt_fb_set_position(&fb_1, plane, 0, 0);
> + igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
> + igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS,
> damage,
> + sizeof(*damage) * 2);
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
> + /*
> + * Issue a plane update with overlapping damage clips. White
> rect in
> + * center overlap partially with top left red rect.
> + * NOTE: Drm core does not error for overlapping damage clips
> so if any
> + * driver does not support overlapping should have their own
> + * validations.
> + */
> + damage[0].x1 = 0;
> + damage[0].y1 = 0;
> + damage[0].x2 = fb->width/2;
> + damage[0].y2 = fb->height/2;
> +
> + damage[1].x1 = fb->width/4;
> + damage[1].y1 = fb->height/4;
> + damage[1].x2 = fb->width/4 + fb->width/2;
> + damage[1].y2 = fb->height/4 + fb->height/2;
> +
> + cr_1 = igt_get_cairo_ctx(pipe->display->drm_fd,
> &fb_drm_mode_rect1);
> + igt_paint_color(cr_1, damage[0].x1, damage[0].y1,
> + damage_rect_width(&damage[0]),
> + damage_rect_height(&damage[0]), 1.0, 0, 0);
> + igt_paint_color(cr_1, damage[1].x1, damage[1].y1,
> + damage_rect_width(&damage[1]),
> + damage_rect_height(&damage[1]), 1.0, 1.0, 1.0);
> + igt_put_cairo_ctx(cr_1);
> + igt_plane_set_fb(plane, &fb_1);
> + igt_plane_set_size(plane, fb->width, fb->height);
> + igt_fb_set_position(&fb_1, plane, 0, 0);
> + igt_fb_set_size(&fb_1, plane, fb->width, fb->height);
> + igt_plane_replace_prop_blob(plane, IGT_PLANE_FB_DAMAGE_CLIPS,
> damage,
> + sizeof(*damage) * 2);
> + crtc_commit(pipe, plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
> + /* Restore the primary plane */
> + igt_plane_set_fb(plane, fb);
> + plane_commit(plane, COMMIT_ATOMIC, ATOMIC_RELAX_NONE);
> +
> + /* Remove the fb created for this test */
> + igt_remove_fb(pipe->display->drm_fd, &fb_1);
> + igt_remove_fb(pipe->display->drm_fd, &fb_2);
> +
> + free(damage);
> +}
> +
> static void atomic_setup(igt_display_t *display, enum pipe pipe,
> igt_output_t *output, igt_plane_t *primary, struct igt_fb *fb)
> {
> igt_output_set_pipe(output, pipe);
> @@ -1219,6 +1442,15 @@ igt_main
> atomic_invalid_params(pipe_obj, primary, output, &fb);
> }
>
> + igt_describe("Simple test cases to use FB_DAMAGE_CLIPS plane
> property");
> + igt_subtest("atomic_plane_damage") {
> + igt_require(igt_plane_has_prop(primary,
> IGT_PLANE_FB_DAMAGE_CLIPS));
> +
> + atomic_setup(&display, pipe, output, primary, &fb);
> +
> + atomic_plane_damage(pipe_obj, primary, &fb);
> + }
> +
> igt_fixture {
> atomic_clear(&display, pipe, primary, output);
> igt_remove_fb(display.drm_fd, &fb);
BR,
Jouni Högander
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2021-11-23 11:33 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-09 19:55 [igt-dev] [PATCH i-g-t v3 0/3] Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property Jeevan B
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 1/3] lib/igt_aux: Rename igt_debug_manual_check and assert check if all is supplied Jeevan B
2021-11-10 12:03 ` Petri Latvala
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 2/3] tests/kms_psr2_sf: Change testcase design Jeevan B
2021-11-10 12:04 ` Petri Latvala
2021-11-09 19:55 ` [igt-dev] [PATCH i-g-t v3 3/3] tests/kms_atomic: Add a new test case for FB_DAMAGE_CLIPS plane property Jeevan B
2021-11-23 11:33 ` Hogander, Jouni
2021-11-09 20:44 ` [igt-dev] ✓ Fi.CI.BAT: success for Fix kms_psr2_sf test and add new test for FB_DAMAGE_CLIPS plane property (rev3) Patchwork
2021-11-09 21:50 ` [igt-dev] ✓ Fi.CI.IGT: " 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.