From: Pranay Samala <pranay.samala@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: karthik.b.s@intel.com, jeevan.b@intel.com,
sameer.lattannavar@intel.com, pranay.samala@intel.com
Subject: [PATCH i-g-t v2] tests/kms_plane: Implement dynamic level execution across multiple planes
Date: Wed, 22 May 2024 10:41:18 +0530 [thread overview]
Message-ID: <20240522051118.468001-1-pranay.samala@intel.com> (raw)
The test runs on all pipes on dynamic level to test all the supported
pixel-formats and modifiers on all plane of that pipe.
Updating the test to execute on each planes on dynamic level.
v2:
- Used an helper to avoid changes in indentation (Juha-pekka)
- Fix other indentations (Juha-pekka)
Signed-off-by: Pranay Samala <pranay.samala@intel.com>
---
tests/kms_plane.c | 49 +++++++++++++++++++++++++----------------------
1 file changed, 26 insertions(+), 23 deletions(-)
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 406aecc04..7c29143f1 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -275,7 +275,7 @@ test_plane_position_with_output(data_t *data,
drmModeModeInfo *mode;
igt_crc_t crc, crc2;
- igt_info("Testing connector %s using pipe %s plane %d\n",
+ igt_debug("Testing connector %s using pipe %s plane %d\n",
igt_output_name(output), kmstest_pipe_name(pipe), plane);
igt_output_set_pipe(output, pipe);
@@ -285,8 +285,8 @@ test_plane_position_with_output(data_t *data,
sprite = igt_output_get_plane(output, plane);
if (primary->drm_plane->plane_id > sprite->drm_plane->plane_id) {
- igt_info("primary plane ID (%d) > sprite plane ID (%d), skipping plane %d\n",
- primary->drm_plane->plane_id, sprite->drm_plane->plane_id, plane);
+ igt_debug("primary plane ID (%d) > sprite plane ID (%d), skipping plane %d\n",
+ primary->drm_plane->plane_id, sprite->drm_plane->plane_id, plane);
return;
}
@@ -352,9 +352,9 @@ test_plane_position(data_t *data, enum pipe pipe)
test_grab_crc(data, output, pipe, &green, data->flags, &reference_crc);
for (int plane = 1; plane < n_planes; plane++)
- test_plane_position_with_output(data, pipe, plane,
- output, &reference_crc,
- data->flags);
+ igt_dynamic_f("pipe-%s-plane-%d", kmstest_pipe_name(pipe), plane)
+ test_plane_position_with_output(data, pipe, plane,
+ output, &reference_crc, data->flags);
test_fini(data);
}
@@ -415,7 +415,7 @@ test_plane_panning_with_output(data_t *data,
mode = igt_output_get_mode(output);
primary = igt_output_get_plane(output, 0);
- igt_info("Testing connector %s using pipe %s, mode %s\n",
+ igt_debug("Testing connector %s using pipe %s, mode %s\n",
igt_output_name(output), kmstest_pipe_name(pipe), mode->name);
create_fb_for_mode_panning(data, mode, &primary_fb);
@@ -455,7 +455,7 @@ test_plane_panning(data_t *data, enum pipe pipe)
igt_crc_t ref_crc;
igt_info("Using (pipe %s + %s) to run the subtest.\n",
- kmstest_pipe_name(pipe), igt_output_name(output));
+ kmstest_pipe_name(pipe), igt_output_name(output));
test_init(data, pipe);
@@ -463,7 +463,6 @@ test_plane_panning(data_t *data, enum pipe pipe)
for_each_memory_region(r, data->drm_fd)
if (r->ci.memory_class == I915_MEMORY_CLASS_DEVICE)
mem_size = r->cpu_size;
-
}
if (is_xe_device(data->drm_fd)) {
@@ -889,7 +888,7 @@ static bool test_format_plane_rgb(data_t *data, enum pipe pipe,
igt_crc_t ref_crc[],
struct igt_fb *fb)
{
- igt_info("Testing format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " on %s.%u\n",
+ igt_debug("Testing format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " on %s.%u\n",
IGT_FORMAT_ARGS(format), IGT_MODIFIER_ARGS(modifier),
kmstest_pipe_name(pipe), plane->index);
@@ -927,11 +926,9 @@ static bool test_format_plane_yuv(data_t *data, enum pipe pipe,
igt_color_range_to_str(r)))
continue;
- igt_info("Testing format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " (%s, %s) on %s.%u\n",
- IGT_FORMAT_ARGS(format), IGT_MODIFIER_ARGS(modifier),
- igt_color_encoding_to_str(e),
- igt_color_range_to_str(r),
- kmstest_pipe_name(pipe), plane->index);
+ igt_debug("Testing format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " (%s, %s) on %s.%u\n",
+ IGT_FORMAT_ARGS(format), IGT_MODIFIER_ARGS(modifier), igt_color_encoding_to_str(e),
+ igt_color_range_to_str(r), kmstest_pipe_name(pipe), plane->index);
result &= test_format_plane_colors(data, pipe, plane,
format, modifier,
@@ -1043,7 +1040,7 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
igt_pipe_crc_start(data->pipe_crc);
- igt_info("Testing format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " on %s.%u\n",
+ igt_debug("Testing format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " on %s.%u\n",
IGT_FORMAT_ARGS(ref.format), IGT_MODIFIER_ARGS(ref.modifier),
kmstest_pipe_name(pipe), plane->index);
@@ -1089,7 +1086,7 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
};
if (igt_vec_index(&tested_formats, &rf) >= 0) {
- igt_info("Skipping format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " on %s.%u\n",
+ igt_debug("Skipping format " IGT_FORMAT_FMT " / modifier " IGT_MODIFIER_FMT " on %s.%u\n",
IGT_FORMAT_ARGS(f.format), IGT_MODIFIER_ARGS(f.modifier),
kmstest_pipe_name(pipe), plane->index);
continue;
@@ -1211,7 +1208,8 @@ test_pixel_formats(data_t *data, enum pipe pipe)
for_each_plane_on_pipe(&data->display, pipe, plane) {
if (skip_plane(data, plane))
continue;
- result &= test_format_plane(data, pipe, output, plane, &primary_fb);
+ igt_dynamic_f("pipe-%s-plane-%u", kmstest_pipe_name(pipe), plane->index)
+ result &= test_format_plane(data, pipe, output, plane, &primary_fb);
}
test_fini(data);
@@ -1317,14 +1315,19 @@ static void run_test(data_t *data, void (*test)(data_t *, enum pipe))
continue;
igt_output_set_pipe(data->output, PIPE_NONE);
- igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
- test(data, pipe);
+ test(data, pipe);
if (is_pipe_limit_reached(++count))
break;
}
}
+static void dynamic_test_handler(data_t *data, enum pipe pipe)
+{
+ igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
+ test_plane_panning(data, pipe);
+}
+
static void
run_tests_for_pipe_plane(data_t *data)
{
@@ -1361,20 +1364,20 @@ run_tests_for_pipe_plane(data_t *data)
igt_describe("verify plane panning at top-left position using primary plane");
igt_subtest_with_dynamic_f("plane-panning-top-left") {
data->flags = TEST_PANNING_TOP_LEFT;
- run_test(data, test_plane_panning);
+ run_test(data, dynamic_test_handler);
}
igt_describe("verify plane panning at bottom-right position using primary plane");
igt_subtest_with_dynamic_f("plane-panning-bottom-right") {
data->flags = TEST_PANNING_BOTTOM_RIGHT;
- run_test(data, test_plane_panning);
+ run_test(data, dynamic_test_handler);
}
igt_describe("verify plane panning at bottom-right position using primary plane and executes system"
"suspend cycles");
igt_subtest_with_dynamic_f("plane-panning-bottom-right-suspend") {
data->flags = TEST_PANNING_BOTTOM_RIGHT | TEST_SUSPEND_RESUME;
- run_test(data, test_plane_panning);
+ run_test(data, dynamic_test_handler);
}
igt_describe("verify planar settings for pixel format are accepted or rejected correctly");
--
2.34.1
next reply other threads:[~2024-05-22 5:11 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-22 5:11 Pranay Samala [this message]
2024-05-22 6:01 ` ✗ Fi.CI.BAT: failure for tests/kms_plane: Implement dynamic level execution across multiple planes (rev2) Patchwork
2024-05-22 6:43 ` ✗ CI.xeBAT: " Patchwork
2024-05-22 9:00 ` ✗ CI.xeFULL: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240522051118.468001-1-pranay.samala@intel.com \
--to=pranay.samala@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=jeevan.b@intel.com \
--cc=karthik.b.s@intel.com \
--cc=sameer.lattannavar@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox