[PATCH i-g-t] test/kms_content_protection: Account for reauthetication in LIC

Suraj Kandpal suraj.kandpal at intel.com
Tue Dec 3 06:15:19 UTC 2024


During LIC the link may fail due to a variety of reasons but this
does not reflect a problem with HDCP. It becomes a problem only when
we are not able to recover from the Link Integrity Failure.
Add a check to see if CP property is CP_DESIRED and if so give it time
to reauthenticate and fail only if this reauthentication does not
happen.

--v2
-Add debug statement [Santhosh]
-Add closes tag [Santhosh]

Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/3508
Signed-off-by: Suraj Kandpal <suraj.kandpal at intel.com>
---
 tests/kms_content_protection.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index 59dca54df..04dff7a05 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -376,9 +376,17 @@ static bool igt_pipe_is_free(igt_display_t *display, enum pipe pipe)
 static void test_cp_lic(igt_output_t *output)
 {
 	bool ret;
+	uint64_t val;
 
 	/* Wait for 4Secs (min 2 cycles of Link Integrity Check) */
 	ret = wait_for_prop_value(output, CP_DESIRED, LIC_PERIOD_MSEC);
+	val = igt_output_get_prop(output,
+				  IGT_CONNECTOR_CONTENT_PROTECTION);
+	if (val == CP_DESIRED) {
+		igt_debug("Link Integrity Check failed, waiting for reauthentication\n");
+		ret = wait_for_prop_value(output, CP_DESIRED, LIC_PERIOD_MSEC);
+	}
+
 	igt_assert_f(!ret, "Content Protection LIC Failed\n");
 }
 
-- 
2.34.1



More information about the igt-dev mailing list