All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with
@ 2020-07-01 19:08 Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 1/9] lib/igt_kms: Add support for display with non-contiguous pipes Mohammed Khajapasha
                   ` (9 more replies)
  0 siblings, 10 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Add support for display with non-contiguous pipes.

Mohammed Khajapasha (9):
  lib/igt_kms: Add support for display with non-contiguous pipes
  lib/igt_kms: Add igt_require_pipe() function
  tests/kms_cursor_legacy: Read crtc id for enable pipes
  tests/kms_lease: Get pipe from crtc for enable pipes
  tests/kms_lease: Read crtc id for a valid pipe
  lib/kms: Skip igt test cases for disabled display pipes
  tests/kms: Skip kms test cases for disabled pipes
  tests/kms_atomic_transition: Set modeset for enable pipes only
  i915/gem_eio: Set modeset for enable pipes

 lib/igt_kms.c                 | 87 +++++++++++++++++++++++++++++++----
 lib/igt_kms.h                 | 26 +++++++++--
 tests/i915/gem_eio.c          |  2 +
 tests/kms_atomic_transition.c |  9 +++-
 tests/kms_color.c             |  2 +-
 tests/kms_color_chamelium.c   |  2 +-
 tests/kms_concurrent.c        |  2 +-
 tests/kms_cursor_legacy.c     | 13 ++++--
 tests/kms_lease.c             |  8 +++-
 tests/kms_pipe_crc_basic.c    |  4 +-
 tests/kms_plane.c             |  2 +-
 tests/kms_plane_lowres.c      |  2 +-
 tests/kms_plane_multiple.c    |  2 +-
 tests/kms_universal_plane.c   | 12 ++---
 14 files changed, 135 insertions(+), 38 deletions(-)

-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 1/9] lib/igt_kms: Add support for display with non-contiguous pipes
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 2/9] lib/igt_kms: Add igt_require_pipe() function Mohammed Khajapasha
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Add support for non-contiguous pipe display by allocating
upper bound pipes array for display. Set the pipe enum name
to igt pipe for enabled pipes in drm.

v4:
    Changed n_pipes to IGT_MAX_PIPES irrespective of device (Arkadiusz).
    Modified i915_dev to bool is_i915_dev (Arkadiusz).
    Included __get_crtc_mask_for_pipe() to get CRTC mask
    for a pipe (Arkadiusz).
    Included note for i915 check for non-contiguous pipes (Arkadiusz).

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 lib/igt_kms.c | 65 +++++++++++++++++++++++++++++++++++++++++++++------
 lib/igt_kms.h | 13 +++++++----
 2 files changed, 66 insertions(+), 12 deletions(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 27f85859..b9bfe4e3 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -1873,6 +1873,21 @@ void igt_display_reset(igt_display_t *display)
 static void igt_fill_plane_format_mod(igt_display_t *display, igt_plane_t *plane);
 static void igt_fill_display_format_mod(igt_display_t *display);
 
+/* Get crtc mask for a pipe using crtc id */
+static int
+__get_crtc_mask_for_pipe(drmModeRes *resources, igt_pipe_t *pipe)
+{
+	int offset;
+
+	for (offset = 0; offset < resources->count_crtcs; offset++)
+	{
+		if(pipe->crtc_id == resources->crtcs[offset])
+			break;
+	}
+
+	return (1 << offset);
+}
+
 /**
  * igt_display_require:
  * @display: a pointer to an #igt_display_t structure
@@ -1889,12 +1904,14 @@ void igt_display_require(igt_display_t *display, int drm_fd)
 	drmModeRes *resources;
 	drmModePlaneRes *plane_resources;
 	int i;
+	bool is_i915_dev;
 
 	memset(display, 0, sizeof(igt_display_t));
 
 	LOG_INDENT(display, "init");
 
 	display->drm_fd = drm_fd;
+	is_i915_dev = is_i915_device(drm_fd);
 
 	resources = drmModeGetResources(display->drm_fd);
 	if (!resources)
@@ -1921,10 +1938,37 @@ void igt_display_require(igt_display_t *display, int drm_fd)
 	 * We cache the number of pipes, that number is a physical limit of the
 	 * hardware and cannot change of time (for now, at least).
 	 */
-	display->n_pipes = resources->count_crtcs;
+	display->n_pipes = IGT_MAX_PIPES;
 	display->pipes = calloc(sizeof(igt_pipe_t), display->n_pipes);
 	igt_assert_f(display->pipes, "Failed to allocate memory for %d pipes\n", display->n_pipes);
 
+	for (i = 0; i < resources->count_crtcs; i++) {
+		igt_pipe_t *pipe;
+
+		/*
+		 * In i915, with non-contiguous pipes display, crtc mapping is not always
+		 * same as pipe mapping, get right pipe enum for a crtc using
+		 * GET_PIPE_FROM_CRTC_ID ioctl for a pipe.
+		 */
+		if (is_i915_dev) {
+			struct drm_i915_get_pipe_from_crtc_id get_pipe;
+
+			get_pipe.pipe = 0;
+			get_pipe.crtc_id =  resources->crtcs[i];
+			do_ioctl(display->drm_fd,
+					DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID, &get_pipe);
+			pipe = &display->pipes[get_pipe.pipe];
+			pipe->pipe = get_pipe.pipe;
+		}
+		else {
+			pipe = &display->pipes[i];
+			pipe->pipe = i;
+		}
+
+		pipe->enabled = true;
+		pipe->crtc_id = resources->crtcs[i];
+	}
+
 	drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 	if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
 		display->is_atomic = 1;
@@ -1955,25 +1999,26 @@ void igt_display_require(igt_display_t *display, int drm_fd)
 	for_each_pipe(display, i) {
 		igt_pipe_t *pipe = &display->pipes[i];
 		igt_plane_t *plane;
-		int p = 1;
+		int p = 1, crtc_mask = 0;
 		int j, type;
 		uint8_t last_plane = 0, n_planes = 0;
 
-		pipe->crtc_id = resources->crtcs[i];
 		pipe->display = display;
-		pipe->pipe = i;
 		pipe->plane_cursor = -1;
 		pipe->plane_primary = -1;
 		pipe->planes = NULL;
 
 		igt_fill_pipe_props(display, pipe, IGT_NUM_CRTC_PROPS, igt_crtc_prop_names);
 
+		/* Get valid crtc index from crtcs for a pipe */
+		crtc_mask = __get_crtc_mask_for_pipe(resources, pipe);
+
 		/* count number of valid planes */
 		for (j = 0; j < display->n_planes; j++) {
 			drmModePlane *drm_plane = display->planes[j].drm_plane;
 			igt_assert(drm_plane);
 
-			if (drm_plane->possible_crtcs & (1 << i))
+			if (drm_plane->possible_crtcs & crtc_mask)
 				n_planes++;
 		}
 
@@ -1987,7 +2032,7 @@ void igt_display_require(igt_display_t *display, int drm_fd)
 			igt_plane_t *global_plane = &display->planes[j];
 			drmModePlane *drm_plane = global_plane->drm_plane;
 
-			if (!(drm_plane->possible_crtcs & (1 << i)))
+			if (!(drm_plane->possible_crtcs & crtc_mask))
 				continue;
 
 			type = global_plane->type;
@@ -2409,12 +2454,18 @@ static bool output_is_internal_panel(igt_output_t *output)
 
 igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display, igt_output_t **chosen_outputs)
 {
-	unsigned full_pipe_mask = (1 << (display->n_pipes)) - 1, assigned_pipes = 0;
+	unsigned full_pipe_mask, assigned_pipes = 0;
 	igt_output_t *output;
 	int i, j;
 
 	memset(chosen_outputs, 0, sizeof(*chosen_outputs) * display->n_pipes);
 
+	for( i = 0; i < display->n_pipes; i++) {
+		igt_pipe_t *pipe = &display->pipes[i];
+		if (pipe->enabled)
+			full_pipe_mask |= (1 << i);
+	}
+
 	/*
 	 * Try to assign all outputs to the first available CRTC for
 	 * it, start with the outputs restricted to 1 pipe, then increase
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 416e737c..0b5e707a 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -341,6 +341,7 @@ typedef struct igt_plane {
 struct igt_pipe {
 	igt_display_t *display;
 	enum pipe pipe;
+	bool enabled;
 
 	int n_planes;
 	int plane_cursor;
@@ -510,8 +511,9 @@ static inline bool igt_output_is_connected(igt_output_t *output)
  * depends upon runtime probing of the actual kms driver that is being tested.
  * Use #for_each_pipe_static instead.
  */
-#define for_each_pipe(display, pipe)					\
-	for (pipe = 0; assert(igt_can_fail()), pipe < igt_display_get_n_pipes(display); pipe++)
+#define for_each_pipe(display, pipe) \
+	for_each_pipe_static(pipe) \
+		for_each_if((display)->pipes[(pipe)].enabled)
 
 /**
  * for_each_pipe_with_valid_output:
@@ -530,8 +532,9 @@ static inline bool igt_output_is_connected(igt_output_t *output)
 	for (int con__ = (pipe) = 0; \
 	     assert(igt_can_fail()), (pipe) < igt_display_get_n_pipes((display)) && con__ < (display)->n_outputs; \
 	     con__ = (con__ + 1 < (display)->n_outputs) ? con__ + 1 : (pipe = pipe + 1, 0)) \
-		for_each_if ((((output) = &(display)->outputs[con__]), \
-			     igt_pipe_connector_valid((pipe), (output))))
+		 for_each_if((display)->pipes[pipe].enabled) \
+			for_each_if ((((output) = &(display)->outputs[con__]), \
+						igt_pipe_connector_valid((pipe), (output))))
 
 igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display,
 					   igt_output_t **chosen_outputs);
@@ -549,7 +552,7 @@ igt_output_t **__igt_pipe_populate_outputs(igt_display_t *display,
 #define for_each_pipe_with_single_output(display, pipe, output) \
 	for (igt_output_t *__outputs[(display)->n_pipes], \
 	     **__output = __igt_pipe_populate_outputs((display), __outputs); \
-	     __output < &__outputs[(display)->n_pipes]; __output++) \
+		 __output < &__outputs[(display)->n_pipes]; __output++) \
 		for_each_if (*__output && \
 			     ((pipe) = (__output - __outputs), (output) = *__output, 1))
 
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 2/9] lib/igt_kms: Add igt_require_pipe() function
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 1/9] lib/igt_kms: Add support for display with non-contiguous pipes Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 3/9] tests/kms_cursor_legacy: Read crtc id for enable pipes Mohammed Khajapasha
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Add igt_require_pipe() fn to check whether a pipe is enabled or not

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 lib/igt_kms.c | 17 +++++++++++++++++
 lib/igt_kms.h | 13 +++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index b9bfe4e3..acf0559e 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -1873,6 +1873,23 @@ void igt_display_reset(igt_display_t *display)
 static void igt_fill_plane_format_mod(igt_display_t *display, igt_plane_t *plane);
 static void igt_fill_display_format_mod(igt_display_t *display);
 
+/*
+ * igt_require_pipe:
+ * @display: pointer to igt_display_t
+ * @pipe: pipe which need to check
+ *
+ * Skip a (sub-)test if the pipe not enabled.
+ *
+ * Should be used everywhere where a test checks pipe and skip
+ * test when pipe is not enabled.
+ */
+void igt_require_pipe(igt_display_t *display, enum pipe pipe)
+{
+	igt_skip_on_f(!display->pipes[pipe].enabled,
+			"Pipe %s does not exist or not enabled\n",
+			kmstest_pipe_name(pipe));
+}
+
 /* Get crtc mask for a pipe using crtc id */
 static int
 __get_crtc_mask_for_pipe(drmModeRes *resources, igt_pipe_t *pipe)
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 0b5e707a..36b15147 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -857,4 +857,17 @@ int igt_connector_sysfs_open(int drm_fd,
 			     drmModeConnector *connector);
 uint32_t igt_reduce_format(uint32_t format);
 
+/*
+ * igt_require_pipe:
+ * @display: pointer to igt_display_t
+ * @pipe: pipe which need to check
+ *
+ * Skip a (sub-)test if the pipe not enabled.
+ *
+ * Should be used everywhere where a test checks pipe and skip
+ * test when pipe is not enabled.
+ */
+void igt_require_pipe(igt_display_t *display,
+		enum pipe pipe);
+
 #endif /* __IGT_KMS_H__ */
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 3/9] tests/kms_cursor_legacy: Read crtc id for enable pipes
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 1/9] lib/igt_kms: Add support for display with non-contiguous pipes Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 2/9] lib/igt_kms: Add igt_require_pipe() function Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 4/9] tests/kms_lease: Get pipe from crtc " Mohammed Khajapasha
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Read the crtc ids for enable pipes only in display.

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 tests/kms_cursor_legacy.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 344442e8..e631f087 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -58,7 +58,7 @@ static void stress(igt_display_t *display,
 	uint64_t *results;
 	bool torture;
 	int n;
-	unsigned crtc_id[IGT_MAX_PIPES], num_crtcs;
+	unsigned crtc_id[IGT_MAX_PIPES] = {0}, num_crtcs;
 
 	torture = false;
 	if (num_children < 0) {
@@ -84,8 +84,10 @@ static void stress(igt_display_t *display,
 		}
 	} else {
 		num_crtcs = 1;
-		arg.crtc_id = crtc_id[0] = display->pipes[pipe].crtc_id;
-		do_ioctl(display->drm_fd, DRM_IOCTL_MODE_CURSOR, &arg);
+		if(display->pipes[pipe].enabled) {
+			arg.crtc_id = crtc_id[0] = display->pipes[pipe].crtc_id;
+			do_ioctl(display->drm_fd, DRM_IOCTL_MODE_CURSOR, &arg);
+		}
 	}
 
 	arg.flags = mode;
@@ -103,7 +105,8 @@ static void stress(igt_display_t *display,
 		hars_petruska_f54_1_random_perturb(child);
 		igt_until_timeout(timeout) {
 			arg.crtc_id = crtc_id[hars_petruska_f54_1_random_unsafe() % num_crtcs];
-			do_ioctl(display->drm_fd, DRM_IOCTL_MODE_CURSOR, &arg);
+			if (arg.crtc_id)
+				do_ioctl(display->drm_fd, DRM_IOCTL_MODE_CURSOR, &arg);
 			count++;
 		}
 
@@ -1390,7 +1393,7 @@ igt_main
 			errno = 0;
 
 			igt_fixture {
-				igt_skip_on(n >= display.n_pipes);
+				igt_require_pipe(&display, n);
 			}
 
 			igt_subtest_f("pipe-%s-single-bo", kmstest_pipe_name(n))
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 4/9] tests/kms_lease: Get pipe from crtc for enable pipes
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (2 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 3/9] tests/kms_cursor_legacy: Read crtc id for enable pipes Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 5/9] tests/kms_lease: Read crtc id for a valid pipe Mohammed Khajapasha
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Get pipe from drm crtc for enabled pipes only.

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 tests/kms_lease.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 2e6cf9b0..75a1149c 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -684,6 +684,8 @@ static void lease_unleased_crtc(data_t *data)
 	/* Find another CRTC that we don't control */
 	bad_crtc_id = 0;
 	for (p = 0; bad_crtc_id == 0 && p < data->master.display.n_pipes; p++) {
+		if(!(data->master.display.pipes[p].enabled))
+			continue;
 		if (pipe_to_crtc_id(&data->master.display, p) != data->crtc_id)
 			bad_crtc_id = pipe_to_crtc_id(&data->master.display, p);
 	}
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 5/9] tests/kms_lease: Read crtc id for a valid pipe
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (3 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 4/9] tests/kms_lease: Get pipe from crtc " Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 6/9] lib/kms: Skip igt test cases for disabled display pipes Mohammed Khajapasha
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Read crtc id for enabled pipes only.

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 tests/kms_lease.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 75a1149c..4045fbca 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -136,9 +136,11 @@ static enum pipe crtc_id_to_pipe(igt_display_t *display, uint32_t crtc_id)
 {
 	enum pipe pipe;
 
-	for (pipe = 0; pipe < display->n_pipes; pipe++)
-		if (display->pipes[pipe].crtc_id == crtc_id)
+	for (pipe = 0; pipe < display->n_pipes; pipe++) {
+		if (display->pipes[pipe].enabled &&
+				display->pipes[pipe].crtc_id == crtc_id)
 			return pipe;
+	}
 	return -1;
 }
 
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 6/9] lib/kms: Skip igt test cases for disabled display pipes
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (4 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 5/9] tests/kms_lease: Read crtc id for a valid pipe Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 7/9] tests/kms: Skip kms test cases for disabled pipes Mohammed Khajapasha
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Skip igt test cases for disabled pipes.

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 lib/igt_kms.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index acf0559e..b4029757 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -2192,8 +2192,7 @@ void igt_display_require_output_on_pipe(igt_display_t *display, enum pipe pipe)
 {
 	igt_output_t *output;
 
-	igt_skip_on_f(pipe >= igt_display_get_n_pipes(display),
-		      "Pipe %s does not exist.\n", kmstest_pipe_name(pipe));
+	igt_require_pipe(display, pipe);
 
 	for_each_valid_output_on_pipe(display, pipe, output)
 		return;
@@ -2548,7 +2547,7 @@ igt_output_t *igt_get_single_output_for_pipe(igt_display_t *display, enum pipe p
 	igt_output_t *chosen_outputs[display->n_pipes];
 
 	igt_assert(pipe != PIPE_NONE);
-	igt_require(pipe < display->n_pipes);
+	igt_require_pipe(display, pipe);
 
 	__igt_pipe_populate_outputs(display, chosen_outputs);
 
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 7/9] tests/kms: Skip kms test cases for disabled pipes
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (5 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 6/9] lib/kms: Skip igt test cases for disabled display pipes Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 8/9] tests/kms_atomic_transition: Set modeset for enable pipes only Mohammed Khajapasha
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Skip the kms test cases for disabled pipes with
non-contiguous pipe display.

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 tests/kms_color.c           |  2 +-
 tests/kms_color_chamelium.c |  2 +-
 tests/kms_concurrent.c      |  2 +-
 tests/kms_pipe_crc_basic.c  |  4 ++--
 tests/kms_plane.c           |  2 +-
 tests/kms_plane_lowres.c    |  2 +-
 tests/kms_plane_multiple.c  |  2 +-
 tests/kms_universal_plane.c | 12 ++++++------
 8 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/tests/kms_color.c b/tests/kms_color.c
index 7f2fbd4a..8c50ee66 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -628,7 +628,7 @@ run_tests_for_pipe(data_t *data, enum pipe p)
 	igt_fixture {
 		igt_require_pipe_crc(data->drm_fd);
 
-		igt_require(p < data->display.n_pipes);
+		igt_require_pipe(&data->display, p);
 
 		pipe = &data->display.pipes[p];
 		igt_require(pipe->n_planes >= 0);
diff --git a/tests/kms_color_chamelium.c b/tests/kms_color_chamelium.c
index 7f5a911c..9fb87a75 100644
--- a/tests/kms_color_chamelium.c
+++ b/tests/kms_color_chamelium.c
@@ -519,7 +519,7 @@ run_tests_for_pipe(data_t *data, enum pipe p)
 
 	igt_fixture {
 
-		igt_require(p < data->display.n_pipes);
+		igt_require_pipe(data->display, p);
 
 		pipe = &data->display.pipes[p];
 		igt_require(pipe->n_planes >= 0);
diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
index 89016563..f332d332 100644
--- a/tests/kms_concurrent.c
+++ b/tests/kms_concurrent.c
@@ -320,7 +320,7 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
 	igt_fixture {
 		int valid_tests = 0;
 
-		igt_skip_on(pipe >= data->display.n_pipes);
+		igt_require_pipe(&data->display, pipe);
 		igt_require(data->display.pipes[pipe].n_planes > 0);
 
 		for_each_valid_output_on_pipe(&data->display, pipe, output)
diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
index d169b7bd..82856efa 100644
--- a/tests/kms_pipe_crc_basic.c
+++ b/tests/kms_pipe_crc_basic.c
@@ -71,7 +71,7 @@ static void test_read_crc(data_t *data, enum pipe pipe, unsigned flags)
 	igt_crc_t *crcs = NULL;
 	int c, j;
 
-	igt_skip_on(pipe >= data->display.n_pipes);
+	igt_require_pipe(display, pipe);
 	igt_require_f(output, "No connector found for pipe %s\n",
 		      kmstest_pipe_name(pipe));
 
@@ -187,7 +187,7 @@ igt_main
 			test_read_crc(&data, pipe, TEST_SEQUENCE | TEST_NONBLOCK);
 
 		igt_subtest_f("suspend-read-crc-pipe-%s", kmstest_pipe_name(pipe)) {
-			igt_skip_on(pipe >= data.display.n_pipes);
+			igt_require_pipe(&data.display, pipe);
 
 			test_read_crc(&data, pipe, 0);
 
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index c6ead813..7d3f95d1 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -940,7 +940,7 @@ static void
 run_tests_for_pipe_plane(data_t *data, enum pipe pipe)
 {
 	igt_fixture {
-		igt_skip_on(pipe >= data->display.n_pipes);
+		igt_require_pipe(&data->display, pipe);
 		igt_require(data->display.pipes[pipe].n_planes > 0);
 	}
 
diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
index 012b25e3..a1f1fade 100644
--- a/tests/kms_plane_lowres.c
+++ b/tests/kms_plane_lowres.c
@@ -259,7 +259,7 @@ test_planes_on_pipe(data_t *data, uint64_t modifier)
 	igt_plane_t *plane;
 	unsigned tested = 0;
 
-	igt_skip_on(data->pipe >= data->display.n_pipes);
+	igt_require_pipe(&data->display, data->pipe);
 	igt_display_require_output_on_pipe(&data->display, data->pipe);
 	igt_skip_on(!igt_display_has_format_mod(&data->display,
 						DRM_FORMAT_XRGB8888, modifier));
diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 6cf060b3..520ec1fe 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -378,7 +378,7 @@ static void
 run_tests_for_pipe(data_t *data, enum pipe pipe)
 {
 	igt_fixture {
-		igt_skip_on(pipe >= data->display.n_pipes);
+		igt_require_pipe(&data->display, pipe);
 		igt_require(data->display.pipes[pipe].n_planes > 0);
 	}
 
diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
index 676be633..46d6d180 100644
--- a/tests/kms_universal_plane.c
+++ b/tests/kms_universal_plane.c
@@ -135,7 +135,7 @@ functional_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	int num_primary = 0, num_cursor = 0;
 	int i;
 
-	igt_skip_on(pipe >= display->n_pipes);
+	igt_require_pipe(display, pipe);
 
 	igt_info("Testing connector %s using pipe %s\n", igt_output_name(output),
 		 kmstest_pipe_name(pipe));
@@ -364,7 +364,7 @@ sanity_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	int i;
 	int expect;
 
-	igt_skip_on(pipe >= data->display.n_pipes);
+	igt_require_pipe(&data->display, pipe);
 
 	igt_output_set_pipe(output, pipe);
 	mode = igt_output_get_mode(output);
@@ -476,7 +476,7 @@ pageflip_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	fd_set fds;
 	int ret = 0;
 
-	igt_skip_on(pipe >= data->display.n_pipes);
+	igt_require_pipe(&data->display, pipe);
 
 	igt_output_set_pipe(output, pipe);
 
@@ -577,7 +577,7 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	int r, g, b;
 	int count1, count2;
 
-	igt_skip_on(pipe >= display->n_pipes);
+	igt_require_pipe(display, pipe);
 	igt_require(display->has_cursor_plane);
 
 	igt_output_set_pipe(output, pipe);
@@ -705,7 +705,7 @@ gen9_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	int ret = 0;
 
 	igt_skip_on(data->gen < 9);
-	igt_skip_on(pipe >= data->display.n_pipes);
+	igt_require_pipe(&data->display, pipe);
 
 	igt_output_set_pipe(output, pipe);
 
@@ -750,7 +750,7 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
 	igt_fixture {
 		int valid_tests = 0;
 
-		igt_skip_on(pipe >= data->display.n_pipes);
+		igt_require_pipe(&data->display, pipe);
 
 		for_each_valid_output_on_pipe(&data->display, pipe, output)
 			valid_tests++;
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 8/9] tests/kms_atomic_transition: Set modeset for enable pipes only
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (6 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 7/9] tests/kms: Skip kms test cases for disabled pipes Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 9/9] i915/gem_eio: Set modeset for enable pipes Mohammed Khajapasha
  2020-07-01 19:23 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_kms: Add support for display with (rev3) Patchwork
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Set the modeset for enable pipes only by using max iteration
from enable pipe count.

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 tests/kms_atomic_transition.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/tests/kms_atomic_transition.c b/tests/kms_atomic_transition.c
index 754a4969..8c1c1d93 100644
--- a/tests/kms_atomic_transition.c
+++ b/tests/kms_atomic_transition.c
@@ -737,8 +737,8 @@ static void collect_crcs_mask(igt_pipe_crc_t **pipe_crcs, unsigned mask, igt_crc
 static void run_modeset_tests(igt_display_t *display, int howmany, bool nonblocking, bool fencing)
 {
 	struct igt_fb fbs[2];
-	int i, j;
-	unsigned iter_max = 1 << display->n_pipes;
+	int i, j = 0;
+	unsigned iter_max;
 	igt_pipe_crc_t *pipe_crcs[IGT_MAX_PIPES] = { 0 };
 	igt_output_t *output;
 	unsigned width = 0, height = 0;
@@ -762,6 +762,9 @@ static void run_modeset_tests(igt_display_t *display, int howmany, bool nonblock
 		igt_plane_t *plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
 		drmModeModeInfo *mode = NULL;
 
+		/* count enable pipes to set max iteration */
+		j += 1;
+
 		if (is_i915_device(display->drm_fd))
 			pipe_crcs[i] = igt_pipe_crc_new(display->drm_fd, i, INTEL_PIPE_CRC_SOURCE_AUTO);
 
@@ -785,6 +788,8 @@ static void run_modeset_tests(igt_display_t *display, int howmany, bool nonblock
 			igt_plane_set_fb(plane, NULL);
 	}
 
+	iter_max = 1 << j;
+
 	igt_display_commit2(display, COMMIT_ATOMIC);
 
 	for (i = 0; i < iter_max; i++) {
-- 
2.24.1

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

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

* [igt-dev] [PATCH i-g-t 9/9] i915/gem_eio: Set modeset for enable pipes
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (7 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 8/9] tests/kms_atomic_transition: Set modeset for enable pipes only Mohammed Khajapasha
@ 2020-07-01 19:08 ` Mohammed Khajapasha
  2020-07-01 19:23 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_kms: Add support for display with (rev3) Patchwork
  9 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-01 19:08 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

Set modeset for enable pipes only in kms test

Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha@intel.com>
---
 tests/i915/gem_eio.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tests/i915/gem_eio.c b/tests/i915/gem_eio.c
index cfc3f668..c5ef61bd 100644
--- a/tests/i915/gem_eio.c
+++ b/tests/i915/gem_eio.c
@@ -851,6 +851,8 @@ static void display_helper(igt_display_t *dpy, int *done)
 		int pipe;
 
 		pipe = rand() % dpy->n_pipes;
+		if (!dpy->pipes[pipe].enabled)
+			continue;
 		output = igt_get_single_output_for_pipe(dpy, pipe);
 		if (!output)
 			continue;
-- 
2.24.1

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

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

* [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_kms: Add support for display with (rev3)
  2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
                   ` (8 preceding siblings ...)
  2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 9/9] i915/gem_eio: Set modeset for enable pipes Mohammed Khajapasha
@ 2020-07-01 19:23 ` Patchwork
  9 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2020-07-01 19:23 UTC (permalink / raw)
  To: Mohammed Khajapasha; +Cc: igt-dev

== Series Details ==

Series: lib/igt_kms: Add support for display with (rev3)
URL   : https://patchwork.freedesktop.org/series/78482/
State : failure

== Summary ==

IGT patchset build failed on latest successful build
54731f017df8660f29cc8f5db0b570239729e808 i915/gem_close_race: Mix in a contexts and a small delay to closure

[240/456] Linking target tests/gem_tiled_swapping.
[241/456] Linking target tests/gem_tiled_wb.
[242/456] Linking target tests/gem_tiling_max_stride.
[243/456] Linking target tests/gem_unfence_active_buffers.
[244/456] Linking target tests/gem_unref_active_buffers.
[245/456] Linking target tests/gem_userptr_blits.
[246/456] Linking target tests/gem_vm_create.
[247/456] Linking target tests/gem_wait.
[248/456] Linking target tests/gem_workarounds.
[249/456] Linking target tests/i915_fb_tiling.
[250/456] Linking target tests/i915_getparams_basic.
[251/456] Linking target tests/i915_hangman.
[252/456] Linking target tests/i915_module_load.
[253/456] Linking target tests/i915_pciid.
[254/456] Linking target tests/i915_pm_backlight.
[255/456] Linking target tests/i915_pm_lpsp.
[256/456] Linking target tests/i915_pm_rpm.
[257/456] Linking target tests/i915_pm_dc.
[258/456] Linking target tests/i915_pm_rps.
[259/456] Linking target tests/i915_pm_sseu.
[260/456] Linking target tests/i915_query.
[261/456] Linking target tests/sysfs_timeslice_duration.
[262/456] Linking target tests/i915_selftest.
[263/456] Linking target tests/i915_suspend.
[264/456] Linking target tests/gem_ctx_sseu.
[265/456] Linking target tests/dumb_buffer.
[266/456] Linking target tests/gem_create.
[267/456] Linking target tests/gem_ctx_freq.
[268/456] Linking target tests/gem_mmap_offset.
[269/456] Linking target tests/gem_eio.
[270/456] Linking target tests/gem_exec_balancer.
[271/456] Linking target tests/perf_pmu.
[272/456] Linking target tests/i915_pm_rc6_residency.
[273/456] Linking target tests/perf.
[274/456] Linking target tests/testdisplay.
[275/456] Linking target tests/kms_color.
[276/456] Compiling C object 'tests/tests@@kms_color_chamelium@exe/kms_color_chamelium.c.o'.
FAILED: tests/tests@@kms_color_chamelium@exe/kms_color_chamelium.c.o 
ccache cc -Itests/tests@@kms_color_chamelium@exe -Itests -I../tests -I../include/drm-uapi -Ilib -I../lib -I../lib/stubs/syscalls -I. -I../ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/libdrm -I/usr/include/x86_64-linux-gnu -I/usr/include/alsa -I/usr/include -I/usr/include/libdrm/nouveau -I/home/cidrm/kernel_headers/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -fcommon -pthread  -MD -MQ 'tests/tests@@kms_color_chamelium@exe/kms_color_chamelium.c.o' -MF 'tests/tests@@kms_color_chamelium@exe/kms_color_chamelium.c.o.d' -o 'tests/tests@@kms_color_chamelium@exe/kms_color_chamelium.c.o' -c ../tests/kms_color_chamelium.c
../tests/kms_color_chamelium.c: In function ‘run_tests_for_pipe’:
../tests/kms_color_chamelium.c:522:20: error: incompatible type for argument 1 of ‘igt_require_pipe’
   igt_require_pipe(data->display, p);
                    ^~~~
In file included from ../lib/igt.h:39:0,
                 from ../tests/kms_color_helper.h:38,
                 from ../tests/kms_color_chamelium.c:25:
../lib/igt_kms.h:870:6: note: expected ‘igt_display_t * {aka struct igt_display *}’ but argument is of type ‘igt_display_t {aka struct igt_display}’
 void igt_require_pipe(igt_display_t *display,
      ^~~~~~~~~~~~~~~~
ninja: build stopped: subcommand failed.

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

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

* [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with
@ 2020-07-02  4:52 Mohammed Khajapasha
  0 siblings, 0 replies; 12+ messages in thread
From: Mohammed Khajapasha @ 2020-07-02  4:52 UTC (permalink / raw)
  To: arkadiusz.hiler, igt-dev

v4:
	Resolved compilation issues found in CI build.

Mohammed Khajapasha (9):
  lib/igt_kms: Add support for display with non-contiguous pipes
  lib/igt_kms: Add igt_require_pipe() function
  tests/kms_cursor_legacy: Read crtc id for enable pipes
  tests/kms_lease: Get pipe from crtc for enable pipes
  tests/kms_lease: Read crtc id for a valid pipe
  lib/kms: Skip igt test cases for disabled display pipes
  tests/kms: Skip kms test cases for disabled pipes
  tests/kms_atomic_transition: Set modeset for enable pipes only
  i915/gem_eio: Set modeset for enable pipes

 lib/igt_kms.c                 | 87 +++++++++++++++++++++++++++++++----
 lib/igt_kms.h                 | 26 +++++++++--
 tests/i915/gem_eio.c          |  2 +
 tests/kms_atomic_transition.c |  9 +++-
 tests/kms_color.c             |  2 +-
 tests/kms_color_chamelium.c   |  2 +-
 tests/kms_concurrent.c        |  2 +-
 tests/kms_cursor_legacy.c     | 13 ++++--
 tests/kms_lease.c             |  8 +++-
 tests/kms_pipe_crc_basic.c    |  4 +-
 tests/kms_plane.c             |  2 +-
 tests/kms_plane_lowres.c      |  2 +-
 tests/kms_plane_multiple.c    |  2 +-
 tests/kms_universal_plane.c   | 12 ++---
 14 files changed, 135 insertions(+), 38 deletions(-)

-- 
2.24.1

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

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

end of thread, other threads:[~2020-07-02  4:52 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-01 19:08 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 1/9] lib/igt_kms: Add support for display with non-contiguous pipes Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 2/9] lib/igt_kms: Add igt_require_pipe() function Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 3/9] tests/kms_cursor_legacy: Read crtc id for enable pipes Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 4/9] tests/kms_lease: Get pipe from crtc " Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 5/9] tests/kms_lease: Read crtc id for a valid pipe Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 6/9] lib/kms: Skip igt test cases for disabled display pipes Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 7/9] tests/kms: Skip kms test cases for disabled pipes Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 8/9] tests/kms_atomic_transition: Set modeset for enable pipes only Mohammed Khajapasha
2020-07-01 19:08 ` [igt-dev] [PATCH i-g-t 9/9] i915/gem_eio: Set modeset for enable pipes Mohammed Khajapasha
2020-07-01 19:23 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_kms: Add support for display with (rev3) Patchwork
2020-07-02  4:52 [igt-dev] [PATCH i-g-t 0/9] lib/igt_kms: Add support for display with Mohammed Khajapasha

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.