All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
@ 2018-11-13 15:23 Nicholas Kazlauskas
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
                   ` (5 more replies)
  0 siblings, 6 replies; 20+ messages in thread
From: Nicholas Kazlauskas @ 2018-11-13 15:23 UTC (permalink / raw)
  To: igt-dev

The plane_scaling subtests are capable of running on AMDGPU when
not using i915 specific tiling formats and when the test only requires
one scaler per pipe.

This patch removes the forced i915 devid and gen checks from non i915
devices. It also adds logic for getting the number of scalers per pipe
in a way that doesn't only depend on devid. One scaler per pipe is
assumed for AMDGPU.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
 tests/kms_plane_scaling.c | 46 ++++++++++++++++++++++++---------------
 1 file changed, 29 insertions(+), 17 deletions(-)

diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 773162ec..ee29f11e 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -46,11 +46,14 @@ typedef struct {
 	igt_plane_t *plane4;
 } data_t;
 
-static int get_num_scalers(uint32_t devid, enum pipe pipe)
+static int get_num_scalers(data_t* d, enum pipe pipe)
 {
-	igt_require(intel_gen(devid) >= 9);
+	if (!is_i915_device(d->drm_fd))
+		return 1;
+
+	igt_require(intel_gen(d->devid) >= 9);
 
-	if (intel_gen(devid) >= 10)
+	if (intel_gen(d->devid) >= 10)
 		return 2;
 	else if (pipe != PIPE_C)
 		return 2;
@@ -79,6 +82,8 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
 			igt_plane_t *plane, drmModeModeInfo *mode)
 {
 	igt_display_t *display = &data->display;
+	uint64_t tiling = is_i915_device(data->drm_fd) ?
+		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
 
 	cleanup_crtc(data);
 
@@ -90,7 +95,7 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
 	/* allocate fb for plane 1 */
 	igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay,
 			      DRM_FORMAT_XRGB8888,
-			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
+			      tiling,
 			      &data->fb[0]);
 
 	igt_plane_set_fb(plane, &data->fb[0]);
@@ -170,6 +175,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
 {
 	igt_display_t *display = &d->display;
 	igt_plane_t *plane;
+	uint64_t tiling = is_i915_device(d->drm_fd) ?
+		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
 
 	igt_output_set_pipe(output, pipe);
 	for_each_plane_on_pipe(display, pipe, plane) {
@@ -183,8 +190,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
 				if (igt_fb_supported_format(format) &&
 				    can_rotate(d, format))
 					check_scaling_pipe_plane_rot(d, plane, format,
-								     LOCAL_I915_FORMAT_MOD_Y_TILED,
-								     pipe, output, rot);
+								     tiling, pipe,
+								     output, rot);
 			}
 		}
 	}
@@ -264,6 +271,8 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
 	igt_display_t *display = &d->display;
 	drmModeModeInfo *mode;
 	int primary_plane_scaling = 0; /* For now */
+	uint64_t tiling = is_i915_device(display->drm_fd) ?
+		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
 
 	mode = igt_output_get_mode(output);
 
@@ -273,13 +282,13 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
 
 	igt_create_color_pattern_fb(display->drm_fd, 600, 600,
 				    DRM_FORMAT_XRGB8888,
-				    LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
+				    tiling,
 				    .5, .5, .5, &d->fb[1]);
 
 	igt_create_pattern_fb(d->drm_fd,
 			      mode->hdisplay, mode->vdisplay,
 			      DRM_FORMAT_XRGB8888,
-			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
+			      tiling,
 			      &d->fb[2]);
 
 	if (primary_plane_scaling) {
@@ -425,7 +434,7 @@ test_scaler_with_clipping_clamping_scenario(data_t *d, enum pipe pipe, igt_outpu
 {
 	drmModeModeInfo *mode;
 
-	igt_require(get_num_scalers(d->devid, pipe) >= 2);
+	igt_require(get_num_scalers(d, pipe) >= 2);
 
 	mode = igt_output_get_mode(output);
 	d->plane1 = &d->display.pipes[pipe].planes[0];
@@ -480,6 +489,8 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
 	igt_output_t *output1, *output2;
 	drmModeModeInfo *mode1, *mode2;
 	enum pipe pipe1, pipe2;
+	uint64_t tiling = is_i915_device(display->drm_fd) ?
+		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
 
 	cleanup_crtc(d);
 
@@ -492,28 +503,28 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
 	igt_output_set_pipe(output2, pipe2);
 
 	d->plane1 = igt_output_get_plane(output1, 0);
-	d->plane2 = get_num_scalers(d->devid, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
+	d->plane2 = get_num_scalers(d, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
 	d->plane3 = igt_output_get_plane(output2, 0);
-	d->plane4 = get_num_scalers(d->devid, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
+	d->plane4 = get_num_scalers(d, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
 
 	mode1 = igt_output_get_mode(output1);
 	mode2 = igt_output_get_mode(output2);
 
 	igt_create_pattern_fb(d->drm_fd, 600, 600,
 			      DRM_FORMAT_XRGB8888,
-			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[0]);
+			      tiling, &d->fb[0]);
 
 	igt_create_pattern_fb(d->drm_fd, 500, 500,
 			      DRM_FORMAT_XRGB8888,
-			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[1]);
+			      tiling, &d->fb[1]);
 
 	igt_create_pattern_fb(d->drm_fd, 700, 700,
 			      DRM_FORMAT_XRGB8888,
-			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[2]);
+			      tiling, &d->fb[2]);
 
 	igt_create_pattern_fb(d->drm_fd, 400, 400,
 			      DRM_FORMAT_XRGB8888,
-			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[3]);
+			      tiling, &d->fb[3]);
 
 	igt_plane_set_fb(d->plane1, &d->fb[0]);
 	if (d->plane2)
@@ -545,7 +556,8 @@ igt_main
 		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
 		igt_require_pipe_crc(data.drm_fd);
 		igt_display_require(&data.display, data.drm_fd);
-		data.devid = intel_get_drm_devid(data.drm_fd);
+		data.devid = is_i915_device(data.drm_fd) ?
+			intel_get_drm_devid(data.drm_fd) : 0;
 		igt_require(data.display.is_atomic);
 	}
 
@@ -555,7 +567,7 @@ igt_main
 		igt_fixture {
 			igt_display_require_output_on_pipe(&data.display, pipe);
 
-			igt_require(get_num_scalers(data.devid, pipe) > 0);
+			igt_require(get_num_scalers(&data, pipe) > 0);
 		}
 
 		igt_subtest_f("pipe-%s-plane-scaling", kmstest_pipe_name(pipe))
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
@ 2018-11-13 15:23 ` Nicholas Kazlauskas
  2018-11-13 16:58   ` Ville Syrjälä
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Only test i915 features on i915 Nicholas Kazlauskas
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 20+ messages in thread
From: Nicholas Kazlauskas @ 2018-11-13 15:23 UTC (permalink / raw)
  To: igt-dev

The per-pipe plane position subtests are capable of running on
AMDGPU as long as they're not using i915 specific tiling formats.

The test setup already supports being invoked with different tiling
modes so this patch introduces the new 'tiled-none' subtest that runs
without any tiling.

The tiled-none tests are skipped on i915 to retain existing test
coverage and behavior on i915.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
 tests/kms_plane_multiple.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 721afe59..7c8adf94 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -291,12 +291,16 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
 {
 	igt_output_t *output;
 	int connected_outs;
-	int devid = intel_get_drm_devid(data->drm_fd);
 	int n_planes = data->display.pipes[pipe].n_planes;
 
+	if (is_i915_device(data->drm_fd))
+		igt_skip_on(tiling == LOCAL_DRM_FORMAT_MOD_NONE);
+	else
+		igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE);
+
 	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
 	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
-		igt_require(AT_LEAST_GEN(devid, 9));
+		igt_require(AT_LEAST_GEN(intel_get_drm_devid(data->drm_fd), 9));
 
 	if (!opt.user_seed)
 		opt.seed = time(NULL);
@@ -344,6 +348,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
 	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
 		for_each_valid_output_on_pipe(&data->display, pipe, output)
 			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
+
+	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
+		for_each_valid_output_on_pipe(&data->display, pipe, output)
+			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
 }
 
 static data_t data;
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Only test i915 features on i915
  2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
@ 2018-11-13 15:23 ` Nicholas Kazlauskas
  2018-11-13 17:00   ` Ville Syrjälä
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 4/4] tests: Enable plane tests for AMDGPU Nicholas Kazlauskas
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 20+ messages in thread
From: Nicholas Kazlauskas @ 2018-11-13 15:23 UTC (permalink / raw)
  To: igt-dev

These subtests fail on non-i915 hardware because of the devid lookups
and tiling format requirements.

This patch guards the devid/gen checks for i915 only. It also skips
tests that are testing the i915 tiling formats for non i915 drivers.

The tests still won't fully run yet because they'll skip during calls to
igt_assert_plane_visible - those require an i915 extension to get the
CRTC for a pipe.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
 tests/kms_plane_lowres.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
index 0824ef8f..3a89f341 100644
--- a/tests/kms_plane_lowres.c
+++ b/tests/kms_plane_lowres.c
@@ -251,11 +251,14 @@ static void
 test_plane_position(data_t *data, enum pipe pipe, uint64_t modifier)
 {
 	igt_output_t *output;
-	const int gen = intel_gen(intel_get_drm_devid(data->drm_fd));
 
-	if (modifier == LOCAL_I915_FORMAT_MOD_Y_TILED ||
-	    modifier == LOCAL_I915_FORMAT_MOD_Yf_TILED)
-		igt_skip_on(gen < 9);
+	if (is_i915_device(data->drm_fd)) {
+		if (modifier == LOCAL_I915_FORMAT_MOD_Y_TILED ||
+		    modifier == LOCAL_I915_FORMAT_MOD_Yf_TILED)
+			igt_skip_on(intel_gen(intel_get_drm_devid(data->drm_fd)) < 9);
+	} else {
+		igt_skip_on(modifier != LOCAL_DRM_FORMAT_MOD_NONE);
+	}
 
 	for_each_valid_output_on_pipe(&data->display, pipe, output)
 		test_plane_position_with_output(data, pipe, output, modifier);
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 4/4] tests: Enable plane tests for AMDGPU
  2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Only test i915 features on i915 Nicholas Kazlauskas
@ 2018-11-13 15:23 ` Nicholas Kazlauskas
  2018-11-13 16:15 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Patchwork
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 20+ messages in thread
From: Nicholas Kazlauskas @ 2018-11-13 15:23 UTC (permalink / raw)
  To: igt-dev

The i915 specific feature requirements that would have failed subtests
from kms_plane, kms_plane_multiple and kms_plane_scaling have been
conditionally guarded against. These tests can now be run on AMDGPU
with the i915 specific tests skipped appropriately.

Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
 tests/kms_plane.c          | 2 +-
 tests/kms_plane_multiple.c | 2 +-
 tests/kms_plane_scaling.c  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 45e0a304..655b0839 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -590,7 +590,7 @@ igt_main
 	igt_skip_on_simulation();
 
 	igt_fixture {
-		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
+		data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_AMDGPU);
 
 		kmstest_set_vt_graphics_mode();
 
diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 7c8adf94..60b9fc07 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -398,7 +398,7 @@ int main(int argc, char *argv[])
 	igt_skip_on_simulation();
 
 	igt_fixture {
-		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
+		data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_AMDGPU);
 		kmstest_set_vt_graphics_mode();
 		igt_require_pipe_crc(data.drm_fd);
 		igt_display_require(&data.display, data.drm_fd);
diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index ee29f11e..14723106 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -553,7 +553,7 @@ igt_main
 	igt_skip_on_simulation();
 
 	igt_fixture {
-		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
+		data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_AMDGPU);
 		igt_require_pipe_crc(data.drm_fd);
 		igt_display_require(&data.display, data.drm_fd);
 		data.devid = is_i915_device(data.drm_fd) ?
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
  2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
                   ` (2 preceding siblings ...)
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 4/4] tests: Enable plane tests for AMDGPU Nicholas Kazlauskas
@ 2018-11-13 16:15 ` Patchwork
  2018-11-13 16:57 ` [igt-dev] [PATCH i-g-t 1/4] " Ville Syrjälä
  2018-11-13 19:51 ` [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/4] " Patchwork
  5 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-11-13 16:15 UTC (permalink / raw)
  To: Nicholas Kazlauskas; +Cc: igt-dev

== Series Details ==

Series: series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
URL   : https://patchwork.freedesktop.org/series/52430/
State : success

== Summary ==

= CI Bug Log - changes from IGT_4714 -> IGTPW_2056 =

== Summary - WARNING ==

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

  External URL: https://patchwork.freedesktop.org/api/1.0/series/52430/revisions/1/mbox/

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

    igt@kms_flip@basic-flip-vs-modeset:
      fi-kbl-x1275:       SKIP -> PASS +36

    igt@prime_vgem@basic-fence-flip:
      fi-cfl-s3:          SKIP -> PASS

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_contexts:
      fi-icl-u:           NOTRUN -> DMESG-FAIL (fdo#108569)

    igt@kms_frontbuffer_tracking@basic:
      fi-byt-clapper:     PASS -> FAIL (fdo#103167)

    
    ==== Possible fixes ====

    igt@drv_module_reload@basic-reload:
      fi-blb-e6850:       INCOMPLETE (fdo#107718) -> PASS

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-byt-clapper:     FAIL (fdo#107362, fdo#103191) -> PASS

    
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
  fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718
  fdo#108569 https://bugs.freedesktop.org/show_bug.cgi?id=108569


== Participating hosts (53 -> 46) ==

  Additional (1): fi-icl-u 
  Missing    (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-icl-u2 fi-bsw-cyan fi-snb-2520m fi-ctg-p8600 


== Build changes ==

    * IGT: IGT_4714 -> IGTPW_2056

  CI_DRM_5106: 852b9329fbb6ea8bdbb3dac78328aae73d919305 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_2056: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2056/
  IGT_4714: cab148ca3ec904a94d0cd43476cf7e1f8663f906 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools



== Testlist changes ==

+igt@kms_plane_multiple@atomic-pipe-a-tiling-none
+igt@kms_plane_multiple@atomic-pipe-b-tiling-none
+igt@kms_plane_multiple@atomic-pipe-c-tiling-none
+igt@kms_plane_multiple@atomic-pipe-d-tiling-none
+igt@kms_plane_multiple@atomic-pipe-e-tiling-none
+igt@kms_plane_multiple@atomic-pipe-f-tiling-none

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2056/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
  2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
                   ` (3 preceding siblings ...)
  2018-11-13 16:15 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Patchwork
@ 2018-11-13 16:57 ` Ville Syrjälä
  2018-11-13 17:00   ` Kazlauskas, Nicholas
  2018-11-13 19:51 ` [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/4] " Patchwork
  5 siblings, 1 reply; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-13 16:57 UTC (permalink / raw)
  To: Nicholas Kazlauskas; +Cc: igt-dev

On Tue, Nov 13, 2018 at 10:23:47AM -0500, Nicholas Kazlauskas wrote:
> The plane_scaling subtests are capable of running on AMDGPU when
> not using i915 specific tiling formats and when the test only requires
> one scaler per pipe.

I don't see any specific reason why we'd want to use tiled formats on
i915 either. The only exception is the rotation test which requires
Y tiling for 90/270 degrees. I think everything else should be fine
with linear.

> 
> This patch removes the forced i915 devid and gen checks from non i915
> devices. It also adds logic for getting the number of scalers per pipe
> in a way that doesn't only depend on devid. One scaler per pipe is
> assumed for AMDGPU.
> 
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> ---
>  tests/kms_plane_scaling.c | 46 ++++++++++++++++++++++++---------------
>  1 file changed, 29 insertions(+), 17 deletions(-)
> 
> diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
> index 773162ec..ee29f11e 100644
> --- a/tests/kms_plane_scaling.c
> +++ b/tests/kms_plane_scaling.c
> @@ -46,11 +46,14 @@ typedef struct {
>  	igt_plane_t *plane4;
>  } data_t;
>  
> -static int get_num_scalers(uint32_t devid, enum pipe pipe)
> +static int get_num_scalers(data_t* d, enum pipe pipe)
>  {
> -	igt_require(intel_gen(devid) >= 9);
> +	if (!is_i915_device(d->drm_fd))
> +		return 1;
> +
> +	igt_require(intel_gen(d->devid) >= 9);
>  
> -	if (intel_gen(devid) >= 10)
> +	if (intel_gen(d->devid) >= 10)
>  		return 2;
>  	else if (pipe != PIPE_C)
>  		return 2;
> @@ -79,6 +82,8 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
>  			igt_plane_t *plane, drmModeModeInfo *mode)
>  {
>  	igt_display_t *display = &data->display;
> +	uint64_t tiling = is_i915_device(data->drm_fd) ?
> +		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>  
>  	cleanup_crtc(data);
>  
> @@ -90,7 +95,7 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
>  	/* allocate fb for plane 1 */
>  	igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay,
>  			      DRM_FORMAT_XRGB8888,
> -			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
> +			      tiling,
>  			      &data->fb[0]);
>  
>  	igt_plane_set_fb(plane, &data->fb[0]);
> @@ -170,6 +175,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
>  {
>  	igt_display_t *display = &d->display;
>  	igt_plane_t *plane;
> +	uint64_t tiling = is_i915_device(d->drm_fd) ?
> +		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>  
>  	igt_output_set_pipe(output, pipe);
>  	for_each_plane_on_pipe(display, pipe, plane) {
> @@ -183,8 +190,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
>  				if (igt_fb_supported_format(format) &&
>  				    can_rotate(d, format))
>  					check_scaling_pipe_plane_rot(d, plane, format,
> -								     LOCAL_I915_FORMAT_MOD_Y_TILED,
> -								     pipe, output, rot);
> +								     tiling, pipe,
> +								     output, rot);
>  			}
>  		}
>  	}
> @@ -264,6 +271,8 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
>  	igt_display_t *display = &d->display;
>  	drmModeModeInfo *mode;
>  	int primary_plane_scaling = 0; /* For now */
> +	uint64_t tiling = is_i915_device(display->drm_fd) ?
> +		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>  
>  	mode = igt_output_get_mode(output);
>  
> @@ -273,13 +282,13 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
>  
>  	igt_create_color_pattern_fb(display->drm_fd, 600, 600,
>  				    DRM_FORMAT_XRGB8888,
> -				    LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
> +				    tiling,
>  				    .5, .5, .5, &d->fb[1]);
>  
>  	igt_create_pattern_fb(d->drm_fd,
>  			      mode->hdisplay, mode->vdisplay,
>  			      DRM_FORMAT_XRGB8888,
> -			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
> +			      tiling,
>  			      &d->fb[2]);
>  
>  	if (primary_plane_scaling) {
> @@ -425,7 +434,7 @@ test_scaler_with_clipping_clamping_scenario(data_t *d, enum pipe pipe, igt_outpu
>  {
>  	drmModeModeInfo *mode;
>  
> -	igt_require(get_num_scalers(d->devid, pipe) >= 2);
> +	igt_require(get_num_scalers(d, pipe) >= 2);
>  
>  	mode = igt_output_get_mode(output);
>  	d->plane1 = &d->display.pipes[pipe].planes[0];
> @@ -480,6 +489,8 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
>  	igt_output_t *output1, *output2;
>  	drmModeModeInfo *mode1, *mode2;
>  	enum pipe pipe1, pipe2;
> +	uint64_t tiling = is_i915_device(display->drm_fd) ?
> +		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>  
>  	cleanup_crtc(d);
>  
> @@ -492,28 +503,28 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
>  	igt_output_set_pipe(output2, pipe2);
>  
>  	d->plane1 = igt_output_get_plane(output1, 0);
> -	d->plane2 = get_num_scalers(d->devid, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
> +	d->plane2 = get_num_scalers(d, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
>  	d->plane3 = igt_output_get_plane(output2, 0);
> -	d->plane4 = get_num_scalers(d->devid, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
> +	d->plane4 = get_num_scalers(d, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
>  
>  	mode1 = igt_output_get_mode(output1);
>  	mode2 = igt_output_get_mode(output2);
>  
>  	igt_create_pattern_fb(d->drm_fd, 600, 600,
>  			      DRM_FORMAT_XRGB8888,
> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[0]);
> +			      tiling, &d->fb[0]);
>  
>  	igt_create_pattern_fb(d->drm_fd, 500, 500,
>  			      DRM_FORMAT_XRGB8888,
> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[1]);
> +			      tiling, &d->fb[1]);
>  
>  	igt_create_pattern_fb(d->drm_fd, 700, 700,
>  			      DRM_FORMAT_XRGB8888,
> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[2]);
> +			      tiling, &d->fb[2]);
>  
>  	igt_create_pattern_fb(d->drm_fd, 400, 400,
>  			      DRM_FORMAT_XRGB8888,
> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[3]);
> +			      tiling, &d->fb[3]);
>  
>  	igt_plane_set_fb(d->plane1, &d->fb[0]);
>  	if (d->plane2)
> @@ -545,7 +556,8 @@ igt_main
>  		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>  		igt_require_pipe_crc(data.drm_fd);
>  		igt_display_require(&data.display, data.drm_fd);
> -		data.devid = intel_get_drm_devid(data.drm_fd);
> +		data.devid = is_i915_device(data.drm_fd) ?
> +			intel_get_drm_devid(data.drm_fd) : 0;
>  		igt_require(data.display.is_atomic);
>  	}
>  
> @@ -555,7 +567,7 @@ igt_main
>  		igt_fixture {
>  			igt_display_require_output_on_pipe(&data.display, pipe);
>  
> -			igt_require(get_num_scalers(data.devid, pipe) > 0);
> +			igt_require(get_num_scalers(&data, pipe) > 0);
>  		}
>  
>  		igt_subtest_f("pipe-%s-plane-scaling", kmstest_pipe_name(pipe))
> -- 
> 2.17.1
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
@ 2018-11-13 16:58   ` Ville Syrjälä
  2018-11-13 17:02     ` Kazlauskas, Nicholas
  0 siblings, 1 reply; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-13 16:58 UTC (permalink / raw)
  To: Nicholas Kazlauskas; +Cc: igt-dev

On Tue, Nov 13, 2018 at 10:23:48AM -0500, Nicholas Kazlauskas wrote:
> The per-pipe plane position subtests are capable of running on
> AMDGPU as long as they're not using i915 specific tiling formats.
> 
> The test setup already supports being invoked with different tiling
> modes so this patch introduces the new 'tiled-none' subtest that runs
> without any tiling.
> 
> The tiled-none tests are skipped on i915 to retain existing test
> coverage and behavior on i915.
> 
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> ---
>  tests/kms_plane_multiple.c | 12 ++++++++++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
> index 721afe59..7c8adf94 100644
> --- a/tests/kms_plane_multiple.c
> +++ b/tests/kms_plane_multiple.c
> @@ -291,12 +291,16 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>  {
>  	igt_output_t *output;
>  	int connected_outs;
> -	int devid = intel_get_drm_devid(data->drm_fd);
>  	int n_planes = data->display.pipes[pipe].n_planes;
>  
> +	if (is_i915_device(data->drm_fd))
> +		igt_skip_on(tiling == LOCAL_DRM_FORMAT_MOD_NONE);
> +	else
> +		igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE);

Might be nice to switch this over to using igt_plane_has_format_mod().
We'd need to push it down a bit further since we'd need to query each
plane in turn.

Alternatively we could do something a bit simpler:
igt_require(igt_display_has_format_mod(display, DRM_FORMAT_XRGB888,
				       tiling));
igt_require(igt_display_has_format_mod(display, DRM_FORMAT_ARGB888,
				       LOCAL_DRM_FORMAT_MOD_LINEAR));

> +
>  	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
>  	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
> -		igt_require(AT_LEAST_GEN(devid, 9));
> +		igt_require(AT_LEAST_GEN(intel_get_drm_devid(data->drm_fd), 9));
>  
>  	if (!opt.user_seed)
>  		opt.seed = time(NULL);
> @@ -344,6 +348,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>  	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>  		for_each_valid_output_on_pipe(&data->display, pipe, output)
>  			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
> +
> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
>  }
>  
>  static data_t data;
> -- 
> 2.17.1
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
  2018-11-13 16:57 ` [igt-dev] [PATCH i-g-t 1/4] " Ville Syrjälä
@ 2018-11-13 17:00   ` Kazlauskas, Nicholas
  2018-11-13 17:08     ` Ville Syrjälä
  0 siblings, 1 reply; 20+ messages in thread
From: Kazlauskas, Nicholas @ 2018-11-13 17:00 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

On 11/13/18 11:57 AM, Ville Syrjälä wrote:
> On Tue, Nov 13, 2018 at 10:23:47AM -0500, Nicholas Kazlauskas wrote:
>> The plane_scaling subtests are capable of running on AMDGPU when
>> not using i915 specific tiling formats and when the test only requires
>> one scaler per pipe.
> 
> I don't see any specific reason why we'd want to use tiled formats on
> i915 either. The only exception is the rotation test which requires
> Y tiling for 90/270 degrees. I think everything else should be fine
> with linear.

Sure, I don't mind swapping everything to linear on everything but the 
rotation tests as part of a v2 then if it's that fine by you.

Nicholas Kazlauskas

> 
>>
>> This patch removes the forced i915 devid and gen checks from non i915
>> devices. It also adds logic for getting the number of scalers per pipe
>> in a way that doesn't only depend on devid. One scaler per pipe is
>> assumed for AMDGPU.
>>
>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>> ---
>>   tests/kms_plane_scaling.c | 46 ++++++++++++++++++++++++---------------
>>   1 file changed, 29 insertions(+), 17 deletions(-)
>>
>> diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
>> index 773162ec..ee29f11e 100644
>> --- a/tests/kms_plane_scaling.c
>> +++ b/tests/kms_plane_scaling.c
>> @@ -46,11 +46,14 @@ typedef struct {
>>   	igt_plane_t *plane4;
>>   } data_t;
>>   
>> -static int get_num_scalers(uint32_t devid, enum pipe pipe)
>> +static int get_num_scalers(data_t* d, enum pipe pipe)
>>   {
>> -	igt_require(intel_gen(devid) >= 9);
>> +	if (!is_i915_device(d->drm_fd))
>> +		return 1;
>> +
>> +	igt_require(intel_gen(d->devid) >= 9);
>>   
>> -	if (intel_gen(devid) >= 10)
>> +	if (intel_gen(d->devid) >= 10)
>>   		return 2;
>>   	else if (pipe != PIPE_C)
>>   		return 2;
>> @@ -79,6 +82,8 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
>>   			igt_plane_t *plane, drmModeModeInfo *mode)
>>   {
>>   	igt_display_t *display = &data->display;
>> +	uint64_t tiling = is_i915_device(data->drm_fd) ?
>> +		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>>   
>>   	cleanup_crtc(data);
>>   
>> @@ -90,7 +95,7 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
>>   	/* allocate fb for plane 1 */
>>   	igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay,
>>   			      DRM_FORMAT_XRGB8888,
>> -			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
>> +			      tiling,
>>   			      &data->fb[0]);
>>   
>>   	igt_plane_set_fb(plane, &data->fb[0]);
>> @@ -170,6 +175,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
>>   {
>>   	igt_display_t *display = &d->display;
>>   	igt_plane_t *plane;
>> +	uint64_t tiling = is_i915_device(d->drm_fd) ?
>> +		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>>   
>>   	igt_output_set_pipe(output, pipe);
>>   	for_each_plane_on_pipe(display, pipe, plane) {
>> @@ -183,8 +190,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
>>   				if (igt_fb_supported_format(format) &&
>>   				    can_rotate(d, format))
>>   					check_scaling_pipe_plane_rot(d, plane, format,
>> -								     LOCAL_I915_FORMAT_MOD_Y_TILED,
>> -								     pipe, output, rot);
>> +								     tiling, pipe,
>> +								     output, rot);
>>   			}
>>   		}
>>   	}
>> @@ -264,6 +271,8 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
>>   	igt_display_t *display = &d->display;
>>   	drmModeModeInfo *mode;
>>   	int primary_plane_scaling = 0; /* For now */
>> +	uint64_t tiling = is_i915_device(display->drm_fd) ?
>> +		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>>   
>>   	mode = igt_output_get_mode(output);
>>   
>> @@ -273,13 +282,13 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
>>   
>>   	igt_create_color_pattern_fb(display->drm_fd, 600, 600,
>>   				    DRM_FORMAT_XRGB8888,
>> -				    LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
>> +				    tiling,
>>   				    .5, .5, .5, &d->fb[1]);
>>   
>>   	igt_create_pattern_fb(d->drm_fd,
>>   			      mode->hdisplay, mode->vdisplay,
>>   			      DRM_FORMAT_XRGB8888,
>> -			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
>> +			      tiling,
>>   			      &d->fb[2]);
>>   
>>   	if (primary_plane_scaling) {
>> @@ -425,7 +434,7 @@ test_scaler_with_clipping_clamping_scenario(data_t *d, enum pipe pipe, igt_outpu
>>   {
>>   	drmModeModeInfo *mode;
>>   
>> -	igt_require(get_num_scalers(d->devid, pipe) >= 2);
>> +	igt_require(get_num_scalers(d, pipe) >= 2);
>>   
>>   	mode = igt_output_get_mode(output);
>>   	d->plane1 = &d->display.pipes[pipe].planes[0];
>> @@ -480,6 +489,8 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
>>   	igt_output_t *output1, *output2;
>>   	drmModeModeInfo *mode1, *mode2;
>>   	enum pipe pipe1, pipe2;
>> +	uint64_t tiling = is_i915_device(display->drm_fd) ?
>> +		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
>>   
>>   	cleanup_crtc(d);
>>   
>> @@ -492,28 +503,28 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
>>   	igt_output_set_pipe(output2, pipe2);
>>   
>>   	d->plane1 = igt_output_get_plane(output1, 0);
>> -	d->plane2 = get_num_scalers(d->devid, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
>> +	d->plane2 = get_num_scalers(d, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
>>   	d->plane3 = igt_output_get_plane(output2, 0);
>> -	d->plane4 = get_num_scalers(d->devid, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
>> +	d->plane4 = get_num_scalers(d, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
>>   
>>   	mode1 = igt_output_get_mode(output1);
>>   	mode2 = igt_output_get_mode(output2);
>>   
>>   	igt_create_pattern_fb(d->drm_fd, 600, 600,
>>   			      DRM_FORMAT_XRGB8888,
>> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[0]);
>> +			      tiling, &d->fb[0]);
>>   
>>   	igt_create_pattern_fb(d->drm_fd, 500, 500,
>>   			      DRM_FORMAT_XRGB8888,
>> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[1]);
>> +			      tiling, &d->fb[1]);
>>   
>>   	igt_create_pattern_fb(d->drm_fd, 700, 700,
>>   			      DRM_FORMAT_XRGB8888,
>> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[2]);
>> +			      tiling, &d->fb[2]);
>>   
>>   	igt_create_pattern_fb(d->drm_fd, 400, 400,
>>   			      DRM_FORMAT_XRGB8888,
>> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[3]);
>> +			      tiling, &d->fb[3]);
>>   
>>   	igt_plane_set_fb(d->plane1, &d->fb[0]);
>>   	if (d->plane2)
>> @@ -545,7 +556,8 @@ igt_main
>>   		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>>   		igt_require_pipe_crc(data.drm_fd);
>>   		igt_display_require(&data.display, data.drm_fd);
>> -		data.devid = intel_get_drm_devid(data.drm_fd);
>> +		data.devid = is_i915_device(data.drm_fd) ?
>> +			intel_get_drm_devid(data.drm_fd) : 0;
>>   		igt_require(data.display.is_atomic);
>>   	}
>>   
>> @@ -555,7 +567,7 @@ igt_main
>>   		igt_fixture {
>>   			igt_display_require_output_on_pipe(&data.display, pipe);
>>   
>> -			igt_require(get_num_scalers(data.devid, pipe) > 0);
>> +			igt_require(get_num_scalers(&data, pipe) > 0);
>>   		}
>>   
>>   		igt_subtest_f("pipe-%s-plane-scaling", kmstest_pipe_name(pipe))
>> -- 
>> 2.17.1
>>
>> _______________________________________________
>> igt-dev mailing list
>> igt-dev@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/igt-dev
> 

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Only test i915 features on i915
  2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Only test i915 features on i915 Nicholas Kazlauskas
@ 2018-11-13 17:00   ` Ville Syrjälä
  0 siblings, 0 replies; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-13 17:00 UTC (permalink / raw)
  To: Nicholas Kazlauskas; +Cc: igt-dev

On Tue, Nov 13, 2018 at 10:23:49AM -0500, Nicholas Kazlauskas wrote:
> These subtests fail on non-i915 hardware because of the devid lookups
> and tiling format requirements.
> 
> This patch guards the devid/gen checks for i915 only. It also skips
> tests that are testing the i915 tiling formats for non i915 drivers.
> 
> The tests still won't fully run yet because they'll skip during calls to
> igt_assert_plane_visible - those require an i915 extension to get the
> CRTC for a pipe.
> 
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> ---
>  tests/kms_plane_lowres.c | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
> index 0824ef8f..3a89f341 100644
> --- a/tests/kms_plane_lowres.c
> +++ b/tests/kms_plane_lowres.c
> @@ -251,11 +251,14 @@ static void
>  test_plane_position(data_t *data, enum pipe pipe, uint64_t modifier)
>  {
>  	igt_output_t *output;
> -	const int gen = intel_gen(intel_get_drm_devid(data->drm_fd));
>  
> -	if (modifier == LOCAL_I915_FORMAT_MOD_Y_TILED ||
> -	    modifier == LOCAL_I915_FORMAT_MOD_Yf_TILED)
> -		igt_skip_on(gen < 9);
> +	if (is_i915_device(data->drm_fd)) {
> +		if (modifier == LOCAL_I915_FORMAT_MOD_Y_TILED ||
> +		    modifier == LOCAL_I915_FORMAT_MOD_Yf_TILED)
> +			igt_skip_on(intel_gen(intel_get_drm_devid(data->drm_fd)) < 9);
> +	} else {
> +		igt_skip_on(modifier != LOCAL_DRM_FORMAT_MOD_NONE);
> +	}

Anotehr good candidate for the same igt_display_has_format_mod()
logic as the previous patch.

>  
>  	for_each_valid_output_on_pipe(&data->display, pipe, output)
>  		test_plane_position_with_output(data, pipe, output, modifier);
> -- 
> 2.17.1
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-13 16:58   ` Ville Syrjälä
@ 2018-11-13 17:02     ` Kazlauskas, Nicholas
  2018-11-13 17:15       ` Ville Syrjälä
  0 siblings, 1 reply; 20+ messages in thread
From: Kazlauskas, Nicholas @ 2018-11-13 17:02 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

On 11/13/18 11:58 AM, Ville Syrjälä wrote:
> On Tue, Nov 13, 2018 at 10:23:48AM -0500, Nicholas Kazlauskas wrote:
>> The per-pipe plane position subtests are capable of running on
>> AMDGPU as long as they're not using i915 specific tiling formats.
>>
>> The test setup already supports being invoked with different tiling
>> modes so this patch introduces the new 'tiled-none' subtest that runs
>> without any tiling.
>>
>> The tiled-none tests are skipped on i915 to retain existing test
>> coverage and behavior on i915.
>>
>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>> ---
>>   tests/kms_plane_multiple.c | 12 ++++++++++--
>>   1 file changed, 10 insertions(+), 2 deletions(-)
>>
>> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
>> index 721afe59..7c8adf94 100644
>> --- a/tests/kms_plane_multiple.c
>> +++ b/tests/kms_plane_multiple.c
>> @@ -291,12 +291,16 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>>   {
>>   	igt_output_t *output;
>>   	int connected_outs;
>> -	int devid = intel_get_drm_devid(data->drm_fd);
>>   	int n_planes = data->display.pipes[pipe].n_planes;
>>   
>> +	if (is_i915_device(data->drm_fd))
>> +		igt_skip_on(tiling == LOCAL_DRM_FORMAT_MOD_NONE);
>> +	else
>> +		igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE);
> 
> Might be nice to switch this over to using igt_plane_has_format_mod().
> We'd need to push it down a bit further since we'd need to query each
> plane in turn.

That definitely seems like a more elegant solution, I'll fix that up for 
this and the other patch too.

Nicholas Kazlauskas

> 
> Alternatively we could do something a bit simpler:
> igt_require(igt_display_has_format_mod(display, DRM_FORMAT_XRGB888,
> 				       tiling));
> igt_require(igt_display_has_format_mod(display, DRM_FORMAT_ARGB888,
> 				       LOCAL_DRM_FORMAT_MOD_LINEAR));
> 
>> +
>>   	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
>>   	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
>> -		igt_require(AT_LEAST_GEN(devid, 9));
>> +		igt_require(AT_LEAST_GEN(intel_get_drm_devid(data->drm_fd), 9));
>>   
>>   	if (!opt.user_seed)
>>   		opt.seed = time(NULL);
>> @@ -344,6 +348,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>>   	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>>   		for_each_valid_output_on_pipe(&data->display, pipe, output)
>>   			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
>> +
>> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
>> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
>> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
>>   }
>>   
>>   static data_t data;
>> -- 
>> 2.17.1
>>
>> _______________________________________________
>> igt-dev mailing list
>> igt-dev@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/igt-dev
> 

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
  2018-11-13 17:00   ` Kazlauskas, Nicholas
@ 2018-11-13 17:08     ` Ville Syrjälä
  0 siblings, 0 replies; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-13 17:08 UTC (permalink / raw)
  To: Kazlauskas, Nicholas; +Cc: igt-dev

On Tue, Nov 13, 2018 at 05:00:24PM +0000, Kazlauskas, Nicholas wrote:
> On 11/13/18 11:57 AM, Ville Syrjälä wrote:
> > On Tue, Nov 13, 2018 at 10:23:47AM -0500, Nicholas Kazlauskas wrote:
> >> The plane_scaling subtests are capable of running on AMDGPU when
> >> not using i915 specific tiling formats and when the test only requires
> >> one scaler per pipe.
> > 
> > I don't see any specific reason why we'd want to use tiled formats on
> > i915 either. The only exception is the rotation test which requires
> > Y tiling for 90/270 degrees. I think everything else should be fine
> > with linear.
> 
> Sure, I don't mind swapping everything to linear on everything but the 
> rotation tests as part of a v2 then if it's that fine by you.

Yeah, I can't immediately see a reason against that. And if I'm
wrong CI will hopefully explode :)

> 
> Nicholas Kazlauskas
> 
> > 
> >>
> >> This patch removes the forced i915 devid and gen checks from non i915
> >> devices. It also adds logic for getting the number of scalers per pipe
> >> in a way that doesn't only depend on devid. One scaler per pipe is
> >> assumed for AMDGPU.
> >>
> >> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> >> ---
> >>   tests/kms_plane_scaling.c | 46 ++++++++++++++++++++++++---------------
> >>   1 file changed, 29 insertions(+), 17 deletions(-)
> >>
> >> diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
> >> index 773162ec..ee29f11e 100644
> >> --- a/tests/kms_plane_scaling.c
> >> +++ b/tests/kms_plane_scaling.c
> >> @@ -46,11 +46,14 @@ typedef struct {
> >>   	igt_plane_t *plane4;
> >>   } data_t;
> >>   
> >> -static int get_num_scalers(uint32_t devid, enum pipe pipe)
> >> +static int get_num_scalers(data_t* d, enum pipe pipe)
> >>   {
> >> -	igt_require(intel_gen(devid) >= 9);
> >> +	if (!is_i915_device(d->drm_fd))
> >> +		return 1;
> >> +
> >> +	igt_require(intel_gen(d->devid) >= 9);
> >>   
> >> -	if (intel_gen(devid) >= 10)
> >> +	if (intel_gen(d->devid) >= 10)
> >>   		return 2;
> >>   	else if (pipe != PIPE_C)
> >>   		return 2;
> >> @@ -79,6 +82,8 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
> >>   			igt_plane_t *plane, drmModeModeInfo *mode)
> >>   {
> >>   	igt_display_t *display = &data->display;
> >> +	uint64_t tiling = is_i915_device(data->drm_fd) ?
> >> +		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
> >>   
> >>   	cleanup_crtc(data);
> >>   
> >> @@ -90,7 +95,7 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
> >>   	/* allocate fb for plane 1 */
> >>   	igt_create_pattern_fb(data->drm_fd, mode->hdisplay, mode->vdisplay,
> >>   			      DRM_FORMAT_XRGB8888,
> >> -			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
> >> +			      tiling,
> >>   			      &data->fb[0]);
> >>   
> >>   	igt_plane_set_fb(plane, &data->fb[0]);
> >> @@ -170,6 +175,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
> >>   {
> >>   	igt_display_t *display = &d->display;
> >>   	igt_plane_t *plane;
> >> +	uint64_t tiling = is_i915_device(d->drm_fd) ?
> >> +		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
> >>   
> >>   	igt_output_set_pipe(output, pipe);
> >>   	for_each_plane_on_pipe(display, pipe, plane) {
> >> @@ -183,8 +190,8 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
> >>   				if (igt_fb_supported_format(format) &&
> >>   				    can_rotate(d, format))
> >>   					check_scaling_pipe_plane_rot(d, plane, format,
> >> -								     LOCAL_I915_FORMAT_MOD_Y_TILED,
> >> -								     pipe, output, rot);
> >> +								     tiling, pipe,
> >> +								     output, rot);
> >>   			}
> >>   		}
> >>   	}
> >> @@ -264,6 +271,8 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
> >>   	igt_display_t *display = &d->display;
> >>   	drmModeModeInfo *mode;
> >>   	int primary_plane_scaling = 0; /* For now */
> >> +	uint64_t tiling = is_i915_device(display->drm_fd) ?
> >> +		LOCAL_I915_FORMAT_MOD_X_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
> >>   
> >>   	mode = igt_output_get_mode(output);
> >>   
> >> @@ -273,13 +282,13 @@ test_plane_scaling_on_pipe(data_t *d, enum pipe pipe, igt_output_t *output)
> >>   
> >>   	igt_create_color_pattern_fb(display->drm_fd, 600, 600,
> >>   				    DRM_FORMAT_XRGB8888,
> >> -				    LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
> >> +				    tiling,
> >>   				    .5, .5, .5, &d->fb[1]);
> >>   
> >>   	igt_create_pattern_fb(d->drm_fd,
> >>   			      mode->hdisplay, mode->vdisplay,
> >>   			      DRM_FORMAT_XRGB8888,
> >> -			      LOCAL_I915_FORMAT_MOD_X_TILED, /* tiled */
> >> +			      tiling,
> >>   			      &d->fb[2]);
> >>   
> >>   	if (primary_plane_scaling) {
> >> @@ -425,7 +434,7 @@ test_scaler_with_clipping_clamping_scenario(data_t *d, enum pipe pipe, igt_outpu
> >>   {
> >>   	drmModeModeInfo *mode;
> >>   
> >> -	igt_require(get_num_scalers(d->devid, pipe) >= 2);
> >> +	igt_require(get_num_scalers(d, pipe) >= 2);
> >>   
> >>   	mode = igt_output_get_mode(output);
> >>   	d->plane1 = &d->display.pipes[pipe].planes[0];
> >> @@ -480,6 +489,8 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
> >>   	igt_output_t *output1, *output2;
> >>   	drmModeModeInfo *mode1, *mode2;
> >>   	enum pipe pipe1, pipe2;
> >> +	uint64_t tiling = is_i915_device(display->drm_fd) ?
> >> +		LOCAL_I915_FORMAT_MOD_Y_TILED : LOCAL_DRM_FORMAT_MOD_NONE;
> >>   
> >>   	cleanup_crtc(d);
> >>   
> >> @@ -492,28 +503,28 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
> >>   	igt_output_set_pipe(output2, pipe2);
> >>   
> >>   	d->plane1 = igt_output_get_plane(output1, 0);
> >> -	d->plane2 = get_num_scalers(d->devid, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
> >> +	d->plane2 = get_num_scalers(d, pipe1) >= 2 ? igt_output_get_plane(output1, 1) : NULL;
> >>   	d->plane3 = igt_output_get_plane(output2, 0);
> >> -	d->plane4 = get_num_scalers(d->devid, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
> >> +	d->plane4 = get_num_scalers(d, pipe2) >= 2 ? igt_output_get_plane(output2, 1) : NULL;
> >>   
> >>   	mode1 = igt_output_get_mode(output1);
> >>   	mode2 = igt_output_get_mode(output2);
> >>   
> >>   	igt_create_pattern_fb(d->drm_fd, 600, 600,
> >>   			      DRM_FORMAT_XRGB8888,
> >> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[0]);
> >> +			      tiling, &d->fb[0]);
> >>   
> >>   	igt_create_pattern_fb(d->drm_fd, 500, 500,
> >>   			      DRM_FORMAT_XRGB8888,
> >> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[1]);
> >> +			      tiling, &d->fb[1]);
> >>   
> >>   	igt_create_pattern_fb(d->drm_fd, 700, 700,
> >>   			      DRM_FORMAT_XRGB8888,
> >> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[2]);
> >> +			      tiling, &d->fb[2]);
> >>   
> >>   	igt_create_pattern_fb(d->drm_fd, 400, 400,
> >>   			      DRM_FORMAT_XRGB8888,
> >> -			      LOCAL_I915_FORMAT_MOD_Y_TILED, &d->fb[3]);
> >> +			      tiling, &d->fb[3]);
> >>   
> >>   	igt_plane_set_fb(d->plane1, &d->fb[0]);
> >>   	if (d->plane2)
> >> @@ -545,7 +556,8 @@ igt_main
> >>   		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
> >>   		igt_require_pipe_crc(data.drm_fd);
> >>   		igt_display_require(&data.display, data.drm_fd);
> >> -		data.devid = intel_get_drm_devid(data.drm_fd);
> >> +		data.devid = is_i915_device(data.drm_fd) ?
> >> +			intel_get_drm_devid(data.drm_fd) : 0;
> >>   		igt_require(data.display.is_atomic);
> >>   	}
> >>   
> >> @@ -555,7 +567,7 @@ igt_main
> >>   		igt_fixture {
> >>   			igt_display_require_output_on_pipe(&data.display, pipe);
> >>   
> >> -			igt_require(get_num_scalers(data.devid, pipe) > 0);
> >> +			igt_require(get_num_scalers(&data, pipe) > 0);
> >>   		}
> >>   
> >>   		igt_subtest_f("pipe-%s-plane-scaling", kmstest_pipe_name(pipe))
> >> -- 
> >> 2.17.1
> >>
> >> _______________________________________________
> >> igt-dev mailing list
> >> igt-dev@lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/igt-dev
> > 
> 

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-13 17:02     ` Kazlauskas, Nicholas
@ 2018-11-13 17:15       ` Ville Syrjälä
  2018-11-27 18:36         ` Kazlauskas, Nicholas
  0 siblings, 1 reply; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-13 17:15 UTC (permalink / raw)
  To: Kazlauskas, Nicholas; +Cc: igt-dev

On Tue, Nov 13, 2018 at 05:02:04PM +0000, Kazlauskas, Nicholas wrote:
> On 11/13/18 11:58 AM, Ville Syrjälä wrote:
> > On Tue, Nov 13, 2018 at 10:23:48AM -0500, Nicholas Kazlauskas wrote:
> >> The per-pipe plane position subtests are capable of running on
> >> AMDGPU as long as they're not using i915 specific tiling formats.
> >>
> >> The test setup already supports being invoked with different tiling
> >> modes so this patch introduces the new 'tiled-none' subtest that runs
> >> without any tiling.
> >>
> >> The tiled-none tests are skipped on i915 to retain existing test
> >> coverage and behavior on i915.
> >>
> >> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> >> ---
> >>   tests/kms_plane_multiple.c | 12 ++++++++++--
> >>   1 file changed, 10 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
> >> index 721afe59..7c8adf94 100644
> >> --- a/tests/kms_plane_multiple.c
> >> +++ b/tests/kms_plane_multiple.c
> >> @@ -291,12 +291,16 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
> >>   {
> >>   	igt_output_t *output;
> >>   	int connected_outs;
> >> -	int devid = intel_get_drm_devid(data->drm_fd);
> >>   	int n_planes = data->display.pipes[pipe].n_planes;
> >>   
> >> +	if (is_i915_device(data->drm_fd))
> >> +		igt_skip_on(tiling == LOCAL_DRM_FORMAT_MOD_NONE);
> >> +	else
> >> +		igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE);
> > 
> > Might be nice to switch this over to using igt_plane_has_format_mod().
> > We'd need to push it down a bit further since we'd need to query each
> > plane in turn.
> 
> That definitely seems like a more elegant solution, I'll fix that up for 
> this and the other patch too.

I forget, does amggpu support modifiers? If not you will need this:
https://patchwork.freedesktop.org/patch/239808/

> 
> Nicholas Kazlauskas
> 
> > 
> > Alternatively we could do something a bit simpler:
> > igt_require(igt_display_has_format_mod(display, DRM_FORMAT_XRGB888,
> > 				       tiling));
> > igt_require(igt_display_has_format_mod(display, DRM_FORMAT_ARGB888,
> > 				       LOCAL_DRM_FORMAT_MOD_LINEAR));
> > 
> >> +
> >>   	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
> >>   	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
> >> -		igt_require(AT_LEAST_GEN(devid, 9));
> >> +		igt_require(AT_LEAST_GEN(intel_get_drm_devid(data->drm_fd), 9));
> >>   
> >>   	if (!opt.user_seed)
> >>   		opt.seed = time(NULL);
> >> @@ -344,6 +348,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
> >>   	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
> >>   		for_each_valid_output_on_pipe(&data->display, pipe, output)
> >>   			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
> >> +
> >> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
> >> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
> >> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
> >>   }
> >>   
> >>   static data_t data;
> >> -- 
> >> 2.17.1
> >>
> >> _______________________________________________
> >> igt-dev mailing list
> >> igt-dev@lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/igt-dev
> > 
> 

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
  2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
                   ` (4 preceding siblings ...)
  2018-11-13 16:57 ` [igt-dev] [PATCH i-g-t 1/4] " Ville Syrjälä
@ 2018-11-13 19:51 ` Patchwork
  5 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-11-13 19:51 UTC (permalink / raw)
  To: Kazlauskas, Nicholas; +Cc: igt-dev

== Series Details ==

Series: series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU
URL   : https://patchwork.freedesktop.org/series/52430/
State : failure

== Summary ==

= CI Bug Log - changes from IGT_4714_full -> IGTPW_2056_full =

== Summary - FAILURE ==

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

  External URL: https://patchwork.freedesktop.org/api/1.0/series/52430/revisions/1/mbox/

== Possible new issues ==

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

  === IGT changes ===

    ==== Possible regressions ====

    igt@gem_userptr_blits@readonly-unsync:
      shard-glk:          PASS -> TIMEOUT

    
    ==== Warnings ====

    igt@pm_rc6_residency@rc6-accuracy:
      shard-snb:          SKIP -> PASS

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-c:
      shard-kbl:          NOTRUN -> DMESG-WARN (fdo#107956) +1

    igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
      shard-apl:          PASS -> DMESG-WARN (fdo#107956)

    igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-c:
      shard-glk:          NOTRUN -> DMESG-WARN (fdo#107956) +1

    igt@kms_ccs@pipe-b-crc-sprite-planes-basic:
      shard-glk:          PASS -> FAIL (fdo#108145)

    igt@kms_cursor_crc@cursor-128x128-suspend:
      shard-apl:          PASS -> FAIL (fdo#103191, fdo#103232)
      shard-kbl:          PASS -> FAIL (fdo#103191, fdo#103232)

    igt@kms_cursor_crc@cursor-256x256-random:
      shard-glk:          NOTRUN -> FAIL (fdo#103232) +5

    igt@kms_cursor_crc@cursor-64x21-random:
      shard-apl:          PASS -> FAIL (fdo#103232) +2

    igt@kms_cursor_crc@cursor-64x64-onscreen:
      shard-kbl:          PASS -> FAIL (fdo#103232)

    igt@kms_cursor_crc@cursor-64x64-sliding:
      shard-glk:          PASS -> FAIL (fdo#103232) +4

    igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
      shard-glk:          PASS -> DMESG-WARN (fdo#105763, fdo#106538)

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
      shard-apl:          PASS -> FAIL (fdo#103167)

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move:
      shard-glk:          NOTRUN -> FAIL (fdo#103167) +3

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move:
      shard-glk:          PASS -> FAIL (fdo#103167) +11

    igt@kms_plane@plane-position-covered-pipe-a-planes:
      shard-apl:          PASS -> FAIL (fdo#103166) +2

    igt@kms_plane_alpha_blend@pipe-c-alpha-transparant-fb:
      shard-glk:          NOTRUN -> FAIL (fdo#108145) +6

    igt@kms_plane_multiple@atomic-pipe-a-tiling-y:
      shard-glk:          PASS -> FAIL (fdo#103166) +2

    igt@kms_plane_multiple@atomic-pipe-a-tiling-yf:
      shard-kbl:          PASS -> FAIL (fdo#103166) +1

    igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
      shard-glk:          NOTRUN -> FAIL (fdo#103166) +3

    igt@kms_properties@connector-properties-atomic:
      shard-glk:          NOTRUN -> FAIL (fdo#108642)
      shard-hsw:          NOTRUN -> FAIL (fdo#108642)

    igt@kms_setmode@basic:
      shard-apl:          PASS -> FAIL (fdo#99912)

    
    ==== Possible fixes ====

    igt@drv_suspend@forcewake:
      shard-kbl:          INCOMPLETE (fdo#103665) -> PASS

    igt@drv_suspend@shrink:
      shard-snb:          INCOMPLETE (fdo#106886, fdo#105411) -> PASS

    igt@gem_ppgtt@blt-vs-render-ctx0:
      shard-kbl:          INCOMPLETE (fdo#103665, fdo#106887, fdo#106023) -> PASS

    igt@kms_available_modes_crc@available_mode_test_crc:
      shard-apl:          FAIL (fdo#106641) -> PASS

    igt@kms_cursor_crc@cursor-128x42-sliding:
      shard-kbl:          FAIL (fdo#103232) -> PASS +3

    igt@kms_cursor_crc@cursor-256x85-random:
      shard-glk:          FAIL (fdo#103232) -> PASS +2

    igt@kms_cursor_crc@cursor-64x21-sliding:
      shard-apl:          FAIL (fdo#103232) -> PASS +3

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
      shard-apl:          FAIL (fdo#103167) -> PASS

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-render:
      shard-glk:          FAIL (fdo#103167) -> PASS

    igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
      shard-apl:          FAIL (fdo#103166) -> PASS +1

    igt@kms_plane_multiple@atomic-pipe-b-tiling-yf:
      shard-kbl:          FAIL (fdo#103166) -> PASS

    igt@kms_setmode@basic:
      shard-hsw:          FAIL (fdo#99912) -> PASS
      shard-kbl:          FAIL (fdo#99912) -> PASS

    igt@kms_universal_plane@universal-plane-pipe-a-functional:
      shard-glk:          FAIL (fdo#103166) -> PASS +2

    igt@kms_vblank@pipe-a-query-busy:
      shard-snb:          INCOMPLETE (fdo#105411) -> PASS

    igt@perf_pmu@busy-start-vcs0:
      shard-apl:          DMESG-WARN (fdo#105602, fdo#103558) -> PASS

    
  fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
  fdo#103558 https://bugs.freedesktop.org/show_bug.cgi?id=103558
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
  fdo#105602 https://bugs.freedesktop.org/show_bug.cgi?id=105602
  fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
  fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
  fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
  fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
  fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
  fdo#106887 https://bugs.freedesktop.org/show_bug.cgi?id=106887
  fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
  fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
  fdo#108642 https://bugs.freedesktop.org/show_bug.cgi?id=108642
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (6 -> 5) ==

  Missing    (1): shard-skl 


== Build changes ==

    * IGT: IGT_4714 -> IGTPW_2056

  CI_DRM_5106: 852b9329fbb6ea8bdbb3dac78328aae73d919305 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_2056: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2056/
  IGT_4714: cab148ca3ec904a94d0cd43476cf7e1f8663f906 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2056/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-13 17:15       ` Ville Syrjälä
@ 2018-11-27 18:36         ` Kazlauskas, Nicholas
  2018-11-27 19:00           ` Ville Syrjälä
  0 siblings, 1 reply; 20+ messages in thread
From: Kazlauskas, Nicholas @ 2018-11-27 18:36 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

On 11/13/18 12:15 PM, Ville Syrjälä wrote:
> On Tue, Nov 13, 2018 at 05:02:04PM +0000, Kazlauskas, Nicholas wrote:
>> On 11/13/18 11:58 AM, Ville Syrjälä wrote:
>>> On Tue, Nov 13, 2018 at 10:23:48AM -0500, Nicholas Kazlauskas wrote:
>>>> The per-pipe plane position subtests are capable of running on
>>>> AMDGPU as long as they're not using i915 specific tiling formats.
>>>>
>>>> The test setup already supports being invoked with different tiling
>>>> modes so this patch introduces the new 'tiled-none' subtest that runs
>>>> without any tiling.
>>>>
>>>> The tiled-none tests are skipped on i915 to retain existing test
>>>> coverage and behavior on i915.
>>>>
>>>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>>>> ---
>>>>    tests/kms_plane_multiple.c | 12 ++++++++++--
>>>>    1 file changed, 10 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
>>>> index 721afe59..7c8adf94 100644
>>>> --- a/tests/kms_plane_multiple.c
>>>> +++ b/tests/kms_plane_multiple.c
>>>> @@ -291,12 +291,16 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>>>>    {
>>>>    	igt_output_t *output;
>>>>    	int connected_outs;
>>>> -	int devid = intel_get_drm_devid(data->drm_fd);
>>>>    	int n_planes = data->display.pipes[pipe].n_planes;
>>>>    
>>>> +	if (is_i915_device(data->drm_fd))
>>>> +		igt_skip_on(tiling == LOCAL_DRM_FORMAT_MOD_NONE);
>>>> +	else
>>>> +		igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE);
>>>
>>> Might be nice to switch this over to using igt_plane_has_format_mod().
>>> We'd need to push it down a bit further since we'd need to query each
>>> plane in turn.
>>
>> That definitely seems like a more elegant solution, I'll fix that up for
>> this and the other patch too.
> 
> I forget, does amggpu support modifiers? If not you will need this:
> https://patchwork.freedesktop.org/patch/239808/

There's no IN_FORMATS support for AMDGPU yet. I had tried adding it with 
a quick patch but it causes a lot of breakages in userspace so it's not 
as simple as I had hoped.

I have v2s that make use of the new helpers but without IN_FOMRATS 
support they skip. The patch series you linked would be really nice to 
have in this case since it still allows the helpers to be used without 
it. I don't mind leaving a R-B on the patch you linked.

But if there isn't any plan to have it merged I can always just do 
something like:

igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE && 
!igt_plane_has_format_mod(...))

Let me know what you think.

Nicholas Kazlauskas

> 
>>
>> Nicholas Kazlauskas
>>
>>>
>>> Alternatively we could do something a bit simpler:
>>> igt_require(igt_display_has_format_mod(display, DRM_FORMAT_XRGB888,
>>> 				       tiling));
>>> igt_require(igt_display_has_format_mod(display, DRM_FORMAT_ARGB888,
>>> 				       LOCAL_DRM_FORMAT_MOD_LINEAR));
>>>
>>>> +
>>>>    	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
>>>>    	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
>>>> -		igt_require(AT_LEAST_GEN(devid, 9));
>>>> +		igt_require(AT_LEAST_GEN(intel_get_drm_devid(data->drm_fd), 9));
>>>>    
>>>>    	if (!opt.user_seed)
>>>>    		opt.seed = time(NULL);
>>>> @@ -344,6 +348,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>>>>    	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>>>>    		for_each_valid_output_on_pipe(&data->display, pipe, output)
>>>>    			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
>>>> +
>>>> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
>>>> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
>>>> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
>>>>    }
>>>>    
>>>>    static data_t data;
>>>> -- 
>>>> 2.17.1
>>>>
>>>> _______________________________________________
>>>> igt-dev mailing list
>>>> igt-dev@lists.freedesktop.org
>>>> https://lists.freedesktop.org/mailman/listinfo/igt-dev
>>>
>>
> 

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-27 18:36         ` Kazlauskas, Nicholas
@ 2018-11-27 19:00           ` Ville Syrjälä
  0 siblings, 0 replies; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-27 19:00 UTC (permalink / raw)
  To: Kazlauskas, Nicholas; +Cc: igt-dev

On Tue, Nov 27, 2018 at 06:36:53PM +0000, Kazlauskas, Nicholas wrote:
> On 11/13/18 12:15 PM, Ville Syrjälä wrote:
> > On Tue, Nov 13, 2018 at 05:02:04PM +0000, Kazlauskas, Nicholas wrote:
> >> On 11/13/18 11:58 AM, Ville Syrjälä wrote:
> >>> On Tue, Nov 13, 2018 at 10:23:48AM -0500, Nicholas Kazlauskas wrote:
> >>>> The per-pipe plane position subtests are capable of running on
> >>>> AMDGPU as long as they're not using i915 specific tiling formats.
> >>>>
> >>>> The test setup already supports being invoked with different tiling
> >>>> modes so this patch introduces the new 'tiled-none' subtest that runs
> >>>> without any tiling.
> >>>>
> >>>> The tiled-none tests are skipped on i915 to retain existing test
> >>>> coverage and behavior on i915.
> >>>>
> >>>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> >>>> ---
> >>>>    tests/kms_plane_multiple.c | 12 ++++++++++--
> >>>>    1 file changed, 10 insertions(+), 2 deletions(-)
> >>>>
> >>>> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
> >>>> index 721afe59..7c8adf94 100644
> >>>> --- a/tests/kms_plane_multiple.c
> >>>> +++ b/tests/kms_plane_multiple.c
> >>>> @@ -291,12 +291,16 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
> >>>>    {
> >>>>    	igt_output_t *output;
> >>>>    	int connected_outs;
> >>>> -	int devid = intel_get_drm_devid(data->drm_fd);
> >>>>    	int n_planes = data->display.pipes[pipe].n_planes;
> >>>>    
> >>>> +	if (is_i915_device(data->drm_fd))
> >>>> +		igt_skip_on(tiling == LOCAL_DRM_FORMAT_MOD_NONE);
> >>>> +	else
> >>>> +		igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE);
> >>>
> >>> Might be nice to switch this over to using igt_plane_has_format_mod().
> >>> We'd need to push it down a bit further since we'd need to query each
> >>> plane in turn.
> >>
> >> That definitely seems like a more elegant solution, I'll fix that up for
> >> this and the other patch too.
> > 
> > I forget, does amggpu support modifiers? If not you will need this:
> > https://patchwork.freedesktop.org/patch/239808/
> 
> There's no IN_FORMATS support for AMDGPU yet. I had tried adding it with 
> a quick patch but it causes a lot of breakages in userspace so it's not 
> as simple as I had hoped.
> 
> I have v2s that make use of the new helpers but without IN_FOMRATS 
> support they skip. The patch series you linked would be really nice to 
> have in this case since it still allows the helpers to be used without 
> it. I don't mind leaving a R-B on the patch you linked.
> 
> But if there isn't any plan to have it merged I can always just do 
> something like:
> 
> igt_skip_on(tiling != LOCAL_DRM_FORMAT_MOD_NONE && 
> !igt_plane_has_format_mod(...))
> 
> Let me know what you think.

I'd like to have that patch merged. So r-b away please.

IIRC the point of contention was whether my proposed behaviour is
actually acceptable for driver w/o modifiers. Since you seem to have
one I think an r-b from you would be a good indicator that my
plan was in fact sane ;)


-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-30 13:55   ` Ville Syrjälä
@ 2018-11-30 13:57     ` Kazlauskas, Nicholas
  0 siblings, 0 replies; 20+ messages in thread
From: Kazlauskas, Nicholas @ 2018-11-30 13:57 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

On 11/30/18 8:55 AM, Ville Syrjälä wrote:
> On Wed, Nov 28, 2018 at 09:56:18AM -0500, Nicholas Kazlauskas wrote:
>> The per-pipe plane position subtests are capable of running on
>> AMDGPU as long as they're not using i915 specific tiling formats.
>>
>> The test setup already supports being invoked with different tiling
>> modes so this patch introduces the new 'tiled-none' subtest that runs
>> without any tiling.
>>
>> The tiled-none tests are skipped on i915 to retain existing test
>> coverage and behavior on i915.
>>
>> v2: Use igt_display_has_format_mod helpers (Ville)
>>
>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>> ---
>>   tests/kms_plane_multiple.c | 25 ++++++++++++++++++-------
>>   1 file changed, 18 insertions(+), 7 deletions(-)
>>
>> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
>> index 721afe59..e67e21a5 100644
>> --- a/tests/kms_plane_multiple.c
>> +++ b/tests/kms_plane_multiple.c
>> @@ -157,6 +157,10 @@ create_fb_for_mode_position(data_t *data, igt_output_t *output, drmModeModeInfo
>>   
>>   	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>>   
>> +	igt_skip_on(!igt_display_has_format_mod(&data->display,
>> +						DRM_FORMAT_XRGB8888,
>> +						tiling));
>> +
>>   	fb_id = igt_create_fb(data->drm_fd,
>>   			      mode->hdisplay, mode->vdisplay,
>>   			      DRM_FORMAT_XRGB8888,
>> @@ -210,6 +214,8 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>>   	y[primary->index] = 0;
>>   	for (i = 0; i < max_planes; i++) {
>>   		igt_plane_t *plane = igt_output_get_plane(output, i);
>> +		uint32_t plane_format;
>> +		uint64_t plane_tiling;
>>   
>>   		if (plane->type == DRM_PLANE_TYPE_PRIMARY)
>>   			continue;
>> @@ -223,10 +229,16 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>>   
>>   		data->plane[i] = plane;
>>   
>> +		plane_format = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888;
>> +		plane_tiling = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling;
>> +
>> +		igt_skip_on(!igt_plane_has_format_mod(plane, plane_format,
>> +						      plane_tiling));
>> +
>>   		igt_create_color_fb(data->drm_fd,
>>   				    size[i], size[i],
>> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888,
>> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling,
>> +				    plane_format,
>> +				    plane_tiling,
>>   				    color->red, color->green, color->blue,
>>   				    &data->fb[i]);
>>   
>> @@ -291,13 +303,8 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>>   {
>>   	igt_output_t *output;
>>   	int connected_outs;
>> -	int devid = intel_get_drm_devid(data->drm_fd);
>>   	int n_planes = data->display.pipes[pipe].n_planes;
>>   
>> -	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
>> -	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
>> -		igt_require(AT_LEAST_GEN(devid, 9));
>> -
>>   	if (!opt.user_seed)
>>   		opt.seed = time(NULL);
>>   
>> @@ -344,6 +351,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>>   	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>>   		for_each_valid_output_on_pipe(&data->display, pipe, output)
>>   			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
>> +
>> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
>> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
>> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
> 
> I'm thinking we should s/none/linear/ all over. IIRC someone did that
> in the kernel already, but igt hasn't gotten the same treatment.
> 
> Anyways patch lgtm so
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Thanks for the review.

The linear/none naming seems kind of inconsistent so I just went with 
what the other plane tests were using for "convention".

Nicholas Kazlauskas

> 
>>   }
>>   
>>   static data_t data;
>> -- 
>> 2.17.1
> 

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-28 14:56 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
  2018-11-29 21:48   ` Wentland, Harry
@ 2018-11-30 13:55   ` Ville Syrjälä
  2018-11-30 13:57     ` Kazlauskas, Nicholas
  1 sibling, 1 reply; 20+ messages in thread
From: Ville Syrjälä @ 2018-11-30 13:55 UTC (permalink / raw)
  To: Nicholas Kazlauskas; +Cc: igt-dev

On Wed, Nov 28, 2018 at 09:56:18AM -0500, Nicholas Kazlauskas wrote:
> The per-pipe plane position subtests are capable of running on
> AMDGPU as long as they're not using i915 specific tiling formats.
> 
> The test setup already supports being invoked with different tiling
> modes so this patch introduces the new 'tiled-none' subtest that runs
> without any tiling.
> 
> The tiled-none tests are skipped on i915 to retain existing test
> coverage and behavior on i915.
> 
> v2: Use igt_display_has_format_mod helpers (Ville)
> 
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> ---
>  tests/kms_plane_multiple.c | 25 ++++++++++++++++++-------
>  1 file changed, 18 insertions(+), 7 deletions(-)
> 
> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
> index 721afe59..e67e21a5 100644
> --- a/tests/kms_plane_multiple.c
> +++ b/tests/kms_plane_multiple.c
> @@ -157,6 +157,10 @@ create_fb_for_mode_position(data_t *data, igt_output_t *output, drmModeModeInfo
>  
>  	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>  
> +	igt_skip_on(!igt_display_has_format_mod(&data->display,
> +						DRM_FORMAT_XRGB8888,
> +						tiling));
> +
>  	fb_id = igt_create_fb(data->drm_fd,
>  			      mode->hdisplay, mode->vdisplay,
>  			      DRM_FORMAT_XRGB8888,
> @@ -210,6 +214,8 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>  	y[primary->index] = 0;
>  	for (i = 0; i < max_planes; i++) {
>  		igt_plane_t *plane = igt_output_get_plane(output, i);
> +		uint32_t plane_format;
> +		uint64_t plane_tiling;
>  
>  		if (plane->type == DRM_PLANE_TYPE_PRIMARY)
>  			continue;
> @@ -223,10 +229,16 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>  
>  		data->plane[i] = plane;
>  
> +		plane_format = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888;
> +		plane_tiling = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling;
> +
> +		igt_skip_on(!igt_plane_has_format_mod(plane, plane_format,
> +						      plane_tiling));
> +
>  		igt_create_color_fb(data->drm_fd,
>  				    size[i], size[i],
> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888,
> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling,
> +				    plane_format,
> +				    plane_tiling,
>  				    color->red, color->green, color->blue,
>  				    &data->fb[i]);
>  
> @@ -291,13 +303,8 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>  {
>  	igt_output_t *output;
>  	int connected_outs;
> -	int devid = intel_get_drm_devid(data->drm_fd);
>  	int n_planes = data->display.pipes[pipe].n_planes;
>  
> -	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
> -	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
> -		igt_require(AT_LEAST_GEN(devid, 9));
> -
>  	if (!opt.user_seed)
>  		opt.seed = time(NULL);
>  
> @@ -344,6 +351,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>  	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>  		for_each_valid_output_on_pipe(&data->display, pipe, output)
>  			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
> +
> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);

I'm thinking we should s/none/linear/ all over. IIRC someone did that
in the kernel already, but igt hasn't gotten the same treatment.

Anyways patch lgtm so
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

>  }
>  
>  static data_t data;
> -- 
> 2.17.1

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-29 21:48   ` Wentland, Harry
@ 2018-11-30 13:35     ` Kazlauskas, Nicholas
  0 siblings, 0 replies; 20+ messages in thread
From: Kazlauskas, Nicholas @ 2018-11-30 13:35 UTC (permalink / raw)
  To: Wentland, Harry, igt-dev

On 11/29/18 4:48 PM, Wentland, Harry wrote:
> 
> 
> On 2018-11-28 9:56 a.m., Nicholas Kazlauskas wrote:
>> The per-pipe plane position subtests are capable of running on
>> AMDGPU as long as they're not using i915 specific tiling formats.
>>
>> The test setup already supports being invoked with different tiling
>> modes so this patch introduces the new 'tiled-none' subtest that runs
>> without any tiling.
>>
>> The tiled-none tests are skipped on i915 to retain existing test
>> coverage and behavior on i915.
>>
>> v2: Use igt_display_has_format_mod helpers (Ville)
>>
>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>> ---
>>   tests/kms_plane_multiple.c | 25 ++++++++++++++++++-------
>>   1 file changed, 18 insertions(+), 7 deletions(-)
>>
>> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
>> index 721afe59..e67e21a5 100644
>> --- a/tests/kms_plane_multiple.c
>> +++ b/tests/kms_plane_multiple.c
>> @@ -157,6 +157,10 @@ create_fb_for_mode_position(data_t *data, igt_output_t *output, drmModeModeInfo
>>   
>>   	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>>   
>> +	igt_skip_on(!igt_display_has_format_mod(&data->display,
>> +						DRM_FORMAT_XRGB8888,
>> +						tiling));
>> +
>>   	fb_id = igt_create_fb(data->drm_fd,
>>   			      mode->hdisplay, mode->vdisplay,
>>   			      DRM_FORMAT_XRGB8888,
>> @@ -210,6 +214,8 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>>   	y[primary->index] = 0;
>>   	for (i = 0; i < max_planes; i++) {
>>   		igt_plane_t *plane = igt_output_get_plane(output, i);
>> +		uint32_t plane_format;
>> +		uint64_t plane_tiling;
>>   
>>   		if (plane->type == DRM_PLANE_TYPE_PRIMARY)
>>   			continue;
>> @@ -223,10 +229,16 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>>   
>>   		data->plane[i] = plane;
>>   
>> +		plane_format = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888;
>> +		plane_tiling = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling;
>> +
>> +		igt_skip_on(!igt_plane_has_format_mod(plane, plane_format,
>> +						      plane_tiling));
>> +
>>   		igt_create_color_fb(data->drm_fd,
>>   				    size[i], size[i],
>> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888,
>> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling,
>> +				    plane_format,
>> +				    plane_tiling,
>>   				    color->red, color->green, color->blue,
>>   				    &data->fb[i]);
>>   
>> @@ -291,13 +303,8 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>>   {
>>   	igt_output_t *output;
>>   	int connected_outs;
>> -	int devid = intel_get_drm_devid(data->drm_fd);
>>   	int n_planes = data->display.pipes[pipe].n_planes;
>>   
>> -	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
>> -	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
>> -		igt_require(AT_LEAST_GEN(devid, 9));
>> -
> 
> Should we leave this hunk as-is since we only do tiling-none on non-i915 for now?
> 
> Not sure what the implications are of taking this check out.
> 
> Harry

This is the common implementation for the other tests as well as you can 
see below:

test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
...
test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
...

Within those helpers is the intel_get_drm_devid - it fails the test when 
the drm_fd isn't i915.

The igt_plane_has_format_mod/igt_display_has_format_mod helpers take 
care of this check correctly (later in the test) since i915 does support 
IN_FORMATS.

This is the same case for the other patches in the series where I 
removed these checks and replaced them with the helpers.

Nicholas Kazlauskas

> 
>>   	if (!opt.user_seed)
>>   		opt.seed = time(NULL);
>>   
>> @@ -344,6 +351,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>>   	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>>   		for_each_valid_output_on_pipe(&data->display, pipe, output)
>>   			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
>> +
>> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
>> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
>> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
>>   }
>>   
>>   static data_t data;
>>

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-28 14:56 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
@ 2018-11-29 21:48   ` Wentland, Harry
  2018-11-30 13:35     ` Kazlauskas, Nicholas
  2018-11-30 13:55   ` Ville Syrjälä
  1 sibling, 1 reply; 20+ messages in thread
From: Wentland, Harry @ 2018-11-29 21:48 UTC (permalink / raw)
  To: Kazlauskas, Nicholas, igt-dev



On 2018-11-28 9:56 a.m., Nicholas Kazlauskas wrote:
> The per-pipe plane position subtests are capable of running on
> AMDGPU as long as they're not using i915 specific tiling formats.
> 
> The test setup already supports being invoked with different tiling
> modes so this patch introduces the new 'tiled-none' subtest that runs
> without any tiling.
> 
> The tiled-none tests are skipped on i915 to retain existing test
> coverage and behavior on i915.
> 
> v2: Use igt_display_has_format_mod helpers (Ville)
> 
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> ---
>  tests/kms_plane_multiple.c | 25 ++++++++++++++++++-------
>  1 file changed, 18 insertions(+), 7 deletions(-)
> 
> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
> index 721afe59..e67e21a5 100644
> --- a/tests/kms_plane_multiple.c
> +++ b/tests/kms_plane_multiple.c
> @@ -157,6 +157,10 @@ create_fb_for_mode_position(data_t *data, igt_output_t *output, drmModeModeInfo
>  
>  	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>  
> +	igt_skip_on(!igt_display_has_format_mod(&data->display,
> +						DRM_FORMAT_XRGB8888,
> +						tiling));
> +
>  	fb_id = igt_create_fb(data->drm_fd,
>  			      mode->hdisplay, mode->vdisplay,
>  			      DRM_FORMAT_XRGB8888,
> @@ -210,6 +214,8 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>  	y[primary->index] = 0;
>  	for (i = 0; i < max_planes; i++) {
>  		igt_plane_t *plane = igt_output_get_plane(output, i);
> +		uint32_t plane_format;
> +		uint64_t plane_tiling;
>  
>  		if (plane->type == DRM_PLANE_TYPE_PRIMARY)
>  			continue;
> @@ -223,10 +229,16 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
>  
>  		data->plane[i] = plane;
>  
> +		plane_format = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888;
> +		plane_tiling = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling;
> +
> +		igt_skip_on(!igt_plane_has_format_mod(plane, plane_format,
> +						      plane_tiling));
> +
>  		igt_create_color_fb(data->drm_fd,
>  				    size[i], size[i],
> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888,
> -				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling,
> +				    plane_format,
> +				    plane_tiling,
>  				    color->red, color->green, color->blue,
>  				    &data->fb[i]);
>  
> @@ -291,13 +303,8 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
>  {
>  	igt_output_t *output;
>  	int connected_outs;
> -	int devid = intel_get_drm_devid(data->drm_fd);
>  	int n_planes = data->display.pipes[pipe].n_planes;
>  
> -	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
> -	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
> -		igt_require(AT_LEAST_GEN(devid, 9));
> -

Should we leave this hunk as-is since we only do tiling-none on non-i915 for now?

Not sure what the implications are of taking this check out.

Harry

>  	if (!opt.user_seed)
>  		opt.seed = time(NULL);
>  
> @@ -344,6 +351,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>  	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
>  		for_each_valid_output_on_pipe(&data->display, pipe, output)
>  			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
> +
> +	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
> +		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
>  }
>  
>  static data_t data;
> 
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests
  2018-11-28 14:56 [igt-dev] [PATCH i-g-t 1/4] " Nicholas Kazlauskas
@ 2018-11-28 14:56 ` Nicholas Kazlauskas
  2018-11-29 21:48   ` Wentland, Harry
  2018-11-30 13:55   ` Ville Syrjälä
  0 siblings, 2 replies; 20+ messages in thread
From: Nicholas Kazlauskas @ 2018-11-28 14:56 UTC (permalink / raw)
  To: igt-dev

The per-pipe plane position subtests are capable of running on
AMDGPU as long as they're not using i915 specific tiling formats.

The test setup already supports being invoked with different tiling
modes so this patch introduces the new 'tiled-none' subtest that runs
without any tiling.

The tiled-none tests are skipped on i915 to retain existing test
coverage and behavior on i915.

v2: Use igt_display_has_format_mod helpers (Ville)

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
 tests/kms_plane_multiple.c | 25 ++++++++++++++++++-------
 1 file changed, 18 insertions(+), 7 deletions(-)

diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 721afe59..e67e21a5 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -157,6 +157,10 @@ create_fb_for_mode_position(data_t *data, igt_output_t *output, drmModeModeInfo
 
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
+	igt_skip_on(!igt_display_has_format_mod(&data->display,
+						DRM_FORMAT_XRGB8888,
+						tiling));
+
 	fb_id = igt_create_fb(data->drm_fd,
 			      mode->hdisplay, mode->vdisplay,
 			      DRM_FORMAT_XRGB8888,
@@ -210,6 +214,8 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
 	y[primary->index] = 0;
 	for (i = 0; i < max_planes; i++) {
 		igt_plane_t *plane = igt_output_get_plane(output, i);
+		uint32_t plane_format;
+		uint64_t plane_tiling;
 
 		if (plane->type == DRM_PLANE_TYPE_PRIMARY)
 			continue;
@@ -223,10 +229,16 @@ prepare_planes(data_t *data, enum pipe pipe_id, color_t *color,
 
 		data->plane[i] = plane;
 
+		plane_format = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888;
+		plane_tiling = data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling;
+
+		igt_skip_on(!igt_plane_has_format_mod(plane, plane_format,
+						      plane_tiling));
+
 		igt_create_color_fb(data->drm_fd,
 				    size[i], size[i],
-				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? DRM_FORMAT_ARGB8888 : DRM_FORMAT_XRGB8888,
-				    data->plane[i]->type == DRM_PLANE_TYPE_CURSOR ? LOCAL_DRM_FORMAT_MOD_NONE : tiling,
+				    plane_format,
+				    plane_tiling,
 				    color->red, color->green, color->blue,
 				    &data->fb[i]);
 
@@ -291,13 +303,8 @@ test_plane_position(data_t *data, enum pipe pipe, uint64_t tiling)
 {
 	igt_output_t *output;
 	int connected_outs;
-	int devid = intel_get_drm_devid(data->drm_fd);
 	int n_planes = data->display.pipes[pipe].n_planes;
 
-	if ((tiling == LOCAL_I915_FORMAT_MOD_Y_TILED ||
-	     tiling == LOCAL_I915_FORMAT_MOD_Yf_TILED))
-		igt_require(AT_LEAST_GEN(devid, 9));
-
 	if (!opt.user_seed)
 		opt.seed = time(NULL);
 
@@ -344,6 +351,10 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
 	igt_subtest_f("atomic-pipe-%s-tiling-yf", kmstest_pipe_name(pipe))
 		for_each_valid_output_on_pipe(&data->display, pipe, output)
 			test_plane_position(data, pipe, LOCAL_I915_FORMAT_MOD_Yf_TILED);
+
+	igt_subtest_f("atomic-pipe-%s-tiling-none", kmstest_pipe_name(pipe))
+		for_each_valid_output_on_pipe(&data->display, pipe, output)
+			test_plane_position(data, pipe, LOCAL_DRM_FORMAT_MOD_NONE);
 }
 
 static data_t data;
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2018-11-30 13:58 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-13 15:23 [igt-dev] [PATCH i-g-t 1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Nicholas Kazlauskas
2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
2018-11-13 16:58   ` Ville Syrjälä
2018-11-13 17:02     ` Kazlauskas, Nicholas
2018-11-13 17:15       ` Ville Syrjälä
2018-11-27 18:36         ` Kazlauskas, Nicholas
2018-11-27 19:00           ` Ville Syrjälä
2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 3/4] tests/kms_plane_lowres: Only test i915 features on i915 Nicholas Kazlauskas
2018-11-13 17:00   ` Ville Syrjälä
2018-11-13 15:23 ` [igt-dev] [PATCH i-g-t 4/4] tests: Enable plane tests for AMDGPU Nicholas Kazlauskas
2018-11-13 16:15 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] tests/kms_plane_scaling: Add support for testing AMDGPU Patchwork
2018-11-13 16:57 ` [igt-dev] [PATCH i-g-t 1/4] " Ville Syrjälä
2018-11-13 17:00   ` Kazlauskas, Nicholas
2018-11-13 17:08     ` Ville Syrjälä
2018-11-13 19:51 ` [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/4] " Patchwork
2018-11-28 14:56 [igt-dev] [PATCH i-g-t 1/4] " Nicholas Kazlauskas
2018-11-28 14:56 ` [igt-dev] [PATCH i-g-t 2/4] tests/kms_plane_multiple: Add tiled-none plane position subtests Nicholas Kazlauskas
2018-11-29 21:48   ` Wentland, Harry
2018-11-30 13:35     ` Kazlauskas, Nicholas
2018-11-30 13:55   ` Ville Syrjälä
2018-11-30 13:57     ` Kazlauskas, Nicholas

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.