[PATCH i-g-t 1/2] tests/intel/kms_fbt: Skip fbcpsr tests on Wa_14016291713

Jouni Högander jouni.hogander at intel.com
Wed Mar 27 05:47:49 UTC 2024


Wa_1401629171 is disabling FBC if PSR is enabled. Check this from FBC
debugfs interface and skip current test if FBC is disabled due to
Wa_14016291713.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/9525
Signed-off-by: Jouni Högander <jouni.hogander at intel.com>
---
 tests/intel/kms_frontbuffer_tracking.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index db2db0ff1..6d5395a0c 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -2025,6 +2025,14 @@ static bool fbc_mode_too_large(void)
 	return strstr(buf, "FBC disabled: mode too large for compression\n");
 }
 
+static bool fbc_psr_not_possible(void)
+{
+	char buf[128];
+
+	debugfs_read_crtc("i915_fbc_status", buf);
+	return strstr(buf, "FBC disabled: PSR1 enabled (Wa_14016291713)");
+}
+
 static bool fbc_enable_per_plane(int plane_index, enum pipe pipe)
 {
 	char buf[PATH_MAX];
@@ -2699,6 +2707,7 @@ static void do_status_assertions(int flags)
 		igt_require(!fbc_not_enough_stolen());
 		igt_require(!fbc_stride_not_supported());
 		igt_require(!fbc_mode_too_large());
+		igt_require(!fbc_psr_not_possible());
 		if (!intel_fbc_wait_until_enabled(drm.fd, prim_mode_params.pipe)) {
 			igt_assert_f(intel_fbc_is_enabled(drm.fd,
 						    prim_mode_params.pipe,
-- 
2.34.1



More information about the igt-dev mailing list