Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [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; 20+ 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] 20+ 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; 20+ 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] 20+ 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; 20+ 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] 20+ 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; 20+ 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] 20+ 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
  0 siblings, 0 replies; 20+ 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] 20+ 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; 20+ 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] 20+ 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; 20+ 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] 20+ 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; 20+ 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] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr
@ 2023-11-10  9:52 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
                   ` (8 more replies)
  0 siblings, 9 replies; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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                          |  89 ++++--
 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                  | 414 ++++++++++++++++---------
 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, 439 insertions(+), 201 deletions(-)

-- 
2.25.1

^ permalink raw reply	[flat|nested] 20+ 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
  2023-11-10  9:52 ` [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; 20+ 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] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability
  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:52 ` Kunal Joshi
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check " Kunal Joshi
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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)
v3: backward compatbility (Jouni)
v4: missed backward compatibilty for PSR2
v5: removed mode PR_MODE_SEL_FETCH (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>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
---
 lib/igt_psr.c                          | 55 ++++++++++++++++++--------
 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, 58 insertions(+), 31 deletions(-)

diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index 13f7c567d..6590815fa 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -192,31 +192,52 @@ 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(buf, "Sink support: yes [0x03]") ||
+			       strstr(buf, "Sink support: yes [0x04]") ||
+			       (strstr(line, "PSR = yes") &&
+			       (strstr(line, "[0x03]") || strstr(line, "[0x04]")));
+		case PR_MODE:
+			return strstr(line, "Panel Replay = yes");
+		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] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check for pr compatability
  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:52 ` [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability Kunal Joshi
@ 2023-11-10  9:52 ` Kunal Joshi
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set " Kunal Joshi
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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

v2: corrected ternary check

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 6590815fa..6f1886938 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 || mode == 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] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set for pr compatability
  2023-11-10  9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
                   ` (2 preceding siblings ...)
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check " Kunal Joshi
@ 2023-11-10  9:52 ` Kunal Joshi
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode " Kunal Joshi
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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 6f1886938..a974036fd 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] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode for pr compatability
  2023-11-10  9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
                   ` (3 preceding siblings ...)
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set " Kunal Joshi
@ 2023-11-10  9:52 ` Kunal Joshi
  2023-11-10  9:52 ` [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; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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>
Reviewed-by: Jouni Högander <jouni.hogander@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 a974036fd..c9fd3ee58 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -383,7 +383,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] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr
  2023-11-10  9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
                   ` (4 preceding siblings ...)
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode " Kunal Joshi
@ 2023-11-10  9:52 ` Kunal Joshi
  2023-11-10 10:44   ` Hogander, Jouni
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE Kunal Joshi
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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: shorten output_supports_psr (Jouni)
    remove unused data members (Jouni)
v5: removed opt no-psr (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>
---
 tests/intel/kms_psr.c | 410 +++++++++++++++++++++++++++---------------
 1 file changed, 270 insertions(+), 140 deletions(-)

diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index 8485e9894..81b502088 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,
@@ -270,8 +376,6 @@ typedef struct {
 	int mod_stride;
 	drmModeModeInfo *mode;
 	igt_output_t *output;
-	bool with_psr_disabled;
-	bool supports_psr2;
 } data_t;
 
 static void create_cursor_fb(data_t *data)
@@ -289,34 +393,20 @@ 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;
+	for_each_connected_output(&data->display, output) {
+                if(psr_sink_support(data->drm_fd, data->debugfs_fd,
+                                    PSR_MODE_2, output) ||
+		   psr_sink_support(data->drm_fd, data->debugfs_fd,
+				    PSR_MODE_1, output) ||
+		   psr_sink_support(data->drm_fd, data->debugfs_fd,
+                                    PR_MODE, output))
+			return true;
 	}
-}
-
-static void display_init(data_t *data)
-{
-	igt_display_require(&data->display, data->drm_fd);
-	setup_output(data);
+	return false;
 }
 
 static void display_fini(data_t *data)
@@ -430,33 +520,18 @@ static void fill_render(data_t *data, const struct igt_fb *fb,
 		gem_bo_busy(data->drm_fd, fb->gem_handle);
 }
 
-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, NULL);
-}
-
 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, data->output);
 }
 
 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, data->output);
 }
 
 static bool psr_enable_if_enabled(data_t *data)
 {
-	if (data->with_psr_disabled)
-		return true;
-
 	return psr_enable(data->drm_fd, data->debugfs_fd, data->op_psr_mode);
 }
 
@@ -502,7 +577,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 +585,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 +593,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 +758,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++) {
@@ -700,9 +796,6 @@ static void test_setup(data_t *data)
 
 		igt_output_override_mode(data->output, data->mode);
 
-		if (data->op_psr_mode == PSR_MODE_2)
-			igt_require(data->supports_psr2);
-
 		psr_enable_if_enabled(data);
 		setup_test_plane(data, data->test_plane_id);
 		if (psr_wait_entry_if_enabled(data)) {
@@ -722,146 +815,183 @@ static void dpms_off_on(data_t *data)
 				   DRM_MODE_DPMS_ON);
 }
 
-static int opt_handler(int opt, int opt_index, void *_data)
-{
-	data_t *data = _data;
-
-	switch (opt) {
-	case 'n':
-		data->with_psr_disabled = true;
-		break;
-	default:
-		return IGT_OPT_HANDLER_ERROR;
-	}
-
-	return IGT_OPT_HANDLER_SUCCESS;
-}
-
-const char *help_str =
-	"  --no-psr\tRun test without PSR/PSR2.";
-static struct option long_options[] = {
-	{"no-psr", 0, 0, 'n'},
-	{ 0, 0, 0, 0 }
-};
 data_t data = {};
 
-igt_main_args("", long_options, help_str, opt_handler, &data)
+igt_main
 {
+	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);
+                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);
+				}
+			}
 		}
 	}
 
 	igt_fixture {
-		if (!data.with_psr_disabled)
-			psr_disable(data.drm_fd, data.debugfs_fd);
+		psr_disable(data.drm_fd, data.debugfs_fd);
 
 		close(data.debugfs_fd);
 		buf_ops_destroy(data.bops);
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE
  2023-11-10  9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
                   ` (5 preceding siblings ...)
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr Kunal Joshi
@ 2023-11-10  9:52 ` Kunal Joshi
  2023-11-10 11:16 ` [igt-dev] ✗ Fi.CI.BAT: failure for extend kms_psr test to validate pr (rev9) Patchwork
  2023-11-10 11:31 ` [igt-dev] ✗ CI.xeBAT: " Patchwork
  8 siblings, 0 replies; 20+ messages in thread
From: Kunal Joshi @ 2023-11-10  9:52 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] 20+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr Kunal Joshi
@ 2023-11-10 10:44   ` Hogander, Jouni
  2023-11-10 11:22     ` Joshi, Kunal1
  0 siblings, 1 reply; 20+ messages in thread
From: Hogander, Jouni @ 2023-11-10 10:44 UTC (permalink / raw)
  To: Joshi, Kunal1, igt-dev@lists.freedesktop.org; +Cc: Murthy, Arun R

On Fri, 2023-11-10 at 15:22 +0530, Kunal Joshi wrote:
> Modified kms_psr to have support for PR.
> 
> v2: remove set_output and have outputs (Jouni)
> v3: loop over connected outputs (Jouni)
> v4: shorten output_supports_psr (Jouni)
>     remove unused data members (Jouni)
> v5: removed opt no-psr (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>

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
> ---
>  tests/intel/kms_psr.c | 410 +++++++++++++++++++++++++++-------------
> --
>  1 file changed, 270 insertions(+), 140 deletions(-)
> 
> diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
> index 8485e9894..81b502088 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,
> @@ -270,8 +376,6 @@ typedef struct {
>         int mod_stride;
>         drmModeModeInfo *mode;
>         igt_output_t *output;
> -       bool with_psr_disabled;
> -       bool supports_psr2;
>  } data_t;
>  
>  static void create_cursor_fb(data_t *data)
> @@ -289,34 +393,20 @@ 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;
> +       for_each_connected_output(&data->display, output) {
> +                if(psr_sink_support(data->drm_fd, data->debugfs_fd,
> +                                    PSR_MODE_2, output) ||
> +                  psr_sink_support(data->drm_fd, data->debugfs_fd,
> +                                   PSR_MODE_1, output) ||
> +                  psr_sink_support(data->drm_fd, data->debugfs_fd,
> +                                    PR_MODE, output))
> +                       return true;
>         }
> -}
> -
> -static void display_init(data_t *data)
> -{
> -       igt_display_require(&data->display, data->drm_fd);
> -       setup_output(data);
> +       return false;
>  }
>  
>  static void display_fini(data_t *data)
> @@ -430,33 +520,18 @@ static void fill_render(data_t *data, const
> struct igt_fb *fb,
>                 gem_bo_busy(data->drm_fd, fb->gem_handle);
>  }
>  
> -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,
> NULL);
> -}
> -
>  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,
> data->output);
>  }
>  
>  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,
> data->output);
>  }
>  
>  static bool psr_enable_if_enabled(data_t *data)
>  {
> -       if (data->with_psr_disabled)
> -               return true;
> -
>         return psr_enable(data->drm_fd, data->debugfs_fd, data-
> >op_psr_mode);
>  }
>  
> @@ -502,7 +577,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 +585,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 +593,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 +758,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++) {
> @@ -700,9 +796,6 @@ static void test_setup(data_t *data)
>  
>                 igt_output_override_mode(data->output, data->mode);
>  
> -               if (data->op_psr_mode == PSR_MODE_2)
> -                       igt_require(data->supports_psr2);
> -
>                 psr_enable_if_enabled(data);
>                 setup_test_plane(data, data->test_plane_id);
>                 if (psr_wait_entry_if_enabled(data)) {
> @@ -722,146 +815,183 @@ static void dpms_off_on(data_t *data)
>                                    DRM_MODE_DPMS_ON);
>  }
>  
> -static int opt_handler(int opt, int opt_index, void *_data)
> -{
> -       data_t *data = _data;
> -
> -       switch (opt) {
> -       case 'n':
> -               data->with_psr_disabled = true;
> -               break;
> -       default:
> -               return IGT_OPT_HANDLER_ERROR;
> -       }
> -
> -       return IGT_OPT_HANDLER_SUCCESS;
> -}
> -
> -const char *help_str =
> -       "  --no-psr\tRun test without PSR/PSR2.";
> -static struct option long_options[] = {
> -       {"no-psr", 0, 0, 'n'},
> -       { 0, 0, 0, 0 }
> -};
>  data_t data = {};
>  
> -igt_main_args("", long_options, help_str, opt_handler, &data)
> +igt_main
>  {
> +       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);
> +                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(&dat
> a));
> +                                       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.displ
> ay, output) {
> +                                       if
> (!psr_sink_support(data.drm_fd, data.debugfs_fd,
> +                                                            
> data.op_psr_mode, output))
> +                                               continue;
> +                                       igt_display_reset(&data.displ
> ay);
> +                                       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.displ
> ay, output) {
> +                                       if
> (!psr_sink_support(data.drm_fd, data.debugfs_fd,
> +                                                            
> data.op_psr_mode, output))
> +                                               continue;
> +                                       igt_display_reset(&data.displ
> ay);
> +                                       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.displ
> ay, output) {
> +                                       if
> (!psr_sink_support(data.drm_fd, data.debugfs_fd,
> +                                                            
> data.op_psr_mode, output))
> +                                               continue;
> +                                       igt_display_reset(&data.displ
> ay);
> +                                       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);
> +                               }
> +                       }
>                 }
>         }
>  
>         igt_fixture {
> -               if (!data.with_psr_disabled)
> -                       psr_disable(data.drm_fd, data.debugfs_fd);
> +               psr_disable(data.drm_fd, data.debugfs_fd);
>  
>                 close(data.debugfs_fd);
>                 buf_ops_destroy(data.bops);


^ permalink raw reply	[flat|nested] 20+ messages in thread

* [igt-dev] ✗ Fi.CI.BAT: failure for extend kms_psr test to validate pr (rev9)
  2023-11-10  9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
                   ` (6 preceding siblings ...)
  2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE Kunal Joshi
@ 2023-11-10 11:16 ` Patchwork
  2023-11-10 11:31 ` [igt-dev] ✗ CI.xeBAT: " Patchwork
  8 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2023-11-10 11:16 UTC (permalink / raw)
  To: Kunal Joshi; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 24926 bytes --]

== Series Details ==

Series: extend kms_psr test to validate pr (rev9)
URL   : https://patchwork.freedesktop.org/series/125379/
State : failure

== Summary ==

CI Bug Log - changes from IGT_7582 -> IGTPW_10162
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_10162 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_10162, 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_10162/index.html

Participating hosts (34 -> 33)
------------------------------

  Additional (1): fi-kbl-soraka 
  Missing    (2): fi-hsw-4770 bat-adlp-11 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_10162:

### IGT changes ###

#### Possible regressions ####

  * {igt@kms_psr@pr_cursor_blt} (NEW):
    - bat-jsl-3:          NOTRUN -> [SKIP][1] +41 other tests skip
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-jsl-3/igt@kms_psr@pr_cursor_blt.html

  * {igt@kms_psr@pr_cursor_mmap_cpu} (NEW):
    - bat-adlp-6:         NOTRUN -> [SKIP][2] +20 other tests skip
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adlp-6/igt@kms_psr@pr_cursor_mmap_cpu.html

  * {igt@kms_psr@pr_primary_mmap_cpu} (NEW):
    - bat-adls-5:         NOTRUN -> [SKIP][3] +20 other tests skip
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adls-5/igt@kms_psr@pr_primary_mmap_cpu.html
    - bat-adln-1:         NOTRUN -> [SKIP][4] +20 other tests skip
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adln-1/igt@kms_psr@pr_primary_mmap_cpu.html

  * {igt@kms_psr@pr_primary_mmap_gtt} (NEW):
    - bat-rplp-1:         NOTRUN -> [SKIP][5] +62 other tests skip
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-rplp-1/igt@kms_psr@pr_primary_mmap_gtt.html

  * {igt@kms_psr@pr_sprite_blt} (NEW):
    - bat-dg2-11:         NOTRUN -> [SKIP][6] +62 other tests skip
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-11/igt@kms_psr@pr_sprite_blt.html
    - {bat-dg2-14}:       NOTRUN -> [SKIP][7] +41 other tests skip
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-14/igt@kms_psr@pr_sprite_blt.html

  * igt@kms_psr@primary_page_flip:
    - bat-adls-5:         [PASS][8] -> [SKIP][9] +3 other tests skip
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-adls-5/igt@kms_psr@primary_page_flip.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adls-5/igt@kms_psr@primary_page_flip.html

  * {igt@kms_psr@psr2_cursor_mmap_gtt@edp-1} (NEW):
    - bat-adls-5:         NOTRUN -> [FAIL][10] +20 other tests fail
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adls-5/igt@kms_psr@psr2_cursor_mmap_gtt@edp-1.html

  * igt@kms_psr@psr2_primary_blt:
    - bat-dg2-9:          NOTRUN -> [SKIP][11] +62 other tests skip
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-9/igt@kms_psr@psr2_primary_blt.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - fi-tgl-1115g4:      NOTRUN -> [SKIP][12] +62 other tests skip
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-tgl-1115g4/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@kms_psr@psr2_primary_render:
    - bat-mtlp-6:         NOTRUN -> [SKIP][13] +62 other tests skip
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-mtlp-6/igt@kms_psr@psr2_primary_render.html

  * igt@kms_psr@psr2_sprite_plane_onoff:
    - bat-adlp-9:         NOTRUN -> [SKIP][14] +62 other tests skip
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adlp-9/igt@kms_psr@psr2_sprite_plane_onoff.html

  * {igt@kms_psr@psr_primary_blt} (NEW):
    - fi-rkl-11600:       NOTRUN -> [SKIP][15] +62 other tests skip
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-rkl-11600/igt@kms_psr@psr_primary_blt.html

  * {igt@kms_psr@psr_primary_mmap_cpu} (NEW):
    - bat-rpls-1:         NOTRUN -> [SKIP][16] +62 other tests skip
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-rpls-1/igt@kms_psr@psr_primary_mmap_cpu.html

  * {igt@kms_psr@psr_suspend} (NEW):
    - bat-adlm-1:         NOTRUN -> [SKIP][17] +62 other tests skip
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adlm-1/igt@kms_psr@psr_suspend.html

  
#### Warnings ####

  * igt@kms_psr@cursor_plane_move:
    - bat-adlm-1:         [SKIP][18] ([i915#1072]) -> [SKIP][19] +3 other tests skip
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-adlm-1/igt@kms_psr@cursor_plane_move.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adlm-1/igt@kms_psr@cursor_plane_move.html
    - bat-rpls-1:         [SKIP][20] ([i915#1072]) -> [SKIP][21] +3 other tests skip
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-rpls-1/igt@kms_psr@cursor_plane_move.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-rpls-1/igt@kms_psr@cursor_plane_move.html

  * igt@kms_psr@primary_page_flip:
    - bat-adlp-9:         [SKIP][22] ([i915#1072]) -> [SKIP][23] +3 other tests skip
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-adlp-9/igt@kms_psr@primary_page_flip.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-adlp-9/igt@kms_psr@primary_page_flip.html
    - fi-rkl-11600:       [SKIP][24] ([i915#1072]) -> [SKIP][25] +3 other tests skip
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/fi-rkl-11600/igt@kms_psr@primary_page_flip.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-rkl-11600/igt@kms_psr@primary_page_flip.html
    - bat-dg2-9:          [SKIP][26] ([i915#1072]) -> [SKIP][27] +3 other tests skip
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-dg2-9/igt@kms_psr@primary_page_flip.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-9/igt@kms_psr@primary_page_flip.html
    - fi-tgl-1115g4:      [SKIP][28] ([fdo#110189]) -> [SKIP][29] +3 other tests skip
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/fi-tgl-1115g4/igt@kms_psr@primary_page_flip.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-tgl-1115g4/igt@kms_psr@primary_page_flip.html
    - bat-mtlp-6:         [SKIP][30] ([i915#1072]) -> [SKIP][31] +3 other tests skip
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-mtlp-6/igt@kms_psr@primary_page_flip.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-mtlp-6/igt@kms_psr@primary_page_flip.html

  * igt@kms_psr@sprite_plane_onoff:
    - bat-dg2-11:         [SKIP][32] ([i915#1072]) -> [SKIP][33] +3 other tests skip
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-dg2-11/igt@kms_psr@sprite_plane_onoff.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/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][34] +20 other tests skip
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-14/igt@kms_psr@psr2_sprite_mmap_cpu.html

  
New tests
---------

  New tests have been introduced between IGT_7582 and IGTPW_10162:

### New IGT tests (84) ###

  * igt@kms_psr@pr_basic:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_cursor_blt:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_cursor_mmap_cpu:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_cursor_mmap_gtt:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_cursor_plane_move:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_cursor_plane_onoff:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_cursor_render:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_dpms:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_no_drrs:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_primary_blt:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_primary_mmap_cpu:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_primary_mmap_gtt:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_primary_page_flip:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_primary_render:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_sprite_blt:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_sprite_mmap_cpu:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_sprite_mmap_gtt:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_sprite_plane_move:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_sprite_plane_onoff:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_sprite_render:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@pr_suspend:
    - Statuses : 32 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_basic@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_cursor_blt@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_cursor_mmap_cpu@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_cursor_mmap_gtt@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_cursor_plane_move@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_cursor_plane_onoff@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_cursor_render@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_dpms@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_no_drrs@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_primary_blt@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_primary_mmap_cpu@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_primary_mmap_gtt@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_primary_page_flip@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_primary_render@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_sprite_blt@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_sprite_mmap_cpu@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_sprite_mmap_gtt@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_sprite_plane_move@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_sprite_plane_onoff@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_sprite_render@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr2_suspend@edp-1:
    - Statuses : 1 fail(s) 2 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr_basic:
    - Statuses : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 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 : 26 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr_primary_mmap_gtt@edp-1:
    - Statuses : 6 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr_primary_page_flip:
    - Statuses : 26 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 : 26 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 : 26 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 : 26 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 : 26 skip(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr_sprite_mmap_gtt@edp-1:
    - Statuses : 6 pass(s)
    - Exec time: [0.0] s

  * igt@kms_psr@psr_sprite_plane_move:
    - Statuses : 26 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 : 26 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 : 26 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 : 26 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_10162 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s0@smem:
    - bat-dg2-9:          [PASS][35] -> [INCOMPLETE][36] ([i915#9275])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-dg2-9/igt@gem_exec_suspend@basic-s0@smem.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-9/igt@gem_exec_suspend@basic-s0@smem.html

  * igt@gem_huc_copy@huc-copy:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][37] ([fdo#109271] / [i915#2190])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@basic:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][38] ([fdo#109271] / [i915#4613]) +3 other tests skip
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-apl-guc:         [PASS][39] -> [DMESG-FAIL][40] ([i915#5334])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
    - fi-kbl-soraka:      NOTRUN -> [DMESG-FAIL][41] ([i915#5334] / [i915#7872])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@gt_pm:
    - fi-kbl-soraka:      NOTRUN -> [DMESG-FAIL][42] ([i915#1886])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence:
    - bat-dg2-11:         NOTRUN -> [SKIP][43] ([i915#1845] / [i915#9197]) +2 other tests skip
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html

  * {igt@kms_psr@pr_cursor_blt} (NEW):
    - bat-atsm-1:         NOTRUN -> [SKIP][44] ([i915#6078]) +62 other tests skip
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-atsm-1/igt@kms_psr@pr_cursor_blt.html

  * {igt@kms_psr@pr_cursor_mmap_cpu} (NEW):
    - fi-skl-6600u:       NOTRUN -> [SKIP][45] ([fdo#109271]) +41 other tests skip
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-skl-6600u/igt@kms_psr@pr_cursor_mmap_cpu.html

  * {igt@kms_psr@pr_sprite_blt} (NEW):
    - fi-kbl-soraka:      NOTRUN -> [SKIP][46] ([fdo#109271]) +55 other tests skip
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-soraka/igt@kms_psr@pr_sprite_blt.html
    - fi-cfl-8700k:       NOTRUN -> [SKIP][47] ([fdo#109271]) +62 other tests skip
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-cfl-8700k/igt@kms_psr@pr_sprite_blt.html

  * {igt@kms_psr@pr_sprite_render} (NEW):
    - fi-kbl-x1275:       NOTRUN -> [SKIP][48] ([fdo#109271]) +62 other tests skip
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-x1275/igt@kms_psr@pr_sprite_render.html

  * {igt@kms_psr@pr_suspend} (NEW):
    - fi-skl-guc:         NOTRUN -> [SKIP][49] ([fdo#109271]) +62 other tests skip
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-skl-guc/igt@kms_psr@pr_suspend.html

  * igt@kms_psr@primary_page_flip:
    - fi-skl-6600u:       [PASS][50] -> [SKIP][51] ([fdo#109271]) +3 other tests skip
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-skl-6600u/igt@kms_psr@primary_page_flip.html

  * igt@kms_psr@psr2_dpms:
    - fi-blb-e6850:       NOTRUN -> [SKIP][52] ([fdo#109271]) +62 other tests skip
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-blb-e6850/igt@kms_psr@psr2_dpms.html

  * igt@kms_psr@psr2_primary_render:
    - fi-cfl-guc:         NOTRUN -> [SKIP][53] ([fdo#109271]) +62 other tests skip
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-cfl-guc/igt@kms_psr@psr2_primary_render.html

  * igt@kms_psr@psr2_sprite_mmap_cpu:
    - fi-elk-e7500:       NOTRUN -> [SKIP][54] ([fdo#109271]) +62 other tests skip
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-elk-e7500/igt@kms_psr@psr2_sprite_mmap_cpu.html
    - fi-bsw-nick:        NOTRUN -> [SKIP][55] ([fdo#109271]) +62 other tests skip
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-bsw-nick/igt@kms_psr@psr2_sprite_mmap_cpu.html
    - fi-kbl-guc:         NOTRUN -> [SKIP][56] ([fdo#109271]) +62 other tests skip
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-guc/igt@kms_psr@psr2_sprite_mmap_cpu.html

  * igt@kms_psr@psr2_sprite_plane_move:
    - fi-apl-guc:         NOTRUN -> [SKIP][57] ([fdo#109271]) +62 other tests skip
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-apl-guc/igt@kms_psr@psr2_sprite_plane_move.html

  * igt@kms_psr@psr2_suspend:
    - fi-cfl-8109u:       NOTRUN -> [SKIP][58] ([fdo#109271]) +62 other tests skip
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-cfl-8109u/igt@kms_psr@psr2_suspend.html
    - fi-kbl-7567u:       NOTRUN -> [SKIP][59] ([fdo#109271]) +62 other tests skip
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-7567u/igt@kms_psr@psr2_suspend.html

  * {igt@kms_psr@psr_cursor_blt} (NEW):
    - fi-ivb-3770:        NOTRUN -> [SKIP][60] ([fdo#109271]) +62 other tests skip
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-ivb-3770/igt@kms_psr@psr_cursor_blt.html

  * {igt@kms_psr@psr_cursor_render} (NEW):
    - fi-ilk-650:         NOTRUN -> [SKIP][61] ([fdo#109271]) +62 other tests skip
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-ilk-650/igt@kms_psr@psr_cursor_render.html

  * {igt@kms_psr@psr_dpms} (NEW):
    - fi-glk-j4005:       NOTRUN -> [SKIP][62] ([fdo#109271]) +62 other tests skip
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-glk-j4005/igt@kms_psr@psr_dpms.html

  * {igt@kms_psr@psr_sprite_blt} (NEW):
    - fi-pnv-d510:        NOTRUN -> [SKIP][63] ([fdo#109271]) +62 other tests skip
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-pnv-d510/igt@kms_psr@psr_sprite_blt.html

  * igt@kms_psr@sprite_plane_onoff:
    - bat-jsl-3:          [PASS][64] -> [SKIP][65] ([fdo#112080]) +3 other tests skip
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-jsl-3/igt@kms_psr@sprite_plane_onoff.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-jsl-3/igt@kms_psr@sprite_plane_onoff.html

  
#### Possible fixes ####

  * igt@kms_hdmi_inject@inject-audio:
    - fi-kbl-guc:         [FAIL][66] ([IGT#3]) -> [PASS][67]
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1:
    - bat-rplp-1:         [ABORT][68] ([i915#8668]) -> [PASS][69]
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html

  
#### Warnings ####

  * igt@kms_psr@sprite_plane_onoff:
    - bat-atsm-1:         [SKIP][70] ([i915#1072]) -> [SKIP][71] ([i915#6078]) +3 other tests skip
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7582/bat-atsm-1/igt@kms_psr@sprite_plane_onoff.html
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/bat-atsm-1/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#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6078]: https://gitlab.freedesktop.org/drm/intel/issues/6078
  [i915#7872]: https://gitlab.freedesktop.org/drm/intel/issues/7872
  [i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
  [i915#9197]: https://gitlab.freedesktop.org/drm/intel/issues/9197
  [i915#9275]: https://gitlab.freedesktop.org/drm/intel/issues/9275


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7582 -> IGTPW_10162

  CI-20190529: 20190529
  CI_DRM_13859: 9155ae0ae05f320d84eaf2c4e81413bf937a5f3c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_10162: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/index.html
  IGT_7582: 453b9df12fbc9fff561bdb4eb97992983e74c3d4 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


Testlist changes
----------------

+++ 42 lines
--- 765 lines

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/index.html

[-- Attachment #2: Type: text/html, Size: 31320 bytes --]

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr
  2023-11-10 10:44   ` Hogander, Jouni
@ 2023-11-10 11:22     ` Joshi, Kunal1
  0 siblings, 0 replies; 20+ messages in thread
From: Joshi, Kunal1 @ 2023-11-10 11:22 UTC (permalink / raw)
  To: Hogander, Jouni, igt-dev@lists.freedesktop.org; +Cc: Murthy, Arun R

Thanks, Jouni for reviewing the series.

Regards
Kunal Joshi 

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [igt-dev] ✗ CI.xeBAT: failure for extend kms_psr test to validate pr (rev9)
  2023-11-10  9:52 [igt-dev] [PATCH i-g-t 0/7] extend kms_psr test to validate pr Kunal Joshi
                   ` (7 preceding siblings ...)
  2023-11-10 11:16 ` [igt-dev] ✗ Fi.CI.BAT: failure for extend kms_psr test to validate pr (rev9) Patchwork
@ 2023-11-10 11:31 ` Patchwork
  8 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2023-11-10 11:31 UTC (permalink / raw)
  To: Joshi, Kunal1; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 3308 bytes --]

== Series Details ==

Series: extend kms_psr test to validate pr (rev9)
URL   : https://patchwork.freedesktop.org/series/125379/
State : failure

== Summary ==

CI Bug Log - changes from XEIGT_7582_BAT -> XEIGTPW_10162_BAT
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with XEIGTPW_10162_BAT absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in XEIGTPW_10162_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 -> 3)
------------------------------

  No changes in participating hosts

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in XEIGTPW_10162_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_7582/bat-adlp-7/igt@kms_psr@primary_page_flip.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10162/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_7582/bat-atsm-2/igt@kms_psr@cursor_plane_move.html
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10162/bat-atsm-2/igt@kms_psr@cursor_plane_move.html

  * igt@kms_psr@primary_page_flip:
    - bat-dg2-oem2:       [SKIP][5] ([Intel XE#535]) -> [SKIP][6] +2 other tests skip
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7582/bat-dg2-oem2/igt@kms_psr@primary_page_flip.html
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10162/bat-dg2-oem2/igt@kms_psr@primary_page_flip.html

  
Known issues
------------

  Here are the changes found in XEIGTPW_10162_BAT that come from known issues:

### IGT changes ###

#### Warnings ####

  * igt@kms_frontbuffer_tracking@basic:
    - bat-adlp-7:         [FAIL][7] ([Intel XE#616] / [Intel XE#750]) -> [DMESG-FAIL][8] ([Intel XE#282] / [i915#2017])
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7582/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10162/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html

  
  [Intel XE#282]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/282
  [Intel XE#535]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/535
  [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616
  [Intel XE#750]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/750
  [i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017


Build changes
-------------

  * IGT: IGT_7582 -> IGTPW_10162

  IGTPW_10162: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10162/index.html
  IGT_7582: 453b9df12fbc9fff561bdb4eb97992983e74c3d4 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  xe-485-b3890fb4386dcef68a96888141c4cc773f6241ce: b3890fb4386dcef68a96888141c4cc773f6241ce

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10162/index.html

[-- Attachment #2: Type: text/html, Size: 4029 bytes --]

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2023-11-10 11:31 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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:52 ` [igt-dev] [PATCH i-g-t 2/7] lib/igt_psr: modified psr_sink_support for pr compatability Kunal Joshi
2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 3/7] lib/igt_psr: modified psr_active_check " Kunal Joshi
2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 4/7] lib/igt_psr: modified psr_set " Kunal Joshi
2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 5/7] lib/igt_psr: modified psr_get_mode " Kunal Joshi
2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 6/7] tests/intel/kms_psr: made test compaitable with pr Kunal Joshi
2023-11-10 10:44   ` Hogander, Jouni
2023-11-10 11:22     ` Joshi, Kunal1
2023-11-10  9:52 ` [igt-dev] [PATCH i-g-t 7/7] HAX PATCH DO NOT MERGE Kunal Joshi
2023-11-10 11:16 ` [igt-dev] ✗ Fi.CI.BAT: failure for extend kms_psr test to validate pr (rev9) Patchwork
2023-11-10 11:31 ` [igt-dev] ✗ CI.xeBAT: " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
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  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  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