From: "Jouni Högander" <jouni.hogander@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: kunal1.joshi@intel.com, "Jouni Högander" <jouni.hogander@intel.com>
Subject: [PATCH i-g-t 2/3] tests/intel/kms_psr*: Add psr_sink_error_check to PSR tests
Date: Mon, 1 Jul 2024 08:13:00 +0300 [thread overview]
Message-ID: <20240701051301.3344927-3-jouni.hogander@intel.com> (raw)
In-Reply-To: <20240701051301.3344927-1-jouni.hogander@intel.com>
Currently we are ignoring possible errors detected by the sink in our PSR
testcases. Fix this by add psr_sink_error_check to each of them.
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
tests/intel/kms_frontbuffer_tracking.c | 5 +++--
tests/intel/kms_pm_dc.c | 2 ++
tests/intel/kms_psr.c | 2 ++
tests/intel/kms_psr2_sf.c | 2 ++
tests/intel/kms_psr2_su.c | 2 ++
tests/intel/kms_psr_stress_test.c | 1 +
6 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index e45d17dd6..913c7b234 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -2722,10 +2722,11 @@ static void do_status_assertions(int flags)
prim_mode_params.pipe));
}
- if (flags & ASSERT_PSR_ENABLED)
+ if (flags & ASSERT_PSR_ENABLED) {
igt_assert_f(psr_wait_entry(drm.debugfs, PSR_MODE_1, NULL),
"PSR still disabled\n");
- else if (flags & ASSERT_PSR_DISABLED)
+ psr_sink_error_check(drm.debugfs, PSR_MODE_1, prim_mode_params.output);
+ } else if (flags & ASSERT_PSR_DISABLED)
igt_assert_f(psr_wait_update(drm.debugfs, PSR_MODE_1, NULL),
"PSR still enabled\n");
}
diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index e1318bfa6..d5753ad32 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -407,6 +407,7 @@ static void test_dc_state_psr(data_t *data, int dc_flag)
igt_require(!psr_disabled_check(data->debugfs_fd));
igt_assert(psr_wait_entry(data->debugfs_fd, data->op_psr_mode, NULL));
check_dc_counter(data, dc_flag, dc_counter_before_psr);
+ psr_sink_error_check(data->debugfs_fd, data->op_psr_mode, data->output);
cleanup_dc_psr(data);
}
@@ -675,6 +676,7 @@ static void test_pkgc_state_psr(data_t *data)
igt_wait((cur_value = read_pkgc_counter(data->debugfs_root_fd)) > prev_value,
timeout_sec * 1000, 100);
igt_assert_f(cur_value > prev_value, "PKGC10 is not achieved.\n");
+ psr_sink_error_check(data->debugfs_fd, data->op_psr_mode, data->output);
psr_dpms(data, DRM_MODE_DPMS_ON);
cleanup_dc_psr(data);
}
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index f3caa9ecc..c59476137 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -650,6 +650,8 @@ static void test_cleanup(data_t *data)
{
igt_plane_t *primary;
+ psr_sink_error_check(data->debugfs_fd, data->op_psr_mode, data->output);
+
igt_output_override_mode(data->output, NULL);
primary = igt_output_get_plane_type(data->output,
diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
index 03ff1cddb..a9be1a1ec 100644
--- a/tests/intel/kms_psr2_sf.c
+++ b/tests/intel/kms_psr2_sf.c
@@ -972,6 +972,8 @@ static void run(data_t *data)
default:
igt_assert(false);
}
+
+ psr_sink_error_check(data->debugfs_fd, data->psr_mode, data->output);
}
static void cleanup(data_t *data)
diff --git a/tests/intel/kms_psr2_su.c b/tests/intel/kms_psr2_su.c
index 437ee36f6..0099daf1d 100644
--- a/tests/intel/kms_psr2_su.c
+++ b/tests/intel/kms_psr2_su.c
@@ -273,6 +273,8 @@ static void run(data_t *data, igt_output_t *output)
igt_assert_f(result,
"No matching selective update blocks read from debugfs\n");
+
+ psr_sink_error_check(data->debugfs_fd, PSR_MODE_2, output);
}
static void cleanup(data_t *data, igt_output_t *output)
diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
index d6e2340b8..73a6eb56d 100644
--- a/tests/intel/kms_psr_stress_test.c
+++ b/tests/intel/kms_psr_stress_test.c
@@ -344,6 +344,7 @@ static void run(data_t *data)
/* Check if after all this stress the PSR is still in the same state */
igt_assert(psr_get_mode(data->debugfs_fd, NULL) == data->initial_state);
+ psr_sink_error_check(data->debugfs_fd, data->initial_state, data->output);
}
igt_main
--
2.34.1
next prev parent reply other threads:[~2024-07-01 5:14 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-01 5:12 [PATCH i-g-t 0/3] PSR testing improvement by checking sink status Jouni Högander
2024-07-01 5:12 ` [PATCH i-g-t 1/3] lib/igt_psr: Add mechanism to check sink status as well Jouni Högander
2024-09-07 11:39 ` Naladala, Ramanaidu
2024-09-07 11:57 ` Naladala, Ramanaidu
2024-07-01 5:13 ` Jouni Högander [this message]
2024-09-07 11:47 ` [PATCH i-g-t 2/3] tests/intel/kms_psr*: Add psr_sink_error_check to PSR tests Naladala, Ramanaidu
2024-07-01 5:13 ` [PATCH i-g-t 3/3] tests/intel/kms_dirtyfb: Check features after rendering Jouni Högander
2024-09-07 11:51 ` Naladala, Ramanaidu
2024-07-01 6:25 ` ✓ CI.xeBAT: success for PSR testing improvement by checking sink status Patchwork
2024-07-01 6:31 ` ✓ Fi.CI.BAT: " Patchwork
2024-07-01 7:37 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-07-01 7:39 ` ✓ CI.xeFULL: success " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240701051301.3344927-3-jouni.hogander@intel.com \
--to=jouni.hogander@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=kunal1.joshi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox