@@ -36,6 +36,7 @@
#include "intel_chipset.h"
#include "igt_debugfs.h"
#include "igt_kms.h"
+#include "igt_aux.h"
enum tests {
TEST_PAGE_FLIP,
@@ -57,6 +58,8 @@ enum tests {
TEST_SPRITE,
};
+bool running_with_psr_disabled;
+
typedef struct {
int drm_fd;
enum tests test;
@@ -264,6 +267,9 @@ static bool psr_enabled(data_t *data)
FILE *file;
char str[4];
+ if (running_with_psr_disabled)
+ return true;
+
file = igt_debugfs_fopen("i915_edp_psr_status", "r");
igt_require(file);
@@ -284,6 +290,9 @@ static bool psr_active(data_t *data)
FILE *file;
char str[4];
+ if (running_with_psr_disabled)
+ return true;
+
file = igt_debugfs_fopen("i915_edp_psr_status", "r");
igt_require(file);
@@ -327,6 +336,14 @@ static void get_sink_crc(data_t *data, char *crc) {
igt_require(ret > 0);
fclose(file);
+
+ igt_debug("%s\n", crc);
+ igt_debug_wait_for_keypress("crc");
+
+ /* The important value was already taken.
+ * Now give a time for human eyes
+ */
+ usleep(300000);
}
static void test_crc(data_t *data)
@@ -342,7 +359,6 @@ static void test_crc(data_t *data)
1, 1) == 0);
}
- usleep(300000);
igt_assert(wait_psr_entry(data, 10));
get_sink_crc(data, ref_crc);
@@ -586,11 +602,16 @@ static void run_test(data_t *data)
}
}
-data_t data = {};
-enum tests test;
-
igt_main
{
+ data_t data = {};
+ enum tests test;
+ char *env_psr;
+
+ env_psr = getenv("IGT_PSR_DISABLED");
+
+ running_with_psr_disabled = (bool) env_psr;
+
igt_skip_on_simulation();
igt_fixture {
Just to make life easier and be eable to easily test with PSR disabled to know exactly what to expect when running it for real v3: Use igt_debug helpers and add env option for running with psr disabled on this test without have to recompile like v1 or changing igt infrastructure like v2. I tried to add --disable-psr or local --dry-run but than it fails to print subtests so this was the safest way. Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> --- tests/kms_psr_sink_crc.c | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-)