All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset
@ 2019-02-08 16:57 Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 1/4] kms_content_protection: modularizing the CP test steps Ramalingam C
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Ramalingam C @ 2019-02-08 16:57 UTC (permalink / raw)
  To: igt-dev, daniel

This series adds:
	CP test in modeset path
	Link integrity check verification
	Cleanup patches

Ramalingam C (4):
  kms_content_protection: modularizing the CP test steps
  kms_content_protection: Test CP along with modeset
  kms_content_protection: Confirm that LIC is passed
  kms_content_protection: Macros repalces the constants

 tests/kms_content_protection.c | 154 +++++++++++++++++++++++++++++------------
 1 file changed, 109 insertions(+), 45 deletions(-)

-- 
2.7.4

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

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

* [igt-dev] [PATCH i-g-t v4 1/4] kms_content_protection: modularizing the CP test steps
  2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
@ 2019-02-08 16:57 ` Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 2/4] kms_content_protection: Test CP along with modeset Ramalingam C
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Ramalingam C @ 2019-02-08 16:57 UTC (permalink / raw)
  To: igt-dev, daniel

Modularizing the CP test steps for the convenience of reusing it for
other subtests.

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
 tests/kms_content_protection.c | 99 +++++++++++++++++++++++++-----------------
 1 file changed, 60 insertions(+), 39 deletions(-)

diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index 50ae82862949..f6b441d891e5 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -33,6 +33,7 @@ IGT_TEST_DESCRIPTION("Test content protection (HDCP)");
 struct data {
 	int drm_fd;
 	igt_display_t display;
+	struct igt_fb red, green;
 } data;
 
 
@@ -116,16 +117,12 @@ commit_display_and_wait_for_flip(enum igt_commit_style s)
 	}
 }
 
-static void
-test_cp_enable_disable(const enum pipe pipe, igt_output_t *output,
-		       enum igt_commit_style s)
+static void modeset_with_fb(const enum pipe pipe, igt_output_t *output,
+			    enum igt_commit_style s)
 {
 	igt_display_t *display = &data.display;
 	drmModeModeInfo mode;
 	igt_plane_t *primary;
-	struct igt_fb red, green;
-	bool ret;
-	int retry = 3;
 
 	igt_assert(kmstest_get_connector_default_mode(
 			display->drm_fd, output->config.connector, &mode));
@@ -135,58 +132,75 @@ test_cp_enable_disable(const enum pipe pipe, igt_output_t *output,
 
 	igt_create_color_fb(display->drm_fd, mode.hdisplay, mode.vdisplay,
 			    DRM_FORMAT_XRGB8888, LOCAL_DRM_FORMAT_MOD_NONE,
-			    1.f, 0.f, 0.f, &red);
+			    1.f, 0.f, 0.f, &data.red);
 	igt_create_color_fb(display->drm_fd, mode.hdisplay, mode.vdisplay,
 			    DRM_FORMAT_XRGB8888, LOCAL_DRM_FORMAT_MOD_NONE,
-			    0.f, 1.f, 0.f, &green);
+			    0.f, 1.f, 0.f, &data.green);
 
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 	igt_display_commit2(display, s);
-
-	igt_plane_set_fb(primary, &red);
+	igt_plane_set_fb(primary, &data.red);
 
 	/* Wait for Flip completion before starting the HDCP authentication */
 	commit_display_and_wait_for_flip(s);
+}
 
-	do {
-		igt_output_set_prop_value(output,
-					  IGT_CONNECTOR_CONTENT_PROTECTION, 0);
-		igt_display_commit2(display, s);
+static bool test_cp_enable(igt_output_t *output, enum igt_commit_style s)
+{
+	igt_display_t *display = &data.display;
+	igt_plane_t *primary;
+	bool ret;
+
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
-		/* Wait for HDCP to be disabled for fresh start. */
-		ret = wait_for_prop_value(output, 0, 1000);
-		igt_assert_f(ret, "Content Protection not cleared\n");
+	igt_output_set_prop_value(output,
+				  IGT_CONNECTOR_CONTENT_PROTECTION, 1);
+	igt_display_commit2(display, s);
 
-		igt_output_set_prop_value(output,
-					  IGT_CONNECTOR_CONTENT_PROTECTION, 1);
+	/* Wait for 18000mSec (3 authentication * 6Sec) */
+	ret = wait_for_prop_value(output, 2, 18000);
+	if (ret) {
+		igt_plane_set_fb(primary, &data.green);
 		igt_display_commit2(display, s);
+	}
 
-		/* Wait for 18000mSec (3 authentication * 6Sec) */
-		ret = wait_for_prop_value(output, 2, 18000);
-		if (ret) {
-			igt_plane_set_fb(primary, &green);
-			igt_display_commit2(display, s);
-		}
+	return ret;
+}
 
-		if (!ret && --retry)
-			igt_debug("Retry (%d/2) ...\n", 3 - retry);
-	} while (retry && !ret);
+static void test_cp_disable(igt_output_t *output, enum igt_commit_style s)
+{
+	igt_display_t *display = &data.display;
+	igt_plane_t *primary;
+	bool ret;
+
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
 	/*
 	 * Even on HDCP enable failed scenario, IGT should exit leaving the
 	 * "content protection" at "UNDESIRED".
 	 */
 	igt_output_set_prop_value(output, IGT_CONNECTOR_CONTENT_PROTECTION, 0);
-	igt_plane_set_fb(primary, &red);
+	igt_plane_set_fb(primary, &data.red);
 	igt_display_commit2(display, s);
 
-	igt_assert_f(ret, "Content Protection not enabled\n");
-
 	/* Wait for HDCP to be disabled, before crtc off */
-	wait_for_prop_value(output, 0, 1000);
+	ret = wait_for_prop_value(output, 0, 1000);
+	igt_assert_f(ret, "Content Protection not cleared\n");
+}
+
+static void test_cp_enable_with_retry(igt_output_t *output,
+				      enum igt_commit_style s, int retry)
+{
+	bool ret;
 
-	igt_plane_set_fb(primary, NULL);
-	igt_output_set_pipe(output, PIPE_NONE);
+	do {
+		test_cp_disable(output, s);
+		ret = test_cp_enable(output, s);
+
+		if (!ret && --retry)
+			igt_debug("Retry (%d/2) ...\n", 3 - retry);
+	} while (retry && !ret);
+	igt_assert_f(ret, "Content Protection not enabled\n");
 }
 
 static bool igt_pipe_is_free(igt_display_t *display, enum pipe pipe)
@@ -200,11 +214,12 @@ static bool igt_pipe_is_free(igt_display_t *display, enum pipe pipe)
 	return true;
 }
 
-static void
-test_content_protection_on_output(igt_output_t *output,
-				  enum igt_commit_style s)
+
+static void test_content_protection_on_output(igt_output_t *output,
+					      enum igt_commit_style s)
 {
 	igt_display_t *display = &data.display;
+	igt_plane_t *primary;
 	enum pipe pipe;
 
 	for_each_pipe(display, pipe) {
@@ -220,7 +235,14 @@ test_content_protection_on_output(igt_output_t *output,
 		if (!igt_pipe_is_free(display, pipe))
 			continue;
 
-		test_cp_enable_disable(pipe, output, s);
+		modeset_with_fb(pipe, output, s);
+		test_cp_enable_with_retry(output, s, 3);
+		test_cp_disable(output, s);
+
+		primary = igt_output_get_plane_type(output,
+						    DRM_PLANE_TYPE_PRIMARY);
+		igt_plane_set_fb(primary, NULL);
+		igt_output_set_pipe(output, PIPE_NONE);
 
 		/*
 		 * Testing a output with a pipe is enough for HDCP
@@ -229,7 +251,6 @@ test_content_protection_on_output(igt_output_t *output,
 		 */
 		break;
 	}
-
 }
 
 static void __debugfs_read(int fd, const char *param, char *buf, int len)
-- 
2.7.4

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

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

* [igt-dev] [PATCH i-g-t v4 2/4] kms_content_protection: Test CP along with modeset
  2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 1/4] kms_content_protection: modularizing the CP test steps Ramalingam C
@ 2019-02-08 16:57 ` Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 3/4] kms_content_protection: Confirm that LIC is passed Ramalingam C
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Ramalingam C @ 2019-02-08 16:57 UTC (permalink / raw)
  To: igt-dev, daniel

As we have two different patch for commitng the HDCP request
	1. DDI_enable (during the modeset)
	2. update_pipe (during fastset execution)

Currently our kms_content_protection covers only fastset path.
So this test adds the coverage for the HDCP during the modeset by
performing DPMS off-on and check for HDCP status.

But with respect to HDCP we allow few retries from userspace before
reporting the failure. So only first attempt at kernel will be on
modeset path, next retries will become fastset commiting of HDCP.

v2:
  dpms test is added within existing implementation with a flag [Daniel]
v3:
  ret declared.

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
 tests/kms_content_protection.c | 33 +++++++++++++++++++++++++++------
 1 file changed, 27 insertions(+), 6 deletions(-)

diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index f6b441d891e5..7d82c733b378 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -216,11 +216,13 @@ static bool igt_pipe_is_free(igt_display_t *display, enum pipe pipe)
 
 
 static void test_content_protection_on_output(igt_output_t *output,
-					      enum igt_commit_style s)
+					      enum igt_commit_style s,
+					      bool dpms_test)
 {
 	igt_display_t *display = &data.display;
 	igt_plane_t *primary;
 	enum pipe pipe;
+	bool ret;
 
 	for_each_pipe(display, pipe) {
 		if (!igt_pipe_connector_valid(pipe, output))
@@ -237,8 +239,22 @@ static void test_content_protection_on_output(igt_output_t *output,
 
 		modeset_with_fb(pipe, output, s);
 		test_cp_enable_with_retry(output, s, 3);
-		test_cp_disable(output, s);
 
+		if (dpms_test) {
+			igt_pipe_set_prop_value(display, pipe,
+						IGT_CRTC_ACTIVE, 0);
+			igt_display_commit2(display, s);
+
+			igt_pipe_set_prop_value(display, pipe,
+						IGT_CRTC_ACTIVE, 1);
+			igt_display_commit2(display, s);
+
+			ret = wait_for_prop_value(output, 2, 18000);
+			if (!ret)
+				test_cp_enable_with_retry(output, s, 2);
+		}
+
+		test_cp_disable(output, s);
 		primary = igt_output_get_plane_type(output,
 						    DRM_PLANE_TYPE_PRIMARY);
 		igt_plane_set_fb(primary, NULL);
@@ -282,7 +298,7 @@ static bool sink_hdcp_capable(igt_output_t *output)
 
 
 static void
-test_content_protection(enum igt_commit_style s)
+test_content_protection(enum igt_commit_style s, bool dpms_test)
 {
 	igt_display_t *display = &data.display;
 	igt_output_t *output;
@@ -299,7 +315,7 @@ test_content_protection(enum igt_commit_style s)
 			continue;
 		}
 
-		test_content_protection_on_output(output, s);
+		test_content_protection_on_output(output, s, dpms_test);
 		valid_tests++;
 	}
 
@@ -317,11 +333,16 @@ igt_main
 	}
 
 	igt_subtest("legacy")
-		test_content_protection(COMMIT_LEGACY);
+		test_content_protection(COMMIT_LEGACY, false);
 
 	igt_subtest("atomic") {
 		igt_require(data.display.is_atomic);
-		test_content_protection(COMMIT_ATOMIC);
+		test_content_protection(COMMIT_ATOMIC, false);
+	}
+
+	igt_subtest("atomic-dpms") {
+		igt_require(data.display.is_atomic);
+		test_content_protection(COMMIT_ATOMIC, true);
 	}
 
 	igt_fixture
-- 
2.7.4

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

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

* [igt-dev] [PATCH i-g-t v4 3/4] kms_content_protection: Confirm that LIC is passed
  2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 1/4] kms_content_protection: modularizing the CP test steps Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 2/4] kms_content_protection: Test CP along with modeset Ramalingam C
@ 2019-02-08 16:57 ` Ramalingam C
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 4/4] kms_content_protection: Macros repalces the constants Ramalingam C
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Ramalingam C @ 2019-02-08 16:57 UTC (permalink / raw)
  To: igt-dev, daniel

Once the HDCP is enabled, kernel will run the link integrity check(LIC)
atleast once in 2Secs based on the HDCP versions.

So to confirm the link integrity check is passed, we oberve that HDCP
state remains ENABLED for next 4Secs.

v2:
  Rebased.

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
 tests/kms_content_protection.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index 7d82c733b378..c43e08b71a83 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -214,6 +214,14 @@ static bool igt_pipe_is_free(igt_display_t *display, enum pipe pipe)
 	return true;
 }
 
+static void test_cp_lic(igt_output_t *output)
+{
+	bool ret;
+
+	/* Wait for 4Secs (min 2 cycles of Link Integrity Check) */
+	ret = wait_for_prop_value(output, 1, 4 * 1000);
+	igt_assert_f(!ret, "Content Protection LIC Failed\n");
+}
 
 static void test_content_protection_on_output(igt_output_t *output,
 					      enum igt_commit_style s,
@@ -239,6 +247,7 @@ static void test_content_protection_on_output(igt_output_t *output,
 
 		modeset_with_fb(pipe, output, s);
 		test_cp_enable_with_retry(output, s, 3);
+		test_cp_lic(output);
 
 		if (dpms_test) {
 			igt_pipe_set_prop_value(display, pipe,
-- 
2.7.4

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

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

* [igt-dev] [PATCH i-g-t v4 4/4] kms_content_protection: Macros repalces the constants
  2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
                   ` (2 preceding siblings ...)
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 3/4] kms_content_protection: Confirm that LIC is passed Ramalingam C
@ 2019-02-08 16:57 ` Ramalingam C
  2019-02-11 17:26   ` Daniel Vetter
  2019-02-08 17:41 ` [igt-dev] ✓ Fi.CI.BAT: success for HDCP test on modeset Patchwork
  2019-02-08 22:10 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  5 siblings, 1 reply; 8+ messages in thread
From: Ramalingam C @ 2019-02-08 16:57 UTC (permalink / raw)
  To: igt-dev, daniel

For better readability numeric values are replaced with macros.

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
---
 tests/kms_content_protection.c | 29 +++++++++++++++++++++--------
 1 file changed, 21 insertions(+), 8 deletions(-)

diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index c43e08b71a83..7fc8542e769a 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -36,6 +36,16 @@ struct data {
 	struct igt_fb red, green;
 } data;
 
+#define CP_UNDESIRED				0
+#define CP_DESIRED				1
+#define CP_ENABLED				2
+
+#define LIC_PERIOD_MSEC				(4 * 1000)
+/* Kernel retry count=3, Max time per authentication allowed = 6Sec */
+#define KERNEL_AUTH_TIME_ALLOWED_MSEC		(3 *  6 * 1000)
+#define KERNEL_DISABLE_TIME_ALLOWED_MSEC	(1 * 1000)
+#define FLIP_EVENT_POLLING_TIMEOUT_MSEC		1000
+
 
 static void flip_handler(int fd, unsigned int sequence, unsigned int tv_sec,
 			 unsigned int tv_usec, void *_data)
@@ -57,7 +67,7 @@ static int wait_flip_event(void)
 	pfd.events = POLLIN;
 	pfd.revents = 0;
 
-	rc = poll(&pfd, 1, 1000);
+	rc = poll(&pfd, 1, FLIP_EVENT_POLLING_TIMEOUT_MSEC);
 	switch (rc) {
 	case 0:
 		igt_info("Poll timeout. 1Sec.\n");
@@ -154,11 +164,11 @@ static bool test_cp_enable(igt_output_t *output, enum igt_commit_style s)
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
 	igt_output_set_prop_value(output,
-				  IGT_CONNECTOR_CONTENT_PROTECTION, 1);
+				  IGT_CONNECTOR_CONTENT_PROTECTION, CP_DESIRED);
 	igt_display_commit2(display, s);
 
-	/* Wait for 18000mSec (3 authentication * 6Sec) */
-	ret = wait_for_prop_value(output, 2, 18000);
+	ret = wait_for_prop_value(output, CP_ENABLED,
+				  KERNEL_AUTH_TIME_ALLOWED_MSEC);
 	if (ret) {
 		igt_plane_set_fb(primary, &data.green);
 		igt_display_commit2(display, s);
@@ -179,12 +189,14 @@ static void test_cp_disable(igt_output_t *output, enum igt_commit_style s)
 	 * Even on HDCP enable failed scenario, IGT should exit leaving the
 	 * "content protection" at "UNDESIRED".
 	 */
-	igt_output_set_prop_value(output, IGT_CONNECTOR_CONTENT_PROTECTION, 0);
+	igt_output_set_prop_value(output, IGT_CONNECTOR_CONTENT_PROTECTION,
+				  CP_UNDESIRED);
 	igt_plane_set_fb(primary, &data.red);
 	igt_display_commit2(display, s);
 
 	/* Wait for HDCP to be disabled, before crtc off */
-	ret = wait_for_prop_value(output, 0, 1000);
+	ret = wait_for_prop_value(output, CP_UNDESIRED,
+				  KERNEL_DISABLE_TIME_ALLOWED_MSEC);
 	igt_assert_f(ret, "Content Protection not cleared\n");
 }
 
@@ -219,7 +231,7 @@ static void test_cp_lic(igt_output_t *output)
 	bool ret;
 
 	/* Wait for 4Secs (min 2 cycles of Link Integrity Check) */
-	ret = wait_for_prop_value(output, 1, 4 * 1000);
+	ret = wait_for_prop_value(output, CP_DESIRED, LIC_PERIOD_MSEC);
 	igt_assert_f(!ret, "Content Protection LIC Failed\n");
 }
 
@@ -258,7 +270,8 @@ static void test_content_protection_on_output(igt_output_t *output,
 						IGT_CRTC_ACTIVE, 1);
 			igt_display_commit2(display, s);
 
-			ret = wait_for_prop_value(output, 2, 18000);
+			ret = wait_for_prop_value(output, CP_ENABLED,
+						  KERNEL_AUTH_TIME_ALLOWED_MSEC);
 			if (!ret)
 				test_cp_enable_with_retry(output, s, 2);
 		}
-- 
2.7.4

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

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

* [igt-dev] ✓ Fi.CI.BAT: success for HDCP test on modeset
  2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
                   ` (3 preceding siblings ...)
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 4/4] kms_content_protection: Macros repalces the constants Ramalingam C
@ 2019-02-08 17:41 ` Patchwork
  2019-02-08 22:10 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2019-02-08 17:41 UTC (permalink / raw)
  To: Ramalingam C; +Cc: igt-dev

== Series Details ==

Series: HDCP test on modeset
URL   : https://patchwork.freedesktop.org/series/56419/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_5568 -> IGTPW_2366
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a-frame-sequence:
    - fi-byt-clapper:     PASS -> FAIL [fdo#103191] / [fdo#107362]

  
#### Possible fixes ####

  * igt@kms_frontbuffer_tracking@basic:
    - {fi-icl-u2}:        FAIL [fdo#103167] -> PASS

  * igt@pm_rpm@module-reload:
    - fi-skl-6770hq:      FAIL [fdo#108511] -> PASS
    - {fi-whl-u}:         DMESG-WARN [fdo#109513] -> PASS

  * igt@prime_vgem@basic-fence-flip:
    - fi-gdg-551:         DMESG-FAIL [fdo#103182] -> PASS

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103182]: https://bugs.freedesktop.org/show_bug.cgi?id=103182
  [fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
  [fdo#107362]: https://bugs.freedesktop.org/show_bug.cgi?id=107362
  [fdo#108511]: https://bugs.freedesktop.org/show_bug.cgi?id=108511
  [fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109513]: https://bugs.freedesktop.org/show_bug.cgi?id=109513


Participating hosts (48 -> 44)
------------------------------

  Additional (1): fi-icl-u3 
  Missing    (5): fi-kbl-soraka fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-bdw-samus 


Build changes
-------------

    * IGT: IGT_4815 -> IGTPW_2366

  CI_DRM_5568: d4794b009ccd1ef8816e15c833f07ab696911a8d @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_2366: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2366/
  IGT_4815: 947301563259726b65ce47d3a3fe37931ed42efe @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools



== Testlist changes ==

+igt@kms_content_protection@atomic-dpms

== Logs ==

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

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

* [igt-dev] ✗ Fi.CI.IGT: failure for HDCP test on modeset
  2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
                   ` (4 preceding siblings ...)
  2019-02-08 17:41 ` [igt-dev] ✓ Fi.CI.BAT: success for HDCP test on modeset Patchwork
@ 2019-02-08 22:10 ` Patchwork
  5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2019-02-08 22:10 UTC (permalink / raw)
  To: Ramalingam C; +Cc: igt-dev

== Series Details ==

Series: HDCP test on modeset
URL   : https://patchwork.freedesktop.org/series/56419/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_5568_full -> IGTPW_2366_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_2366_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_2366_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/56419/revisions/1/mbox/

Possible new issues
-------------------

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-kbl:          PASS -> FAIL

  * igt@kms_vblank@pipe-b-ts-continuation-modeset-rpm:
    - shard-apl:          PASS -> FAIL +1

  
New tests
---------

  New tests have been introduced between CI_DRM_5568_full and IGTPW_2366_full:
Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_suspend@shrink:
    - shard-glk:          NOTRUN -> DMESG-WARN [fdo#109244]

  * igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-c:
    - shard-kbl:          NOTRUN -> DMESG-WARN [fdo#107956]

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
    - shard-apl:          PASS -> FAIL [fdo#106510] / [fdo#108145]

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic:
    - shard-glk:          PASS -> FAIL [fdo#108145]

  * igt@kms_color@pipe-c-degamma:
    - shard-apl:          PASS -> FAIL [fdo#104782]

  * igt@kms_cursor_crc@cursor-256x256-random:
    - shard-glk:          NOTRUN -> FAIL [fdo#103232] +1

  * igt@kms_cursor_crc@cursor-64x21-random:
    - shard-apl:          PASS -> FAIL [fdo#103232] +5
    - shard-kbl:          PASS -> FAIL [fdo#103232] +1

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
    - shard-glk:          PASS -> FAIL [fdo#104873]

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
    - shard-snb:          PASS -> INCOMPLETE [fdo#105411]

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
    - shard-apl:          PASS -> FAIL [fdo#103167] +1
    - shard-kbl:          PASS -> FAIL [fdo#103167]

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move:
    - shard-glk:          PASS -> FAIL [fdo#103167] +8

  * igt@kms_plane@pixel-format-pipe-b-planes-source-clamping:
    - shard-apl:          PASS -> FAIL [fdo#108948]

  * igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
    - shard-apl:          NOTRUN -> FAIL [fdo#108145]

  * igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
    - shard-kbl:          NOTRUN -> FAIL [fdo#108145] / [fdo#108590]

  * igt@kms_plane_alpha_blend@pipe-b-alpha-opaque-fb:
    - shard-kbl:          NOTRUN -> FAIL [fdo#108145]

  * igt@kms_plane_multiple@atomic-pipe-b-tiling-none:
    - shard-glk:          NOTRUN -> FAIL [fdo#103166]
    - shard-apl:          PASS -> FAIL [fdo#103166] +1

  
#### Possible fixes ####

  * igt@gem_eio@reset-stress:
    - shard-hsw:          INCOMPLETE [fdo#103540] / [fdo#109482] -> PASS

  * igt@kms_cursor_crc@cursor-128x128-suspend:
    - shard-apl:          FAIL [fdo#103191] / [fdo#103232] -> PASS

  * igt@kms_cursor_crc@cursor-128x42-onscreen:
    - shard-apl:          FAIL [fdo#103232] -> PASS +2

  * igt@kms_cursor_crc@cursor-64x64-onscreen:
    - shard-kbl:          FAIL [fdo#103232] -> PASS

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite:
    - shard-apl:          FAIL [fdo#103167] -> PASS +2

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-cpu:
    - shard-glk:          FAIL [fdo#103167] -> PASS +4

  * igt@kms_frontbuffer_tracking@fbc-farfromfence:
    - shard-snb:          DMESG-FAIL [fdo#107469] -> PASS

  * igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
    - shard-glk:          FAIL [fdo#103166] -> PASS +3
    - shard-kbl:          FAIL [fdo#103166] -> PASS +1

  * igt@kms_plane_multiple@atomic-pipe-c-tiling-yf:
    - shard-apl:          FAIL [fdo#103166] -> PASS +4

  * igt@tools_test@tools_test:
    - shard-snb:          {SKIP} [fdo#109271] -> PASS

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [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#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
  [fdo#104782]: https://bugs.freedesktop.org/show_bug.cgi?id=104782
  [fdo#104873]: https://bugs.freedesktop.org/show_bug.cgi?id=104873
  [fdo#105411]: https://bugs.freedesktop.org/show_bug.cgi?id=105411
  [fdo#106510]: https://bugs.freedesktop.org/show_bug.cgi?id=106510
  [fdo#107469]: https://bugs.freedesktop.org/show_bug.cgi?id=107469
  [fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#108590]: https://bugs.freedesktop.org/show_bug.cgi?id=108590
  [fdo#108948]: https://bugs.freedesktop.org/show_bug.cgi?id=108948
  [fdo#109244]: https://bugs.freedesktop.org/show_bug.cgi?id=109244
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109482]: https://bugs.freedesktop.org/show_bug.cgi?id=109482


Participating hosts (7 -> 5)
------------------------------

  Missing    (2): shard-skl shard-iclb 


Build changes
-------------

    * IGT: IGT_4815 -> IGTPW_2366
    * Piglit: piglit_4509 -> None

  CI_DRM_5568: d4794b009ccd1ef8816e15c833f07ab696911a8d @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_2366: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2366/
  IGT_4815: 947301563259726b65ce47d3a3fe37931ed42efe @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

* Re: [igt-dev] [PATCH i-g-t v4 4/4] kms_content_protection: Macros repalces the constants
  2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 4/4] kms_content_protection: Macros repalces the constants Ramalingam C
@ 2019-02-11 17:26   ` Daniel Vetter
  0 siblings, 0 replies; 8+ messages in thread
From: Daniel Vetter @ 2019-02-11 17:26 UTC (permalink / raw)
  To: Ramalingam C; +Cc: igt-dev, daniel

On Fri, Feb 08, 2019 at 10:27:10PM +0530, Ramalingam C wrote:
> For better readability numeric values are replaced with macros.
> 
> Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
> ---
>  tests/kms_content_protection.c | 29 +++++++++++++++++++++--------
>  1 file changed, 21 insertions(+), 8 deletions(-)
> 
> diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
> index c43e08b71a83..7fc8542e769a 100644
> --- a/tests/kms_content_protection.c
> +++ b/tests/kms_content_protection.c
> @@ -36,6 +36,16 @@ struct data {
>  	struct igt_fb red, green;
>  } data;
>  

Maybe add a comment that these should match the content protection
properties. Either way:

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>


> +#define CP_UNDESIRED				0
> +#define CP_DESIRED				1
> +#define CP_ENABLED				2
> +
> +#define LIC_PERIOD_MSEC				(4 * 1000)
> +/* Kernel retry count=3, Max time per authentication allowed = 6Sec */
> +#define KERNEL_AUTH_TIME_ALLOWED_MSEC		(3 *  6 * 1000)
> +#define KERNEL_DISABLE_TIME_ALLOWED_MSEC	(1 * 1000)
> +#define FLIP_EVENT_POLLING_TIMEOUT_MSEC		1000
> +
>  
>  static void flip_handler(int fd, unsigned int sequence, unsigned int tv_sec,
>  			 unsigned int tv_usec, void *_data)
> @@ -57,7 +67,7 @@ static int wait_flip_event(void)
>  	pfd.events = POLLIN;
>  	pfd.revents = 0;
>  
> -	rc = poll(&pfd, 1, 1000);
> +	rc = poll(&pfd, 1, FLIP_EVENT_POLLING_TIMEOUT_MSEC);
>  	switch (rc) {
>  	case 0:
>  		igt_info("Poll timeout. 1Sec.\n");
> @@ -154,11 +164,11 @@ static bool test_cp_enable(igt_output_t *output, enum igt_commit_style s)
>  	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>  
>  	igt_output_set_prop_value(output,
> -				  IGT_CONNECTOR_CONTENT_PROTECTION, 1);
> +				  IGT_CONNECTOR_CONTENT_PROTECTION, CP_DESIRED);
>  	igt_display_commit2(display, s);
>  
> -	/* Wait for 18000mSec (3 authentication * 6Sec) */
> -	ret = wait_for_prop_value(output, 2, 18000);
> +	ret = wait_for_prop_value(output, CP_ENABLED,
> +				  KERNEL_AUTH_TIME_ALLOWED_MSEC);
>  	if (ret) {
>  		igt_plane_set_fb(primary, &data.green);
>  		igt_display_commit2(display, s);
> @@ -179,12 +189,14 @@ static void test_cp_disable(igt_output_t *output, enum igt_commit_style s)
>  	 * Even on HDCP enable failed scenario, IGT should exit leaving the
>  	 * "content protection" at "UNDESIRED".
>  	 */
> -	igt_output_set_prop_value(output, IGT_CONNECTOR_CONTENT_PROTECTION, 0);
> +	igt_output_set_prop_value(output, IGT_CONNECTOR_CONTENT_PROTECTION,
> +				  CP_UNDESIRED);
>  	igt_plane_set_fb(primary, &data.red);
>  	igt_display_commit2(display, s);
>  
>  	/* Wait for HDCP to be disabled, before crtc off */
> -	ret = wait_for_prop_value(output, 0, 1000);
> +	ret = wait_for_prop_value(output, CP_UNDESIRED,
> +				  KERNEL_DISABLE_TIME_ALLOWED_MSEC);
>  	igt_assert_f(ret, "Content Protection not cleared\n");
>  }
>  
> @@ -219,7 +231,7 @@ static void test_cp_lic(igt_output_t *output)
>  	bool ret;
>  
>  	/* Wait for 4Secs (min 2 cycles of Link Integrity Check) */
> -	ret = wait_for_prop_value(output, 1, 4 * 1000);
> +	ret = wait_for_prop_value(output, CP_DESIRED, LIC_PERIOD_MSEC);
>  	igt_assert_f(!ret, "Content Protection LIC Failed\n");
>  }
>  
> @@ -258,7 +270,8 @@ static void test_content_protection_on_output(igt_output_t *output,
>  						IGT_CRTC_ACTIVE, 1);
>  			igt_display_commit2(display, s);
>  
> -			ret = wait_for_prop_value(output, 2, 18000);
> +			ret = wait_for_prop_value(output, CP_ENABLED,
> +						  KERNEL_AUTH_TIME_ALLOWED_MSEC);
>  			if (!ret)
>  				test_cp_enable_with_retry(output, s, 2);
>  		}
> -- 
> 2.7.4
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2019-02-11 17:26 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-08 16:57 [igt-dev] [PATCH i-g-t v4 0/4] HDCP test on modeset Ramalingam C
2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 1/4] kms_content_protection: modularizing the CP test steps Ramalingam C
2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 2/4] kms_content_protection: Test CP along with modeset Ramalingam C
2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 3/4] kms_content_protection: Confirm that LIC is passed Ramalingam C
2019-02-08 16:57 ` [igt-dev] [PATCH i-g-t v4 4/4] kms_content_protection: Macros repalces the constants Ramalingam C
2019-02-11 17:26   ` Daniel Vetter
2019-02-08 17:41 ` [igt-dev] ✓ Fi.CI.BAT: success for HDCP test on modeset Patchwork
2019-02-08 22:10 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.