* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-10-25 14:27 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-10-25 14:27 ` Kunal Joshi
0 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-10-25 14:27 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-10-31 8:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-10-31 8:09 ` Kunal Joshi
2023-10-31 11:32 ` Hogander, Jouni
0 siblings, 1 reply; 19+ messages in thread
From: Kunal Joshi @ 2023-10-31 8:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-10-31 8:09 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
@ 2023-10-31 11:32 ` Hogander, Jouni
0 siblings, 0 replies; 19+ messages in thread
From: Hogander, Jouni @ 2023-10-31 11:32 UTC (permalink / raw)
To: Joshi, Kunal1, igt-dev@lists.freedesktop.org; +Cc: Murthy, Arun R
On Tue, 2023-10-31 at 13:39 +0530, Kunal Joshi wrote:
> Added enum for PR
>
> Cc: Jouni Högander <jouni.hogander@intel.com>
> Cc: Animesh Manna <animesh.manna@intel.com>
> Cc: Arun R Murthy <arun.r.murthy@intel.com>
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
> ---
> lib/igt_psr.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/lib/igt_psr.h b/lib/igt_psr.h
> index 12ffc9d6c..243154897 100644
> --- a/lib/igt_psr.h
> +++ b/lib/igt_psr.h
> @@ -34,6 +34,8 @@ enum psr_mode {
> PSR_MODE_1,
> PSR_MODE_2,
> PSR_MODE_2_SEL_FETCH,
> + PR_MODE,
> + PR_MODE_SEL_FETCH,
> PSR_DISABLED,
> };
>
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-11-09 3:36 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-11-09 3:37 ` Kunal Joshi
0 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 3:37 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr
@ 2023-11-09 6:09 Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
` (8 more replies)
0 siblings, 9 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi
Panel Replay behaves same as PSR for DP connector,
modify kms_psr test to validate pr feature as well
Kunal Joshi (7):
lib/igt_psr: added enum for panel replay
lib/igt_psr: modified psr_sink_support for pr compatability
lib/igt_psr: modified psr_active_check for pr compatability
lib/igt_psr: modified psr_set for pr compatability
lib/igt_psr: modified psr_get_mode for pr compatability
tests/intel/kms_psr: made test compaitable with pr
HAX PATCH DO NOT MERGE
lib/igt_psr.c | 90 ++++--
lib/igt_psr.h | 11 +-
tests/intel-ci/fast-feedback.testlist | 65 ++++
tests/intel/kms_dirtyfb.c | 4 +-
tests/intel/kms_fbcon_fbt.c | 8 +-
tests/intel/kms_frontbuffer_tracking.c | 6 +-
tests/intel/kms_pm_dc.c | 15 +-
tests/intel/kms_psr.c | 393 ++++++++++++++++++-------
tests/intel/kms_psr2_sf.c | 13 +-
tests/intel/kms_psr2_su.c | 7 +-
tests/intel/kms_psr_stress_test.c | 4 +-
tests/kms_feature_discovery.c | 4 +-
12 files changed, 461 insertions(+), 159 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability Kunal Joshi
` (7 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-10 7:53 ` Hogander, Jouni
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check " Kunal Joshi
` (6 subsequent siblings)
8 siblings, 1 reply; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
New debugfs directory for all DP connectors will be added
with below patch series https://patchwork.freedesktop.org/series/94470/
For DP Connectors
/sys/kernel/debug/dri/0/DP-x/i915_psr_status
For eDP Connectors
/sys/kernel/debug/dri/0/i915_edp_psr_status
or
/sys/kernel/debug/dri/0/eDP-x/i915_psr_status
v2: reuse psr_sink_support (Jouni)
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_psr.c | 56 ++++++++++++++++++--------
lib/igt_psr.h | 3 +-
tests/intel/kms_dirtyfb.c | 2 +-
tests/intel/kms_fbcon_fbt.c | 4 +-
tests/intel/kms_frontbuffer_tracking.c | 2 +-
tests/intel/kms_pm_dc.c | 9 +++--
tests/intel/kms_psr.c | 2 +-
tests/intel/kms_psr2_sf.c | 3 +-
tests/intel/kms_psr2_su.c | 3 +-
tests/intel/kms_psr_stress_test.c | 2 +-
tests/kms_feature_discovery.c | 4 +-
11 files changed, 59 insertions(+), 31 deletions(-)
diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index 13f7c567d..054622d79 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -192,31 +192,53 @@ bool psr_disable(int device, int debugfs_fd)
return psr_set(device, debugfs_fd, -1);
}
-bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode)
+bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output_t *output)
{
+ char *line;
+ char debugfs_file[128] = {0};
char buf[PSR_STATUS_MAX_LEN];
int ret;
- ret = igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf,
+ if (output)
+ sprintf(debugfs_file, "%s/i915_psr_status", output->name);
+ else
+ sprintf(debugfs_file, "%s", "i915_edp_psr_status");
+
+ ret = igt_debugfs_simple_read(debugfs_fd, debugfs_file, buf,
sizeof(buf));
if (ret < 1)
return false;
- if (mode == PSR_MODE_1)
- return strstr(buf, "Sink_Support: yes\n") ||
- strstr(buf, "Sink support: yes");
- else
- /*
- * i915 requires PSR version 0x03 that is PSR2 + SU with
- * Y-coordinate to support PSR2
- *
- * or
- *
- * PSR version 0x4 that is PSR2 + SU w/ Y-coordinate and SU
- * Region Early Transport to support PSR2 (eDP 1.5)
- */
- return strstr(buf, "Sink support: yes [0x03]") ||
- strstr(buf, "Sink support: yes [0x04]");
+ line = strstr(buf, "Sink support: ");
+ if (!line)
+ return false;
+
+ switch (mode) {
+ case PSR_MODE_1:
+ return strstr(line, "PSR = yes") ||
+ strstr(buf, "Sink_Support: yes\n") ||
+ strstr(buf, "Sink support: yes");
+ case PSR_MODE_2:
+ case PSR_MODE_2_SEL_FETCH:
+ /*
+ * i915 requires PSR version 0x03 that is PSR2 + SU with
+ * Y-coordinate to support PSR2
+ * or
+ *
+ * PSR version 0x4 that is PSR2 + SU w/ Y-coordinate and SU
+ * Region Early Transport to support PSR2 (eDP 1.5)
+ */
+ return strstr(line, "PSR = yes") &&
+ (strstr(line, "[0x03]") || strstr(line, "[0x04]"));
+ case PR_MODE:
+ return strstr(line, "Panel Replay = yes");
+ case PR_MODE_SEL_FETCH:
+ return strstr(line, "Panel Replay = yes") &&
+ strstr(buf, "PSR2 selective fetch: enabled");
+ default:
+ igt_assert_f(false, "Invalid psr mode\n");
+ return false;
+ }
}
#define PSR2_SU_BLOCK_STR_LOOKUP "PSR2 SU blocks:\n0\t"
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 243154897..e213b05e9 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -27,6 +27,7 @@
#include "igt_debugfs.h"
#include "igt_core.h"
#include "igt_aux.h"
+#include "igt_kms.h"
#define PSR_STATUS_MAX_LEN 512
@@ -46,7 +47,7 @@ bool psr_wait_update(int debugfs_fd, enum psr_mode mode);
bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode);
bool psr_enable(int device, int debugfs_fd, enum psr_mode);
bool psr_disable(int device, int debugfs_fd);
-bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode);
+bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output_t *output);
bool psr2_wait_su(int debugfs_fd, uint16_t *num_su_blocks);
void psr_print_debugfs(int debugfs_fd);
enum psr_mode psr_get_mode(int debugfs_fd);
diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
index cc9529178..f7ff1ac0b 100644
--- a/tests/intel/kms_dirtyfb.c
+++ b/tests/intel/kms_dirtyfb.c
@@ -92,7 +92,7 @@ static bool check_support(data_t *data)
DRM_MODE_CONNECTOR_eDP)
return false;
return psr_sink_support(data->drm_fd, data->debugfs_fd,
- PSR_MODE_1);
+ PSR_MODE_1, NULL);
case FEATURE_DRRS:
return intel_is_drrs_supported(data->drm_fd, data->pipe) &&
intel_output_has_drrs(data->drm_fd, data->output);
diff --git a/tests/intel/kms_fbcon_fbt.c b/tests/intel/kms_fbcon_fbt.c
index 8d6bb3cb6..a7f24e669 100644
--- a/tests/intel/kms_fbcon_fbt.c
+++ b/tests/intel/kms_fbcon_fbt.c
@@ -269,7 +269,7 @@ static bool psr_is_disabled(int debugfs_fd)
static bool psr_supported_on_chipset(int device, int debugfs_fd)
{
- return psr_sink_support(device, debugfs_fd, PSR_MODE_1);
+ return psr_sink_support(device, debugfs_fd, PSR_MODE_1, NULL);
}
static bool psr_wait_until_update(struct drm_info *drm)
@@ -280,7 +280,7 @@ static bool psr_wait_until_update(struct drm_info *drm)
static void disable_features(int device, int debugfs_fd)
{
igt_set_module_param_int(device, "enable_fbc", 0);
- if (psr_sink_support(device, debugfs_fd, PSR_MODE_1))
+ if (psr_sink_support(device, debugfs_fd, PSR_MODE_1, NULL))
psr_disable(device, debugfs_fd);
}
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index be340a997..3cfa22bbf 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -1383,7 +1383,7 @@ static void setup_psr(void)
return;
}
- if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1)) {
+ if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1, NULL)) {
igt_info("Can't test PSR: not supported by sink.\n");
return;
}
diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index 1e9ca5d6c..e5daacb84 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -673,14 +673,16 @@ igt_main
igt_describe("In this test we make sure that system enters DC3CO "
"when PSR2 is active and system is in SLEEP state");
igt_subtest("dc3co-vpb-simulation") {
- igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_2));
+ igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd,
+ PSR_MODE_2, NULL));
test_dc3co_vpb_simulation(&data);
}
igt_describe("This test validates display engine entry to DC5 state "
"while PSR is active");
igt_subtest("dc5-psr") {
- igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_1));
+ igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd,
+ PSR_MODE_1, NULL));
data.op_psr_mode = PSR_MODE_1;
psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode);
test_dc_state_psr(&data, CHECK_DC5);
@@ -689,7 +691,8 @@ igt_main
igt_describe("This test validates display engine entry to DC6 state "
"while PSR is active");
igt_subtest("dc6-psr") {
- igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_1));
+ igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd,
+ PSR_MODE_1, NULL));
data.op_psr_mode = PSR_MODE_1;
psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode);
igt_require_f(igt_pm_pc8_plus_residencies_enabled(data.msr_fd),
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index ffecc5222..260095aec 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -433,7 +433,7 @@ static void fill_render(data_t *data, const struct igt_fb *fb,
static bool sink_support(data_t *data, enum psr_mode mode)
{
return data->with_psr_disabled ||
- psr_sink_support(data->drm_fd, data->debugfs_fd, mode);
+ psr_sink_support(data->drm_fd, data->debugfs_fd, mode, NULL);
}
static bool psr_wait_entry_if_enabled(data_t *data)
diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
index d7a746211..2d05f1110 100644
--- a/tests/intel/kms_psr2_sf.c
+++ b/tests/intel/kms_psr2_sf.c
@@ -980,7 +980,8 @@ igt_main
kmstest_set_vt_graphics_mode();
igt_require_f(psr_sink_support(data.drm_fd,
- data.debugfs_fd, PSR_MODE_2),
+ data.debugfs_fd, PSR_MODE_2,
+ NULL),
"Sink does not support PSR2\n");
display_init(&data);
diff --git a/tests/intel/kms_psr2_su.c b/tests/intel/kms_psr2_su.c
index 834fec1ec..2f89de435 100644
--- a/tests/intel/kms_psr2_su.c
+++ b/tests/intel/kms_psr2_su.c
@@ -327,7 +327,8 @@ igt_main
kmstest_set_vt_graphics_mode();
igt_require_f(psr_sink_support(data.drm_fd,
- data.debugfs_fd, PSR_MODE_2),
+ data.debugfs_fd,
+ PSR_MODE_2, NULL),
"Sink does not support PSR2\n");
igt_require_f(intel_display_ver(intel_get_drm_devid(data.drm_fd)) < 13,
diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
index b6759eece..beded3b94 100644
--- a/tests/intel/kms_psr_stress_test.c
+++ b/tests/intel/kms_psr_stress_test.c
@@ -357,7 +357,7 @@ igt_main
kmstest_set_vt_graphics_mode();
igt_require_f(psr_sink_support(data.drm_fd, data.debugfs_fd,
- PSR_MODE_1),
+ PSR_MODE_1, NULL),
"Sink does not support PSR\n");
setup_output(&data);
diff --git a/tests/kms_feature_discovery.c b/tests/kms_feature_discovery.c
index 3a1f6d21d..428f97ffe 100644
--- a/tests/kms_feature_discovery.c
+++ b/tests/kms_feature_discovery.c
@@ -159,12 +159,12 @@ igt_main {
igt_describe("Make sure that we have eDP panel with PSR1 support.");
igt_subtest("psr1") {
- igt_require(psr_sink_support(fd, debugfs_fd, PSR_MODE_1));
+ igt_require(psr_sink_support(fd, debugfs_fd, PSR_MODE_1, NULL));
}
igt_describe("Make sure that we have eDP panel with PSR2 support.");
igt_subtest("psr2") {
- igt_require(psr_sink_support(fd, debugfs_fd, PSR_MODE_2));
+ igt_require(psr_sink_support(fd, debugfs_fd, PSR_MODE_2, NULL));
}
igt_describe("Make sure that we have DP-MST configuration.");
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check for pr compatability
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set " Kunal Joshi
` (5 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Whenever PR is active, system will be in SRDENT,
modify psr_active_check to accomadte PR_MODE
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.c | 24 +++++++++++++++---------
lib/igt_psr.h | 6 +++---
tests/intel/kms_dirtyfb.c | 2 +-
tests/intel/kms_fbcon_fbt.c | 4 ++--
tests/intel/kms_frontbuffer_tracking.c | 4 ++--
tests/intel/kms_pm_dc.c | 6 +++---
tests/intel/kms_psr.c | 4 ++--
tests/intel/kms_psr2_sf.c | 10 +++++-----
tests/intel/kms_psr2_su.c | 4 ++--
tests/intel/kms_psr_stress_test.c | 2 +-
10 files changed, 36 insertions(+), 30 deletions(-)
diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index 054622d79..818151228 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -47,13 +47,19 @@ bool psr2_selective_fetch_check(int debugfs_fd)
return strstr(buf, "PSR2 selective fetch: enabled");
}
-static bool psr_active_check(int debugfs_fd, enum psr_mode mode)
+static bool psr_active_check(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
{
+ char debugfs_file[128] = {0};
char buf[PSR_STATUS_MAX_LEN];
- const char *state = mode == PSR_MODE_1 ? "SRDENT" : "DEEP_SLEEP";
+ const char *state = mode == PSR_MODE_1 || PR_MODE ? "SRDENT" : "DEEP_SLEEP";
int ret;
- ret = igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status",
+ if (output)
+ sprintf(debugfs_file, "%s/i915_psr_status", output->name);
+ else
+ sprintf(debugfs_file, "%s", "i915_edp_psr_status");
+
+ ret = igt_debugfs_simple_read(debugfs_fd, debugfs_file,
buf, sizeof(buf));
if (ret < 0) {
igt_info("Could not read i915_edp_psr_status: %s\n",
@@ -69,19 +75,19 @@ static bool psr_active_check(int debugfs_fd, enum psr_mode mode)
/*
* For PSR1, we wait until PSR is active. We wait until DEEP_SLEEP for PSR2.
*/
-bool psr_wait_entry(int debugfs_fd, enum psr_mode mode)
+bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
{
- return igt_wait(psr_active_check(debugfs_fd, mode), 500, 20);
+ return igt_wait(psr_active_check(debugfs_fd, mode, output), 500, 20);
}
-bool psr_wait_update(int debugfs_fd, enum psr_mode mode)
+bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
{
- return igt_wait(!psr_active_check(debugfs_fd, mode), 40, 10);
+ return igt_wait(!psr_active_check(debugfs_fd, mode, output), 40, 10);
}
-bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode)
+bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
{
- return igt_wait(!psr_active_check(debugfs_fd, mode), 500, 10);
+ return igt_wait(!psr_active_check(debugfs_fd, mode, output), 500, 10);
}
static ssize_t psr_write(int debugfs_fd, const char *buf)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index e213b05e9..a30330e6c 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -42,9 +42,9 @@ enum psr_mode {
bool psr_disabled_check(int debugfs_fd);
bool psr2_selective_fetch_check(int debugfs_fd);
-bool psr_wait_entry(int debugfs_fd, enum psr_mode mode);
-bool psr_wait_update(int debugfs_fd, enum psr_mode mode);
-bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode);
+bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output);
+bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output);
+bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output);
bool psr_enable(int device, int debugfs_fd, enum psr_mode);
bool psr_disable(int device, int debugfs_fd);
bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode, igt_output_t *output);
diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
index f7ff1ac0b..b14cc8bec 100644
--- a/tests/intel/kms_dirtyfb.c
+++ b/tests/intel/kms_dirtyfb.c
@@ -135,7 +135,7 @@ static void check_feature(data_t *data)
"FBC still disabled");
break;
case FEATURE_PSR:
- igt_assert_f(psr_wait_entry(data->debugfs_fd, PSR_MODE_1),
+ igt_assert_f(psr_wait_entry(data->debugfs_fd, PSR_MODE_1, NULL),
"PSR still disabled\n");
break;
case FEATURE_DRRS:
diff --git a/tests/intel/kms_fbcon_fbt.c b/tests/intel/kms_fbcon_fbt.c
index a7f24e669..4078309d9 100644
--- a/tests/intel/kms_fbcon_fbt.c
+++ b/tests/intel/kms_fbcon_fbt.c
@@ -253,7 +253,7 @@ static void psr_print_status(int debugfs_fd)
static bool psr_wait_until_enabled(int debugfs_fd)
{
- bool r = psr_wait_entry(debugfs_fd, PSR_MODE_1);
+ bool r = psr_wait_entry(debugfs_fd, PSR_MODE_1, NULL);
psr_print_status(debugfs_fd);
return r;
@@ -274,7 +274,7 @@ static bool psr_supported_on_chipset(int device, int debugfs_fd)
static bool psr_wait_until_update(struct drm_info *drm)
{
- return psr_long_wait_update(drm->debugfs_fd, PSR_MODE_1);
+ return psr_long_wait_update(drm->debugfs_fd, PSR_MODE_1, NULL);
}
static void disable_features(int device, int debugfs_fd)
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index 3cfa22bbf..e5f139195 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -1584,10 +1584,10 @@ static void do_status_assertions(int flags)
}
if (flags & ASSERT_PSR_ENABLED)
- igt_assert_f(psr_wait_entry(drm.debugfs, PSR_MODE_1),
+ igt_assert_f(psr_wait_entry(drm.debugfs, PSR_MODE_1, NULL),
"PSR still disabled\n");
else if (flags & ASSERT_PSR_DISABLED)
- igt_assert_f(psr_wait_update(drm.debugfs, PSR_MODE_1),
+ 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 e5daacb84..a3c7c4018 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -382,7 +382,7 @@ static void setup_dc3co(data_t *data)
{
data->op_psr_mode = PSR_MODE_2;
psr_enable(data->drm_fd, data->debugfs_fd, data->op_psr_mode);
- igt_require_f(psr_wait_entry(data->debugfs_fd, data->op_psr_mode),
+ igt_require_f(psr_wait_entry(data->debugfs_fd, data->op_psr_mode, NULL),
"PSR2 is not enabled\n");
}
@@ -418,7 +418,7 @@ static void test_dc_state_psr(data_t *data, int dc_flag)
dc_counter_before_psr = read_dc_counter(data->debugfs_fd, dc_flag);
setup_output(data);
setup_primary(data);
- igt_assert(psr_wait_entry(data->debugfs_fd, data->op_psr_mode));
+ igt_assert(psr_wait_entry(data->debugfs_fd, data->op_psr_mode, NULL));
check_dc_counter(data, dc_flag, dc_counter_before_psr);
cleanup_dc_psr(data);
}
@@ -624,7 +624,7 @@ static void test_pkgc_state_psr(data_t *data)
prev_value = read_pkgc_counter(data->debugfs_root_fd);
setup_output(data);
setup_primary(data);
- igt_assert(psr_wait_entry(data->debugfs_fd, data->op_psr_mode));
+ igt_assert(psr_wait_entry(data->debugfs_fd, data->op_psr_mode, NULL));
psr_dpms(data, DRM_MODE_DPMS_OFF);
igt_wait((cur_value = read_pkgc_counter(data->debugfs_root_fd)) > prev_value,
timeout_sec * 1000, 100);
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index 260095aec..8485e9894 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -441,7 +441,7 @@ static bool psr_wait_entry_if_enabled(data_t *data)
if (data->with_psr_disabled)
return true;
- return psr_wait_entry(data->debugfs_fd, data->op_psr_mode);
+ return psr_wait_entry(data->debugfs_fd, data->op_psr_mode, data->output);
}
static bool psr_wait_update_if_enabled(data_t *data)
@@ -449,7 +449,7 @@ static bool psr_wait_update_if_enabled(data_t *data)
if (data->with_psr_disabled)
return true;
- return psr_wait_update(data->debugfs_fd, data->op_psr_mode);
+ return psr_wait_update(data->debugfs_fd, data->op_psr_mode, data->output);
}
static bool psr_enable_if_enabled(data_t *data)
diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
index 2d05f1110..9f5186eee 100644
--- a/tests/intel/kms_psr2_sf.c
+++ b/tests/intel/kms_psr2_sf.c
@@ -677,7 +677,7 @@ static void damaged_plane_move(data_t *data)
igt_display_commit2(&data->display, COMMIT_ATOMIC);
- igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2));
+ igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2, NULL));
expected_output(data);
}
@@ -777,7 +777,7 @@ static void plane_move_continuous(data_t *data)
{
int target_x, target_y;
- igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2));
+ igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2, NULL));
get_target_coords(data, &target_x, &target_y);
@@ -854,7 +854,7 @@ static void damaged_plane_update(data_t *data)
igt_plane_set_position(data->test_plane, 0, 0);
igt_display_commit2(&data->display, COMMIT_ATOMIC);
- igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2));
+ igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2, NULL));
expected_output(data);
}
@@ -863,7 +863,7 @@ static void run(data_t *data)
{
int i;
- igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2));
+ igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2, NULL));
data->screen_changes = 0;
@@ -941,7 +941,7 @@ static int check_psr2_support(data_t *data)
int status;
prepare(data);
- status = psr_wait_entry(data->debugfs_fd, PSR_MODE_2);
+ status = psr_wait_entry(data->debugfs_fd, PSR_MODE_2, NULL);
cleanup(data);
return status;
diff --git a/tests/intel/kms_psr2_su.c b/tests/intel/kms_psr2_su.c
index 2f89de435..3506409b7 100644
--- a/tests/intel/kms_psr2_su.c
+++ b/tests/intel/kms_psr2_su.c
@@ -258,7 +258,7 @@ static void run(data_t *data, igt_output_t *output)
{
bool result = false;
- igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2));
+ igt_assert(psr_wait_entry(data->debugfs_fd, PSR_MODE_2, output));
for (data->screen_changes = 0;
data->screen_changes < MAX_SCREEN_CHANGES && !result;
@@ -304,7 +304,7 @@ static int check_psr2_support(data_t *data, enum pipe pipe)
igt_output_set_pipe(output, pipe);
prepare(data, output);
- status = psr_wait_entry(data->debugfs_fd, PSR_MODE_2);
+ status = psr_wait_entry(data->debugfs_fd, PSR_MODE_2, output);
cleanup(data, output);
return status;
diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
index beded3b94..e3b21603a 100644
--- a/tests/intel/kms_psr_stress_test.c
+++ b/tests/intel/kms_psr_stress_test.c
@@ -232,7 +232,7 @@ static void prepare(data_t *data)
data->initial_state = psr_get_mode(data->debugfs_fd);
igt_require(data->initial_state != PSR_DISABLED);
- igt_require(psr_wait_entry(data->debugfs_fd, data->initial_state));
+ igt_require(psr_wait_entry(data->debugfs_fd, data->initial_state, NULL));
}
static void cleanup(data_t *data)
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set for pr compatability
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
` (2 preceding siblings ...)
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check " Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode " Kunal Joshi
` (4 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Modified psr_set to add support PR_MODE and
PR_MODE_SEL_FETCH
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index 818151228..df1007628 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -168,6 +168,12 @@ static bool psr_set(int device, int debugfs_fd, int mode)
case PSR_MODE_2_SEL_FETCH:
debug_val = "0x4";
break;
+ case PR_MODE:
+ debug_val = "0x5";
+ break;
+ case PR_MODE_SEL_FETCH:
+ debug_val = "0x6";
+ break;
default:
/* Disables PSR */
debug_val = "0x1";
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode for pr compatability
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
` (3 preceding siblings ...)
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set " Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr Kunal Joshi
` (3 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Modified psr_get_mode for PR_MODE
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
lib/igt_psr.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index df1007628..12c4d500e 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -384,7 +384,9 @@ enum psr_mode psr_get_mode(int debugfs_fd)
return PSR_DISABLED;
}
- if (strstr(buf, "PSR2 selective fetch: enabled"))
+ if (strstr(buf, "Panel Replay Enabled"))
+ return PR_MODE;
+ else if (strstr(buf, "PSR2 selective fetch: enabled"))
return PSR_MODE_2_SEL_FETCH;
else if (strstr(buf, "PSR2 enabled"))
return PSR_MODE_2;
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
` (4 preceding siblings ...)
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode " Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE Kunal Joshi
` (2 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Modified kms_psr to have support for PR.
v2: remove set_output and have outputs (Jouni)
v3: loop over connected outputs (Jouni)
v4: set pipe before reading crtc
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
tests/intel/kms_psr.c | 387 +++++++++++++++++++++++++++++++-----------
1 file changed, 290 insertions(+), 97 deletions(-)
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index 8485e9894..4a7c514e8 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -25,7 +25,7 @@
/**
* TEST: kms psr
* Category: Display
- * Description: Tests behaviour of PSR & PSR2
+ * Description: Tests behaviour of PSR & PSR2 & PR
*/
#include "igt.h"
@@ -39,14 +39,14 @@
#include "xe/xe_query.h"
/**
- * SUBTEST: basic
+ * SUBTEST: psr_basic
* Description: Basic check for psr if it is detecting changes made in planes
* Driver requirement: i915, xe
* Functionality: psr
* Mega feature: PSR
* Test category: functionality test
*
- * SUBTEST: %s_%s
+ * SUBTEST: psr_%s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1]
* Driver requirement: i915
@@ -67,7 +67,7 @@
*/
/**
- * SUBTEST: sprite_plane_move
+ * SUBTEST: psr_sprite_plane_move
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on sprite planes
* Driver requirement: i915, xe
@@ -75,7 +75,7 @@
* Mega feature: PSR
* Test category: functionality test
*
- * SUBTEST: %s_%s
+ * SUBTEST: psr_%s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
* Driver requirement: i915, xe
@@ -96,7 +96,7 @@
*/
/**
- * SUBTEST: primary_%s
+ * SUBTEST: psr_primary_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
* Driver requirement: i915, xe
@@ -111,7 +111,7 @@
*/
/**
- * SUBTEST: dpms
+ * SUBTEST: psr_dpms
* Description: Check if psr is detecting changes when rendering operation is
* performed with dpms enabled or disabled
* Driver requirement: i915, xe
@@ -119,14 +119,14 @@
* Mega feature: PSR
* Test category: functionality test
*
- * SUBTEST: no_drrs
+ * SUBTEST: psr_no_drrs
* Description: Check if psr is detecting changes when drrs is disabled
* Driver requirement: i915, xe
* Functionality: drrs, psr
* Mega feature: PSR
* Test category: functionality test
*
- * SUBTEST: suspend
+ * SUBTEST: psr_suspend
* Description: Check if psr is detecting changes when plane operation
* is performed with suspend resume cycles
* Driver requirement: i915, xe
@@ -229,6 +229,112 @@
* @plane_move: Move plane position
*/
+/**
+ * SUBTEST: pr_dpms
+ * Description: Check if pr is detecting changes when rendering operation
+ * is performed with dpms enabled or disabled
+ * Driver requirement: i915, xe
+ * Functionality: dpms, pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: pr_no_drrs
+ * Description: Check if pr is detecting changes when drrs is disabled
+ * Driver requirement: i915, xe
+ * Functionality: drrs, pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: pr_suspend
+ * Description: Check if pr is detecting changes when plane operation is
+ * performed with suspend resume cycles
+ * Driver requirement: i915, xe
+ * Functionality: pr, suspend
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: pr_basic
+ * Description: Basic check for pr if it is detecting changes made in planes
+ * Driver requirement: i915, xe
+ * Functionality: pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: pr_%s_%s
+ * Description: Check if pr is detecting memory mapping, rendering and plane
+ * operations performed on %arg[1] planes
+ * Driver requirement: i915
+ * Functionality: kms_core, plane, pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cursor: Cursor plane
+ * @primary: Primary plane
+ * @sprite: Sprite plane
+ *
+ * arg[2]:
+ *
+ * @mmap_cpu: MMAP CPU
+ * @mmap_gtt: MMAP GTT
+ */
+
+/**
+ * SUBTEST: pr_primary_page_flip
+ * Description: Check if pr is detecting memory mapping, rendering and plane
+ * operations performed on primary planes
+ * Driver requirement: i915, xe
+ * Functionality: plane, pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: pr_primary_%s
+ * Description: Check if pr is detecting memory mapping, rendering and plane
+ * operations performed on primary planes
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane, pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @blt: Blitter
+ * @render: Render
+ */
+
+/**
+ * SUBTEST: pr_%s_%s
+ * Description: Check if pr is detecting memory mapping, rendering and plane
+ * operations performed on %arg[1] planes
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane, pr
+ * Mega feature: Panel Replay
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cursor: Cursor plane
+ * @sprite: Sprite plane
+ *
+ * arg[2]:
+ *
+ * @blt: Blitter
+ * @render: Render
+ * @plane_onoff: Plane On off
+ * @plane_move: Move plane position
+ */
+
enum operations {
PAGE_FLIP,
MMAP_GTT,
@@ -271,7 +377,9 @@ typedef struct {
drmModeModeInfo *mode;
igt_output_t *output;
bool with_psr_disabled;
+ bool supports_psr;
bool supports_psr2;
+ bool supports_pr;
} data_t;
static void create_cursor_fb(data_t *data)
@@ -289,34 +397,38 @@ static void create_cursor_fb(data_t *data)
igt_put_cairo_ctx(cr);
}
-static void setup_output(data_t *data)
+static bool output_supports_psr(data_t *data)
{
- igt_display_t *display = &data->display;
igt_output_t *output;
- enum pipe pipe;
-
- for_each_pipe_with_valid_output(display, pipe, output) {
- drmModeConnectorPtr c = output->config.connector;
-
- if (c->connector_type != DRM_MODE_CONNECTOR_eDP)
- continue;
-
- igt_display_reset(display);
- igt_output_set_pipe(output, pipe);
- if (!i915_pipe_output_combo_valid(display))
- continue;
-
- data->crtc_id = output->config.crtc->crtc_id;
- data->output = output;
-
- return;
+ bool supports_psr;
+
+ supports_psr = false;
+ for_each_connected_output(&data->display, output) {
+ if(psr_sink_support(data->drm_fd, data->debugfs_fd,
+ PSR_MODE_2, output))
+ {
+ supports_psr = true;
+ data->supports_psr2 = true;
+ igt_debug("PSR_2 supported on %s\n", output->name);
+ }
+ else if(psr_sink_support(data->drm_fd, data->debugfs_fd,
+ PSR_MODE_1, output))
+ {
+ supports_psr = true;
+ data->supports_psr = true;
+ igt_debug("PSR_1 supported on %s\n", output->name);
+ }
+ else if(psr_sink_support(data->drm_fd, data->debugfs_fd,
+ PR_MODE, output))
+ {
+ supports_psr = true;
+ data->supports_pr = true;
+ igt_debug("PR supported on %s\n", output->name);
+ }
+ else
+ igt_debug("PSR/PSR2/PR not supported on %s\n", output->name);
}
-}
-
-static void display_init(data_t *data)
-{
- igt_display_require(&data->display, data->drm_fd);
- setup_output(data);
+ return supports_psr;
}
static void display_fini(data_t *data)
@@ -502,7 +614,7 @@ static void fb_dirty_fb_ioctl(data_t *data, struct igt_fb *fb)
}
/**
- * SUBTEST: cursor_plane_move
+ * SUBTEST: psr_cursor_plane_move
* Description: Check if psr is detecting the plane operations performed on
* cursor planes
* Driver requirement: i915, xe
@@ -510,7 +622,7 @@ static void fb_dirty_fb_ioctl(data_t *data, struct igt_fb *fb)
* Functionality: psr
* Mega feature: PSR
*
- * SUBTEST: primary_page_flip
+ * SUBTEST: psr_primary_page_flip
* Description: Check if psr is detecting page-flipping operations performed
* on primary planes
* Driver requirement: i915, xe
@@ -518,7 +630,7 @@ static void fb_dirty_fb_ioctl(data_t *data, struct igt_fb *fb)
* Functionality: psr
* Mega feature: PSR
*
- * SUBTEST: sprite_plane_onoff
+ * SUBTEST: psr_sprite_plane_onoff
* Description: Check if psr is detecting the plane operations performed on
* sprite planes
* Driver requirement: i915, xe
@@ -683,14 +795,35 @@ static void setup_test_plane(data_t *data, int test_plane)
igt_display_commit(&data->display);
}
+static enum pipe get_pipe_for_output(igt_display_t *display,
+ igt_output_t *output)
+{
+ enum pipe pipe;
+
+ for_each_pipe(display, pipe) {
+ if (igt_pipe_connector_valid(pipe, output)) {
+ return pipe;
+ }
+ }
+
+ igt_assert_f(false, "No pipe found for output %s\n",
+ igt_output_name(output));
+}
+
static void test_setup(data_t *data)
{
+ enum pipe pipe;
drmModeConnectorPtr connector;
bool psr_entered = false;
igt_require_f(data->output,
"No available output found\n");
+ pipe = get_pipe_for_output(&data->display, data->output);
+ igt_output_set_pipe(data->output, pipe);
+ igt_require_f(i915_pipe_output_combo_valid(&data->display),
+ "output pipe combo not valid\n");
+ data->crtc_id = data->output->config.crtc->crtc_id;
connector = data->output->config.connector;
for (int i = 0; i < connector->count_modes; i++) {
@@ -747,115 +880,175 @@ data_t data = {};
igt_main_args("", long_options, help_str, opt_handler, &data)
{
+ int z;
enum operations op;
- const char *append_subtest_name[2] = {
- "",
- "psr2_"
+ const char *append_subtest_name[3] = {
+ "psr_",
+ "psr2_",
+ "pr_"
};
+ int modes[] = {PSR_MODE_1, PSR_MODE_2, PR_MODE};
+ igt_output_t *output;
igt_fixture {
data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
data.debugfs_fd = igt_debugfs_dir(data.drm_fd);
kmstest_set_vt_graphics_mode();
data.devid = intel_get_drm_devid(data.drm_fd);
-
- igt_require_f(sink_support(&data, PSR_MODE_1),
- "Sink does not support PSR\n");
-
- data.supports_psr2 = sink_support(&data, PSR_MODE_2);
data.bops = buf_ops_create(data.drm_fd);
- display_init(&data);
+ igt_display_require(&data.display, data.drm_fd);
+ data.supports_psr2 = data.supports_psr2 | sink_support(&data, PSR_MODE_2);
+ igt_require_f(output_supports_psr(&data), "Sink does not support PSR/PSR2/PR\n");
}
- for (data.op_psr_mode = PSR_MODE_1; data.op_psr_mode <= PSR_MODE_2;
- data.op_psr_mode++) {
+ for (z = 0; z < ARRAY_SIZE(modes); z++) {
+ data.op_psr_mode = modes[z];
igt_describe("Basic check for psr if it is detecting changes made in planes");
- igt_subtest_f("%sbasic", append_subtest_name[data.op_psr_mode]) {
- data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
- test_setup(&data);
- test_cleanup(&data);
+ igt_subtest_with_dynamic_f("%sbasic", append_subtest_name[z]) {
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
+ test_setup(&data);
+ test_cleanup(&data);
+ }
+ }
}
igt_describe("Check if psr is detecting changes when drrs is disabled");
- igt_subtest_f("%sno_drrs", append_subtest_name[data.op_psr_mode]) {
- data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
- test_setup(&data);
- igt_assert(drrs_disabled(&data));
- test_cleanup(&data);
+ igt_subtest_with_dynamic_f("%sno_drrs", append_subtest_name[z]) {
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
+ test_setup(&data);
+ igt_assert(drrs_disabled(&data));
+ test_cleanup(&data);
+ }
+ }
}
for (op = PAGE_FLIP; op <= RENDER; op++) {
igt_describe("Check if psr is detecting page-flipping,memory mapping and "
"rendering operations performed on primary planes");
- igt_subtest_f("%sprimary_%s",
- append_subtest_name[data.op_psr_mode],
+ igt_subtest_with_dynamic_f("%sprimary_%s",
+ append_subtest_name[z],
op_str(op)) {
igt_skip_on(is_xe_device(data.drm_fd) &&
(op == MMAP_CPU || op == MMAP_GTT));
-
- data.op = op;
- data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
- test_setup(&data);
- run_test(&data);
- test_cleanup(&data);
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.op = op;
+ data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
+ test_setup(&data);
+ run_test(&data);
+ test_cleanup(&data);
+ }
+ }
}
}
for (op = MMAP_GTT; op <= PLANE_ONOFF; op++) {
igt_describe("Check if psr is detecting memory mapping,rendering "
"and plane operations performed on sprite planes");
- igt_subtest_f("%ssprite_%s",
- append_subtest_name[data.op_psr_mode],
+ igt_subtest_with_dynamic_f("%ssprite_%s",
+ append_subtest_name[z],
op_str(op)) {
igt_skip_on(is_xe_device(data.drm_fd) &&
(op == MMAP_CPU || op == MMAP_GTT));
-
- data.op = op;
- data.test_plane_id = DRM_PLANE_TYPE_OVERLAY;
- test_setup(&data);
- run_test(&data);
- test_cleanup(&data);
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.op = op;
+ data.test_plane_id = DRM_PLANE_TYPE_OVERLAY;
+ test_setup(&data);
+ run_test(&data);
+ test_cleanup(&data);
+ }
+ }
}
igt_describe("Check if psr is detecting memory mapping, rendering "
"and plane operations performed on cursor planes");
- igt_subtest_f("%scursor_%s",
- append_subtest_name[data.op_psr_mode],
+ igt_subtest_with_dynamic_f("%scursor_%s",
+ append_subtest_name[z],
op_str(op)) {
igt_skip_on(is_xe_device(data.drm_fd) &&
(op == MMAP_CPU || op == MMAP_GTT));
-
- data.op = op;
- data.test_plane_id = DRM_PLANE_TYPE_CURSOR;
- test_setup(&data);
- run_test(&data);
- test_cleanup(&data);
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.test_plane_id = DRM_PLANE_TYPE_CURSOR;
+ test_setup(&data);
+ run_test(&data);
+ test_cleanup(&data);
+ }
+ }
}
}
igt_describe("Check if psr is detecting changes when rendering operation is performed"
" with dpms enabled or disabled");
- igt_subtest_f("%sdpms", append_subtest_name[data.op_psr_mode]) {
- data.op = RENDER;
- data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
- test_setup(&data);
- dpms_off_on(&data);
- run_test(&data);
- test_cleanup(&data);
+ igt_subtest_with_dynamic_f("%sdpms", append_subtest_name[z]) {
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.op = RENDER;
+ data.test_plane_id = DRM_PLANE_TYPE_PRIMARY;
+ test_setup(&data);
+ dpms_off_on(&data);
+ run_test(&data);
+ test_cleanup(&data);
+ }
+ }
}
igt_describe("Check if psr is detecting changes when plane operation is performed "
"with suspend resume cycles");
- igt_subtest_f("%ssuspend", append_subtest_name[data.op_psr_mode]) {
- data.op = PLANE_ONOFF;
- data.test_plane_id = DRM_PLANE_TYPE_CURSOR;
- test_setup(&data);
- igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
- SUSPEND_TEST_NONE);
- igt_assert(psr_wait_entry_if_enabled(&data));
- run_test(&data);
- test_cleanup(&data);
+ igt_subtest_with_dynamic_f("%ssuspend", append_subtest_name[z]) {
+ for_each_connected_output(&data.display, output) {
+ if (!psr_sink_support(data.drm_fd, data.debugfs_fd,
+ data.op_psr_mode, output))
+ continue;
+ igt_display_reset(&data.display);
+ data.output = output;
+ igt_dynamic_f("%s", data.output->name) {
+ data.op = PLANE_ONOFF;
+ data.test_plane_id = DRM_PLANE_TYPE_CURSOR;
+ test_setup(&data);
+ igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
+ SUSPEND_TEST_NONE);
+ igt_assert(psr_wait_entry_if_enabled(&data));
+ run_test(&data);
+ test_cleanup(&data);
+ }
+ }
}
}
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
` (5 preceding siblings ...)
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr Kunal Joshi
@ 2023-11-09 6:09 ` Kunal Joshi
2023-11-09 7:10 ` [igt-dev] ✗ CI.xeBAT: failure for extend kms_psr test to validate pr (rev5) Patchwork
2023-11-09 7:18 ` [igt-dev] ✗ Fi.CI.BAT: " Patchwork
8 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-09 6:09 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
tests/intel-ci/fast-feedback.testlist | 65 +++++++++++++++++++++++++++
1 file changed, 65 insertions(+)
diff --git a/tests/intel-ci/fast-feedback.testlist b/tests/intel-ci/fast-feedback.testlist
index c252e2cf0..678d42f94 100644
--- a/tests/intel-ci/fast-feedback.testlist
+++ b/tests/intel-ci/fast-feedback.testlist
@@ -1,6 +1,71 @@
# Try to load the driver if it's not available yet.
igt@i915_module_load@load
+# Hax patch for testing do not merge
+igt@kms_psr@psr_basic
+igt@kms_psr@psr_no_drrs
+igt@kms_psr@psr_primary_page_flip
+igt@kms_psr@psr_primary_mmap_gtt
+igt@kms_psr@psr_primary_mmap_cpu
+igt@kms_psr@psr_primary_blt
+igt@kms_psr@psr_primary_render
+igt@kms_psr@psr_sprite_mmap_gtt
+igt@kms_psr@psr_cursor_mmap_gtt
+igt@kms_psr@psr_sprite_mmap_cpu
+igt@kms_psr@psr_cursor_mmap_cpu
+igt@kms_psr@psr_sprite_blt
+igt@kms_psr@psr_cursor_blt
+igt@kms_psr@psr_sprite_render
+igt@kms_psr@psr_cursor_render
+igt@kms_psr@psr_sprite_plane_move
+igt@kms_psr@psr_cursor_plane_move
+igt@kms_psr@psr_sprite_plane_onoff
+igt@kms_psr@psr_cursor_plane_onoff
+igt@kms_psr@psr_dpms
+igt@kms_psr@psr_suspend
+igt@kms_psr@psr2_basic
+igt@kms_psr@psr2_no_drrs
+igt@kms_psr@psr2_primary_page_flip
+igt@kms_psr@psr2_primary_mmap_gtt
+igt@kms_psr@psr2_primary_mmap_cpu
+igt@kms_psr@psr2_primary_blt
+igt@kms_psr@psr2_primary_render
+igt@kms_psr@psr2_sprite_mmap_gtt
+igt@kms_psr@psr2_cursor_mmap_gtt
+igt@kms_psr@psr2_sprite_mmap_cpu
+igt@kms_psr@psr2_cursor_mmap_cpu
+igt@kms_psr@psr2_sprite_blt
+igt@kms_psr@psr2_cursor_blt
+igt@kms_psr@psr2_sprite_render
+igt@kms_psr@psr2_cursor_render
+igt@kms_psr@psr2_sprite_plane_move
+igt@kms_psr@psr2_cursor_plane_move
+igt@kms_psr@psr2_sprite_plane_onoff
+igt@kms_psr@psr2_cursor_plane_onoff
+igt@kms_psr@psr2_dpms
+igt@kms_psr@psr2_suspend
+igt@kms_psr@pr_basic
+igt@kms_psr@pr_no_drrs
+igt@kms_psr@pr_primary_page_flip
+igt@kms_psr@pr_primary_mmap_gtt
+igt@kms_psr@pr_primary_mmap_cpu
+igt@kms_psr@pr_primary_blt
+igt@kms_psr@pr_primary_render
+igt@kms_psr@pr_sprite_mmap_gtt
+igt@kms_psr@pr_cursor_mmap_gtt
+igt@kms_psr@pr_sprite_mmap_cpu
+igt@kms_psr@pr_cursor_mmap_cpu
+igt@kms_psr@pr_sprite_blt
+igt@kms_psr@pr_cursor_blt
+igt@kms_psr@pr_sprite_render
+igt@kms_psr@pr_cursor_render
+igt@kms_psr@pr_sprite_plane_move
+igt@kms_psr@pr_cursor_plane_move
+igt@kms_psr@pr_sprite_plane_onoff
+igt@kms_psr@pr_cursor_plane_onoff
+igt@kms_psr@pr_dpms
+igt@kms_psr@pr_suspend
+
# Keep alphabetically sorted by default
igt@core_auth@basic-auth
igt@debugfs_test@read_all_entries
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] ✗ CI.xeBAT: failure for extend kms_psr test to validate pr (rev5)
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
` (6 preceding siblings ...)
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE Kunal Joshi
@ 2023-11-09 7:10 ` Patchwork
2023-11-09 7:18 ` [igt-dev] ✗ Fi.CI.BAT: " Patchwork
8 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2023-11-09 7:10 UTC (permalink / raw)
To: Kunal Joshi; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 6446 bytes --]
== Series Details ==
Series: extend kms_psr test to validate pr (rev5)
URL : https://patchwork.freedesktop.org/series/125379/
State : failure
== Summary ==
CI Bug Log - changes from XEIGT_7578_BAT -> XEIGTPW_10141_BAT
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with XEIGTPW_10141_BAT absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in XEIGTPW_10141_BAT, please notify your bug team (lgci.bug.filing@intel.com) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (3 -> 4)
------------------------------
Additional (1): bat-dg2-oem2
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in XEIGTPW_10141_BAT:
### IGT changes ###
#### Possible regressions ####
* igt@kms_psr@primary_page_flip:
- bat-adlp-7: [PASS][1] -> [SKIP][2] +2 other tests skip
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7578/bat-adlp-7/igt@kms_psr@primary_page_flip.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-adlp-7/igt@kms_psr@primary_page_flip.html
#### Warnings ####
* igt@kms_psr@cursor_plane_move:
- bat-atsm-2: [SKIP][3] ([Intel XE#535]) -> [SKIP][4] +2 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7578/bat-atsm-2/igt@kms_psr@cursor_plane_move.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-atsm-2/igt@kms_psr@cursor_plane_move.html
Known issues
------------
Here are the changes found in XEIGTPW_10141_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-dg2-oem2: NOTRUN -> [SKIP][5] ([Intel XE#623])
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_addfb_basic@basic-y-tiled-legacy:
- bat-dg2-oem2: NOTRUN -> [SKIP][6] ([Intel XE#624])
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_addfb_basic@basic-y-tiled-legacy.html
* igt@kms_addfb_basic@tile-pitch-mismatch:
- bat-dg2-oem2: NOTRUN -> [FAIL][7] ([Intel XE#609]) +1 other test fail
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_addfb_basic@tile-pitch-mismatch.html
* igt@kms_dsc@dsc-basic:
- bat-dg2-oem2: NOTRUN -> [SKIP][8] ([Intel XE#423])
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_dsc@dsc-basic.html
* igt@kms_flip@basic-flip-vs-wf_vblank:
- bat-dg2-oem2: NOTRUN -> [FAIL][9] ([Intel XE#480]) +1 other test fail
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_flip@basic-flip-vs-wf_vblank.html
* igt@kms_force_connector_basic@prune-stale-modes:
- bat-dg2-oem2: NOTRUN -> [SKIP][10] ([i915#5274])
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_force_connector_basic@prune-stale-modes.html
* igt@kms_frontbuffer_tracking@basic:
- bat-dg2-oem2: NOTRUN -> [FAIL][11] ([Intel XE#608])
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_frontbuffer_tracking@basic.html
* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12:
- bat-dg2-oem2: NOTRUN -> [TIMEOUT][12] ([Intel XE#430] / [Intel XE#530])
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12.html
* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-b-dp-3:
- bat-dg2-oem2: NOTRUN -> [TIMEOUT][13] ([Intel XE#530])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-b-dp-3.html
* igt@kms_pipe_crc_basic@hang-read-crc:
- bat-dg2-oem2: NOTRUN -> [TIMEOUT][14] ([Intel XE#430]) +1 other test timeout
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_pipe_crc_basic@hang-read-crc.html
* igt@kms_pipe_crc_basic@nonblocking-crc:
- bat-dg2-oem2: NOTRUN -> [INCOMPLETE][15] ([Intel XE#545]) +1 other test incomplete
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@kms_pipe_crc_basic@nonblocking-crc.html
* igt@xe_compute@compute-square:
- bat-dg2-oem2: NOTRUN -> [SKIP][16] ([Intel XE#672])
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@xe_compute@compute-square.html
* igt@xe_huc_copy@huc_copy:
- bat-dg2-oem2: NOTRUN -> [SKIP][17] ([Intel XE#255])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/bat-dg2-oem2/igt@xe_huc_copy@huc_copy.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#255]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/255
[Intel XE#423]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/423
[Intel XE#430]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/430
[Intel XE#480]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/480
[Intel XE#524]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/524
[Intel XE#530]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/530
[Intel XE#535]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/535
[Intel XE#545]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/545
[Intel XE#608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/608
[Intel XE#609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/609
[Intel XE#623]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/623
[Intel XE#624]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/624
[Intel XE#672]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/672
[i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
Build changes
-------------
* IGT: IGT_7578 -> IGTPW_10141
IGTPW_10141: 10141
IGT_7578: 2cf20c8dc5e372674ec3e3dd30b042794e9520ab @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-481-7a0da606f1fcf4b59d7164419f1ccd1c48d366af: 7a0da606f1fcf4b59d7164419f1ccd1c48d366af
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10141/index.html
[-- Attachment #2: Type: text/html, Size: 7446 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for extend kms_psr test to validate pr (rev5)
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
` (7 preceding siblings ...)
2023-11-09 7:10 ` [igt-dev] ✗ CI.xeBAT: failure for extend kms_psr test to validate pr (rev5) Patchwork
@ 2023-11-09 7:18 ` Patchwork
8 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2023-11-09 7:18 UTC (permalink / raw)
To: Kunal Joshi; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 25953 bytes --]
== Series Details ==
Series: extend kms_psr test to validate pr (rev5)
URL : https://patchwork.freedesktop.org/series/125379/
State : failure
== Summary ==
CI Bug Log - changes from IGT_7578 -> IGTPW_10141
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_10141 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_10141, please notify your bug team (lgci.bug.filing@intel.com) to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/index.html
Participating hosts (34 -> 32)
------------------------------
Additional (1): bat-adlp-11
Missing (3): bat-dg2-9 fi-apl-guc fi-pnv-d510
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_10141:
### IGT changes ###
#### Possible regressions ####
* igt@kms_psr@cursor_plane_move:
- bat-mtlp-8: [PASS][1] -> [SKIP][2] +2 other tests skip
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-mtlp-8/igt@kms_psr@cursor_plane_move.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-mtlp-8/igt@kms_psr@cursor_plane_move.html
* {igt@kms_psr@pr_cursor_blt} (NEW):
- bat-jsl-3: NOTRUN -> [SKIP][3] +41 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-jsl-3/igt@kms_psr@pr_cursor_blt.html
* {igt@kms_psr@pr_cursor_mmap_cpu} (NEW):
- bat-adlp-6: NOTRUN -> [SKIP][4] +41 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-6/igt@kms_psr@pr_cursor_mmap_cpu.html
* {igt@kms_psr@pr_no_drrs} (NEW):
- bat-mtlp-8: NOTRUN -> [SKIP][5] +41 other tests skip
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-mtlp-8/igt@kms_psr@pr_no_drrs.html
* {igt@kms_psr@pr_primary_mmap_cpu} (NEW):
- bat-adls-5: NOTRUN -> [SKIP][6] +41 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adls-5/igt@kms_psr@pr_primary_mmap_cpu.html
* {igt@kms_psr@pr_primary_mmap_gtt} (NEW):
- bat-rplp-1: NOTRUN -> [SKIP][7] +62 other tests skip
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-rplp-1/igt@kms_psr@pr_primary_mmap_gtt.html
* {igt@kms_psr@pr_sprite_blt} (NEW):
- bat-dg2-11: NOTRUN -> [SKIP][8] +62 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-dg2-11/igt@kms_psr@pr_sprite_blt.html
- {bat-dg2-14}: NOTRUN -> [SKIP][9] +41 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-dg2-14/igt@kms_psr@pr_sprite_blt.html
* {igt@kms_psr@pr_sprite_render} (NEW):
- bat-adlp-11: NOTRUN -> [SKIP][10] +62 other tests skip
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@kms_psr@pr_sprite_render.html
* igt@kms_psr@primary_page_flip:
- bat-adls-5: [PASS][11] -> [SKIP][12] +3 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-adls-5/igt@kms_psr@primary_page_flip.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adls-5/igt@kms_psr@primary_page_flip.html
* igt@kms_psr@psr2_primary_mmap_gtt:
- fi-tgl-1115g4: NOTRUN -> [SKIP][13] +62 other tests skip
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-tgl-1115g4/igt@kms_psr@psr2_primary_mmap_gtt.html
* igt@kms_psr@psr2_primary_render:
- bat-mtlp-6: NOTRUN -> [SKIP][14] +62 other tests skip
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-mtlp-6/igt@kms_psr@psr2_primary_render.html
* igt@kms_psr@psr2_sprite_plane_onoff:
- bat-adlp-9: NOTRUN -> [SKIP][15] +62 other tests skip
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-9/igt@kms_psr@psr2_sprite_plane_onoff.html
* igt@kms_psr@psr2_suspend:
- bat-adln-1: NOTRUN -> [SKIP][16] +41 other tests skip
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adln-1/igt@kms_psr@psr2_suspend.html
* {igt@kms_psr@psr_primary_blt} (NEW):
- fi-rkl-11600: NOTRUN -> [SKIP][17] +62 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-rkl-11600/igt@kms_psr@psr_primary_blt.html
* {igt@kms_psr@psr_primary_mmap_cpu} (NEW):
- bat-rpls-1: NOTRUN -> [SKIP][18] +62 other tests skip
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-rpls-1/igt@kms_psr@psr_primary_mmap_cpu.html
* {igt@kms_psr@psr_suspend} (NEW):
- bat-adlm-1: NOTRUN -> [SKIP][19] +62 other tests skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlm-1/igt@kms_psr@psr_suspend.html
#### Warnings ####
* igt@kms_psr@cursor_plane_move:
- bat-adlm-1: [SKIP][20] ([i915#1072]) -> [SKIP][21] +3 other tests skip
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-adlm-1/igt@kms_psr@cursor_plane_move.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlm-1/igt@kms_psr@cursor_plane_move.html
- bat-rpls-1: [SKIP][22] ([i915#1072]) -> [SKIP][23] +3 other tests skip
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-rpls-1/igt@kms_psr@cursor_plane_move.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-rpls-1/igt@kms_psr@cursor_plane_move.html
* igt@kms_psr@primary_mmap_gtt:
- bat-mtlp-8: [SKIP][24] ([i915#4077]) -> [SKIP][25]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-mtlp-8/igt@kms_psr@primary_mmap_gtt.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-mtlp-8/igt@kms_psr@primary_mmap_gtt.html
* igt@kms_psr@primary_page_flip:
- bat-adlp-9: [SKIP][26] ([i915#1072]) -> [SKIP][27] +3 other tests skip
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-adlp-9/igt@kms_psr@primary_page_flip.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-9/igt@kms_psr@primary_page_flip.html
- fi-rkl-11600: [SKIP][28] ([i915#1072]) -> [SKIP][29] +3 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-rkl-11600/igt@kms_psr@primary_page_flip.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-rkl-11600/igt@kms_psr@primary_page_flip.html
- fi-tgl-1115g4: [SKIP][30] ([fdo#110189]) -> [SKIP][31] +3 other tests skip
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-tgl-1115g4/igt@kms_psr@primary_page_flip.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-tgl-1115g4/igt@kms_psr@primary_page_flip.html
- bat-mtlp-6: [SKIP][32] ([i915#1072]) -> [SKIP][33] +3 other tests skip
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-mtlp-6/igt@kms_psr@primary_page_flip.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-mtlp-6/igt@kms_psr@primary_page_flip.html
* igt@kms_psr@sprite_plane_onoff:
- bat-dg2-11: [SKIP][34] ([i915#1072]) -> [SKIP][35] +3 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-dg2-11/igt@kms_psr@sprite_plane_onoff.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-dg2-11/igt@kms_psr@sprite_plane_onoff.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@kms_psr@psr2_sprite_mmap_cpu:
- {bat-dg2-14}: NOTRUN -> [SKIP][36] +20 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-dg2-14/igt@kms_psr@psr2_sprite_mmap_cpu.html
New tests
---------
New tests have been introduced between IGT_7578 and IGTPW_10141:
### New IGT tests (63) ###
* igt@kms_psr@pr_basic:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_cursor_blt:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_cursor_mmap_cpu:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_cursor_mmap_gtt:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_cursor_plane_move:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_cursor_plane_onoff:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_cursor_render:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_dpms:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_no_drrs:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_primary_blt:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_primary_mmap_cpu:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_primary_mmap_gtt:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_primary_page_flip:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_primary_render:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_sprite_blt:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_sprite_mmap_cpu:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_sprite_mmap_gtt:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_sprite_plane_move:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_sprite_plane_onoff:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_sprite_render:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@pr_suspend:
- Statuses : 31 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_basic:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_basic@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_blt:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_blt@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_mmap_cpu:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_mmap_cpu@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_mmap_gtt:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_mmap_gtt@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_plane_move:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_plane_move@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_plane_onoff:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_plane_onoff@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_render:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_cursor_render@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_dpms:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_dpms@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_no_drrs:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_no_drrs@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_blt:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_blt@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_mmap_cpu:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_mmap_cpu@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_mmap_gtt:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_mmap_gtt@edp-1:
- Statuses : 5 pass(s) 1 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_page_flip:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_page_flip@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_render:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_primary_render@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_blt:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_blt@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_mmap_cpu:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_mmap_cpu@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_mmap_gtt:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_mmap_gtt@edp-1:
- Statuses : 5 pass(s) 1 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_plane_move:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_plane_move@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_plane_onoff:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_plane_onoff@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_render:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_sprite_render@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_suspend:
- Statuses : 25 skip(s)
- Exec time: [0.0] s
* igt@kms_psr@psr_suspend@edp-1:
- Statuses : 6 pass(s)
- Exec time: [0.0] s
Known issues
------------
Here are the changes found in IGTPW_10141 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@debugfs_test@basic-hwmon:
- bat-adlp-11: NOTRUN -> [SKIP][37] ([i915#9318])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@debugfs_test@basic-hwmon.html
* igt@gem_tiled_pread_basic:
- bat-adlp-11: NOTRUN -> [SKIP][38] ([i915#3282])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@gem_tiled_pread_basic.html
* igt@i915_selftest@live@hangcheck:
- bat-adlp-9: [PASS][39] -> [INCOMPLETE][40] ([i915#9527])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-adlp-9/igt@i915_selftest@live@hangcheck.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-9/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@hugepages:
- fi-hsw-4770: [PASS][41] -> [INCOMPLETE][42] ([i915#9527])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-hsw-4770/igt@i915_selftest@live@hugepages.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-hsw-4770/igt@i915_selftest@live@hugepages.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-adlp-11: NOTRUN -> [SKIP][43] ([i915#4103] / [i915#5608]) +1 other test skip
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@kms_dsc@dsc-basic:
- bat-adlp-11: NOTRUN -> [SKIP][44] ([i915#3555] / [i915#3840])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@kms_dsc@dsc-basic.html
* igt@kms_force_connector_basic@prune-stale-modes:
- bat-adlp-11: NOTRUN -> [SKIP][45] ([i915#4093]) +3 other tests skip
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@kms_force_connector_basic@prune-stale-modes.html
* igt@kms_hdmi_inject@inject-audio:
- bat-adlp-11: NOTRUN -> [SKIP][46] ([i915#4369])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-adlp-11/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1:
- bat-rplp-1: [PASS][47] -> [ABORT][48] ([i915#8668])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html
* {igt@kms_psr@pr_cursor_blt} (NEW):
- bat-atsm-1: NOTRUN -> [SKIP][49] ([i915#6078]) +62 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-atsm-1/igt@kms_psr@pr_cursor_blt.html
* {igt@kms_psr@pr_cursor_mmap_cpu} (NEW):
- fi-skl-6600u: NOTRUN -> [SKIP][50] ([fdo#109271]) +41 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-skl-6600u/igt@kms_psr@pr_cursor_mmap_cpu.html
* {igt@kms_psr@pr_sprite_blt} (NEW):
- fi-cfl-8700k: NOTRUN -> [SKIP][51] ([fdo#109271]) +62 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-cfl-8700k/igt@kms_psr@pr_sprite_blt.html
* {igt@kms_psr@pr_sprite_render} (NEW):
- fi-kbl-x1275: NOTRUN -> [SKIP][52] ([fdo#109271]) +62 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-kbl-x1275/igt@kms_psr@pr_sprite_render.html
* {igt@kms_psr@pr_suspend} (NEW):
- fi-skl-guc: NOTRUN -> [SKIP][53] ([fdo#109271]) +62 other tests skip
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-skl-guc/igt@kms_psr@pr_suspend.html
* igt@kms_psr@primary_page_flip:
- fi-skl-6600u: [PASS][54] -> [SKIP][55] ([fdo#109271]) +3 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
* igt@kms_psr@psr2_dpms:
- fi-blb-e6850: NOTRUN -> [SKIP][56] ([fdo#109271]) +62 other tests skip
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-blb-e6850/igt@kms_psr@psr2_dpms.html
* igt@kms_psr@psr2_primary_render:
- fi-cfl-guc: NOTRUN -> [SKIP][57] ([fdo#109271]) +62 other tests skip
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-cfl-guc/igt@kms_psr@psr2_primary_render.html
* igt@kms_psr@psr2_sprite_mmap_cpu:
- fi-elk-e7500: NOTRUN -> [SKIP][58] ([fdo#109271]) +62 other tests skip
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-elk-e7500/igt@kms_psr@psr2_sprite_mmap_cpu.html
- fi-bsw-nick: NOTRUN -> [SKIP][59] ([fdo#109271]) +62 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-bsw-nick/igt@kms_psr@psr2_sprite_mmap_cpu.html
- fi-kbl-guc: NOTRUN -> [SKIP][60] ([fdo#109271]) +62 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-kbl-guc/igt@kms_psr@psr2_sprite_mmap_cpu.html
* igt@kms_psr@psr2_sprite_render:
- fi-hsw-4770: NOTRUN -> [SKIP][61] ([fdo#109271]) +62 other tests skip
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-hsw-4770/igt@kms_psr@psr2_sprite_render.html
* igt@kms_psr@psr2_suspend:
- fi-cfl-8109u: NOTRUN -> [SKIP][62] ([fdo#109271]) +62 other tests skip
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-cfl-8109u/igt@kms_psr@psr2_suspend.html
- fi-kbl-7567u: NOTRUN -> [SKIP][63] ([fdo#109271]) +62 other tests skip
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-kbl-7567u/igt@kms_psr@psr2_suspend.html
* {igt@kms_psr@psr_cursor_blt} (NEW):
- fi-ivb-3770: NOTRUN -> [SKIP][64] ([fdo#109271]) +62 other tests skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-ivb-3770/igt@kms_psr@psr_cursor_blt.html
* {igt@kms_psr@psr_cursor_render} (NEW):
- fi-ilk-650: NOTRUN -> [SKIP][65] ([fdo#109271]) +62 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-ilk-650/igt@kms_psr@psr_cursor_render.html
* {igt@kms_psr@psr_dpms} (NEW):
- fi-glk-j4005: NOTRUN -> [SKIP][66] ([fdo#109271]) +62 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-glk-j4005/igt@kms_psr@psr_dpms.html
* {igt@kms_psr@psr_sprite_mmap_gtt@edp-1} (NEW):
- bat-mtlp-8: NOTRUN -> [SKIP][67] ([i915#4077]) +1 other test skip
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-mtlp-8/igt@kms_psr@psr_sprite_mmap_gtt@edp-1.html
* igt@kms_psr@sprite_plane_onoff:
- bat-jsl-3: [PASS][68] -> [SKIP][69] ([fdo#112080]) +3 other tests skip
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-jsl-3/igt@kms_psr@sprite_plane_onoff.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-jsl-3/igt@kms_psr@sprite_plane_onoff.html
#### Possible fixes ####
* igt@i915_selftest@live@hangcheck:
- fi-skl-guc: [DMESG-FAIL][70] ([i915#9549]) -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-skl-guc/igt@i915_selftest@live@hangcheck.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-skl-guc/igt@i915_selftest@live@hangcheck.html
* igt@kms_hdmi_inject@inject-audio:
- fi-kbl-guc: [FAIL][72] ([IGT#3]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html
#### Warnings ####
* igt@kms_psr@sprite_plane_onoff:
- bat-atsm-1: [SKIP][74] ([i915#1072]) -> [SKIP][75] ([i915#6078]) +3 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/bat-atsm-1/igt@kms_psr@sprite_plane_onoff.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/bat-atsm-1/igt@kms_psr@sprite_plane_onoff.html
- fi-hsw-4770: [SKIP][76] ([fdo#109271] / [i915#1072]) -> [SKIP][77] ([fdo#109271]) +3 other tests skip
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7578/fi-hsw-4770/igt@kms_psr@sprite_plane_onoff.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/fi-hsw-4770/igt@kms_psr@sprite_plane_onoff.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#3]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/3
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4093]: https://gitlab.freedesktop.org/drm/intel/issues/4093
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
[i915#5608]: https://gitlab.freedesktop.org/drm/intel/issues/5608
[i915#6078]: https://gitlab.freedesktop.org/drm/intel/issues/6078
[i915#7359]: https://gitlab.freedesktop.org/drm/intel/issues/7359
[i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
[i915#8981]: https://gitlab.freedesktop.org/drm/intel/issues/8981
[i915#9318]: https://gitlab.freedesktop.org/drm/intel/issues/9318
[i915#9527]: https://gitlab.freedesktop.org/drm/intel/issues/9527
[i915#9549]: https://gitlab.freedesktop.org/drm/intel/issues/9549
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7578 -> IGTPW_10141
CI-20190529: 20190529
CI_DRM_13852: 8040e9d346531d98ca164092c860c24c1dd6e845 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_10141: 10141
IGT_7578: 2cf20c8dc5e372674ec3e3dd30b042794e9520ab @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Testlist changes
----------------
+igt@kms_psr@pr_basic
+igt@kms_psr@pr_cursor_blt
+igt@kms_psr@pr_cursor_mmap_cpu
+igt@kms_psr@pr_cursor_mmap_gtt
+igt@kms_psr@pr_cursor_plane_move
+igt@kms_psr@pr_cursor_plane_onoff
+igt@kms_psr@pr_cursor_render
+igt@kms_psr@pr_dpms
+igt@kms_psr@pr_no_drrs
+igt@kms_psr@pr_primary_blt
+igt@kms_psr@pr_primary_mmap_cpu
+igt@kms_psr@pr_primary_mmap_gtt
+igt@kms_psr@pr_primary_page_flip
+igt@kms_psr@pr_primary_render
+igt@kms_psr@pr_sprite_blt
+igt@kms_psr@pr_sprite_mmap_cpu
+igt@kms_psr@pr_sprite_mmap_gtt
+igt@kms_psr@pr_sprite_plane_move
+igt@kms_psr@pr_sprite_plane_onoff
+igt@kms_psr@pr_sprite_render
+igt@kms_psr@pr_suspend
+igt@kms_psr@psr_basic
+igt@kms_psr@psr_cursor_blt
+igt@kms_psr@psr_cursor_mmap_cpu
+igt@kms_psr@psr_cursor_mmap_gtt
+igt@kms_psr@psr_cursor_plane_move
+igt@kms_psr@psr_cursor_plane_onoff
+igt@kms_psr@psr_cursor_render
+igt@kms_psr@psr_dpms
+igt@kms_psr@psr_no_drrs
+igt@kms_psr@psr_primary_blt
+igt@kms_psr@psr_primary_mmap_cpu
+igt@kms_psr@psr_primary_mmap_gtt
+igt@kms_psr@psr_primary_page_flip
+igt@kms_psr@psr_primary_render
+igt@kms_psr@psr_sprite_blt
+igt@kms_psr@psr_sprite_mmap_cpu
+igt@kms_psr@psr_sprite_mmap_gtt
+igt@kms_psr@psr_sprite_plane_move
+igt@kms_psr@psr_sprite_plane_onoff
+igt@kms_psr@psr_sprite_render
+igt@kms_psr@psr_suspend
-igt@kms_psr@basic
-igt@kms_psr@cursor_blt
-igt@kms_psr@cursor_mmap_cpu
-igt@kms_psr@cursor_mmap_gtt
-igt@kms_psr@cursor_plane_move
-igt@kms_psr@cursor_plane_onoff
-igt@kms_psr@cursor_render
-igt@kms_psr@dpms
-igt@kms_psr@no_drrs
-igt@kms_psr@primary_blt
-igt@kms_psr@primary_mmap_cpu
-igt@kms_psr@primary_mmap_gtt
-igt@kms_psr@primary_page_flip
-igt@kms_psr@primary_render
-igt@kms_psr@sprite_blt
-igt@kms_psr@sprite_mmap_cpu
-igt@kms_psr@sprite_mmap_gtt
-igt@kms_psr@sprite_plane_move
-igt@kms_psr@sprite_plane_onoff
-igt@kms_psr@sprite_render
-igt@kms_psr@suspend
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10141/index.html
[-- Attachment #2: Type: text/html, Size: 31927 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-11-10 7:16 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-11-10 7:16 ` Kunal Joshi
0 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-10 7:16 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability Kunal Joshi
@ 2023-11-10 7:53 ` Hogander, Jouni
0 siblings, 0 replies; 19+ messages in thread
From: Hogander, Jouni @ 2023-11-10 7:53 UTC (permalink / raw)
To: Joshi, Kunal1, igt-dev@lists.freedesktop.org; +Cc: Murthy, Arun R
On Thu, 2023-11-09 at 11:39 +0530, Kunal Joshi wrote:
> New debugfs directory for all DP connectors will be added
> with below patch series
> https://patchwork.freedesktop.org/series/94470/
>
> For DP Connectors
> /sys/kernel/debug/dri/0/DP-x/i915_psr_status
>
> For eDP Connectors
> /sys/kernel/debug/dri/0/i915_edp_psr_status
> or
> /sys/kernel/debug/dri/0/eDP-x/i915_psr_status
>
> v2: reuse psr_sink_support (Jouni)
>
> Cc: Jouni Högander <jouni.hogander@intel.com>
> Cc: Animesh Manna <animesh.manna@intel.com>
> Cc: Arun R Murthy <arun.r.murthy@intel.com>
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
> lib/igt_psr.c | 56 ++++++++++++++++++------
> --
> lib/igt_psr.h | 3 +-
> tests/intel/kms_dirtyfb.c | 2 +-
> tests/intel/kms_fbcon_fbt.c | 4 +-
> tests/intel/kms_frontbuffer_tracking.c | 2 +-
> tests/intel/kms_pm_dc.c | 9 +++--
> tests/intel/kms_psr.c | 2 +-
> tests/intel/kms_psr2_sf.c | 3 +-
> tests/intel/kms_psr2_su.c | 3 +-
> tests/intel/kms_psr_stress_test.c | 2 +-
> tests/kms_feature_discovery.c | 4 +-
> 11 files changed, 59 insertions(+), 31 deletions(-)
>
> diff --git a/lib/igt_psr.c b/lib/igt_psr.c
> index 13f7c567d..054622d79 100644
> --- a/lib/igt_psr.c
> +++ b/lib/igt_psr.c
> @@ -192,31 +192,53 @@ bool psr_disable(int device, int debugfs_fd)
> return psr_set(device, debugfs_fd, -1);
> }
>
> -bool psr_sink_support(int device, int debugfs_fd, enum psr_mode
> mode)
> +bool psr_sink_support(int device, int debugfs_fd, enum psr_mode
> mode, igt_output_t *output)
> {
> + char *line;
> + char debugfs_file[128] = {0};
> char buf[PSR_STATUS_MAX_LEN];
> int ret;
>
> - ret = igt_debugfs_simple_read(debugfs_fd,
> "i915_edp_psr_status", buf,
> + if (output)
> + sprintf(debugfs_file, "%s/i915_psr_status", output-
> >name);
> + else
> + sprintf(debugfs_file, "%s", "i915_edp_psr_status");
> +
> + ret = igt_debugfs_simple_read(debugfs_fd, debugfs_file, buf,
> sizeof(buf));
> if (ret < 1)
> return false;
>
> - if (mode == PSR_MODE_1)
> - return strstr(buf, "Sink_Support: yes\n") ||
> - strstr(buf, "Sink support: yes");
> - else
> - /*
> - * i915 requires PSR version 0x03 that is PSR2 + SU
> with
> - * Y-coordinate to support PSR2
> - *
> - * or
> - *
> - * PSR version 0x4 that is PSR2 + SU w/ Y-coordinate
> and SU
> - * Region Early Transport to support PSR2 (eDP 1.5)
> - */
> - return strstr(buf, "Sink support: yes [0x03]") ||
> - strstr(buf, "Sink support: yes [0x04]");
> + line = strstr(buf, "Sink support: ");
> + if (!line)
> + return false;
> +
> + switch (mode) {
> + case PSR_MODE_1:
> + return strstr(line, "PSR = yes") ||
> + strstr(buf, "Sink_Support: yes\n") ||
> + strstr(buf, "Sink support: yes");
> + case PSR_MODE_2:
> + case PSR_MODE_2_SEL_FETCH:
> + /*
> + * i915 requires PSR version 0x03 that is
> PSR2 + SU with
> + * Y-coordinate to support PSR2
> + * or
> + *
> + * PSR version 0x4 that is PSR2 + SU w/ Y-
> coordinate and SU
> + * Region Early Transport to support PSR2
> (eDP 1.5)
> + */
> + return strstr(line, "PSR = yes") &&
> + (strstr(line, "[0x03]") ||
> strstr(line, "[0x04]"));
> + case PR_MODE:
> + return strstr(line, "Panel Replay = yes");
> + case PR_MODE_SEL_FETCH:
> + return strstr(line, "Panel Replay = yes") &&
> + strstr(buf, "PSR2 selective fetch:
> enabled");
I think patches from animesh are not yet implementing sink panel replay
selective fetch/update support info in debugfs. Anyways this "PSR2
selective fetch enable: enabled" is not about sink support. It is
generally selective fetch status. It may be disabled as well even when
Panel Replay selective fetch/update is supported by the panel.
BR,
Jouni Högander
> + default:
> + igt_assert_f(false, "Invalid psr mode\n");
> + return false;
> + }
> }
>
> #define PSR2_SU_BLOCK_STR_LOOKUP "PSR2 SU blocks:\n0\t"
> diff --git a/lib/igt_psr.h b/lib/igt_psr.h
> index 243154897..e213b05e9 100644
> --- a/lib/igt_psr.h
> +++ b/lib/igt_psr.h
> @@ -27,6 +27,7 @@
> #include "igt_debugfs.h"
> #include "igt_core.h"
> #include "igt_aux.h"
> +#include "igt_kms.h"
>
> #define PSR_STATUS_MAX_LEN 512
>
> @@ -46,7 +47,7 @@ bool psr_wait_update(int debugfs_fd, enum psr_mode
> mode);
> bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode);
> bool psr_enable(int device, int debugfs_fd, enum psr_mode);
> bool psr_disable(int device, int debugfs_fd);
> -bool psr_sink_support(int device, int debugfs_fd, enum psr_mode
> mode);
> +bool psr_sink_support(int device, int debugfs_fd, enum psr_mode
> mode, igt_output_t *output);
> bool psr2_wait_su(int debugfs_fd, uint16_t *num_su_blocks);
> void psr_print_debugfs(int debugfs_fd);
> enum psr_mode psr_get_mode(int debugfs_fd);
> diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
> index cc9529178..f7ff1ac0b 100644
> --- a/tests/intel/kms_dirtyfb.c
> +++ b/tests/intel/kms_dirtyfb.c
> @@ -92,7 +92,7 @@ static bool check_support(data_t *data)
> DRM_MODE_CONNECTOR_eDP)
> return false;
> return psr_sink_support(data->drm_fd, data-
> >debugfs_fd,
> - PSR_MODE_1);
> + PSR_MODE_1, NULL);
> case FEATURE_DRRS:
> return intel_is_drrs_supported(data->drm_fd, data-
> >pipe) &&
> intel_output_has_drrs(data->drm_fd, data-
> >output);
> diff --git a/tests/intel/kms_fbcon_fbt.c
> b/tests/intel/kms_fbcon_fbt.c
> index 8d6bb3cb6..a7f24e669 100644
> --- a/tests/intel/kms_fbcon_fbt.c
> +++ b/tests/intel/kms_fbcon_fbt.c
> @@ -269,7 +269,7 @@ static bool psr_is_disabled(int debugfs_fd)
>
> static bool psr_supported_on_chipset(int device, int debugfs_fd)
> {
> - return psr_sink_support(device, debugfs_fd, PSR_MODE_1);
> + return psr_sink_support(device, debugfs_fd, PSR_MODE_1,
> NULL);
> }
>
> static bool psr_wait_until_update(struct drm_info *drm)
> @@ -280,7 +280,7 @@ static bool psr_wait_until_update(struct drm_info
> *drm)
> static void disable_features(int device, int debugfs_fd)
> {
> igt_set_module_param_int(device, "enable_fbc", 0);
> - if (psr_sink_support(device, debugfs_fd, PSR_MODE_1))
> + if (psr_sink_support(device, debugfs_fd, PSR_MODE_1, NULL))
> psr_disable(device, debugfs_fd);
> }
>
> diff --git a/tests/intel/kms_frontbuffer_tracking.c
> b/tests/intel/kms_frontbuffer_tracking.c
> index be340a997..3cfa22bbf 100644
> --- a/tests/intel/kms_frontbuffer_tracking.c
> +++ b/tests/intel/kms_frontbuffer_tracking.c
> @@ -1383,7 +1383,7 @@ static void setup_psr(void)
> return;
> }
>
> - if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1)) {
> + if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1, NULL))
> {
> igt_info("Can't test PSR: not supported by sink.\n");
> return;
> }
> diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
> index 1e9ca5d6c..e5daacb84 100644
> --- a/tests/intel/kms_pm_dc.c
> +++ b/tests/intel/kms_pm_dc.c
> @@ -673,14 +673,16 @@ igt_main
> igt_describe("In this test we make sure that system enters
> DC3CO "
> "when PSR2 is active and system is in SLEEP
> state");
> igt_subtest("dc3co-vpb-simulation") {
> - igt_require(psr_sink_support(data.drm_fd,
> data.debugfs_fd, PSR_MODE_2));
> + igt_require(psr_sink_support(data.drm_fd,
> data.debugfs_fd,
> + PSR_MODE_2, NULL));
> test_dc3co_vpb_simulation(&data);
> }
>
> igt_describe("This test validates display engine entry to DC5
> state "
> "while PSR is active");
> igt_subtest("dc5-psr") {
> - igt_require(psr_sink_support(data.drm_fd,
> data.debugfs_fd, PSR_MODE_1));
> + igt_require(psr_sink_support(data.drm_fd,
> data.debugfs_fd,
> + PSR_MODE_1, NULL));
> data.op_psr_mode = PSR_MODE_1;
> psr_enable(data.drm_fd, data.debugfs_fd,
> data.op_psr_mode);
> test_dc_state_psr(&data, CHECK_DC5);
> @@ -689,7 +691,8 @@ igt_main
> igt_describe("This test validates display engine entry to DC6
> state "
> "while PSR is active");
> igt_subtest("dc6-psr") {
> - igt_require(psr_sink_support(data.drm_fd,
> data.debugfs_fd, PSR_MODE_1));
> + igt_require(psr_sink_support(data.drm_fd,
> data.debugfs_fd,
> + PSR_MODE_1, NULL));
> data.op_psr_mode = PSR_MODE_1;
> psr_enable(data.drm_fd, data.debugfs_fd,
> data.op_psr_mode);
> igt_require_f(igt_pm_pc8_plus_residencies_enabled(dat
> a.msr_fd),
> diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
> index ffecc5222..260095aec 100644
> --- a/tests/intel/kms_psr.c
> +++ b/tests/intel/kms_psr.c
> @@ -433,7 +433,7 @@ static void fill_render(data_t *data, const
> struct igt_fb *fb,
> static bool sink_support(data_t *data, enum psr_mode mode)
> {
> return data->with_psr_disabled ||
> - psr_sink_support(data->drm_fd, data->debugfs_fd,
> mode);
> + psr_sink_support(data->drm_fd, data->debugfs_fd, mode,
> NULL);
> }
>
> static bool psr_wait_entry_if_enabled(data_t *data)
> diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
> index d7a746211..2d05f1110 100644
> --- a/tests/intel/kms_psr2_sf.c
> +++ b/tests/intel/kms_psr2_sf.c
> @@ -980,7 +980,8 @@ igt_main
> kmstest_set_vt_graphics_mode();
>
> igt_require_f(psr_sink_support(data.drm_fd,
> - data.debugfs_fd,
> PSR_MODE_2),
> + data.debugfs_fd,
> PSR_MODE_2,
> + NULL),
> "Sink does not support PSR2\n");
>
> display_init(&data);
> diff --git a/tests/intel/kms_psr2_su.c b/tests/intel/kms_psr2_su.c
> index 834fec1ec..2f89de435 100644
> --- a/tests/intel/kms_psr2_su.c
> +++ b/tests/intel/kms_psr2_su.c
> @@ -327,7 +327,8 @@ igt_main
> kmstest_set_vt_graphics_mode();
>
> igt_require_f(psr_sink_support(data.drm_fd,
> - data.debugfs_fd,
> PSR_MODE_2),
> + data.debugfs_fd,
> + PSR_MODE_2, NULL),
> "Sink does not support PSR2\n");
>
> igt_require_f(intel_display_ver(intel_get_drm_devid(d
> ata.drm_fd)) < 13,
> diff --git a/tests/intel/kms_psr_stress_test.c
> b/tests/intel/kms_psr_stress_test.c
> index b6759eece..beded3b94 100644
> --- a/tests/intel/kms_psr_stress_test.c
> +++ b/tests/intel/kms_psr_stress_test.c
> @@ -357,7 +357,7 @@ igt_main
> kmstest_set_vt_graphics_mode();
>
> igt_require_f(psr_sink_support(data.drm_fd,
> data.debugfs_fd,
> - PSR_MODE_1),
> + PSR_MODE_1, NULL),
> "Sink does not support PSR\n");
>
> setup_output(&data);
> diff --git a/tests/kms_feature_discovery.c
> b/tests/kms_feature_discovery.c
> index 3a1f6d21d..428f97ffe 100644
> --- a/tests/kms_feature_discovery.c
> +++ b/tests/kms_feature_discovery.c
> @@ -159,12 +159,12 @@ igt_main {
>
> igt_describe("Make sure that we have eDP panel with
> PSR1 support.");
> igt_subtest("psr1") {
> - igt_require(psr_sink_support(fd, debugfs_fd,
> PSR_MODE_1));
> + igt_require(psr_sink_support(fd, debugfs_fd,
> PSR_MODE_1, NULL));
> }
>
> igt_describe("Make sure that we have eDP panel with
> PSR2 support.");
> igt_subtest("psr2") {
> - igt_require(psr_sink_support(fd, debugfs_fd,
> PSR_MODE_2));
> + igt_require(psr_sink_support(fd, debugfs_fd,
> PSR_MODE_2, NULL));
> }
>
> igt_describe("Make sure that we have DP-MST
> configuration.");
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-11-10 8:15 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-11-10 8:15 ` Kunal Joshi
0 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-10 8:15 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-11-10 9:43 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-11-10 9:43 ` Kunal Joshi
0 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-10 9:43 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay
2023-11-10 9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
@ 2023-11-10 9:52 ` Kunal Joshi
0 siblings, 0 replies; 19+ messages in thread
From: Kunal Joshi @ 2023-11-10 9:52 UTC (permalink / raw)
To: igt-dev; +Cc: Kunal Joshi, Arun R Murthy
Added enum for PR
Cc: Jouni Högander <jouni.hogander@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
lib/igt_psr.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 12ffc9d6c..243154897 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,6 +34,8 @@ enum psr_mode {
PSR_MODE_1,
PSR_MODE_2,
PSR_MODE_2_SEL_FETCH,
+ PR_MODE,
+ PR_MODE_SEL_FETCH,
PSR_DISABLED,
};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
end of thread, other threads:[~2023-11-10 9:44 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-09 6:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability Kunal Joshi
2023-11-10 7:53 ` Hogander, Jouni
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check " Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set " Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode " Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr Kunal Joshi
2023-11-09 6:09 ` [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE Kunal Joshi
2023-11-09 7:10 ` [igt-dev] ✗ CI.xeBAT: failure for extend kms_psr test to validate pr (rev5) Patchwork
2023-11-09 7:18 ` [igt-dev] ✗ Fi.CI.BAT: " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2023-11-10 9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-10 9:52 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-11-10 9:43 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-10 9:43 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-11-10 8:15 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-10 8:15 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-11-10 7:16 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-10 7:16 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-11-09 3:36 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-11-09 3:37 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-10-31 8:09 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-10-31 8:09 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
2023-10-31 11:32 ` Hogander, Jouni
2023-10-25 14:27 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
2023-10-25 14:27 ` [igt-dev] [PATCH i-g-t 1/7] lib/igt_psr: added enum for panel replay Kunal Joshi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox