From: Robert Foss <robert.foss@collabora.com>
To: intel-gfx@lists.freedesktop.org,
Tomeu Vizoso <tomeu.vizoso@collabora.com>,
Maarten Lankhorst <maarten.lankhorst@intel.com>,
Gustavo Padovan <gustavo.padovan@collabora.com>,
Daniel Stone <daniels@collabora.com>,
Mika Kahola <mika.kahola@intel.com>,
Petri Latvala <petri.latvala@intel.com>
Subject: [PATCH i-g-t v2 26/33] tests/kms_rotation_crc: Add support for dynamic number of planes
Date: Tue, 24 Jan 2017 18:33:53 -0500 [thread overview]
Message-ID: <20170124233400.5053-27-robert.foss@collabora.com> (raw)
In-Reply-To: <20170124233400.5053-1-robert.foss@collabora.com>
Add changes reflecting the new support for dynamic number of planes per pipe.
Signed-off-by: Robert Foss <robert.foss@collabora.com>
---
tests/kms_rotation_crc.c | 63 ++++++++++++++++++++++++------------------------
1 file changed, 32 insertions(+), 31 deletions(-)
diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index cb0ac1eb..6769a89b 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -97,17 +97,18 @@ static void commit_crtc(data_t *data, igt_output_t *output, igt_plane_t *plane)
* we create an fb covering the crtc and call commit
*/
- primary = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
igt_plane_set_fb(primary, &data->fb_modeset);
primary->rotation_changed = false;
igt_display_commit(display);
igt_plane_set_fb(plane, &data->fb);
- if (!plane->is_cursor)
+ if (plane->type != DRM_PLANE_TYPE_CURSOR)
igt_plane_set_position(plane, data->pos_x, data->pos_y);
- if (plane->is_primary || plane->is_cursor)
+ if (plane->type == DRM_PLANE_TYPE_PRIMARY ||
+ plane->type == DRM_PLANE_TYPE_CURSOR)
commit = COMMIT_UNIVERSAL;
if (data->display.is_atomic)
@@ -154,7 +155,7 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
tiling = data->override_tiling ?
data->override_tiling : LOCAL_I915_FORMAT_MOD_Y_TILED;
w = h = mode->vdisplay;
- } else if (plane->is_cursor) {
+ } else if (plane->type == DRM_PLANE_TYPE_CURSOR) {
pixel_format = data->override_fmt ?
data->override_fmt : DRM_FORMAT_ARGB8888;
w = h = 128;
@@ -206,10 +207,10 @@ static void cleanup_crtc(data_t *data, igt_output_t *output, igt_plane_t *plane)
igt_remove_fb(data->gfx_fd, &data->fb_flip);
/* XXX: see the note in prepare_crtc() */
- if (!plane->is_primary) {
+ if (plane->type != DRM_PLANE_TYPE_PRIMARY) {
igt_plane_t *primary;
- primary = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
igt_plane_set_fb(primary, NULL);
}
@@ -236,7 +237,7 @@ static void wait_for_pageflip(int fd)
igt_assert(drmHandleEvent(fd, &evctx) == 0);
}
-static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
+static void test_plane_rotation(data_t *data, int plane_type)
{
igt_display_t *display = &data->display;
igt_output_t *output;
@@ -247,10 +248,10 @@ static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
unsigned int flip_count;
int ret;
- if (plane_type == IGT_PLANE_PRIMARY || plane_type == IGT_PLANE_CURSOR)
+ if (plane_type == DRM_PLANE_TYPE_PRIMARY || plane_type == DRM_PLANE_TYPE_CURSOR)
commit = COMMIT_UNIVERSAL;
- if (plane_type == IGT_PLANE_CURSOR)
+ if (plane_type == DRM_PLANE_TYPE_CURSOR)
igt_require(display->has_cursor_plane);
if (data->display.is_atomic)
@@ -261,7 +262,7 @@ static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
igt_output_set_pipe(output, pipe);
- plane = igt_output_get_plane(output, plane_type);
+ plane = igt_output_get_plane_type(output, plane_type);
igt_require(igt_plane_supports_rotation(plane));
prepare_crtc(data, output, pipe, plane);
@@ -321,7 +322,7 @@ static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
static void test_plane_rotation_ytiled_obj(data_t *data,
igt_output_t *output,
- enum igt_plane plane_type)
+ int plane_type)
{
igt_display_t *display = &data->display;
uint64_t tiling = LOCAL_I915_FORMAT_MOD_Y_TILED;
@@ -335,13 +336,13 @@ static void test_plane_rotation_ytiled_obj(data_t *data,
uint32_t gem_handle;
int ret;
- plane = igt_output_get_plane(output, plane_type);
+ plane = igt_output_get_plane_type(output, plane_type);
igt_require(igt_plane_supports_rotation(plane));
- if (plane_type == IGT_PLANE_PRIMARY || plane_type == IGT_PLANE_CURSOR)
+ if (plane_type == DRM_PLANE_TYPE_PRIMARY || plane_type == DRM_PLANE_TYPE_CURSOR)
commit = COMMIT_UNIVERSAL;
- if (plane_type == IGT_PLANE_CURSOR)
+ if (plane_type == DRM_PLANE_TYPE_CURSOR)
igt_require(display->has_cursor_plane);
if (data->display.is_atomic)
@@ -388,7 +389,7 @@ static void test_plane_rotation_ytiled_obj(data_t *data,
static void test_plane_rotation_exhaust_fences(data_t *data,
igt_output_t *output,
- enum igt_plane plane_type)
+ int plane_type)
{
igt_display_t *display = &data->display;
uint64_t tiling = LOCAL_I915_FORMAT_MOD_Y_TILED;
@@ -404,13 +405,13 @@ static void test_plane_rotation_exhaust_fences(data_t *data,
uint64_t total_aperture_size, total_fbs_size;
int i, ret;
- plane = igt_output_get_plane(output, plane_type);
+ plane = igt_output_get_plane_type(output, plane_type);
igt_require(igt_plane_supports_rotation(plane));
- if (plane_type == IGT_PLANE_PRIMARY || plane_type == IGT_PLANE_CURSOR)
+ if (plane_type == DRM_PLANE_TYPE_PRIMARY || plane_type == DRM_PLANE_TYPE_CURSOR)
commit = COMMIT_UNIVERSAL;
- if (plane_type == IGT_PLANE_CURSOR)
+ if (plane_type == DRM_PLANE_TYPE_CURSOR)
igt_require(display->has_cursor_plane);
if (data->display.is_atomic)
@@ -519,41 +520,41 @@ igt_main
}
igt_subtest_f("primary-rotation-180") {
data.rotation = IGT_ROTATION_180;
- test_plane_rotation(&data, IGT_PLANE_PRIMARY);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
}
igt_subtest_f("sprite-rotation-180") {
data.rotation = IGT_ROTATION_180;
- test_plane_rotation(&data, IGT_PLANE_2);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
}
igt_subtest_f("cursor-rotation-180") {
data.rotation = IGT_ROTATION_180;
- test_plane_rotation(&data, IGT_PLANE_CURSOR);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_CURSOR);
}
igt_subtest_f("primary-rotation-90") {
igt_require(gen >= 9);
data.rotation = IGT_ROTATION_90;
- test_plane_rotation(&data, IGT_PLANE_PRIMARY);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
}
igt_subtest_f("primary-rotation-270") {
igt_require(gen >= 9);
data.rotation = IGT_ROTATION_270;
- test_plane_rotation(&data, IGT_PLANE_PRIMARY);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
}
igt_subtest_f("sprite-rotation-90") {
igt_require(gen >= 9);
data.rotation = IGT_ROTATION_90;
- test_plane_rotation(&data, IGT_PLANE_2);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
}
igt_subtest_f("sprite-rotation-270") {
igt_require(gen >= 9);
data.rotation = IGT_ROTATION_270;
- test_plane_rotation(&data, IGT_PLANE_2);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
}
igt_subtest_f("sprite-rotation-90-pos-100-0") {
@@ -561,7 +562,7 @@ igt_main
data.rotation = IGT_ROTATION_90;
data.pos_x = 100,
data.pos_y = 0;
- test_plane_rotation(&data, IGT_PLANE_2);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
}
igt_subtest_f("bad-pixel-format") {
@@ -570,7 +571,7 @@ igt_main
data.pos_y = 0;
data.rotation = IGT_ROTATION_90;
data.override_fmt = DRM_FORMAT_RGB565;
- test_plane_rotation(&data, IGT_PLANE_PRIMARY);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
}
igt_subtest_f("bad-tiling") {
@@ -578,7 +579,7 @@ igt_main
data.override_fmt = 0;
data.rotation = IGT_ROTATION_90;
data.override_tiling = LOCAL_DRM_FORMAT_MOD_NONE;
- test_plane_rotation(&data, IGT_PLANE_PRIMARY);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
}
igt_subtest_f("primary-rotation-90-flip-stress") {
@@ -586,7 +587,7 @@ igt_main
data.override_tiling = 0;
data.flip_stress = 60;
data.rotation = IGT_ROTATION_90;
- test_plane_rotation(&data, IGT_PLANE_PRIMARY);
+ test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
}
igt_subtest_f("primary-rotation-90-Y-tiled") {
@@ -600,7 +601,7 @@ igt_main
for_each_pipe_with_valid_output(&data.display, pipe, output) {
igt_output_set_pipe(output, pipe);
- test_plane_rotation_ytiled_obj(&data, output, IGT_PLANE_PRIMARY);
+ test_plane_rotation_ytiled_obj(&data, output, DRM_PLANE_TYPE_PRIMARY);
valid_tests++;
break;
@@ -619,7 +620,7 @@ igt_main
for_each_pipe_with_valid_output(&data.display, pipe, output) {
igt_output_set_pipe(output, pipe);
- test_plane_rotation_exhaust_fences(&data, output, IGT_PLANE_PRIMARY);
+ test_plane_rotation_exhaust_fences(&data, output, DRM_PLANE_TYPE_PRIMARY);
valid_tests++;
break;
--
2.11.0.453.g787f75f05
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2017-01-24 23:35 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-24 23:33 [PATCH i-g-t v2 00/33] lib/igt_kms: Implement dynamic plane count support Robert Foss
2017-01-24 23:33 ` [PATCH i-g-t v2 01/33] lib/igt_kms: Add index property to kmstest_plane struct Robert Foss
2017-01-25 8:51 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 02/33] lib/igt_kms: Avoid depencency on static plane count Robert Foss
2017-01-25 8:52 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 03/33] lib/igt_kms: Rename kmstest properties nplanes and plane Robert Foss
2017-01-25 8:52 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 04/33] lib/igt_kms: Implement dynamic plane count support Robert Foss
2017-01-25 10:28 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 05/33] tests/kms_atomic_transition: Add support for dynamic number of planes Robert Foss
2017-01-25 11:22 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 06/33] tests/kms_busy: " Robert Foss
2017-01-25 11:23 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 07/33] tests/kms_chv_cursor_fail: " Robert Foss
2017-01-25 11:31 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 08/33] tests/kms_crtc_background_color: " Robert Foss
2017-01-25 11:32 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 09/33] tests/kms_cursor_crc: " Robert Foss
2017-01-25 11:33 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 10/33] tests/kms_cursor_legacy: " Robert Foss
2017-01-24 23:33 ` [PATCH i-g-t v2 11/33] tests/kms_fbc_crc: " Robert Foss
2017-01-25 12:22 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 12/33] tests/kms_fence_pin_leak: " Robert Foss
2017-01-25 12:25 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 13/33] tests/kms_flip_event_leak: " Robert Foss
2017-01-25 12:28 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 14/33] tests/kms_legacy_colorkey: " Robert Foss
2017-01-25 12:31 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 15/33] tests/kms_mmap_write_crc: " Robert Foss
2017-01-25 12:33 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 16/33] tests/kms_mmio_vs_cs_flip: " Robert Foss
2017-01-25 12:34 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 17/33] tests/kms_panel_fitting: " Robert Foss
2017-01-25 12:38 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 18/33] tests/kms_pipe_color: " Robert Foss
2017-01-25 12:41 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 19/33] tests/kms_plane: " Robert Foss
2017-01-25 12:48 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 20/33] tests/kms_plane_multiple: " Robert Foss
2017-01-26 10:47 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 21/33] tests/kms_plane_scaling: " Robert Foss
2017-01-26 10:52 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 22/33] tests/kms_properties: " Robert Foss
2017-01-26 10:57 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 23/33] tests/kms_psr_sink_crc: " Robert Foss
2017-01-26 11:00 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 24/33] tests/kms_pwrite_crc: " Robert Foss
2017-01-26 11:02 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 25/33] tests/kms_rmfb: " Robert Foss
2017-01-26 11:04 ` Mika Kahola
2017-01-24 23:33 ` Robert Foss [this message]
2017-01-26 11:12 ` [PATCH i-g-t v2 26/33] tests/kms_rotation_crc: " Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 27/33] tests/kms_sink_crc_basic: " Robert Foss
2017-01-26 11:13 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 28/33] tests/kms_universal_plane: " Robert Foss
2017-01-26 11:15 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 29/33] tests/kms_vblank: " Robert Foss
2017-01-26 11:19 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 30/33] tests/prime_mmap_kms: " Robert Foss
2017-01-26 11:21 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 31/33] tests/kms_ccs: " Robert Foss
2017-01-26 11:26 ` Mika Kahola
2017-01-24 23:33 ` [PATCH i-g-t v2 32/33] tests/kms_plane_lowres: " Robert Foss
2017-01-26 11:30 ` Mika Kahola
2017-01-24 23:34 ` [PATCH i-g-t v2 33/33] lib/igt_kms: Remove code obsoleted by dyn n_planes implementation Robert Foss
2017-01-26 11:50 ` Mika Kahola
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=20170124233400.5053-27-robert.foss@collabora.com \
--to=robert.foss@collabora.com \
--cc=daniels@collabora.com \
--cc=gustavo.padovan@collabora.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=maarten.lankhorst@intel.com \
--cc=mika.kahola@intel.com \
--cc=petri.latvala@intel.com \
--cc=tomeu.vizoso@collabora.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;
as well as URLs for NNTP newsgroup(s).