summaryrefslogtreecommitdiff
path: root/tests/kms_frontbuffer_tracking.c
diff options
context:
space:
mode:
authorSouza, Jose <jose.souza@intel.com>2018-04-04 13:25:54 -0700
committerPetri Latvala <petri.latvala@intel.com>2018-04-17 11:22:47 +0300
commitddbe5a4d8bb1780ecf07f72e815062d3bce8ff71 (patch)
tree89d2fab8d1f1b34d3cb533219e529c98152f2a01 /tests/kms_frontbuffer_tracking.c
parent756e8c7386f7fb24cc46dfb14145183b2ee58327 (diff)
tests/kms_frontbuffer_tracking: Ignore FBC errors due mode is too large
Depending on the default mode size, some tests will fail because it will exceed the maximum size that hardware tracking can handle, mostly because hardware tracking do not take in care the X and Y offsets, so the plane size + offsets needs be smaller or equal to hardware tracking limmits. Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105680 Reviewed-by: Marta Lofstedt <marta.lofstedt@intel.com>
Diffstat (limited to 'tests/kms_frontbuffer_tracking.c')
-rw-r--r--tests/kms_frontbuffer_tracking.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c
index 5dad3b26..8754cc46 100644
--- a/tests/kms_frontbuffer_tracking.c
+++ b/tests/kms_frontbuffer_tracking.c
@@ -954,6 +954,14 @@ static bool fbc_stride_not_supported(void)
return strstr(buf, "FBC disabled: framebuffer stride not supported\n");
}
+static bool fbc_mode_too_large(void)
+{
+ char buf[128];
+
+ debugfs_read("i915_fbc_status", buf);
+ return strstr(buf, "FBC disabled: mode too large for compression\n");
+}
+
static bool fbc_wait_until_enabled(void)
{
last_fbc_buf[0] = '\0';
@@ -1734,6 +1742,7 @@ static void do_status_assertions(int flags)
if (flags & ASSERT_FBC_ENABLED) {
igt_require(!fbc_not_enough_stolen());
igt_require(!fbc_stride_not_supported());
+ igt_require(!fbc_mode_too_large());
if (!fbc_wait_until_enabled()) {
igt_assert_f(fbc_is_enabled(IGT_LOG_WARN),
"FBC disabled\n");