intel-xe.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] drm/i915/dram: DRAM detection stuff
@ 2025-09-02 13:31 Ville Syrjala
  2025-09-02 13:31 ` [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately Ville Syrjala
                   ` (11 more replies)
  0 siblings, 12 replies; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

A few improvements to the DRAM detection code.

Ville Syrjälä (8):
  drm/i915/dram: Populate PNV memory type accurately
  drm/i915/dram: Use intel_dram_type_str() for pnv
  drm/i915/dram: Pack dram_info better
  drm/i915/dram: s/wm_lv0.../has_16gb_dimms/
  drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths
  drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a
  drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on
    icl
  drm/i915/dram: Print memory details even if something went wrong

 drivers/gpu/drm/i915/display/i9xx_wm.c       |  5 ++-
 drivers/gpu/drm/i915/display/skl_watermark.c |  6 +--
 drivers/gpu/drm/i915/soc/intel_dram.c        | 45 ++++++++++----------
 drivers/gpu/drm/i915/soc/intel_dram.h        | 12 +++---
 4 files changed, 35 insertions(+), 33 deletions(-)

-- 
2.49.1


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

* [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 13:45   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 2/8] drm/i915/dram: Use intel_dram_type_str() for pnv Ville Syrjala
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

If PNV doesn't have DDR3 then it has DDR2. Add the appropriate memory
type for it.

No functional change since we currently only care about the
DDR3 vs. not difference.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/soc/intel_dram.c | 10 ++++++----
 drivers/gpu/drm/i915/soc/intel_dram.h |  1 +
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
index 3eb748ab44d9..7d8b8f81e215 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.c
+++ b/drivers/gpu/drm/i915/soc/intel_dram.c
@@ -35,6 +35,7 @@ static const char *intel_dram_type_str(enum intel_dram_type type)
 {
 	static const char * const str[] = {
 		DRAM_TYPE_STR(UNKNOWN),
+		DRAM_TYPE_STR(DDR2),
 		DRAM_TYPE_STR(DDR3),
 		DRAM_TYPE_STR(DDR4),
 		DRAM_TYPE_STR(LPDDR3),
@@ -55,9 +56,10 @@ static const char *intel_dram_type_str(enum intel_dram_type type)
 
 #undef DRAM_TYPE_STR
 
-static bool pnv_is_ddr3(struct drm_i915_private *i915)
+static enum intel_dram_type pnv_dram_type(struct drm_i915_private *i915)
 {
-	return intel_uncore_read(&i915->uncore, CSHRDDR3CTL) & CSHRDDR3CTL_DDR3;
+	return intel_uncore_read(&i915->uncore, CSHRDDR3CTL) & CSHRDDR3CTL_DDR3 ?
+		INTEL_DRAM_DDR3 : INTEL_DRAM_DDR2;
 }
 
 static unsigned int pnv_mem_freq(struct drm_i915_private *dev_priv)
@@ -252,8 +254,8 @@ static int i915_get_dram_info(struct drm_i915_private *i915, struct dram_info *d
 	if (dram_info->mem_freq)
 		drm_dbg(&i915->drm, "DDR speed: %d kHz\n", dram_info->mem_freq);
 
-	if (IS_PINEVIEW(i915) && pnv_is_ddr3(i915))
-		dram_info->type = INTEL_DRAM_DDR3;
+	if (IS_PINEVIEW(i915))
+		dram_info->type = pnv_dram_type(i915);
 
 	return 0;
 }
diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
index 97d21894abdc..7e3b3d961fcb 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.h
+++ b/drivers/gpu/drm/i915/soc/intel_dram.h
@@ -17,6 +17,7 @@ struct dram_info {
 	bool symmetric_memory;
 	enum intel_dram_type {
 		INTEL_DRAM_UNKNOWN,
+		INTEL_DRAM_DDR2,
 		INTEL_DRAM_DDR3,
 		INTEL_DRAM_DDR4,
 		INTEL_DRAM_LPDDR3,
-- 
2.49.1


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

* [PATCH 2/8] drm/i915/dram: Use intel_dram_type_str() for pnv
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
  2025-09-02 13:31 ` [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 13:46   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 3/8] drm/i915/dram: Pack dram_info better Ville Syrjala
                   ` (9 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Replace the hand rolled PNV memory type printk string
stuff with intel_dram_type_str().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/display/i9xx_wm.c | 5 +++--
 drivers/gpu/drm/i915/soc/intel_dram.c  | 2 +-
 drivers/gpu/drm/i915/soc/intel_dram.h  | 1 +
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/i9xx_wm.c b/drivers/gpu/drm/i915/display/i9xx_wm.c
index 591acce2a4b1..b7f3c7a3aff5 100644
--- a/drivers/gpu/drm/i915/display/i9xx_wm.c
+++ b/drivers/gpu/drm/i915/display/i9xx_wm.c
@@ -103,8 +103,9 @@ static const struct cxsr_latency *pnv_get_cxsr_latency(struct intel_display *dis
 	}
 
 	drm_dbg_kms(display->drm,
-		    "Could not find CxSR latency for DDR%s, FSB %u kHz, MEM %u kHz\n",
-		    is_ddr3 ? "3" : "2", dram_info->fsb_freq, dram_info->mem_freq);
+		    "Could not find CxSR latency for %s, FSB %u kHz, MEM %u kHz\n",
+		    intel_dram_type_str(dram_info->type),
+		    dram_info->fsb_freq, dram_info->mem_freq);
 
 	return NULL;
 }
diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
index 7d8b8f81e215..b4f0793f778d 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.c
+++ b/drivers/gpu/drm/i915/soc/intel_dram.c
@@ -31,7 +31,7 @@ struct dram_channel_info {
 
 #define DRAM_TYPE_STR(type) [INTEL_DRAM_ ## type] = #type
 
-static const char *intel_dram_type_str(enum intel_dram_type type)
+const char *intel_dram_type_str(enum intel_dram_type type)
 {
 	static const char * const str[] = {
 		DRAM_TYPE_STR(UNKNOWN),
diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
index 7e3b3d961fcb..846a77b1aa90 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.h
+++ b/drivers/gpu/drm/i915/soc/intel_dram.h
@@ -39,5 +39,6 @@ int intel_dram_detect(struct drm_i915_private *i915);
 unsigned int intel_fsb_freq(struct drm_i915_private *i915);
 unsigned int intel_mem_freq(struct drm_i915_private *i915);
 const struct dram_info *intel_dram_info(struct drm_device *drm);
+const char *intel_dram_type_str(enum intel_dram_type type);
 
 #endif /* __INTEL_DRAM_H__ */
-- 
2.49.1


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

* [PATCH 3/8] drm/i915/dram: Pack dram_info better
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
  2025-09-02 13:31 ` [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately Ville Syrjala
  2025-09-02 13:31 ` [PATCH 2/8] drm/i915/dram: Use intel_dram_type_str() for pnv Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 13:46   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 4/8] drm/i915/dram: s/wm_lv0.../has_16gb_dimms/ Ville Syrjala
                   ` (8 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

struct dram_info has two holes in the middle. Shuffle things
around to plug them.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/soc/intel_dram.h | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
index 846a77b1aa90..6212944d44aa 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.h
+++ b/drivers/gpu/drm/i915/soc/intel_dram.h
@@ -12,9 +12,6 @@ struct drm_i915_private;
 struct drm_device;
 
 struct dram_info {
-	bool wm_lv_0_adjust_needed;
-	u8 num_channels;
-	bool symmetric_memory;
 	enum intel_dram_type {
 		INTEL_DRAM_UNKNOWN,
 		INTEL_DRAM_DDR2,
@@ -28,10 +25,13 @@ struct dram_info {
 		INTEL_DRAM_GDDR_ECC,
 		__INTEL_DRAM_TYPE_MAX,
 	} type;
-	u8 num_qgv_points;
-	u8 num_psf_gv_points;
 	unsigned int fsb_freq;
 	unsigned int mem_freq;
+	u8 num_channels;
+	u8 num_qgv_points;
+	u8 num_psf_gv_points;
+	bool symmetric_memory;
+	bool wm_lv_0_adjust_needed;
 };
 
 void intel_dram_edram_detect(struct drm_i915_private *i915);
-- 
2.49.1


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

* [PATCH 4/8] drm/i915/dram: s/wm_lv0.../has_16gb_dimms/
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (2 preceding siblings ...)
  2025-09-02 13:31 ` [PATCH 3/8] drm/i915/dram: Pack dram_info better Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-05  9:56   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths Ville Syrjala
                   ` (7 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

The DRAM code shouldn't know anything about watermarks. Rename
wm_lv_0_adjust_needed to has_16gb_dimms. How this gets used is
up to the watermark code.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/display/skl_watermark.c |  2 +-
 drivers/gpu/drm/i915/soc/intel_dram.c        | 12 ++++++------
 drivers/gpu/drm/i915/soc/intel_dram.h        |  2 +-
 3 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
index 33885d619a97..ae3ce0d65cfc 100644
--- a/drivers/gpu/drm/i915/display/skl_watermark.c
+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
@@ -3214,7 +3214,7 @@ adjust_wm_latency(struct intel_display *display,
 	 * any underrun. If not able to get Dimm info assume 16GB dimm
 	 * to avoid any underrun.
 	 */
-	if (!display->platform.dg2 && dram_info->wm_lv_0_adjust_needed)
+	if (!display->platform.dg2 && dram_info->has_16gb_dimms)
 		wm[0] += 1;
 }
 
diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
index b4f0793f778d..efb72e137748 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.c
+++ b/drivers/gpu/drm/i915/soc/intel_dram.c
@@ -428,7 +428,7 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
 		return -EINVAL;
 	}
 
-	dram_info->wm_lv_0_adjust_needed = ch0.is_16gb_dimm || ch1.is_16gb_dimm;
+	dram_info->has_16gb_dimms = ch0.is_16gb_dimm || ch1.is_16gb_dimm;
 
 	dram_info->symmetric_memory = intel_is_dram_symmetric(&ch0, &ch1);
 
@@ -673,7 +673,7 @@ static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *
 
 static int gen12_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
 {
-	dram_info->wm_lv_0_adjust_needed = false;
+	dram_info->has_16gb_dimms = false;
 
 	return icl_pcode_read_mem_global_info(i915, dram_info);
 }
@@ -737,10 +737,10 @@ int intel_dram_detect(struct drm_i915_private *i915)
 	i915->dram_info = dram_info;
 
 	/*
-	 * Assume level 0 watermark latency adjustment is needed until proven
+	 * Assume 16Gb DIMMs are present until proven
 	 * otherwise, this w/a is not needed by bxt/glk.
 	 */
-	dram_info->wm_lv_0_adjust_needed = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
+	dram_info->has_16gb_dimms = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
 
 	if (DISPLAY_VER(display) >= 14)
 		ret = xelpdp_get_dram_info(i915, dram_info);
@@ -766,8 +766,8 @@ int intel_dram_detect(struct drm_i915_private *i915)
 
 	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
 
-	drm_dbg_kms(&i915->drm, "Watermark level 0 adjustment needed: %s\n",
-		    str_yes_no(dram_info->wm_lv_0_adjust_needed));
+	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
+		    str_yes_no(dram_info->has_16gb_dimms));
 
 	return 0;
 }
diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
index 6212944d44aa..03a973f1c941 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.h
+++ b/drivers/gpu/drm/i915/soc/intel_dram.h
@@ -31,7 +31,7 @@ struct dram_info {
 	u8 num_qgv_points;
 	u8 num_psf_gv_points;
 	bool symmetric_memory;
-	bool wm_lv_0_adjust_needed;
+	bool has_16gb_dimms;
 };
 
 void intel_dram_edram_detect(struct drm_i915_private *i915);
-- 
2.49.1


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

* [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (3 preceding siblings ...)
  2025-09-02 13:31 ` [PATCH 4/8] drm/i915/dram: s/wm_lv0.../has_16gb_dimms/ Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 13:56   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a Ville Syrjala
                   ` (6 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Only skl (and derivatives) and icl need the 16Gb DIMM w/as, and we
do the real detection only on those platforms anyway. Move the initial
has_16gb_dimms assignment into those codepaths as well.

Currently we are incorrectly always applying the 1 usec wm latency bump
on all mtl+ platforms due to this (the tgl/adl codepath did remember to
undo the assignment, but the mtl+ codepath didn't).

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/soc/intel_dram.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
index efb72e137748..bf3ba874f8c5 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.c
+++ b/drivers/gpu/drm/i915/soc/intel_dram.c
@@ -406,6 +406,9 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
 	u32 val;
 	int ret;
 
+	/* Assume 16Gb DIMMs are present until proven otherwise */
+	dram_info->has_16gb_dimms = true;
+
 	val = intel_uncore_read(&i915->uncore,
 				SKL_MAD_DIMM_CH0_0_0_0_MCHBAR_MCMAIN);
 	ret = skl_dram_get_channel_info(i915, &ch0, 0, val);
@@ -435,6 +438,9 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
 	drm_dbg_kms(&i915->drm, "Memory configuration is symmetric? %s\n",
 		    str_yes_no(dram_info->symmetric_memory));
 
+	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
+		    str_yes_no(dram_info->has_16gb_dimms));
+
 	return 0;
 }
 
@@ -673,8 +679,6 @@ static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *
 
 static int gen12_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
 {
-	dram_info->has_16gb_dimms = false;
-
 	return icl_pcode_read_mem_global_info(i915, dram_info);
 }
 
@@ -736,12 +740,6 @@ int intel_dram_detect(struct drm_i915_private *i915)
 
 	i915->dram_info = dram_info;
 
-	/*
-	 * Assume 16Gb DIMMs are present until proven
-	 * otherwise, this w/a is not needed by bxt/glk.
-	 */
-	dram_info->has_16gb_dimms = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
-
 	if (DISPLAY_VER(display) >= 14)
 		ret = xelpdp_get_dram_info(i915, dram_info);
 	else if (GRAPHICS_VER(i915) >= 12)
@@ -766,9 +764,6 @@ int intel_dram_detect(struct drm_i915_private *i915)
 
 	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
 
-	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
-		    str_yes_no(dram_info->has_16gb_dimms));
-
 	return 0;
 }
 
-- 
2.49.1


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

* [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (4 preceding siblings ...)
  2025-09-02 13:31 ` [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 13:58   ` Jani Nikula
  2025-09-02 14:03   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 7/8] drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on icl Ville Syrjala
                   ` (5 subsequent siblings)
  11 siblings, 2 replies; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use consistent spelling when talking about the 16Gb DIMM w/a.

Even currently language is a bit off as the w/a is actually
about DIMMs with 16Gb DRAM devices on them, not the total capacity
of the whole DIMM. But this language does more or less match how
Bspec talks about this stuff.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/display/skl_watermark.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
index ae3ce0d65cfc..0b9c86042e78 100644
--- a/drivers/gpu/drm/i915/display/skl_watermark.c
+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
@@ -3209,9 +3209,9 @@ adjust_wm_latency(struct intel_display *display,
 	}
 
 	/*
-	 * WA Level-0 adjustment for 16GB DIMMs: SKL+
+	 * WA Level-0 adjustment for 16Gb DIMMs: SKL+
 	 * If we could not get dimm info enable this WA to prevent from
-	 * any underrun. If not able to get Dimm info assume 16GB dimm
+	 * any underrun. If not able to get DIMM info assume 16Gb DIMM
 	 * to avoid any underrun.
 	 */
 	if (!display->platform.dg2 && dram_info->has_16gb_dimms)
-- 
2.49.1


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

* [PATCH 7/8] drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on icl
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (5 preceding siblings ...)
  2025-09-02 13:31 ` [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 14:02   ` Jani Nikula
  2025-09-02 13:31 ` [PATCH 8/8] drm/i915/dram: Print memory details even if something went wrong Ville Syrjala
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Currently the icl codepaths first determine the memory type from the
memory controller registers (via skl_get_dram_info()->skl_get_dram_type())
and then overwrite the results with icl_pcode_read_mem_global_info().
Get rid of the pointless (and potentially incorrecgt) skl_get_dram_type()
stuff.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/soc/intel_dram.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
index bf3ba874f8c5..38b7dd20b18d 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.c
+++ b/drivers/gpu/drm/i915/soc/intel_dram.c
@@ -669,8 +669,9 @@ static int icl_pcode_read_mem_global_info(struct drm_i915_private *dev_priv,
 
 static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
 {
-	int ret = skl_get_dram_info(i915, dram_info);
+	int ret;
 
+	ret = skl_dram_get_channels_info(i915, dram_info);
 	if (ret)
 		return ret;
 
-- 
2.49.1


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

* [PATCH 8/8] drm/i915/dram: Print memory details even if something went wrong
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (6 preceding siblings ...)
  2025-09-02 13:31 ` [PATCH 7/8] drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on icl Ville Syrjala
@ 2025-09-02 13:31 ` Ville Syrjala
  2025-09-02 14:03   ` Jani Nikula
  2025-09-02 16:02 ` ✓ CI.KUnit: success for drm/i915/dram: DRAM detection stuff Patchwork
                   ` (3 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjala @ 2025-09-02 13:31 UTC (permalink / raw)
  To: intel-gfx; +Cc: intel-xe

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Print the memory details even if the detection failed in some way
but we continued the driver initialization anyway. It'll be easier
to debug issues if we at least know what the final results were.

And while at it also print the number of PSF GV points. Previously
we only printed the QGV points.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/soc/intel_dram.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
index 38b7dd20b18d..149527827624 100644
--- a/drivers/gpu/drm/i915/soc/intel_dram.c
+++ b/drivers/gpu/drm/i915/soc/intel_dram.c
@@ -757,14 +757,15 @@ int intel_dram_detect(struct drm_i915_private *i915)
 	drm_dbg_kms(&i915->drm, "DRAM type: %s\n",
 		    intel_dram_type_str(dram_info->type));
 
-	/* TODO: Do we want to abort probe on dram detection failures? */
-	if (ret)
-		return 0;
-
-	drm_dbg_kms(&i915->drm, "Num qgv points %u\n", dram_info->num_qgv_points);
-
 	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
 
+	drm_dbg_kms(&i915->drm, "Num QGV points %u\n", dram_info->num_qgv_points);
+	drm_dbg_kms(&i915->drm, "Num PSF GV points %u\n", dram_info->num_psf_gv_points);
+
+	/* TODO: Do we want to abort probe on dram detection failures? */
+	if (ret)
+		return 0;
+
 	return 0;
 }
 
-- 
2.49.1


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

* Re: [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately
  2025-09-02 13:31 ` [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately Ville Syrjala
@ 2025-09-02 13:45   ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 13:45 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> If PNV doesn't have DDR3 then it has DDR2. Add the appropriate memory
> type for it.
>
> No functional change since we currently only care about the
> DDR3 vs. not difference.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Yeah, I dropped the ball at around here with my previous refactorings.

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/soc/intel_dram.c | 10 ++++++----
>  drivers/gpu/drm/i915/soc/intel_dram.h |  1 +
>  2 files changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> index 3eb748ab44d9..7d8b8f81e215 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> @@ -35,6 +35,7 @@ static const char *intel_dram_type_str(enum intel_dram_type type)
>  {
>  	static const char * const str[] = {
>  		DRAM_TYPE_STR(UNKNOWN),
> +		DRAM_TYPE_STR(DDR2),
>  		DRAM_TYPE_STR(DDR3),
>  		DRAM_TYPE_STR(DDR4),
>  		DRAM_TYPE_STR(LPDDR3),
> @@ -55,9 +56,10 @@ static const char *intel_dram_type_str(enum intel_dram_type type)
>  
>  #undef DRAM_TYPE_STR
>  
> -static bool pnv_is_ddr3(struct drm_i915_private *i915)
> +static enum intel_dram_type pnv_dram_type(struct drm_i915_private *i915)
>  {
> -	return intel_uncore_read(&i915->uncore, CSHRDDR3CTL) & CSHRDDR3CTL_DDR3;
> +	return intel_uncore_read(&i915->uncore, CSHRDDR3CTL) & CSHRDDR3CTL_DDR3 ?
> +		INTEL_DRAM_DDR3 : INTEL_DRAM_DDR2;
>  }
>  
>  static unsigned int pnv_mem_freq(struct drm_i915_private *dev_priv)
> @@ -252,8 +254,8 @@ static int i915_get_dram_info(struct drm_i915_private *i915, struct dram_info *d
>  	if (dram_info->mem_freq)
>  		drm_dbg(&i915->drm, "DDR speed: %d kHz\n", dram_info->mem_freq);
>  
> -	if (IS_PINEVIEW(i915) && pnv_is_ddr3(i915))
> -		dram_info->type = INTEL_DRAM_DDR3;
> +	if (IS_PINEVIEW(i915))
> +		dram_info->type = pnv_dram_type(i915);
>  
>  	return 0;
>  }
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
> index 97d21894abdc..7e3b3d961fcb 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.h
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.h
> @@ -17,6 +17,7 @@ struct dram_info {
>  	bool symmetric_memory;
>  	enum intel_dram_type {
>  		INTEL_DRAM_UNKNOWN,
> +		INTEL_DRAM_DDR2,
>  		INTEL_DRAM_DDR3,
>  		INTEL_DRAM_DDR4,
>  		INTEL_DRAM_LPDDR3,

-- 
Jani Nikula, Intel

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

* Re: [PATCH 2/8] drm/i915/dram: Use intel_dram_type_str() for pnv
  2025-09-02 13:31 ` [PATCH 2/8] drm/i915/dram: Use intel_dram_type_str() for pnv Ville Syrjala
@ 2025-09-02 13:46   ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 13:46 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Replace the hand rolled PNV memory type printk string
> stuff with intel_dram_type_str().
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/display/i9xx_wm.c | 5 +++--
>  drivers/gpu/drm/i915/soc/intel_dram.c  | 2 +-
>  drivers/gpu/drm/i915/soc/intel_dram.h  | 1 +
>  3 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/i9xx_wm.c b/drivers/gpu/drm/i915/display/i9xx_wm.c
> index 591acce2a4b1..b7f3c7a3aff5 100644
> --- a/drivers/gpu/drm/i915/display/i9xx_wm.c
> +++ b/drivers/gpu/drm/i915/display/i9xx_wm.c
> @@ -103,8 +103,9 @@ static const struct cxsr_latency *pnv_get_cxsr_latency(struct intel_display *dis
>  	}
>  
>  	drm_dbg_kms(display->drm,
> -		    "Could not find CxSR latency for DDR%s, FSB %u kHz, MEM %u kHz\n",
> -		    is_ddr3 ? "3" : "2", dram_info->fsb_freq, dram_info->mem_freq);
> +		    "Could not find CxSR latency for %s, FSB %u kHz, MEM %u kHz\n",
> +		    intel_dram_type_str(dram_info->type),
> +		    dram_info->fsb_freq, dram_info->mem_freq);
>  
>  	return NULL;
>  }
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> index 7d8b8f81e215..b4f0793f778d 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> @@ -31,7 +31,7 @@ struct dram_channel_info {
>  
>  #define DRAM_TYPE_STR(type) [INTEL_DRAM_ ## type] = #type
>  
> -static const char *intel_dram_type_str(enum intel_dram_type type)
> +const char *intel_dram_type_str(enum intel_dram_type type)
>  {
>  	static const char * const str[] = {
>  		DRAM_TYPE_STR(UNKNOWN),
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
> index 7e3b3d961fcb..846a77b1aa90 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.h
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.h
> @@ -39,5 +39,6 @@ int intel_dram_detect(struct drm_i915_private *i915);
>  unsigned int intel_fsb_freq(struct drm_i915_private *i915);
>  unsigned int intel_mem_freq(struct drm_i915_private *i915);
>  const struct dram_info *intel_dram_info(struct drm_device *drm);
> +const char *intel_dram_type_str(enum intel_dram_type type);
>  
>  #endif /* __INTEL_DRAM_H__ */

-- 
Jani Nikula, Intel

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

* Re: [PATCH 3/8] drm/i915/dram: Pack dram_info better
  2025-09-02 13:31 ` [PATCH 3/8] drm/i915/dram: Pack dram_info better Ville Syrjala
@ 2025-09-02 13:46   ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 13:46 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> struct dram_info has two holes in the middle. Shuffle things
> around to plug them.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/soc/intel_dram.h | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
> index 846a77b1aa90..6212944d44aa 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.h
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.h
> @@ -12,9 +12,6 @@ struct drm_i915_private;
>  struct drm_device;
>  
>  struct dram_info {
> -	bool wm_lv_0_adjust_needed;
> -	u8 num_channels;
> -	bool symmetric_memory;
>  	enum intel_dram_type {
>  		INTEL_DRAM_UNKNOWN,
>  		INTEL_DRAM_DDR2,
> @@ -28,10 +25,13 @@ struct dram_info {
>  		INTEL_DRAM_GDDR_ECC,
>  		__INTEL_DRAM_TYPE_MAX,
>  	} type;
> -	u8 num_qgv_points;
> -	u8 num_psf_gv_points;
>  	unsigned int fsb_freq;
>  	unsigned int mem_freq;
> +	u8 num_channels;
> +	u8 num_qgv_points;
> +	u8 num_psf_gv_points;
> +	bool symmetric_memory;
> +	bool wm_lv_0_adjust_needed;
>  };
>  
>  void intel_dram_edram_detect(struct drm_i915_private *i915);

-- 
Jani Nikula, Intel

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

* Re: [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths
  2025-09-02 13:31 ` [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths Ville Syrjala
@ 2025-09-02 13:56   ` Jani Nikula
  2025-09-02 14:18     ` Ville Syrjälä
  0 siblings, 1 reply; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 13:56 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Only skl (and derivatives) and icl need the 16Gb DIMM w/as, and we
> do the real detection only on those platforms anyway. Move the initial
> has_16gb_dimms assignment into those codepaths as well.
>
> Currently we are incorrectly always applying the 1 usec wm latency bump
> on all mtl+ platforms due to this (the tgl/adl codepath did remember to
> undo the assignment, but the mtl+ codepath didn't).

The commit message could have more clarity that we're fixing this here.

With that,

Reviewed-by: Jani Nikula <jani.nikula@intel.com>


I think after this we could also drop the "!display->platform.dg2 && "
part in adjust_wm_latency():

	if (!display->platform.dg2 && dram_info->has_16gb_dimms)

Can be a follow-up.

> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/soc/intel_dram.c | 17 ++++++-----------
>  1 file changed, 6 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> index efb72e137748..bf3ba874f8c5 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> @@ -406,6 +406,9 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
>  	u32 val;
>  	int ret;
>  
> +	/* Assume 16Gb DIMMs are present until proven otherwise */
> +	dram_info->has_16gb_dimms = true;
> +
>  	val = intel_uncore_read(&i915->uncore,
>  				SKL_MAD_DIMM_CH0_0_0_0_MCHBAR_MCMAIN);
>  	ret = skl_dram_get_channel_info(i915, &ch0, 0, val);
> @@ -435,6 +438,9 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
>  	drm_dbg_kms(&i915->drm, "Memory configuration is symmetric? %s\n",
>  		    str_yes_no(dram_info->symmetric_memory));
>  
> +	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
> +		    str_yes_no(dram_info->has_16gb_dimms));
> +
>  	return 0;
>  }
>  
> @@ -673,8 +679,6 @@ static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *
>  
>  static int gen12_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
>  {
> -	dram_info->has_16gb_dimms = false;
> -
>  	return icl_pcode_read_mem_global_info(i915, dram_info);
>  }
>  
> @@ -736,12 +740,6 @@ int intel_dram_detect(struct drm_i915_private *i915)
>  
>  	i915->dram_info = dram_info;
>  
> -	/*
> -	 * Assume 16Gb DIMMs are present until proven
> -	 * otherwise, this w/a is not needed by bxt/glk.
> -	 */
> -	dram_info->has_16gb_dimms = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
> -
>  	if (DISPLAY_VER(display) >= 14)
>  		ret = xelpdp_get_dram_info(i915, dram_info);
>  	else if (GRAPHICS_VER(i915) >= 12)
> @@ -766,9 +764,6 @@ int intel_dram_detect(struct drm_i915_private *i915)
>  
>  	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
>  
> -	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
> -		    str_yes_no(dram_info->has_16gb_dimms));
> -
>  	return 0;
>  }

-- 
Jani Nikula, Intel

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

* Re: [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a
  2025-09-02 13:31 ` [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a Ville Syrjala
@ 2025-09-02 13:58   ` Jani Nikula
  2025-09-02 14:03   ` Jani Nikula
  1 sibling, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 13:58 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Use consistent spelling when talking about the 16Gb DIMM w/a.
>
> Even currently language is a bit off as the w/a is actually
> about DIMMs with 16Gb DRAM devices on them, not the total capacity
> of the whole DIMM. But this language does more or less match how
> Bspec talks about this stuff.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Personally, I usually prefer a space between the value and the unit,
i.e. "16 Gb" but that's neither here nor there.

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/display/skl_watermark.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
> index ae3ce0d65cfc..0b9c86042e78 100644
> --- a/drivers/gpu/drm/i915/display/skl_watermark.c
> +++ b/drivers/gpu/drm/i915/display/skl_watermark.c
> @@ -3209,9 +3209,9 @@ adjust_wm_latency(struct intel_display *display,
>  	}
>  
>  	/*
> -	 * WA Level-0 adjustment for 16GB DIMMs: SKL+
> +	 * WA Level-0 adjustment for 16Gb DIMMs: SKL+
>  	 * If we could not get dimm info enable this WA to prevent from
> -	 * any underrun. If not able to get Dimm info assume 16GB dimm
> +	 * any underrun. If not able to get DIMM info assume 16Gb DIMM
>  	 * to avoid any underrun.
>  	 */
>  	if (!display->platform.dg2 && dram_info->has_16gb_dimms)

-- 
Jani Nikula, Intel

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

* Re: [PATCH 7/8] drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on icl
  2025-09-02 13:31 ` [PATCH 7/8] drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on icl Ville Syrjala
@ 2025-09-02 14:02   ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 14:02 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Currently the icl codepaths first determine the memory type from the
> memory controller registers (via skl_get_dram_info()->skl_get_dram_type())
> and then overwrite the results with icl_pcode_read_mem_global_info().
> Get rid of the pointless (and potentially incorrecgt) skl_get_dram_type()
> stuff.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/soc/intel_dram.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> index bf3ba874f8c5..38b7dd20b18d 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> @@ -669,8 +669,9 @@ static int icl_pcode_read_mem_global_info(struct drm_i915_private *dev_priv,
>  
>  static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
>  {
> -	int ret = skl_get_dram_info(i915, dram_info);
> +	int ret;
>  
> +	ret = skl_dram_get_channels_info(i915, dram_info);
>  	if (ret)
>  		return ret;

-- 
Jani Nikula, Intel

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

* Re: [PATCH 8/8] drm/i915/dram: Print memory details even if something went wrong
  2025-09-02 13:31 ` [PATCH 8/8] drm/i915/dram: Print memory details even if something went wrong Ville Syrjala
@ 2025-09-02 14:03   ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 14:03 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Print the memory details even if the detection failed in some way
> but we continued the driver initialization anyway. It'll be easier
> to debug issues if we at least know what the final results were.
>
> And while at it also print the number of PSF GV points. Previously
> we only printed the QGV points.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/soc/intel_dram.c | 13 +++++++------
>  1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> index 38b7dd20b18d..149527827624 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> @@ -757,14 +757,15 @@ int intel_dram_detect(struct drm_i915_private *i915)
>  	drm_dbg_kms(&i915->drm, "DRAM type: %s\n",
>  		    intel_dram_type_str(dram_info->type));
>  
> -	/* TODO: Do we want to abort probe on dram detection failures? */
> -	if (ret)
> -		return 0;
> -
> -	drm_dbg_kms(&i915->drm, "Num qgv points %u\n", dram_info->num_qgv_points);
> -
>  	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
>  
> +	drm_dbg_kms(&i915->drm, "Num QGV points %u\n", dram_info->num_qgv_points);
> +	drm_dbg_kms(&i915->drm, "Num PSF GV points %u\n", dram_info->num_psf_gv_points);
> +
> +	/* TODO: Do we want to abort probe on dram detection failures? */
> +	if (ret)
> +		return 0;
> +
>  	return 0;
>  }

-- 
Jani Nikula, Intel

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

* Re: [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a
  2025-09-02 13:31 ` [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a Ville Syrjala
  2025-09-02 13:58   ` Jani Nikula
@ 2025-09-02 14:03   ` Jani Nikula
  1 sibling, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 14:03 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe


*around in the subject

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Use consistent spelling when talking about the 16Gb DIMM w/a.
>
> Even currently language is a bit off as the w/a is actually
> about DIMMs with 16Gb DRAM devices on them, not the total capacity
> of the whole DIMM. But this language does more or less match how
> Bspec talks about this stuff.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/display/skl_watermark.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
> index ae3ce0d65cfc..0b9c86042e78 100644
> --- a/drivers/gpu/drm/i915/display/skl_watermark.c
> +++ b/drivers/gpu/drm/i915/display/skl_watermark.c
> @@ -3209,9 +3209,9 @@ adjust_wm_latency(struct intel_display *display,
>  	}
>  
>  	/*
> -	 * WA Level-0 adjustment for 16GB DIMMs: SKL+
> +	 * WA Level-0 adjustment for 16Gb DIMMs: SKL+
>  	 * If we could not get dimm info enable this WA to prevent from
> -	 * any underrun. If not able to get Dimm info assume 16GB dimm
> +	 * any underrun. If not able to get DIMM info assume 16Gb DIMM
>  	 * to avoid any underrun.
>  	 */
>  	if (!display->platform.dg2 && dram_info->has_16gb_dimms)

-- 
Jani Nikula, Intel

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

* Re: [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths
  2025-09-02 13:56   ` Jani Nikula
@ 2025-09-02 14:18     ` Ville Syrjälä
  2025-09-02 14:21       ` Jani Nikula
  0 siblings, 1 reply; 24+ messages in thread
From: Ville Syrjälä @ 2025-09-02 14:18 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-gfx, intel-xe

On Tue, Sep 02, 2025 at 04:56:18PM +0300, Jani Nikula wrote:
> On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > Only skl (and derivatives) and icl need the 16Gb DIMM w/as, and we
> > do the real detection only on those platforms anyway. Move the initial
> > has_16gb_dimms assignment into those codepaths as well.
> >
> > Currently we are incorrectly always applying the 1 usec wm latency bump
> > on all mtl+ platforms due to this (the tgl/adl codepath did remember to
> > undo the assignment, but the mtl+ codepath didn't).
> 
> The commit message could have more clarity that we're fixing this here.
> 
> With that,
> 
> Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> 
> 
> I think after this we could also drop the "!display->platform.dg2 && "
> part in adjust_wm_latency():
> 
> 	if (!display->platform.dg2 && dram_info->has_16gb_dimms)
> 
> Can be a follow-up.

Currently we don't seem to allocate dram_info at all for dg2. So we
need some protection there to avoid oopsing. But I think I'll be
changing that to explictily check for the skl/icl platforms instead
since those are the only ones that need the w/a.

> 
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> >  drivers/gpu/drm/i915/soc/intel_dram.c | 17 ++++++-----------
> >  1 file changed, 6 insertions(+), 11 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> > index efb72e137748..bf3ba874f8c5 100644
> > --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> > +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> > @@ -406,6 +406,9 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
> >  	u32 val;
> >  	int ret;
> >  
> > +	/* Assume 16Gb DIMMs are present until proven otherwise */
> > +	dram_info->has_16gb_dimms = true;
> > +
> >  	val = intel_uncore_read(&i915->uncore,
> >  				SKL_MAD_DIMM_CH0_0_0_0_MCHBAR_MCMAIN);
> >  	ret = skl_dram_get_channel_info(i915, &ch0, 0, val);
> > @@ -435,6 +438,9 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
> >  	drm_dbg_kms(&i915->drm, "Memory configuration is symmetric? %s\n",
> >  		    str_yes_no(dram_info->symmetric_memory));
> >  
> > +	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
> > +		    str_yes_no(dram_info->has_16gb_dimms));
> > +
> >  	return 0;
> >  }
> >  
> > @@ -673,8 +679,6 @@ static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *
> >  
> >  static int gen12_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
> >  {
> > -	dram_info->has_16gb_dimms = false;
> > -
> >  	return icl_pcode_read_mem_global_info(i915, dram_info);
> >  }
> >  
> > @@ -736,12 +740,6 @@ int intel_dram_detect(struct drm_i915_private *i915)
> >  
> >  	i915->dram_info = dram_info;
> >  
> > -	/*
> > -	 * Assume 16Gb DIMMs are present until proven
> > -	 * otherwise, this w/a is not needed by bxt/glk.
> > -	 */
> > -	dram_info->has_16gb_dimms = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
> > -
> >  	if (DISPLAY_VER(display) >= 14)
> >  		ret = xelpdp_get_dram_info(i915, dram_info);
> >  	else if (GRAPHICS_VER(i915) >= 12)
> > @@ -766,9 +764,6 @@ int intel_dram_detect(struct drm_i915_private *i915)
> >  
> >  	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
> >  
> > -	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
> > -		    str_yes_no(dram_info->has_16gb_dimms));
> > -
> >  	return 0;
> >  }
> 
> -- 
> Jani Nikula, Intel

-- 
Ville Syrjälä
Intel

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

* Re: [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths
  2025-09-02 14:18     ` Ville Syrjälä
@ 2025-09-02 14:21       ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-02 14:21 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: intel-gfx, intel-xe

On Tue, 02 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> Currently we don't seem to allocate dram_info at all for dg2. So we
> need some protection there to avoid oopsing. But I think I'll be
> changing that to explictily check for the skl/icl platforms instead
> since those are the only ones that need the w/a.

Right, forgot about that!

BR,
Jani.


-- 
Jani Nikula, Intel

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

* ✓ CI.KUnit: success for drm/i915/dram: DRAM detection stuff
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (7 preceding siblings ...)
  2025-09-02 13:31 ` [PATCH 8/8] drm/i915/dram: Print memory details even if something went wrong Ville Syrjala
@ 2025-09-02 16:02 ` Patchwork
  2025-09-02 16:18 ` ✗ CI.checksparse: warning " Patchwork
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2025-09-02 16:02 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-xe

== Series Details ==

Series: drm/i915/dram: DRAM detection stuff
URL   : https://patchwork.freedesktop.org/series/153884/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[16:01:42] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:01:46] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:02:19] Starting KUnit Kernel (1/1)...
[16:02:19] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:02:20] ================== guc_buf (11 subtests) ===================
[16:02:20] [PASSED] test_smallest
[16:02:20] [PASSED] test_largest
[16:02:20] [PASSED] test_granular
[16:02:20] [PASSED] test_unique
[16:02:20] [PASSED] test_overlap
[16:02:20] [PASSED] test_reusable
[16:02:20] [PASSED] test_too_big
[16:02:20] [PASSED] test_flush
[16:02:20] [PASSED] test_lookup
[16:02:20] [PASSED] test_data
[16:02:20] [PASSED] test_class
[16:02:20] ===================== [PASSED] guc_buf =====================
[16:02:20] =================== guc_dbm (7 subtests) ===================
[16:02:20] [PASSED] test_empty
[16:02:20] [PASSED] test_default
[16:02:20] ======================== test_size  ========================
[16:02:20] [PASSED] 4
[16:02:20] [PASSED] 8
[16:02:20] [PASSED] 32
[16:02:20] [PASSED] 256
[16:02:20] ==================== [PASSED] test_size ====================
[16:02:20] ======================= test_reuse  ========================
[16:02:20] [PASSED] 4
[16:02:20] [PASSED] 8
[16:02:20] [PASSED] 32
[16:02:20] [PASSED] 256
[16:02:20] =================== [PASSED] test_reuse ====================
[16:02:20] =================== test_range_overlap  ====================
[16:02:20] [PASSED] 4
[16:02:20] [PASSED] 8
[16:02:20] [PASSED] 32
[16:02:20] [PASSED] 256
[16:02:20] =============== [PASSED] test_range_overlap ================
[16:02:20] =================== test_range_compact  ====================
[16:02:20] [PASSED] 4
[16:02:20] [PASSED] 8
[16:02:20] [PASSED] 32
[16:02:20] [PASSED] 256
[16:02:20] =============== [PASSED] test_range_compact ================
[16:02:20] ==================== test_range_spare  =====================
[16:02:20] [PASSED] 4
[16:02:20] [PASSED] 8
[16:02:20] [PASSED] 32
[16:02:20] [PASSED] 256
[16:02:20] ================ [PASSED] test_range_spare =================
[16:02:20] ===================== [PASSED] guc_dbm =====================
[16:02:20] =================== guc_idm (6 subtests) ===================
[16:02:20] [PASSED] bad_init
[16:02:20] [PASSED] no_init
[16:02:20] [PASSED] init_fini
[16:02:20] [PASSED] check_used
[16:02:20] [PASSED] check_quota
[16:02:20] [PASSED] check_all
[16:02:20] ===================== [PASSED] guc_idm =====================
[16:02:20] ================== no_relay (3 subtests) ===================
[16:02:20] [PASSED] xe_drops_guc2pf_if_not_ready
[16:02:20] [PASSED] xe_drops_guc2vf_if_not_ready
[16:02:20] [PASSED] xe_rejects_send_if_not_ready
[16:02:20] ==================== [PASSED] no_relay =====================
[16:02:20] ================== pf_relay (14 subtests) ==================
[16:02:20] [PASSED] pf_rejects_guc2pf_too_short
[16:02:20] [PASSED] pf_rejects_guc2pf_too_long
[16:02:20] [PASSED] pf_rejects_guc2pf_no_payload
[16:02:20] [PASSED] pf_fails_no_payload
[16:02:20] [PASSED] pf_fails_bad_origin
[16:02:20] [PASSED] pf_fails_bad_type
[16:02:20] [PASSED] pf_txn_reports_error
[16:02:20] [PASSED] pf_txn_sends_pf2guc
[16:02:20] [PASSED] pf_sends_pf2guc
[16:02:20] [SKIPPED] pf_loopback_nop
[16:02:20] [SKIPPED] pf_loopback_echo
[16:02:20] [SKIPPED] pf_loopback_fail
[16:02:20] [SKIPPED] pf_loopback_busy
[16:02:20] [SKIPPED] pf_loopback_retry
[16:02:20] ==================== [PASSED] pf_relay =====================
[16:02:20] ================== vf_relay (3 subtests) ===================
[16:02:20] [PASSED] vf_rejects_guc2vf_too_short
[16:02:20] [PASSED] vf_rejects_guc2vf_too_long
[16:02:20] [PASSED] vf_rejects_guc2vf_no_payload
[16:02:20] ==================== [PASSED] vf_relay =====================
[16:02:20] ===================== lmtt (1 subtest) =====================
[16:02:20] ======================== test_ops  =========================
[16:02:20] [PASSED] 2-level
[16:02:20] [PASSED] multi-level
[16:02:20] ==================== [PASSED] test_ops =====================
[16:02:20] ====================== [PASSED] lmtt =======================
[16:02:20] ================= pf_service (11 subtests) =================
[16:02:20] [PASSED] pf_negotiate_any
[16:02:20] [PASSED] pf_negotiate_base_match
[16:02:20] [PASSED] pf_negotiate_base_newer
[16:02:20] [PASSED] pf_negotiate_base_next
[16:02:20] [SKIPPED] pf_negotiate_base_older
[16:02:20] [PASSED] pf_negotiate_base_prev
[16:02:20] [PASSED] pf_negotiate_latest_match
[16:02:20] [PASSED] pf_negotiate_latest_newer
[16:02:20] [PASSED] pf_negotiate_latest_next
[16:02:20] [SKIPPED] pf_negotiate_latest_older
[16:02:20] [SKIPPED] pf_negotiate_latest_prev
[16:02:20] =================== [PASSED] pf_service ====================
[16:02:20] =================== xe_mocs (2 subtests) ===================
[16:02:20] ================ xe_live_mocs_kernel_kunit  ================
[16:02:20] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[16:02:20] ================ xe_live_mocs_reset_kunit  =================
[16:02:20] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[16:02:20] ==================== [SKIPPED] xe_mocs =====================
[16:02:20] ================= xe_migrate (2 subtests) ==================
[16:02:20] ================= xe_migrate_sanity_kunit  =================
[16:02:20] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[16:02:20] ================== xe_validate_ccs_kunit  ==================
[16:02:20] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[16:02:20] =================== [SKIPPED] xe_migrate ===================
[16:02:20] ================== xe_dma_buf (1 subtest) ==================
[16:02:20] ==================== xe_dma_buf_kunit  =====================
[16:02:20] ================ [SKIPPED] xe_dma_buf_kunit ================
[16:02:20] =================== [SKIPPED] xe_dma_buf ===================
[16:02:20] ================= xe_bo_shrink (1 subtest) =================
[16:02:20] =================== xe_bo_shrink_kunit  ====================
[16:02:20] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[16:02:20] ================== [SKIPPED] xe_bo_shrink ==================
[16:02:20] ==================== xe_bo (2 subtests) ====================
[16:02:20] ================== xe_ccs_migrate_kunit  ===================
[16:02:20] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[16:02:20] ==================== xe_bo_evict_kunit  ====================
[16:02:20] =============== [SKIPPED] xe_bo_evict_kunit ================
[16:02:20] ===================== [SKIPPED] xe_bo ======================
[16:02:20] ==================== args (11 subtests) ====================
[16:02:20] [PASSED] count_args_test
[16:02:20] [PASSED] call_args_example
[16:02:20] [PASSED] call_args_test
[16:02:20] [PASSED] drop_first_arg_example
[16:02:20] [PASSED] drop_first_arg_test
[16:02:20] [PASSED] first_arg_example
[16:02:20] [PASSED] first_arg_test
[16:02:20] [PASSED] last_arg_example
[16:02:20] [PASSED] last_arg_test
[16:02:20] [PASSED] pick_arg_example
[16:02:20] [PASSED] sep_comma_example
[16:02:20] ====================== [PASSED] args =======================
[16:02:20] =================== xe_pci (3 subtests) ====================
[16:02:20] ==================== check_graphics_ip  ====================
[16:02:20] [PASSED] 12.70 Xe_LPG
[16:02:20] [PASSED] 12.71 Xe_LPG
[16:02:20] [PASSED] 12.74 Xe_LPG+
[16:02:20] [PASSED] 20.01 Xe2_HPG
[16:02:20] [PASSED] 20.02 Xe2_HPG
[16:02:20] [PASSED] 20.04 Xe2_LPG
[16:02:20] [PASSED] 30.00 Xe3_LPG
[16:02:20] [PASSED] 30.01 Xe3_LPG
[16:02:20] [PASSED] 30.03 Xe3_LPG
[16:02:20] ================ [PASSED] check_graphics_ip ================
[16:02:20] ===================== check_media_ip  ======================
[16:02:20] [PASSED] 13.00 Xe_LPM+
[16:02:20] [PASSED] 13.01 Xe2_HPM
[16:02:20] [PASSED] 20.00 Xe2_LPM
[16:02:20] [PASSED] 30.00 Xe3_LPM
[16:02:20] [PASSED] 30.02 Xe3_LPM
[16:02:20] ================= [PASSED] check_media_ip ==================
[16:02:20] ================= check_platform_gt_count  =================
[16:02:20] [PASSED] 0x9A60 (TIGERLAKE)
[16:02:20] [PASSED] 0x9A68 (TIGERLAKE)
[16:02:20] [PASSED] 0x9A70 (TIGERLAKE)
[16:02:20] [PASSED] 0x9A40 (TIGERLAKE)
[16:02:20] [PASSED] 0x9A49 (TIGERLAKE)
[16:02:20] [PASSED] 0x9A59 (TIGERLAKE)
[16:02:20] [PASSED] 0x9A78 (TIGERLAKE)
[16:02:20] [PASSED] 0x9AC0 (TIGERLAKE)
[16:02:20] [PASSED] 0x9AC9 (TIGERLAKE)
[16:02:20] [PASSED] 0x9AD9 (TIGERLAKE)
[16:02:20] [PASSED] 0x9AF8 (TIGERLAKE)
[16:02:20] [PASSED] 0x4C80 (ROCKETLAKE)
[16:02:20] [PASSED] 0x4C8A (ROCKETLAKE)
[16:02:20] [PASSED] 0x4C8B (ROCKETLAKE)
[16:02:20] [PASSED] 0x4C8C (ROCKETLAKE)
[16:02:20] [PASSED] 0x4C90 (ROCKETLAKE)
[16:02:20] [PASSED] 0x4C9A (ROCKETLAKE)
[16:02:20] [PASSED] 0x4680 (ALDERLAKE_S)
[16:02:20] [PASSED] 0x4682 (ALDERLAKE_S)
[16:02:20] [PASSED] 0x4688 (ALDERLAKE_S)
[16:02:20] [PASSED] 0x468A (ALDERLAKE_S)
[16:02:20] [PASSED] 0x468B (ALDERLAKE_S)
[16:02:20] [PASSED] 0x4690 (ALDERLAKE_S)
[16:02:20] [PASSED] 0x4692 (ALDERLAKE_S)
[16:02:20] [PASSED] 0x4693 (ALDERLAKE_S)
[16:02:20] [PASSED] 0x46A0 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46A1 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46A2 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46A3 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46A6 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46A8 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46AA (ALDERLAKE_P)
[16:02:20] [PASSED] 0x462A (ALDERLAKE_P)
[16:02:20] [PASSED] 0x4626 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x4628 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46B0 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46B1 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46B2 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46B3 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46C0 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46C1 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46C2 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46C3 (ALDERLAKE_P)
[16:02:20] [PASSED] 0x46D0 (ALDERLAKE_N)
[16:02:20] [PASSED] 0x46D1 (ALDERLAKE_N)
[16:02:20] [PASSED] 0x46D2 (ALDERLAKE_N)
[16:02:20] [PASSED] 0x46D3 (ALDERLAKE_N)
[16:02:20] [PASSED] 0x46D4 (ALDERLAKE_N)
[16:02:20] [PASSED] 0xA721 (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7A1 (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7A9 (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7AC (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7AD (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA720 (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7A0 (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7A8 (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7AA (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA7AB (ALDERLAKE_P)
[16:02:20] [PASSED] 0xA780 (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA781 (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA782 (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA783 (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA788 (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA789 (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA78A (ALDERLAKE_S)
[16:02:20] [PASSED] 0xA78B (ALDERLAKE_S)
[16:02:20] [PASSED] 0x4905 (DG1)
[16:02:20] [PASSED] 0x4906 (DG1)
[16:02:20] [PASSED] 0x4907 (DG1)
[16:02:20] [PASSED] 0x4908 (DG1)
[16:02:20] [PASSED] 0x4909 (DG1)
[16:02:20] [PASSED] 0x56C0 (DG2)
[16:02:20] [PASSED] 0x56C2 (DG2)
[16:02:20] [PASSED] 0x56C1 (DG2)
[16:02:20] [PASSED] 0x7D51 (METEORLAKE)
[16:02:20] [PASSED] 0x7DD1 (METEORLAKE)
[16:02:20] [PASSED] 0x7D41 (METEORLAKE)
[16:02:20] [PASSED] 0x7D67 (METEORLAKE)
[16:02:20] [PASSED] 0xB640 (METEORLAKE)
[16:02:20] [PASSED] 0x56A0 (DG2)
[16:02:20] [PASSED] 0x56A1 (DG2)
[16:02:20] [PASSED] 0x56A2 (DG2)
[16:02:20] [PASSED] 0x56BE (DG2)
[16:02:20] [PASSED] 0x56BF (DG2)
[16:02:20] [PASSED] 0x5690 (DG2)
[16:02:20] [PASSED] 0x5691 (DG2)
[16:02:20] [PASSED] 0x5692 (DG2)
[16:02:20] [PASSED] 0x56A5 (DG2)
[16:02:20] [PASSED] 0x56A6 (DG2)
[16:02:20] [PASSED] 0x56B0 (DG2)
[16:02:20] [PASSED] 0x56B1 (DG2)
[16:02:20] [PASSED] 0x56BA (DG2)
[16:02:20] [PASSED] 0x56BB (DG2)
[16:02:20] [PASSED] 0x56BC (DG2)
[16:02:20] [PASSED] 0x56BD (DG2)
[16:02:20] [PASSED] 0x5693 (DG2)
[16:02:20] [PASSED] 0x5694 (DG2)
[16:02:20] [PASSED] 0x5695 (DG2)
[16:02:20] [PASSED] 0x56A3 (DG2)
[16:02:20] [PASSED] 0x56A4 (DG2)
[16:02:20] [PASSED] 0x56B2 (DG2)
[16:02:20] [PASSED] 0x56B3 (DG2)
[16:02:20] [PASSED] 0x5696 (DG2)
[16:02:20] [PASSED] 0x5697 (DG2)
[16:02:20] [PASSED] 0xB69 (PVC)
[16:02:20] [PASSED] 0xB6E (PVC)
[16:02:20] [PASSED] 0xBD4 (PVC)
[16:02:20] [PASSED] 0xBD5 (PVC)
[16:02:20] [PASSED] 0xBD6 (PVC)
[16:02:20] [PASSED] 0xBD7 (PVC)
[16:02:20] [PASSED] 0xBD8 (PVC)
[16:02:20] [PASSED] 0xBD9 (PVC)
[16:02:20] [PASSED] 0xBDA (PVC)
[16:02:20] [PASSED] 0xBDB (PVC)
[16:02:20] [PASSED] 0xBE0 (PVC)
[16:02:20] [PASSED] 0xBE1 (PVC)
[16:02:20] [PASSED] 0xBE5 (PVC)
[16:02:20] [PASSED] 0x7D40 (METEORLAKE)
[16:02:20] [PASSED] 0x7D45 (METEORLAKE)
[16:02:20] [PASSED] 0x7D55 (METEORLAKE)
[16:02:20] [PASSED] 0x7D60 (METEORLAKE)
[16:02:20] [PASSED] 0x7DD5 (METEORLAKE)
[16:02:20] [PASSED] 0x6420 (LUNARLAKE)
[16:02:20] [PASSED] 0x64A0 (LUNARLAKE)
[16:02:20] [PASSED] 0x64B0 (LUNARLAKE)
[16:02:20] [PASSED] 0xE202 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE209 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE20B (BATTLEMAGE)
[16:02:20] [PASSED] 0xE20C (BATTLEMAGE)
[16:02:20] [PASSED] 0xE20D (BATTLEMAGE)
[16:02:20] [PASSED] 0xE210 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE211 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE212 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE216 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE220 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE221 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE222 (BATTLEMAGE)
[16:02:20] [PASSED] 0xE223 (BATTLEMAGE)
[16:02:20] [PASSED] 0xB080 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB081 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB082 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB083 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB084 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB085 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB086 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB087 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB08F (PANTHERLAKE)
[16:02:20] [PASSED] 0xB090 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB0A0 (PANTHERLAKE)
[16:02:20] [PASSED] 0xB0B0 (PANTHERLAKE)
[16:02:20] [PASSED] 0xFD80 (PANTHERLAKE)
[16:02:20] [PASSED] 0xFD81 (PANTHERLAKE)
[16:02:20] ============= [PASSED] check_platform_gt_count =============
[16:02:20] ===================== [PASSED] xe_pci ======================
[16:02:20] =================== xe_rtp (2 subtests) ====================
[16:02:20] =============== xe_rtp_process_to_sr_tests  ================
[16:02:20] [PASSED] coalesce-same-reg
[16:02:20] [PASSED] no-match-no-add
[16:02:20] [PASSED] match-or
[16:02:20] [PASSED] match-or-xfail
[16:02:20] [PASSED] no-match-no-add-multiple-rules
[16:02:20] [PASSED] two-regs-two-entries
[16:02:20] [PASSED] clr-one-set-other
[16:02:20] [PASSED] set-field
[16:02:20] [PASSED] conflict-duplicate
[16:02:20] [PASSED] conflict-not-disjoint
[16:02:20] [PASSED] conflict-reg-type
[16:02:20] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[16:02:20] ================== xe_rtp_process_tests  ===================
[16:02:20] [PASSED] active1
[16:02:20] [PASSED] active2
[16:02:20] [PASSED] active-inactive
[16:02:20] [PASSED] inactive-active
[16:02:20] [PASSED] inactive-1st_or_active-inactive
[16:02:20] [PASSED] inactive-2nd_or_active-inactive
[16:02:20] [PASSED] inactive-last_or_active-inactive
[16:02:20] [PASSED] inactive-no_or_active-inactive
[16:02:20] ============== [PASSED] xe_rtp_process_tests ===============
[16:02:20] ===================== [PASSED] xe_rtp ======================
[16:02:20] ==================== xe_wa (1 subtest) =====================
[16:02:20] ======================== xe_wa_gt  =========================
[16:02:20] [PASSED] TIGERLAKE (B0)
[16:02:20] [PASSED] DG1 (A0)
[16:02:20] [PASSED] DG1 (B0)
[16:02:20] [PASSED] ALDERLAKE_S (A0)
[16:02:20] [PASSED] ALDERLAKE_S (B0)
[16:02:20] [PASSED] ALDERLAKE_S (C0)
[16:02:20] [PASSED] ALDERLAKE_S (D0)
[16:02:20] [PASSED] ALDERLAKE_P (A0)
[16:02:20] [PASSED] ALDERLAKE_P (B0)
[16:02:20] [PASSED] ALDERLAKE_P (C0)
[16:02:20] [PASSED] ALDERLAKE_S_RPLS (D0)
[16:02:20] [PASSED] ALDERLAKE_P_RPLU (E0)
[16:02:20] [PASSED] DG2_G10 (C0)
[16:02:20] [PASSED] DG2_G11 (B1)
[16:02:20] [PASSED] DG2_G12 (A1)
[16:02:20] [PASSED] METEORLAKE (g:A0, m:A0)
[16:02:20] [PASSED] METEORLAKE (g:A0, m:A0)
[16:02:20] [PASSED] METEORLAKE (g:A0, m:A0)
[16:02:20] [PASSED] LUNARLAKE (g:A0, m:A0)
[16:02:20] [PASSED] LUNARLAKE (g:B0, m:A0)
stty: 'standard input': Inappropriate ioctl for device
[16:02:20] [PASSED] BATTLEMAGE (g:A0, m:A1)
[16:02:20] [PASSED] PANTHERLAKE (g:A0, m:A0)
[16:02:20] ==================== [PASSED] xe_wa_gt =====================
[16:02:20] ====================== [PASSED] xe_wa ======================
[16:02:20] ============================================================
[16:02:20] Testing complete. Ran 298 tests: passed: 282, skipped: 16
[16:02:20] Elapsed time: 38.294s total, 4.189s configuring, 33.738s building, 0.329s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[16:02:20] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:02:22] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:02:45] Starting KUnit Kernel (1/1)...
[16:02:45] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:02:45] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[16:02:45] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[16:02:45] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[16:02:45] =========== drm_validate_clone_mode (2 subtests) ===========
[16:02:45] ============== drm_test_check_in_clone_mode  ===============
[16:02:45] [PASSED] in_clone_mode
[16:02:45] [PASSED] not_in_clone_mode
[16:02:45] ========== [PASSED] drm_test_check_in_clone_mode ===========
[16:02:45] =============== drm_test_check_valid_clones  ===============
[16:02:45] [PASSED] not_in_clone_mode
[16:02:45] [PASSED] valid_clone
[16:02:45] [PASSED] invalid_clone
[16:02:45] =========== [PASSED] drm_test_check_valid_clones ===========
[16:02:45] ============= [PASSED] drm_validate_clone_mode =============
[16:02:45] ============= drm_validate_modeset (1 subtest) =============
[16:02:45] [PASSED] drm_test_check_connector_changed_modeset
[16:02:45] ============== [PASSED] drm_validate_modeset ===============
[16:02:45] ====== drm_test_bridge_get_current_state (2 subtests) ======
[16:02:45] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[16:02:45] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[16:02:45] ======== [PASSED] drm_test_bridge_get_current_state ========
[16:02:45] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[16:02:45] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[16:02:45] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[16:02:45] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[16:02:45] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[16:02:45] ============== drm_bridge_alloc (2 subtests) ===============
[16:02:45] [PASSED] drm_test_drm_bridge_alloc_basic
[16:02:45] [PASSED] drm_test_drm_bridge_alloc_get_put
[16:02:45] ================ [PASSED] drm_bridge_alloc =================
[16:02:45] ================== drm_buddy (7 subtests) ==================
[16:02:45] [PASSED] drm_test_buddy_alloc_limit
[16:02:45] [PASSED] drm_test_buddy_alloc_optimistic
[16:02:45] [PASSED] drm_test_buddy_alloc_pessimistic
[16:02:45] [PASSED] drm_test_buddy_alloc_pathological
[16:02:45] [PASSED] drm_test_buddy_alloc_contiguous
[16:02:45] [PASSED] drm_test_buddy_alloc_clear
[16:02:45] [PASSED] drm_test_buddy_alloc_range_bias
[16:02:45] ==================== [PASSED] drm_buddy ====================
[16:02:45] ============= drm_cmdline_parser (40 subtests) =============
[16:02:45] [PASSED] drm_test_cmdline_force_d_only
[16:02:45] [PASSED] drm_test_cmdline_force_D_only_dvi
[16:02:45] [PASSED] drm_test_cmdline_force_D_only_hdmi
[16:02:45] [PASSED] drm_test_cmdline_force_D_only_not_digital
[16:02:45] [PASSED] drm_test_cmdline_force_e_only
[16:02:45] [PASSED] drm_test_cmdline_res
[16:02:45] [PASSED] drm_test_cmdline_res_vesa
[16:02:45] [PASSED] drm_test_cmdline_res_vesa_rblank
[16:02:45] [PASSED] drm_test_cmdline_res_rblank
[16:02:45] [PASSED] drm_test_cmdline_res_bpp
[16:02:45] [PASSED] drm_test_cmdline_res_refresh
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[16:02:45] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[16:02:45] [PASSED] drm_test_cmdline_res_margins_force_on
[16:02:45] [PASSED] drm_test_cmdline_res_vesa_margins
[16:02:45] [PASSED] drm_test_cmdline_name
[16:02:45] [PASSED] drm_test_cmdline_name_bpp
[16:02:45] [PASSED] drm_test_cmdline_name_option
[16:02:45] [PASSED] drm_test_cmdline_name_bpp_option
[16:02:45] [PASSED] drm_test_cmdline_rotate_0
[16:02:45] [PASSED] drm_test_cmdline_rotate_90
[16:02:45] [PASSED] drm_test_cmdline_rotate_180
[16:02:45] [PASSED] drm_test_cmdline_rotate_270
[16:02:45] [PASSED] drm_test_cmdline_hmirror
[16:02:45] [PASSED] drm_test_cmdline_vmirror
[16:02:45] [PASSED] drm_test_cmdline_margin_options
[16:02:45] [PASSED] drm_test_cmdline_multiple_options
[16:02:45] [PASSED] drm_test_cmdline_bpp_extra_and_option
[16:02:45] [PASSED] drm_test_cmdline_extra_and_option
[16:02:45] [PASSED] drm_test_cmdline_freestanding_options
[16:02:45] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[16:02:45] [PASSED] drm_test_cmdline_panel_orientation
[16:02:45] ================ drm_test_cmdline_invalid  =================
[16:02:45] [PASSED] margin_only
[16:02:45] [PASSED] interlace_only
[16:02:45] [PASSED] res_missing_x
[16:02:45] [PASSED] res_missing_y
[16:02:45] [PASSED] res_bad_y
[16:02:45] [PASSED] res_missing_y_bpp
[16:02:45] [PASSED] res_bad_bpp
[16:02:45] [PASSED] res_bad_refresh
[16:02:45] [PASSED] res_bpp_refresh_force_on_off
[16:02:45] [PASSED] res_invalid_mode
[16:02:45] [PASSED] res_bpp_wrong_place_mode
[16:02:45] [PASSED] name_bpp_refresh
[16:02:45] [PASSED] name_refresh
[16:02:45] [PASSED] name_refresh_wrong_mode
[16:02:45] [PASSED] name_refresh_invalid_mode
[16:02:45] [PASSED] rotate_multiple
[16:02:45] [PASSED] rotate_invalid_val
[16:02:45] [PASSED] rotate_truncated
[16:02:45] [PASSED] invalid_option
[16:02:45] [PASSED] invalid_tv_option
[16:02:45] [PASSED] truncated_tv_option
[16:02:45] ============ [PASSED] drm_test_cmdline_invalid =============
[16:02:45] =============== drm_test_cmdline_tv_options  ===============
[16:02:45] [PASSED] NTSC
[16:02:45] [PASSED] NTSC_443
[16:02:45] [PASSED] NTSC_J
[16:02:45] [PASSED] PAL
[16:02:45] [PASSED] PAL_M
[16:02:45] [PASSED] PAL_N
[16:02:45] [PASSED] SECAM
[16:02:45] [PASSED] MONO_525
[16:02:45] [PASSED] MONO_625
[16:02:45] =========== [PASSED] drm_test_cmdline_tv_options ===========
[16:02:45] =============== [PASSED] drm_cmdline_parser ================
[16:02:45] ========== drmm_connector_hdmi_init (20 subtests) ==========
[16:02:45] [PASSED] drm_test_connector_hdmi_init_valid
[16:02:45] [PASSED] drm_test_connector_hdmi_init_bpc_8
[16:02:45] [PASSED] drm_test_connector_hdmi_init_bpc_10
[16:02:45] [PASSED] drm_test_connector_hdmi_init_bpc_12
[16:02:45] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[16:02:45] [PASSED] drm_test_connector_hdmi_init_bpc_null
[16:02:45] [PASSED] drm_test_connector_hdmi_init_formats_empty
[16:02:45] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[16:02:45] === drm_test_connector_hdmi_init_formats_yuv420_allowed  ===
[16:02:45] [PASSED] supported_formats=0x9 yuv420_allowed=1
[16:02:45] [PASSED] supported_formats=0x9 yuv420_allowed=0
[16:02:45] [PASSED] supported_formats=0x3 yuv420_allowed=1
[16:02:45] [PASSED] supported_formats=0x3 yuv420_allowed=0
[16:02:45] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[16:02:45] [PASSED] drm_test_connector_hdmi_init_null_ddc
[16:02:45] [PASSED] drm_test_connector_hdmi_init_null_product
[16:02:45] [PASSED] drm_test_connector_hdmi_init_null_vendor
[16:02:45] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[16:02:45] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[16:02:45] [PASSED] drm_test_connector_hdmi_init_product_valid
[16:02:45] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[16:02:45] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[16:02:45] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[16:02:45] ========= drm_test_connector_hdmi_init_type_valid  =========
[16:02:45] [PASSED] HDMI-A
[16:02:45] [PASSED] HDMI-B
[16:02:45] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[16:02:45] ======== drm_test_connector_hdmi_init_type_invalid  ========
[16:02:45] [PASSED] Unknown
[16:02:45] [PASSED] VGA
[16:02:45] [PASSED] DVI-I
[16:02:45] [PASSED] DVI-D
[16:02:45] [PASSED] DVI-A
[16:02:45] [PASSED] Composite
[16:02:45] [PASSED] SVIDEO
[16:02:45] [PASSED] LVDS
[16:02:45] [PASSED] Component
[16:02:45] [PASSED] DIN
[16:02:45] [PASSED] DP
[16:02:45] [PASSED] TV
[16:02:45] [PASSED] eDP
[16:02:45] [PASSED] Virtual
[16:02:45] [PASSED] DSI
[16:02:45] [PASSED] DPI
[16:02:45] [PASSED] Writeback
[16:02:45] [PASSED] SPI
[16:02:45] [PASSED] USB
[16:02:45] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[16:02:45] ============ [PASSED] drmm_connector_hdmi_init =============
[16:02:45] ============= drmm_connector_init (3 subtests) =============
[16:02:45] [PASSED] drm_test_drmm_connector_init
[16:02:45] [PASSED] drm_test_drmm_connector_init_null_ddc
[16:02:45] ========= drm_test_drmm_connector_init_type_valid  =========
[16:02:45] [PASSED] Unknown
[16:02:45] [PASSED] VGA
[16:02:45] [PASSED] DVI-I
[16:02:45] [PASSED] DVI-D
[16:02:45] [PASSED] DVI-A
[16:02:45] [PASSED] Composite
[16:02:45] [PASSED] SVIDEO
[16:02:45] [PASSED] LVDS
[16:02:45] [PASSED] Component
[16:02:45] [PASSED] DIN
[16:02:45] [PASSED] DP
[16:02:45] [PASSED] HDMI-A
[16:02:45] [PASSED] HDMI-B
[16:02:45] [PASSED] TV
[16:02:45] [PASSED] eDP
[16:02:45] [PASSED] Virtual
[16:02:45] [PASSED] DSI
[16:02:45] [PASSED] DPI
[16:02:45] [PASSED] Writeback
[16:02:45] [PASSED] SPI
[16:02:45] [PASSED] USB
[16:02:45] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[16:02:45] =============== [PASSED] drmm_connector_init ===============
[16:02:45] ========= drm_connector_dynamic_init (6 subtests) ==========
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_init
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_init_properties
[16:02:45] ===== drm_test_drm_connector_dynamic_init_type_valid  ======
[16:02:45] [PASSED] Unknown
[16:02:45] [PASSED] VGA
[16:02:45] [PASSED] DVI-I
[16:02:45] [PASSED] DVI-D
[16:02:45] [PASSED] DVI-A
[16:02:45] [PASSED] Composite
[16:02:45] [PASSED] SVIDEO
[16:02:45] [PASSED] LVDS
[16:02:45] [PASSED] Component
[16:02:45] [PASSED] DIN
[16:02:45] [PASSED] DP
[16:02:45] [PASSED] HDMI-A
[16:02:45] [PASSED] HDMI-B
[16:02:45] [PASSED] TV
[16:02:45] [PASSED] eDP
[16:02:45] [PASSED] Virtual
[16:02:45] [PASSED] DSI
[16:02:45] [PASSED] DPI
[16:02:45] [PASSED] Writeback
[16:02:45] [PASSED] SPI
[16:02:45] [PASSED] USB
[16:02:45] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[16:02:45] ======== drm_test_drm_connector_dynamic_init_name  =========
[16:02:45] [PASSED] Unknown
[16:02:45] [PASSED] VGA
[16:02:45] [PASSED] DVI-I
[16:02:45] [PASSED] DVI-D
[16:02:45] [PASSED] DVI-A
[16:02:45] [PASSED] Composite
[16:02:45] [PASSED] SVIDEO
[16:02:45] [PASSED] LVDS
[16:02:45] [PASSED] Component
[16:02:45] [PASSED] DIN
[16:02:45] [PASSED] DP
[16:02:45] [PASSED] HDMI-A
[16:02:45] [PASSED] HDMI-B
[16:02:45] [PASSED] TV
[16:02:45] [PASSED] eDP
[16:02:45] [PASSED] Virtual
[16:02:45] [PASSED] DSI
[16:02:45] [PASSED] DPI
[16:02:45] [PASSED] Writeback
[16:02:45] [PASSED] SPI
[16:02:45] [PASSED] USB
[16:02:45] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[16:02:45] =========== [PASSED] drm_connector_dynamic_init ============
[16:02:45] ==== drm_connector_dynamic_register_early (4 subtests) =====
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[16:02:45] ====== [PASSED] drm_connector_dynamic_register_early =======
[16:02:45] ======= drm_connector_dynamic_register (7 subtests) ========
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[16:02:45] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[16:02:45] ========= [PASSED] drm_connector_dynamic_register ==========
[16:02:45] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[16:02:45] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[16:02:45] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[16:02:45] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[16:02:45] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[16:02:45] ========== drm_test_get_tv_mode_from_name_valid  ===========
[16:02:45] [PASSED] NTSC
[16:02:45] [PASSED] NTSC-443
[16:02:45] [PASSED] NTSC-J
[16:02:45] [PASSED] PAL
[16:02:45] [PASSED] PAL-M
[16:02:45] [PASSED] PAL-N
[16:02:45] [PASSED] SECAM
[16:02:45] [PASSED] Mono
[16:02:45] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[16:02:45] [PASSED] drm_test_get_tv_mode_from_name_truncated
[16:02:45] ============ [PASSED] drm_get_tv_mode_from_name ============
[16:02:45] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[16:02:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[16:02:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[16:02:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[16:02:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[16:02:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[16:02:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[16:02:45] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid  =
[16:02:45] [PASSED] VIC 96
[16:02:45] [PASSED] VIC 97
[16:02:45] [PASSED] VIC 101
[16:02:45] [PASSED] VIC 102
[16:02:45] [PASSED] VIC 106
[16:02:45] [PASSED] VIC 107
[16:02:45] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[16:02:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[16:02:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[16:02:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[16:02:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[16:02:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[16:02:45] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[16:02:45] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[16:02:45] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name  ====
[16:02:45] [PASSED] Automatic
[16:02:45] [PASSED] Full
[16:02:45] [PASSED] Limited 16:235
[16:02:45] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[16:02:45] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[16:02:45] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[16:02:45] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[16:02:45] === drm_test_drm_hdmi_connector_get_output_format_name  ====
[16:02:45] [PASSED] RGB
[16:02:45] [PASSED] YUV 4:2:0
[16:02:45] [PASSED] YUV 4:2:2
[16:02:45] [PASSED] YUV 4:4:4
[16:02:45] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[16:02:45] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[16:02:45] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[16:02:45] ============= drm_damage_helper (21 subtests) ==============
[16:02:45] [PASSED] drm_test_damage_iter_no_damage
[16:02:45] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[16:02:45] [PASSED] drm_test_damage_iter_no_damage_src_moved
[16:02:45] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[16:02:45] [PASSED] drm_test_damage_iter_no_damage_not_visible
[16:02:45] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[16:02:45] [PASSED] drm_test_damage_iter_no_damage_no_fb
[16:02:45] [PASSED] drm_test_damage_iter_simple_damage
[16:02:45] [PASSED] drm_test_damage_iter_single_damage
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_outside_src
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_src_moved
[16:02:45] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[16:02:45] [PASSED] drm_test_damage_iter_damage
[16:02:45] [PASSED] drm_test_damage_iter_damage_one_intersect
[16:02:45] [PASSED] drm_test_damage_iter_damage_one_outside
[16:02:45] [PASSED] drm_test_damage_iter_damage_src_moved
[16:02:45] [PASSED] drm_test_damage_iter_damage_not_visible
[16:02:45] ================ [PASSED] drm_damage_helper ================
[16:02:45] ============== drm_dp_mst_helper (3 subtests) ==============
[16:02:45] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[16:02:45] [PASSED] Clock 154000 BPP 30 DSC disabled
[16:02:45] [PASSED] Clock 234000 BPP 30 DSC disabled
[16:02:45] [PASSED] Clock 297000 BPP 24 DSC disabled
[16:02:45] [PASSED] Clock 332880 BPP 24 DSC enabled
[16:02:45] [PASSED] Clock 324540 BPP 24 DSC enabled
[16:02:45] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[16:02:45] ============== drm_test_dp_mst_calc_pbn_div  ===============
[16:02:45] [PASSED] Link rate 2000000 lane count 4
[16:02:45] [PASSED] Link rate 2000000 lane count 2
[16:02:45] [PASSED] Link rate 2000000 lane count 1
[16:02:45] [PASSED] Link rate 1350000 lane count 4
[16:02:45] [PASSED] Link rate 1350000 lane count 2
[16:02:45] [PASSED] Link rate 1350000 lane count 1
[16:02:45] [PASSED] Link rate 1000000 lane count 4
[16:02:45] [PASSED] Link rate 1000000 lane count 2
[16:02:45] [PASSED] Link rate 1000000 lane count 1
[16:02:45] [PASSED] Link rate 810000 lane count 4
[16:02:45] [PASSED] Link rate 810000 lane count 2
[16:02:45] [PASSED] Link rate 810000 lane count 1
[16:02:45] [PASSED] Link rate 540000 lane count 4
[16:02:45] [PASSED] Link rate 540000 lane count 2
[16:02:45] [PASSED] Link rate 540000 lane count 1
[16:02:45] [PASSED] Link rate 270000 lane count 4
[16:02:45] [PASSED] Link rate 270000 lane count 2
[16:02:45] [PASSED] Link rate 270000 lane count 1
[16:02:45] [PASSED] Link rate 162000 lane count 4
[16:02:45] [PASSED] Link rate 162000 lane count 2
[16:02:45] [PASSED] Link rate 162000 lane count 1
[16:02:45] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[16:02:45] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[16:02:45] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[16:02:45] [PASSED] DP_POWER_UP_PHY with port number
[16:02:45] [PASSED] DP_POWER_DOWN_PHY with port number
[16:02:45] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[16:02:45] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[16:02:45] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[16:02:45] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[16:02:45] [PASSED] DP_QUERY_PAYLOAD with port number
[16:02:45] [PASSED] DP_QUERY_PAYLOAD with VCPI
[16:02:45] [PASSED] DP_REMOTE_DPCD_READ with port number
[16:02:45] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[16:02:45] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[16:02:45] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[16:02:45] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[16:02:45] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[16:02:45] [PASSED] DP_REMOTE_I2C_READ with port number
[16:02:45] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[16:02:45] [PASSED] DP_REMOTE_I2C_READ with transactions array
[16:02:45] [PASSED] DP_REMOTE_I2C_WRITE with port number
[16:02:45] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[16:02:45] [PASSED] DP_REMOTE_I2C_WRITE with data array
[16:02:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[16:02:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[16:02:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[16:02:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[16:02:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[16:02:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[16:02:45] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[16:02:45] ================ [PASSED] drm_dp_mst_helper ================
[16:02:45] ================== drm_exec (7 subtests) ===================
[16:02:45] [PASSED] sanitycheck
[16:02:45] [PASSED] test_lock
[16:02:45] [PASSED] test_lock_unlock
[16:02:45] [PASSED] test_duplicates
[16:02:45] [PASSED] test_prepare
[16:02:45] [PASSED] test_prepare_array
[16:02:45] [PASSED] test_multiple_loops
[16:02:45] ==================== [PASSED] drm_exec =====================
[16:02:45] =========== drm_format_helper_test (17 subtests) ===========
[16:02:45] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[16:02:45] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[16:02:45] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[16:02:45] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[16:02:45] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[16:02:45] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[16:02:45] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[16:02:45] ============= drm_test_fb_xrgb8888_to_bgr888  ==============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[16:02:45] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[16:02:45] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[16:02:45] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[16:02:45] ============== drm_test_fb_xrgb8888_to_mono  ===============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[16:02:45] ==================== drm_test_fb_swab  =====================
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ================ [PASSED] drm_test_fb_swab =================
[16:02:45] ============ drm_test_fb_xrgb8888_to_xbgr8888  =============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[16:02:45] ============ drm_test_fb_xrgb8888_to_abgr8888  =============
[16:02:45] [PASSED] single_pixel_source_buffer
[16:02:45] [PASSED] single_pixel_clip_rectangle
[16:02:45] [PASSED] well_known_colors
[16:02:45] [PASSED] destination_pitch
[16:02:45] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[16:02:45] ================= drm_test_fb_clip_offset  =================
[16:02:45] [PASSED] pass through
[16:02:45] [PASSED] horizontal offset
[16:02:45] [PASSED] vertical offset
[16:02:45] [PASSED] horizontal and vertical offset
[16:02:45] [PASSED] horizontal offset (custom pitch)
[16:02:45] [PASSED] vertical offset (custom pitch)
[16:02:45] [PASSED] horizontal and vertical offset (custom pitch)
[16:02:45] ============= [PASSED] drm_test_fb_clip_offset =============
[16:02:45] =================== drm_test_fb_memcpy  ====================
[16:02:45] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[16:02:45] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[16:02:45] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[16:02:45] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[16:02:45] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[16:02:45] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[16:02:45] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[16:02:45] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[16:02:45] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[16:02:45] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[16:02:45] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[16:02:45] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[16:02:45] =============== [PASSED] drm_test_fb_memcpy ================
[16:02:45] ============= [PASSED] drm_format_helper_test ==============
[16:02:45] ================= drm_format (18 subtests) =================
[16:02:45] [PASSED] drm_test_format_block_width_invalid
[16:02:45] [PASSED] drm_test_format_block_width_one_plane
[16:02:45] [PASSED] drm_test_format_block_width_two_plane
[16:02:45] [PASSED] drm_test_format_block_width_three_plane
[16:02:45] [PASSED] drm_test_format_block_width_tiled
[16:02:45] [PASSED] drm_test_format_block_height_invalid
[16:02:45] [PASSED] drm_test_format_block_height_one_plane
[16:02:45] [PASSED] drm_test_format_block_height_two_plane
[16:02:45] [PASSED] drm_test_format_block_height_three_plane
[16:02:45] [PASSED] drm_test_format_block_height_tiled
[16:02:45] [PASSED] drm_test_format_min_pitch_invalid
[16:02:45] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[16:02:45] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[16:02:45] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[16:02:45] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[16:02:45] [PASSED] drm_test_format_min_pitch_two_plane
[16:02:45] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[16:02:45] [PASSED] drm_test_format_min_pitch_tiled
[16:02:45] =================== [PASSED] drm_format ====================
[16:02:45] ============== drm_framebuffer (10 subtests) ===============
[16:02:45] ========== drm_test_framebuffer_check_src_coords  ==========
[16:02:45] [PASSED] Success: source fits into fb
[16:02:45] [PASSED] Fail: overflowing fb with x-axis coordinate
[16:02:45] [PASSED] Fail: overflowing fb with y-axis coordinate
[16:02:45] [PASSED] Fail: overflowing fb with source width
[16:02:45] [PASSED] Fail: overflowing fb with source height
[16:02:45] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[16:02:45] [PASSED] drm_test_framebuffer_cleanup
[16:02:45] =============== drm_test_framebuffer_create  ===============
[16:02:45] [PASSED] ABGR8888 normal sizes
[16:02:45] [PASSED] ABGR8888 max sizes
[16:02:45] [PASSED] ABGR8888 pitch greater than min required
[16:02:45] [PASSED] ABGR8888 pitch less than min required
[16:02:45] [PASSED] ABGR8888 Invalid width
[16:02:45] [PASSED] ABGR8888 Invalid buffer handle
[16:02:45] [PASSED] No pixel format
[16:02:45] [PASSED] ABGR8888 Width 0
[16:02:45] [PASSED] ABGR8888 Height 0
[16:02:45] [PASSED] ABGR8888 Out of bound height * pitch combination
[16:02:45] [PASSED] ABGR8888 Large buffer offset
[16:02:45] [PASSED] ABGR8888 Buffer offset for inexistent plane
[16:02:45] [PASSED] ABGR8888 Invalid flag
[16:02:45] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[16:02:45] [PASSED] ABGR8888 Valid buffer modifier
[16:02:45] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[16:02:45] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] NV12 Normal sizes
[16:02:45] [PASSED] NV12 Max sizes
[16:02:45] [PASSED] NV12 Invalid pitch
[16:02:45] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[16:02:45] [PASSED] NV12 different  modifier per-plane
[16:02:45] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[16:02:45] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] NV12 Modifier for inexistent plane
[16:02:45] [PASSED] NV12 Handle for inexistent plane
[16:02:45] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[16:02:45] [PASSED] YVU420 Normal sizes
[16:02:45] [PASSED] YVU420 Max sizes
[16:02:45] [PASSED] YVU420 Invalid pitch
[16:02:45] [PASSED] YVU420 Different pitches
[16:02:45] [PASSED] YVU420 Different buffer offsets/pitches
[16:02:45] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[16:02:45] [PASSED] YVU420 Valid modifier
[16:02:45] [PASSED] YVU420 Different modifiers per plane
[16:02:45] [PASSED] YVU420 Modifier for inexistent plane
[16:02:45] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[16:02:45] [PASSED] X0L2 Normal sizes
[16:02:45] [PASSED] X0L2 Max sizes
[16:02:45] [PASSED] X0L2 Invalid pitch
[16:02:45] [PASSED] X0L2 Pitch greater than minimum required
[16:02:45] [PASSED] X0L2 Handle for inexistent plane
[16:02:45] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[16:02:45] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[16:02:45] [PASSED] X0L2 Valid modifier
[16:02:45] [PASSED] X0L2 Modifier for inexistent plane
[16:02:45] =========== [PASSED] drm_test_framebuffer_create ===========
[16:02:45] [PASSED] drm_test_framebuffer_free
[16:02:45] [PASSED] drm_test_framebuffer_init
[16:02:45] [PASSED] drm_test_framebuffer_init_bad_format
[16:02:45] [PASSED] drm_test_framebuffer_init_dev_mismatch
[16:02:45] [PASSED] drm_test_framebuffer_lookup
[16:02:45] [PASSED] drm_test_framebuffer_lookup_inexistent
[16:02:45] [PASSED] drm_test_framebuffer_modifiers_not_supported
[16:02:45] ================= [PASSED] drm_framebuffer =================
[16:02:45] ================ drm_gem_shmem (8 subtests) ================
[16:02:45] [PASSED] drm_gem_shmem_test_obj_create
[16:02:45] [PASSED] drm_gem_shmem_test_obj_create_private
[16:02:45] [PASSED] drm_gem_shmem_test_pin_pages
[16:02:45] [PASSED] drm_gem_shmem_test_vmap
[16:02:45] [PASSED] drm_gem_shmem_test_get_pages_sgt
[16:02:45] [PASSED] drm_gem_shmem_test_get_sg_table
[16:02:45] [PASSED] drm_gem_shmem_test_madvise
[16:02:45] [PASSED] drm_gem_shmem_test_purge
[16:02:45] ================== [PASSED] drm_gem_shmem ==================
[16:02:45] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[16:02:45] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420  =======
[16:02:45] [PASSED] Automatic
[16:02:45] [PASSED] Full
[16:02:45] [PASSED] Limited 16:235
[16:02:45] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[16:02:45] [PASSED] drm_test_check_disable_connector
[16:02:45] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[16:02:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[16:02:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[16:02:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[16:02:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[16:02:45] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[16:02:45] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[16:02:45] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[16:02:45] [PASSED] drm_test_check_output_bpc_dvi
[16:02:45] [PASSED] drm_test_check_output_bpc_format_vic_1
[16:02:45] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[16:02:45] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[16:02:45] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[16:02:45] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[16:02:45] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[16:02:45] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[16:02:45] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[16:02:45] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[16:02:45] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[16:02:45] [PASSED] drm_test_check_broadcast_rgb_value
[16:02:45] [PASSED] drm_test_check_bpc_8_value
[16:02:45] [PASSED] drm_test_check_bpc_10_value
[16:02:45] [PASSED] drm_test_check_bpc_12_value
[16:02:45] [PASSED] drm_test_check_format_value
[16:02:45] [PASSED] drm_test_check_tmds_char_value
[16:02:45] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[16:02:45] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[16:02:45] [PASSED] drm_test_check_mode_valid
[16:02:45] [PASSED] drm_test_check_mode_valid_reject
[16:02:45] [PASSED] drm_test_check_mode_valid_reject_rate
[16:02:45] [PASSED] drm_test_check_mode_valid_reject_max_clock
[16:02:45] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[16:02:45] ================= drm_managed (2 subtests) =================
[16:02:45] [PASSED] drm_test_managed_release_action
[16:02:45] [PASSED] drm_test_managed_run_action
[16:02:45] =================== [PASSED] drm_managed ===================
[16:02:45] =================== drm_mm (6 subtests) ====================
[16:02:45] [PASSED] drm_test_mm_init
[16:02:45] [PASSED] drm_test_mm_debug
[16:02:45] [PASSED] drm_test_mm_align32
[16:02:45] [PASSED] drm_test_mm_align64
[16:02:45] [PASSED] drm_test_mm_lowest
[16:02:45] [PASSED] drm_test_mm_highest
[16:02:45] ===================== [PASSED] drm_mm ======================
[16:02:45] ============= drm_modes_analog_tv (5 subtests) =============
[16:02:45] [PASSED] drm_test_modes_analog_tv_mono_576i
[16:02:45] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[16:02:45] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[16:02:45] [PASSED] drm_test_modes_analog_tv_pal_576i
[16:02:45] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[16:02:45] =============== [PASSED] drm_modes_analog_tv ===============
[16:02:45] ============== drm_plane_helper (2 subtests) ===============
[16:02:45] =============== drm_test_check_plane_state  ================
[16:02:45] [PASSED] clipping_simple
[16:02:45] [PASSED] clipping_rotate_reflect
[16:02:45] [PASSED] positioning_simple
[16:02:45] [PASSED] upscaling
[16:02:45] [PASSED] downscaling
[16:02:45] [PASSED] rounding1
[16:02:45] [PASSED] rounding2
[16:02:45] [PASSED] rounding3
[16:02:45] [PASSED] rounding4
[16:02:45] =========== [PASSED] drm_test_check_plane_state ============
[16:02:45] =========== drm_test_check_invalid_plane_state  ============
[16:02:45] [PASSED] positioning_invalid
[16:02:45] [PASSED] upscaling_invalid
[16:02:45] [PASSED] downscaling_invalid
[16:02:45] ======= [PASSED] drm_test_check_invalid_plane_state ========
[16:02:45] ================ [PASSED] drm_plane_helper =================
[16:02:45] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[16:02:45] ====== drm_test_connector_helper_tv_get_modes_check  =======
[16:02:45] [PASSED] None
[16:02:45] [PASSED] PAL
[16:02:45] [PASSED] NTSC
[16:02:45] [PASSED] Both, NTSC Default
[16:02:45] [PASSED] Both, PAL Default
[16:02:45] [PASSED] Both, NTSC Default, with PAL on command-line
[16:02:45] [PASSED] Both, PAL Default, with NTSC on command-line
[16:02:45] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[16:02:45] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[16:02:45] ================== drm_rect (9 subtests) ===================
[16:02:45] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[16:02:45] [PASSED] drm_test_rect_clip_scaled_not_clipped
[16:02:45] [PASSED] drm_test_rect_clip_scaled_clipped
[16:02:45] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[16:02:45] ================= drm_test_rect_intersect  =================
[16:02:45] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[16:02:45] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[16:02:45] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[16:02:45] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[16:02:45] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[16:02:45] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[16:02:45] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[16:02:45] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[16:02:45] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[16:02:45] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[16:02:45] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[16:02:45] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[16:02:45] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[16:02:45] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[16:02:45] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[16:02:45] ============= [PASSED] drm_test_rect_intersect =============
[16:02:45] ================ drm_test_rect_calc_hscale  ================
[16:02:45] [PASSED] normal use
[16:02:45] [PASSED] out of max range
[16:02:45] [PASSED] out of min range
[16:02:45] [PASSED] zero dst
[16:02:45] [PASSED] negative src
[16:02:45] [PASSED] negative dst
[16:02:45] ============ [PASSED] drm_test_rect_calc_hscale ============
[16:02:45] ================ drm_test_rect_calc_vscale  ================
[16:02:45] [PASSED] normal use
[16:02:45] [PASSED] out of max range
[16:02:45] [PASSED] out of min range
[16:02:45] [PASSED] zero dst
[16:02:45] [PASSED] negative src
[16:02:45] [PASSED] negative dst
[16:02:45] ============ [PASSED] drm_test_rect_calc_vscale ============
[16:02:45] ================== drm_test_rect_rotate  ===================
[16:02:45] [PASSED] reflect-x
[16:02:45] [PASSED] reflect-y
[16:02:45] [PASSED] rotate-0
[16:02:45] [PASSED] rotate-90
[16:02:45] [PASSED] rotate-180
[16:02:45] [PASSED] rotate-270
stty: 'standard input': Inappropriate ioctl for device
[16:02:45] ============== [PASSED] drm_test_rect_rotate ===============
[16:02:45] ================ drm_test_rect_rotate_inv  =================
[16:02:45] [PASSED] reflect-x
[16:02:45] [PASSED] reflect-y
[16:02:45] [PASSED] rotate-0
[16:02:45] [PASSED] rotate-90
[16:02:45] [PASSED] rotate-180
[16:02:45] [PASSED] rotate-270
[16:02:45] ============ [PASSED] drm_test_rect_rotate_inv =============
[16:02:45] ==================== [PASSED] drm_rect =====================
[16:02:45] ============ drm_sysfb_modeset_test (1 subtest) ============
[16:02:45] ============ drm_test_sysfb_build_fourcc_list  =============
[16:02:45] [PASSED] no native formats
[16:02:45] [PASSED] XRGB8888 as native format
[16:02:45] [PASSED] remove duplicates
[16:02:45] [PASSED] convert alpha formats
[16:02:45] [PASSED] random formats
[16:02:45] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[16:02:45] ============= [PASSED] drm_sysfb_modeset_test ==============
[16:02:45] ============================================================
[16:02:45] Testing complete. Ran 616 tests: passed: 616
[16:02:45] Elapsed time: 24.895s total, 1.774s configuring, 22.949s building, 0.136s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[16:02:45] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:02:47] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:02:54] Starting KUnit Kernel (1/1)...
[16:02:54] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:02:55] ================= ttm_device (5 subtests) ==================
[16:02:55] [PASSED] ttm_device_init_basic
[16:02:55] [PASSED] ttm_device_init_multiple
[16:02:55] [PASSED] ttm_device_fini_basic
[16:02:55] [PASSED] ttm_device_init_no_vma_man
[16:02:55] ================== ttm_device_init_pools  ==================
[16:02:55] [PASSED] No DMA allocations, no DMA32 required
[16:02:55] [PASSED] DMA allocations, DMA32 required
[16:02:55] [PASSED] No DMA allocations, DMA32 required
[16:02:55] [PASSED] DMA allocations, no DMA32 required
[16:02:55] ============== [PASSED] ttm_device_init_pools ==============
[16:02:55] =================== [PASSED] ttm_device ====================
[16:02:55] ================== ttm_pool (8 subtests) ===================
[16:02:55] ================== ttm_pool_alloc_basic  ===================
[16:02:55] [PASSED] One page
[16:02:55] [PASSED] More than one page
[16:02:55] [PASSED] Above the allocation limit
[16:02:55] [PASSED] One page, with coherent DMA mappings enabled
[16:02:55] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[16:02:55] ============== [PASSED] ttm_pool_alloc_basic ===============
[16:02:55] ============== ttm_pool_alloc_basic_dma_addr  ==============
[16:02:55] [PASSED] One page
[16:02:55] [PASSED] More than one page
[16:02:55] [PASSED] Above the allocation limit
[16:02:55] [PASSED] One page, with coherent DMA mappings enabled
[16:02:55] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[16:02:55] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[16:02:55] [PASSED] ttm_pool_alloc_order_caching_match
[16:02:55] [PASSED] ttm_pool_alloc_caching_mismatch
[16:02:55] [PASSED] ttm_pool_alloc_order_mismatch
[16:02:55] [PASSED] ttm_pool_free_dma_alloc
[16:02:55] [PASSED] ttm_pool_free_no_dma_alloc
[16:02:55] [PASSED] ttm_pool_fini_basic
[16:02:55] ==================== [PASSED] ttm_pool =====================
[16:02:55] ================ ttm_resource (8 subtests) =================
[16:02:55] ================= ttm_resource_init_basic  =================
[16:02:55] [PASSED] Init resource in TTM_PL_SYSTEM
[16:02:55] [PASSED] Init resource in TTM_PL_VRAM
[16:02:55] [PASSED] Init resource in a private placement
[16:02:55] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[16:02:55] ============= [PASSED] ttm_resource_init_basic =============
[16:02:55] [PASSED] ttm_resource_init_pinned
[16:02:55] [PASSED] ttm_resource_fini_basic
[16:02:55] [PASSED] ttm_resource_manager_init_basic
[16:02:55] [PASSED] ttm_resource_manager_usage_basic
[16:02:55] [PASSED] ttm_resource_manager_set_used_basic
[16:02:55] [PASSED] ttm_sys_man_alloc_basic
[16:02:55] [PASSED] ttm_sys_man_free_basic
[16:02:55] ================== [PASSED] ttm_resource ===================
[16:02:55] =================== ttm_tt (15 subtests) ===================
[16:02:55] ==================== ttm_tt_init_basic  ====================
[16:02:55] [PASSED] Page-aligned size
[16:02:55] [PASSED] Extra pages requested
[16:02:55] ================ [PASSED] ttm_tt_init_basic ================
[16:02:55] [PASSED] ttm_tt_init_misaligned
[16:02:55] [PASSED] ttm_tt_fini_basic
[16:02:55] [PASSED] ttm_tt_fini_sg
[16:02:55] [PASSED] ttm_tt_fini_shmem
[16:02:55] [PASSED] ttm_tt_create_basic
[16:02:55] [PASSED] ttm_tt_create_invalid_bo_type
[16:02:55] [PASSED] ttm_tt_create_ttm_exists
[16:02:55] [PASSED] ttm_tt_create_failed
[16:02:55] [PASSED] ttm_tt_destroy_basic
[16:02:55] [PASSED] ttm_tt_populate_null_ttm
[16:02:55] [PASSED] ttm_tt_populate_populated_ttm
[16:02:55] [PASSED] ttm_tt_unpopulate_basic
[16:02:55] [PASSED] ttm_tt_unpopulate_empty_ttm
[16:02:55] [PASSED] ttm_tt_swapin_basic
[16:02:55] ===================== [PASSED] ttm_tt ======================
[16:02:55] =================== ttm_bo (14 subtests) ===================
[16:02:55] =========== ttm_bo_reserve_optimistic_no_ticket  ===========
[16:02:55] [PASSED] Cannot be interrupted and sleeps
[16:02:55] [PASSED] Cannot be interrupted, locks straight away
[16:02:55] [PASSED] Can be interrupted, sleeps
[16:02:55] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[16:02:55] [PASSED] ttm_bo_reserve_locked_no_sleep
[16:02:55] [PASSED] ttm_bo_reserve_no_wait_ticket
[16:02:55] [PASSED] ttm_bo_reserve_double_resv
[16:02:55] [PASSED] ttm_bo_reserve_interrupted
[16:02:55] [PASSED] ttm_bo_reserve_deadlock
[16:02:55] [PASSED] ttm_bo_unreserve_basic
[16:02:55] [PASSED] ttm_bo_unreserve_pinned
[16:02:55] [PASSED] ttm_bo_unreserve_bulk
[16:02:55] [PASSED] ttm_bo_put_basic
[16:02:55] [PASSED] ttm_bo_put_shared_resv
[16:02:55] [PASSED] ttm_bo_pin_basic
[16:02:55] [PASSED] ttm_bo_pin_unpin_resource
[16:02:55] [PASSED] ttm_bo_multiple_pin_one_unpin
[16:02:55] ===================== [PASSED] ttm_bo ======================
[16:02:55] ============== ttm_bo_validate (21 subtests) ===============
[16:02:55] ============== ttm_bo_init_reserved_sys_man  ===============
[16:02:55] [PASSED] Buffer object for userspace
[16:02:55] [PASSED] Kernel buffer object
[16:02:55] [PASSED] Shared buffer object
[16:02:55] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[16:02:55] ============== ttm_bo_init_reserved_mock_man  ==============
[16:02:55] [PASSED] Buffer object for userspace
[16:02:55] [PASSED] Kernel buffer object
[16:02:55] [PASSED] Shared buffer object
[16:02:55] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[16:02:55] [PASSED] ttm_bo_init_reserved_resv
[16:02:55] ================== ttm_bo_validate_basic  ==================
[16:02:55] [PASSED] Buffer object for userspace
[16:02:55] [PASSED] Kernel buffer object
[16:02:55] [PASSED] Shared buffer object
[16:02:55] ============== [PASSED] ttm_bo_validate_basic ==============
[16:02:55] [PASSED] ttm_bo_validate_invalid_placement
[16:02:55] ============= ttm_bo_validate_same_placement  ==============
[16:02:55] [PASSED] System manager
[16:02:55] [PASSED] VRAM manager
[16:02:55] ========= [PASSED] ttm_bo_validate_same_placement ==========
[16:02:55] [PASSED] ttm_bo_validate_failed_alloc
[16:02:55] [PASSED] ttm_bo_validate_pinned
[16:02:55] [PASSED] ttm_bo_validate_busy_placement
[16:02:55] ================ ttm_bo_validate_multihop  =================
[16:02:55] [PASSED] Buffer object for userspace
[16:02:55] [PASSED] Kernel buffer object
[16:02:55] [PASSED] Shared buffer object
[16:02:55] ============ [PASSED] ttm_bo_validate_multihop =============
[16:02:55] ========== ttm_bo_validate_no_placement_signaled  ==========
[16:02:55] [PASSED] Buffer object in system domain, no page vector
[16:02:55] [PASSED] Buffer object in system domain with an existing page vector
[16:02:55] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[16:02:55] ======== ttm_bo_validate_no_placement_not_signaled  ========
[16:02:55] [PASSED] Buffer object for userspace
[16:02:55] [PASSED] Kernel buffer object
[16:02:55] [PASSED] Shared buffer object
[16:02:55] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[16:02:55] [PASSED] ttm_bo_validate_move_fence_signaled
[16:02:55] ========= ttm_bo_validate_move_fence_not_signaled  =========
[16:02:55] [PASSED] Waits for GPU
[16:02:55] [PASSED] Tries to lock straight away
[16:02:55] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[16:02:55] [PASSED] ttm_bo_validate_happy_evict
[16:02:55] [PASSED] ttm_bo_validate_all_pinned_evict
[16:02:55] [PASSED] ttm_bo_validate_allowed_only_evict
[16:02:55] [PASSED] ttm_bo_validate_deleted_evict
[16:02:55] [PASSED] ttm_bo_validate_busy_domain_evict
[16:02:55] [PASSED] ttm_bo_validate_evict_gutting
[16:02:55] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[16:02:55] ================= [PASSED] ttm_bo_validate =================
[16:02:55] ============================================================
[16:02:55] Testing complete. Ran 101 tests: passed: 101
[16:02:55] Elapsed time: 9.827s total, 1.721s configuring, 7.841s building, 0.225s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



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

* ✗ CI.checksparse: warning for drm/i915/dram: DRAM detection stuff
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (8 preceding siblings ...)
  2025-09-02 16:02 ` ✓ CI.KUnit: success for drm/i915/dram: DRAM detection stuff Patchwork
@ 2025-09-02 16:18 ` Patchwork
  2025-09-02 16:38 ` ✓ Xe.CI.BAT: success " Patchwork
  2025-09-02 22:06 ` ✓ Xe.CI.Full: " Patchwork
  11 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2025-09-02 16:18 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-xe

== Series Details ==

Series: drm/i915/dram: DRAM detection stuff
URL   : https://patchwork.freedesktop.org/series/153884/
State : warning

== Summary ==

+ trap cleanup EXIT
+ KERNEL=/kernel
+ MT=/root/linux/maintainer-tools
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools /root/linux/maintainer-tools
Cloning into '/root/linux/maintainer-tools'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ make -C /root/linux/maintainer-tools
make: Entering directory '/root/linux/maintainer-tools'
cc -O2 -g -Wextra -o remap-log remap-log.c
make: Leaving directory '/root/linux/maintainer-tools'
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ /root/linux/maintainer-tools/dim sparse --fast d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331
Sparse version: 0.6.4 (Ubuntu: 0.6.4-4ubuntu3)
Fast mode used, each commit won't be checked separately.
-
+drivers/gpu/drm/i915/display/intel_cdclk.c: note: in included file:
+drivers/gpu/drm/i915/display/intel_display_types.h:2021:24: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/display/intel_display_types.h:2021:24: warning: unreplaced symbol '<noident>'

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



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

* ✓ Xe.CI.BAT: success for drm/i915/dram: DRAM detection stuff
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (9 preceding siblings ...)
  2025-09-02 16:18 ` ✗ CI.checksparse: warning " Patchwork
@ 2025-09-02 16:38 ` Patchwork
  2025-09-02 22:06 ` ✓ Xe.CI.Full: " Patchwork
  11 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2025-09-02 16:38 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-xe

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

== Series Details ==

Series: drm/i915/dram: DRAM detection stuff
URL   : https://patchwork.freedesktop.org/series/153884/
State : success

== Summary ==

CI Bug Log - changes from xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331_BAT -> xe-pw-153884v1_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (11 -> 11)
------------------------------

  No changes in participating hosts

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

  Here are the changes found in xe-pw-153884v1_BAT that come from known issues:

### IGT changes ###

#### Possible fixes ####

  * igt@kms_flip@basic-plain-flip@c-edp1:
    - bat-adlp-7:         [DMESG-WARN][1] ([Intel XE#4543]) -> [PASS][2] +1 other test pass
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/bat-adlp-7/igt@kms_flip@basic-plain-flip@c-edp1.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/bat-adlp-7/igt@kms_flip@basic-plain-flip@c-edp1.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
  [Intel XE#5783]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5783


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

  * Linux: xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331 -> xe-pw-153884v1

  IGT_8519: 8519
  xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331: d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331
  xe-pw-153884v1: 153884v1

== Logs ==

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

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

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

* ✓ Xe.CI.Full: success for drm/i915/dram: DRAM detection stuff
  2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
                   ` (10 preceding siblings ...)
  2025-09-02 16:38 ` ✓ Xe.CI.BAT: success " Patchwork
@ 2025-09-02 22:06 ` Patchwork
  11 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2025-09-02 22:06 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-xe

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

== Series Details ==

Series: drm/i915/dram: DRAM detection stuff
URL   : https://patchwork.freedesktop.org/series/153884/
State : success

== Summary ==

CI Bug Log - changes from xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331_FULL -> xe-pw-153884v1_FULL
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (4 -> 4)
------------------------------

  No changes in participating hosts

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

  Here are the changes found in xe-pw-153884v1_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-adlp:         NOTRUN -> [SKIP][1] ([Intel XE#1124]) +2 other tests skip
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@x-tiled-16bpp-rotate-90:
    - shard-bmg:          NOTRUN -> [SKIP][2] ([Intel XE#2327])
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_big_fb@x-tiled-16bpp-rotate-90.html

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270:
    - shard-dg2-set2:     NOTRUN -> [SKIP][3] ([Intel XE#316])
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-466/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-0:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][4] ([Intel XE#4543]) +1 other test dmesg-fail
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
    - shard-bmg:          NOTRUN -> [SKIP][5] ([Intel XE#1124])
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html

  * igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p:
    - shard-adlp:         NOTRUN -> [SKIP][6] ([Intel XE#2191])
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html

  * igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p:
    - shard-bmg:          [PASS][7] -> [SKIP][8] ([Intel XE#2314] / [Intel XE#2894])
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p.html
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p.html

  * igt@kms_bw@linear-tiling-1-displays-1920x1080p:
    - shard-dg2-set2:     NOTRUN -> [SKIP][9] ([Intel XE#367]) +1 other test skip
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_bw@linear-tiling-1-displays-1920x1080p.html

  * igt@kms_bw@linear-tiling-2-displays-2560x1440p:
    - shard-adlp:         NOTRUN -> [SKIP][10] ([Intel XE#367])
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_bw@linear-tiling-2-displays-2560x1440p.html

  * igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc@pipe-b-dp-2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][11] ([Intel XE#787]) +118 other tests skip
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-432/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc@pipe-b-dp-2.html

  * igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs-cc:
    - shard-bmg:          NOTRUN -> [SKIP][12] ([Intel XE#2887])
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs@pipe-b-dp-2:
    - shard-bmg:          NOTRUN -> [SKIP][13] ([Intel XE#2652] / [Intel XE#787]) +3 other tests skip
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs@pipe-b-dp-2.html

  * igt@kms_ccs@crc-primary-rotation-180-y-tiled-ccs@pipe-c-hdmi-a-1:
    - shard-adlp:         NOTRUN -> [SKIP][14] ([Intel XE#787]) +11 other tests skip
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_ccs@crc-primary-rotation-180-y-tiled-ccs@pipe-c-hdmi-a-1.html

  * igt@kms_ccs@crc-primary-rotation-180-y-tiled-ccs@pipe-d-hdmi-a-1:
    - shard-adlp:         NOTRUN -> [SKIP][15] ([Intel XE#455] / [Intel XE#787]) +7 other tests skip
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_ccs@crc-primary-rotation-180-y-tiled-ccs@pipe-d-hdmi-a-1.html

  * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs@pipe-d-dp-2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][16] ([Intel XE#455] / [Intel XE#787]) +16 other tests skip
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-432/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs@pipe-d-dp-2.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
    - shard-dg2-set2:     [PASS][17] -> [INCOMPLETE][18] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4522]) +1 other test incomplete
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-463/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-464/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [INCOMPLETE][19] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4522])
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-463/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-d-dp-4.html

  * igt@kms_cdclk@mode-transition-all-outputs:
    - shard-adlp:         NOTRUN -> [SKIP][20] ([Intel XE#4418])
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_cdclk@mode-transition-all-outputs.html

  * igt@kms_cdclk@mode-transition@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [SKIP][21] ([Intel XE#4417]) +3 other tests skip
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-464/igt@kms_cdclk@mode-transition@pipe-d-dp-4.html

  * igt@kms_chamelium_frames@dp-crc-single:
    - shard-bmg:          NOTRUN -> [SKIP][22] ([Intel XE#2252])
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_chamelium_frames@dp-crc-single.html

  * igt@kms_chamelium_frames@hdmi-crc-multiple:
    - shard-adlp:         NOTRUN -> [SKIP][23] ([Intel XE#373]) +1 other test skip
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_chamelium_frames@hdmi-crc-multiple.html

  * igt@kms_chamelium_hpd@hdmi-hpd-storm:
    - shard-dg2-set2:     NOTRUN -> [SKIP][24] ([Intel XE#373])
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-463/igt@kms_chamelium_hpd@hdmi-hpd-storm.html

  * igt@kms_content_protection@legacy:
    - shard-adlp:         NOTRUN -> [SKIP][25] ([Intel XE#455]) +7 other tests skip
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_content_protection@legacy.html

  * igt@kms_content_protection@srm@pipe-a-dp-2:
    - shard-dg2-set2:     NOTRUN -> [FAIL][26] ([Intel XE#1178])
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-432/igt@kms_content_protection@srm@pipe-a-dp-2.html

  * igt@kms_content_protection@uevent@pipe-a-dp-2:
    - shard-dg2-set2:     NOTRUN -> [FAIL][27] ([Intel XE#1188])
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-432/igt@kms_content_protection@uevent@pipe-a-dp-2.html

  * igt@kms_cursor_crc@cursor-onscreen-128x42:
    - shard-bmg:          NOTRUN -> [SKIP][28] ([Intel XE#2320])
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_cursor_crc@cursor-onscreen-128x42.html

  * igt@kms_cursor_crc@cursor-sliding-32x32:
    - shard-dg2-set2:     NOTRUN -> [SKIP][29] ([Intel XE#455])
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_cursor_crc@cursor-sliding-32x32.html

  * igt@kms_cursor_crc@cursor-sliding-512x512:
    - shard-adlp:         NOTRUN -> [SKIP][30] ([Intel XE#308])
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_cursor_crc@cursor-sliding-512x512.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-varying-size:
    - shard-adlp:         NOTRUN -> [SKIP][31] ([Intel XE#309]) +2 other tests skip
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
    - shard-bmg:          [PASS][32] -> [SKIP][33] ([Intel XE#2291])
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html

  * igt@kms_flip@2x-blocking-wf_vblank:
    - shard-bmg:          [PASS][34] -> [FAIL][35] ([Intel XE#5338]) +1 other test fail
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-5/igt@kms_flip@2x-blocking-wf_vblank.html
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-1/igt@kms_flip@2x-blocking-wf_vblank.html

  * igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible:
    - shard-adlp:         NOTRUN -> [SKIP][36] ([Intel XE#310]) +2 other tests skip
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html

  * igt@kms_flip@2x-flip-vs-suspend-interruptible@cd-dp2-hdmi-a3:
    - shard-bmg:          [PASS][37] -> [INCOMPLETE][38] ([Intel XE#2049] / [Intel XE#2597]) +3 other tests incomplete
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-2/igt@kms_flip@2x-flip-vs-suspend-interruptible@cd-dp2-hdmi-a3.html
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-4/igt@kms_flip@2x-flip-vs-suspend-interruptible@cd-dp2-hdmi-a3.html

  * igt@kms_flip@2x-plain-flip-fb-recreate:
    - shard-bmg:          [PASS][39] -> [SKIP][40] ([Intel XE#2316]) +2 other tests skip
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_flip@2x-plain-flip-fb-recreate.html
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_flip@2x-plain-flip-fb-recreate.html

  * igt@kms_flip@flip-vs-blocking-wf-vblank@c-hdmi-a1:
    - shard-adlp:         [PASS][41] -> [DMESG-WARN][42] ([Intel XE#4543]) +4 other tests dmesg-warn
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-6/igt@kms_flip@flip-vs-blocking-wf-vblank@c-hdmi-a1.html
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-3/igt@kms_flip@flip-vs-blocking-wf-vblank@c-hdmi-a1.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-lnl:          [PASS][43] -> [FAIL][44] ([Intel XE#301] / [Intel XE#3149])
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1:
    - shard-lnl:          [PASS][45] -> [FAIL][46] ([Intel XE#301])
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html

  * igt@kms_flip@flip-vs-rmfb:
    - shard-adlp:         [PASS][47] -> [DMESG-WARN][48] ([Intel XE#5208])
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@kms_flip@flip-vs-rmfb.html
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-4/igt@kms_flip@flip-vs-rmfb.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-adlp:         [PASS][49] -> [DMESG-WARN][50] ([Intel XE#2953] / [Intel XE#4173]) +4 other tests dmesg-warn
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-8/igt@kms_flip@flip-vs-suspend-interruptible.html
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-6/igt@kms_flip@flip-vs-suspend-interruptible.html
    - shard-dg2-set2:     [PASS][51] -> [INCOMPLETE][52] ([Intel XE#2049] / [Intel XE#2597]) +2 other tests incomplete
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-432/igt@kms_flip@flip-vs-suspend-interruptible.html
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-433/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-dp4:
    - shard-dg2-set2:     NOTRUN -> [INCOMPLETE][53] ([Intel XE#2049] / [Intel XE#2597])
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-433/igt@kms_flip@flip-vs-suspend-interruptible@c-dp4.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][54] ([Intel XE#2311])
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-onoff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][55] ([Intel XE#651]) +4 other tests skip
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-463/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbc-shrfb-scaledprimary:
    - shard-bmg:          NOTRUN -> [SKIP][56] ([Intel XE#5390]) +2 other tests skip
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-shrfb-scaledprimary.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-tiling-linear:
    - shard-adlp:         NOTRUN -> [SKIP][57] ([Intel XE#651]) +3 other tests skip
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-linear.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-move:
    - shard-adlp:         NOTRUN -> [SKIP][58] ([Intel XE#656]) +7 other tests skip
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary:
    - shard-dg2-set2:     NOTRUN -> [SKIP][59] ([Intel XE#653]) +3 other tests skip
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-463/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-plflip-blt:
    - shard-bmg:          NOTRUN -> [SKIP][60] ([Intel XE#2313]) +5 other tests skip
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-wc:
    - shard-adlp:         NOTRUN -> [SKIP][61] ([Intel XE#653]) +2 other tests skip
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-wc.html

  * igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-6-size-64:
    - shard-dg2-set2:     NOTRUN -> [FAIL][62] ([Intel XE#616])
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-463/igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-6-size-64.html

  * igt@kms_plane_multiple@2x-tiling-x:
    - shard-bmg:          [PASS][63] -> [SKIP][64] ([Intel XE#4596])
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_plane_multiple@2x-tiling-x.html
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_plane_multiple@2x-tiling-x.html

  * igt@kms_pm_dc@dc3co-vpb-simulation:
    - shard-bmg:          NOTRUN -> [SKIP][65] ([Intel XE#2391])
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_pm_dc@dc3co-vpb-simulation.html

  * igt@kms_pm_dc@dc5-psr:
    - shard-adlp:         NOTRUN -> [SKIP][66] ([Intel XE#1129])
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_pm_dc@dc5-psr.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area:
    - shard-adlp:         NOTRUN -> [SKIP][67] ([Intel XE#1406] / [Intel XE#1489]) +1 other test skip
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf:
    - shard-dg2-set2:     NOTRUN -> [SKIP][68] ([Intel XE#1406] / [Intel XE#1489])
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_su@frontbuffer-xrgb8888:
    - shard-dg2-set2:     NOTRUN -> [SKIP][69] ([Intel XE#1122] / [Intel XE#1406])
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_psr2_su@frontbuffer-xrgb8888.html

  * igt@kms_psr@fbc-pr-no-drrs:
    - shard-adlp:         NOTRUN -> [SKIP][70] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +3 other tests skip
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_psr@fbc-pr-no-drrs.html

  * igt@kms_psr@psr-primary-page-flip:
    - shard-dg2-set2:     NOTRUN -> [SKIP][71] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +2 other tests skip
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_psr@psr-primary-page-flip.html

  * igt@kms_rotation_crc@primary-rotation-90:
    - shard-adlp:         NOTRUN -> [SKIP][72] ([Intel XE#3414])
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_rotation_crc@primary-rotation-90.html

  * igt@kms_setmode@invalid-clone-exclusive-crtc:
    - shard-bmg:          NOTRUN -> [SKIP][73] ([Intel XE#1435])
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_setmode@invalid-clone-exclusive-crtc.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-adlp:         NOTRUN -> [SKIP][74] ([Intel XE#362])
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@kms_tiled_display@basic-test-pattern.html

  * igt@kms_vrr@negative-basic:
    - shard-bmg:          [PASS][75] -> [SKIP][76] ([Intel XE#1499])
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_vrr@negative-basic.html
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_vrr@negative-basic.html

  * igt@sriov_basic@enable-vfs-autoprobe-off:
    - shard-dg2-set2:     NOTRUN -> [SKIP][77] ([Intel XE#1091] / [Intel XE#2849])
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@sriov_basic@enable-vfs-autoprobe-off.html

  * igt@xe_compute_preempt@compute-preempt-many:
    - shard-adlp:         NOTRUN -> [SKIP][78] ([Intel XE#455] / [Intel XE#5632])
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_compute_preempt@compute-preempt-many.html

  * igt@xe_eu_stall@non-blocking-read:
    - shard-dg2-set2:     NOTRUN -> [SKIP][79] ([Intel XE#5626])
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@xe_eu_stall@non-blocking-read.html

  * igt@xe_eu_stall@unprivileged-access:
    - shard-adlp:         NOTRUN -> [SKIP][80] ([Intel XE#5626])
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_eu_stall@unprivileged-access.html

  * igt@xe_eudebug_online@breakpoint-many-sessions-single-tile:
    - shard-adlp:         NOTRUN -> [SKIP][81] ([Intel XE#4837] / [Intel XE#5565]) +1 other test skip
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_eudebug_online@breakpoint-many-sessions-single-tile.html

  * igt@xe_eudebug_online@breakpoint-many-sessions-tiles:
    - shard-bmg:          NOTRUN -> [SKIP][82] ([Intel XE#4837]) +2 other tests skip
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@xe_eudebug_online@breakpoint-many-sessions-tiles.html

  * igt@xe_eudebug_online@set-breakpoint:
    - shard-dg2-set2:     NOTRUN -> [SKIP][83] ([Intel XE#4837])
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@xe_eudebug_online@set-breakpoint.html

  * igt@xe_evict@evict-beng-large-cm:
    - shard-adlp:         NOTRUN -> [SKIP][84] ([Intel XE#261] / [Intel XE#5564])
   [84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_evict@evict-beng-large-cm.html

  * igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr-invalidate-race:
    - shard-adlp:         NOTRUN -> [SKIP][85] ([Intel XE#1392] / [Intel XE#5575]) +2 other tests skip
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr-invalidate-race.html

  * igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-rebind:
    - shard-dg2-set2:     [PASS][86] -> [SKIP][87] ([Intel XE#1392]) +5 other tests skip
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-434/igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-rebind.html
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-rebind.html

  * igt@xe_exec_fault_mode@once-rebind-prefetch:
    - shard-dg2-set2:     NOTRUN -> [SKIP][88] ([Intel XE#288]) +3 other tests skip
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@xe_exec_fault_mode@once-rebind-prefetch.html

  * igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-invalidate-race-imm:
    - shard-adlp:         NOTRUN -> [SKIP][89] ([Intel XE#288] / [Intel XE#5561]) +5 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-invalidate-race-imm.html

  * igt@xe_exec_system_allocator@many-mmap-huge-nomemset:
    - shard-bmg:          NOTRUN -> [SKIP][90] ([Intel XE#4943])
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@xe_exec_system_allocator@many-mmap-huge-nomemset.html

  * igt@xe_exec_system_allocator@process-many-mmap-remap-ro-eocheck:
    - shard-bmg:          [PASS][91] -> [ABORT][92] ([Intel XE#3970])
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-4/igt@xe_exec_system_allocator@process-many-mmap-remap-ro-eocheck.html
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@xe_exec_system_allocator@process-many-mmap-remap-ro-eocheck.html

  * igt@xe_exec_system_allocator@threads-many-large-execqueues-mmap-free-race-nomemset:
    - shard-adlp:         NOTRUN -> [SKIP][93] ([Intel XE#4915]) +60 other tests skip
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_exec_system_allocator@threads-many-large-execqueues-mmap-free-race-nomemset.html

  * igt@xe_exec_system_allocator@threads-many-malloc-mlock-nomemset:
    - shard-dg2-set2:     NOTRUN -> [SKIP][94] ([Intel XE#4915]) +31 other tests skip
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@xe_exec_system_allocator@threads-many-malloc-mlock-nomemset.html

  * igt@xe_exec_threads@threads-hang-fd-rebind:
    - shard-dg2-set2:     [PASS][95] -> [DMESG-WARN][96] ([Intel XE#3876])
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-436/igt@xe_exec_threads@threads-hang-fd-rebind.html
   [96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-433/igt@xe_exec_threads@threads-hang-fd-rebind.html

  * igt@xe_module_load@force-load:
    - shard-adlp:         NOTRUN -> [SKIP][97] ([Intel XE#378] / [Intel XE#5612])
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_module_load@force-load.html

  * igt@xe_oa@non-privileged-access-vaddr:
    - shard-adlp:         NOTRUN -> [SKIP][98] ([Intel XE#3573])
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_oa@non-privileged-access-vaddr.html

  * igt@xe_pxp@pxp-stale-bo-bind-post-rpm:
    - shard-adlp:         NOTRUN -> [SKIP][99] ([Intel XE#4733] / [Intel XE#5594])
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_pxp@pxp-stale-bo-bind-post-rpm.html

  * igt@xe_query@multigpu-query-uc-fw-version-huc:
    - shard-dg2-set2:     NOTRUN -> [SKIP][100] ([Intel XE#944])
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-466/igt@xe_query@multigpu-query-uc-fw-version-huc.html

  
#### Possible fixes ####

  * igt@kms_atomic@atomic-invalid-params:
    - shard-adlp:         [DMESG-WARN][101] ([Intel XE#2953] / [Intel XE#4173]) -> [PASS][102]
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-9/igt@kms_atomic@atomic-invalid-params.html
   [102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@kms_atomic@atomic-invalid-params.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-bmg:          [INCOMPLETE][103] ([Intel XE#3862]) -> [PASS][104] +1 other test pass
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-8/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-d-dp-4:
    - shard-dg2-set2:     [INCOMPLETE][105] ([Intel XE#3862]) -> [PASS][106] +1 other test pass
   [105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-435/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-d-dp-4.html
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-466/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-d-dp-4.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-6:
    - shard-dg2-set2:     [INCOMPLETE][107] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#3124]) -> [PASS][108] +1 other test pass
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-464/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-6.html
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-6.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-bmg:          [SKIP][109] ([Intel XE#2291]) -> [PASS][110] +2 other tests pass
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_flip@2x-flip-vs-panning-vs-hang:
    - shard-bmg:          [SKIP][111] ([Intel XE#2316]) -> [PASS][112]
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-6/igt@kms_flip@2x-flip-vs-panning-vs-hang.html
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-4/igt@kms_flip@2x-flip-vs-panning-vs-hang.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-dg2-set2:     [FAIL][113] ([Intel XE#301]) -> [PASS][114] +1 other test pass
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-463/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-435/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a1:
    - shard-adlp:         [DMESG-WARN][115] ([Intel XE#4543]) -> [PASS][116] +3 other tests pass
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a1.html
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a1.html

  * igt@kms_pipe_crc_basic@suspend-read-crc:
    - shard-bmg:          [INCOMPLETE][117] -> [PASS][118]
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-6/igt@kms_pipe_crc_basic@suspend-read-crc.html
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_pipe_crc_basic@suspend-read-crc.html

  * igt@kms_vrr@cmrr@pipe-a-edp-1:
    - shard-lnl:          [FAIL][119] ([Intel XE#4459]) -> [PASS][120] +1 other test pass
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-lnl-8/igt@kms_vrr@cmrr@pipe-a-edp-1.html
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-lnl-8/igt@kms_vrr@cmrr@pipe-a-edp-1.html

  * igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr-rebind:
    - shard-dg2-set2:     [SKIP][121] ([Intel XE#1392]) -> [PASS][122] +4 other tests pass
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-432/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr-rebind.html
   [122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-433/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr-rebind.html

  
#### Warnings ####

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs:
    - shard-dg2-set2:     [INCOMPLETE][123] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4345]) -> [INCOMPLETE][124] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4345] / [Intel XE#4522])
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-432/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-463/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc:
    - shard-bmg:          [SKIP][125] ([Intel XE#2312]) -> [SKIP][126] ([Intel XE#2311]) +5 other tests skip
   [125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-8/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt:
    - shard-bmg:          [SKIP][127] ([Intel XE#2311]) -> [SKIP][128] ([Intel XE#2312]) +6 other tests skip
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt:
    - shard-adlp:         [FAIL][129] ([Intel XE#5671]) -> [DMESG-FAIL][130] ([Intel XE#4543])
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt.html
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-render:
    - shard-bmg:          [SKIP][131] ([Intel XE#5390]) -> [SKIP][132] ([Intel XE#2312]) +5 other tests skip
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-render.html
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-msflip-blt:
    - shard-bmg:          [SKIP][133] ([Intel XE#2312]) -> [SKIP][134] ([Intel XE#5390]) +1 other test skip
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-msflip-blt.html
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-render:
    - shard-bmg:          [SKIP][135] ([Intel XE#2313]) -> [SKIP][136] ([Intel XE#2312]) +4 other tests skip
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-render.html
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff:
    - shard-bmg:          [SKIP][137] ([Intel XE#2312]) -> [SKIP][138] ([Intel XE#2313]) +7 other tests skip
   [137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff.html
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-bmg:          [SKIP][139] ([Intel XE#2426]) -> [SKIP][140] ([Intel XE#2509])
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-bmg-8/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-bmg-5/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
    - shard-adlp:         [ABORT][141] ([Intel XE#5530]) -> [ABORT][142] ([Intel XE#4917] / [Intel XE#5530])
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-8/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-3/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html

  * igt@xe_module_load@load:
    - shard-adlp:         ([PASS][143], [PASS][144], [PASS][145], [PASS][146], [PASS][147], [PASS][148], [PASS][149], [PASS][150], [SKIP][151], [PASS][152], [PASS][153], [PASS][154], [DMESG-WARN][155], [PASS][156], [PASS][157], [PASS][158], [PASS][159], [PASS][160], [PASS][161], [PASS][162], [PASS][163], [PASS][164], [PASS][165], [PASS][166], [PASS][167], [PASS][168]) ([Intel XE#2953] / [Intel XE#378] / [Intel XE#4173] / [Intel XE#5612]) -> ([PASS][169], [PASS][170], [PASS][171], [PASS][172], [PASS][173], [PASS][174], [PASS][175], [PASS][176], [PASS][177], [PASS][178], [PASS][179], [PASS][180], [PASS][181], [PASS][182], [PASS][183], [PASS][184], [PASS][185], [PASS][186], [PASS][187], [PASS][188], [PASS][189], [PASS][190], [SKIP][191], [PASS][192], [PASS][193], [PASS][194]) ([Intel XE#378] / [Intel XE#5612])
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-9/igt@xe_module_load@load.html
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-9/igt@xe_module_load@load.html
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-3/igt@xe_module_load@load.html
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-4/igt@xe_module_load@load.html
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-4/igt@xe_module_load@load.html
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-6/igt@xe_module_load@load.html
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@xe_module_load@load.html
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-6/igt@xe_module_load@load.html
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@xe_module_load@load.html
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-9/igt@xe_module_load@load.html
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-2/igt@xe_module_load@load.html
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@xe_module_load@load.html
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-8/igt@xe_module_load@load.html
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-8/igt@xe_module_load@load.html
   [157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-8/igt@xe_module_load@load.html
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@xe_module_load@load.html
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-8/igt@xe_module_load@load.html
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-6/igt@xe_module_load@load.html
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-6/igt@xe_module_load@load.html
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-1/igt@xe_module_load@load.html
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-2/igt@xe_module_load@load.html
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-2/igt@xe_module_load@load.html
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-4/igt@xe_module_load@load.html
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-3/igt@xe_module_load@load.html
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-3/igt@xe_module_load@load.html
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-adlp-3/igt@xe_module_load@load.html
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-6/igt@xe_module_load@load.html
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-4/igt@xe_module_load@load.html
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-3/igt@xe_module_load@load.html
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_module_load@load.html
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@xe_module_load@load.html
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@xe_module_load@load.html
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_module_load@load.html
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-9/igt@xe_module_load@load.html
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-4/igt@xe_module_load@load.html
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-6/igt@xe_module_load@load.html
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-1/igt@xe_module_load@load.html
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-9/igt@xe_module_load@load.html
   [181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-9/igt@xe_module_load@load.html
   [182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-8/igt@xe_module_load@load.html
   [183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-4/igt@xe_module_load@load.html
   [184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-3/igt@xe_module_load@load.html
   [185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-4/igt@xe_module_load@load.html
   [186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@xe_module_load@load.html
   [187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-8/igt@xe_module_load@load.html
   [188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-8/igt@xe_module_load@load.html
   [189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-8/igt@xe_module_load@load.html
   [190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-2/igt@xe_module_load@load.html
   [191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-4/igt@xe_module_load@load.html
   [192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-3/igt@xe_module_load@load.html
   [193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-3/igt@xe_module_load@load.html
   [194]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-adlp-6/igt@xe_module_load@load.html

  * igt@xe_peer2peer@read:
    - shard-dg2-set2:     [FAIL][195] ([Intel XE#1173]) -> [SKIP][196] ([Intel XE#1061])
   [195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331/shard-dg2-434/igt@xe_peer2peer@read.html
   [196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153884v1/shard-dg2-432/igt@xe_peer2peer@read.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [Intel XE#1061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1061
  [Intel XE#1091]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1091
  [Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122
  [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
  [Intel XE#1129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1129
  [Intel XE#1173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1173
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1188]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1188
  [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
  [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
  [Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
  [Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
  [Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049
  [Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
  [Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
  [Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2314
  [Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
  [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
  [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
  [Intel XE#2391]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2391
  [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
  [Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509
  [Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597
  [Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261
  [Intel XE#2652]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2652
  [Intel XE#2705]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2705
  [Intel XE#2849]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2849
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
  [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
  [Intel XE#2894]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2894
  [Intel XE#2953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2953
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/308
  [Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
  [Intel XE#310]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/310
  [Intel XE#3113]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3113
  [Intel XE#3124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3124
  [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
  [Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
  [Intel XE#362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/362
  [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
  [Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
  [Intel XE#378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/378
  [Intel XE#3862]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3862
  [Intel XE#3876]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3876
  [Intel XE#3970]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3970
  [Intel XE#4173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4173
  [Intel XE#4212]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4212
  [Intel XE#4345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4345
  [Intel XE#4417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4417
  [Intel XE#4418]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4418
  [Intel XE#4459]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4459
  [Intel XE#4522]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4522
  [Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
  [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
  [Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596
  [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
  [Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
  [Intel XE#4915]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4915
  [Intel XE#4917]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4917
  [Intel XE#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943
  [Intel XE#5208]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5208
  [Intel XE#5338]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5338
  [Intel XE#5390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5390
  [Intel XE#5530]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5530
  [Intel XE#5561]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5561
  [Intel XE#5564]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5564
  [Intel XE#5565]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5565
  [Intel XE#5575]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5575
  [Intel XE#5594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5594
  [Intel XE#5612]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5612
  [Intel XE#5626]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5626
  [Intel XE#5632]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5632
  [Intel XE#5671]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5671
  [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616
  [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
  [Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
  [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
  [Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
  [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944


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

  * Linux: xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331 -> xe-pw-153884v1

  IGT_8519: 8519
  xe-3664-d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331: d5da0d39eb8ec29aeb92793ad8f0c5b1bdac5331
  xe-pw-153884v1: 153884v1

== Logs ==

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

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

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

* Re: [PATCH 4/8] drm/i915/dram: s/wm_lv0.../has_16gb_dimms/
  2025-09-02 13:31 ` [PATCH 4/8] drm/i915/dram: s/wm_lv0.../has_16gb_dimms/ Ville Syrjala
@ 2025-09-05  9:56   ` Jani Nikula
  0 siblings, 0 replies; 24+ messages in thread
From: Jani Nikula @ 2025-09-05  9:56 UTC (permalink / raw)
  To: Ville Syrjala, intel-gfx; +Cc: intel-xe

On Tue, 02 Sep 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> The DRAM code shouldn't know anything about watermarks. Rename
> wm_lv_0_adjust_needed to has_16gb_dimms. How this gets used is
> up to the watermark code.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/display/skl_watermark.c |  2 +-
>  drivers/gpu/drm/i915/soc/intel_dram.c        | 12 ++++++------
>  drivers/gpu/drm/i915/soc/intel_dram.h        |  2 +-
>  3 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
> index 33885d619a97..ae3ce0d65cfc 100644
> --- a/drivers/gpu/drm/i915/display/skl_watermark.c
> +++ b/drivers/gpu/drm/i915/display/skl_watermark.c
> @@ -3214,7 +3214,7 @@ adjust_wm_latency(struct intel_display *display,
>  	 * any underrun. If not able to get Dimm info assume 16GB dimm
>  	 * to avoid any underrun.
>  	 */
> -	if (!display->platform.dg2 && dram_info->wm_lv_0_adjust_needed)
> +	if (!display->platform.dg2 && dram_info->has_16gb_dimms)
>  		wm[0] += 1;
>  }
>  
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.c b/drivers/gpu/drm/i915/soc/intel_dram.c
> index b4f0793f778d..efb72e137748 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.c
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.c
> @@ -428,7 +428,7 @@ skl_dram_get_channels_info(struct drm_i915_private *i915, struct dram_info *dram
>  		return -EINVAL;
>  	}
>  
> -	dram_info->wm_lv_0_adjust_needed = ch0.is_16gb_dimm || ch1.is_16gb_dimm;
> +	dram_info->has_16gb_dimms = ch0.is_16gb_dimm || ch1.is_16gb_dimm;
>  
>  	dram_info->symmetric_memory = intel_is_dram_symmetric(&ch0, &ch1);
>  
> @@ -673,7 +673,7 @@ static int gen11_get_dram_info(struct drm_i915_private *i915, struct dram_info *
>  
>  static int gen12_get_dram_info(struct drm_i915_private *i915, struct dram_info *dram_info)
>  {
> -	dram_info->wm_lv_0_adjust_needed = false;
> +	dram_info->has_16gb_dimms = false;
>  
>  	return icl_pcode_read_mem_global_info(i915, dram_info);
>  }
> @@ -737,10 +737,10 @@ int intel_dram_detect(struct drm_i915_private *i915)
>  	i915->dram_info = dram_info;
>  
>  	/*
> -	 * Assume level 0 watermark latency adjustment is needed until proven
> +	 * Assume 16Gb DIMMs are present until proven
>  	 * otherwise, this w/a is not needed by bxt/glk.
>  	 */
> -	dram_info->wm_lv_0_adjust_needed = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
> +	dram_info->has_16gb_dimms = !IS_BROXTON(i915) && !IS_GEMINILAKE(i915);
>  
>  	if (DISPLAY_VER(display) >= 14)
>  		ret = xelpdp_get_dram_info(i915, dram_info);
> @@ -766,8 +766,8 @@ int intel_dram_detect(struct drm_i915_private *i915)
>  
>  	drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
>  
> -	drm_dbg_kms(&i915->drm, "Watermark level 0 adjustment needed: %s\n",
> -		    str_yes_no(dram_info->wm_lv_0_adjust_needed));
> +	drm_dbg_kms(&i915->drm, "16Gb DIMMs: %s\n",
> +		    str_yes_no(dram_info->has_16gb_dimms));
>  
>  	return 0;
>  }
> diff --git a/drivers/gpu/drm/i915/soc/intel_dram.h b/drivers/gpu/drm/i915/soc/intel_dram.h
> index 6212944d44aa..03a973f1c941 100644
> --- a/drivers/gpu/drm/i915/soc/intel_dram.h
> +++ b/drivers/gpu/drm/i915/soc/intel_dram.h
> @@ -31,7 +31,7 @@ struct dram_info {
>  	u8 num_qgv_points;
>  	u8 num_psf_gv_points;
>  	bool symmetric_memory;
> -	bool wm_lv_0_adjust_needed;
> +	bool has_16gb_dimms;
>  };
>  
>  void intel_dram_edram_detect(struct drm_i915_private *i915);

-- 
Jani Nikula, Intel

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

end of thread, other threads:[~2025-09-05  9:56 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-02 13:31 [PATCH 0/8] drm/i915/dram: DRAM detection stuff Ville Syrjala
2025-09-02 13:31 ` [PATCH 1/8] drm/i915/dram: Populate PNV memory type accurately Ville Syrjala
2025-09-02 13:45   ` Jani Nikula
2025-09-02 13:31 ` [PATCH 2/8] drm/i915/dram: Use intel_dram_type_str() for pnv Ville Syrjala
2025-09-02 13:46   ` Jani Nikula
2025-09-02 13:31 ` [PATCH 3/8] drm/i915/dram: Pack dram_info better Ville Syrjala
2025-09-02 13:46   ` Jani Nikula
2025-09-02 13:31 ` [PATCH 4/8] drm/i915/dram: s/wm_lv0.../has_16gb_dimms/ Ville Syrjala
2025-09-05  9:56   ` Jani Nikula
2025-09-02 13:31 ` [PATCH 5/8] drm/i915/dram: Move 16Gb DIMM detection fully to the skl/icl codepaths Ville Syrjala
2025-09-02 13:56   ` Jani Nikula
2025-09-02 14:18     ` Ville Syrjälä
2025-09-02 14:21       ` Jani Nikula
2025-09-02 13:31 ` [PATCH 6/8] drm/i915/dram: Fix some spelling aroynd the 16Gb DIMM w/a Ville Syrjala
2025-09-02 13:58   ` Jani Nikula
2025-09-02 14:03   ` Jani Nikula
2025-09-02 13:31 ` [PATCH 7/8] drm/i915/dram: Don't call skl_get_dram_info()/skl_get_dram_type() on icl Ville Syrjala
2025-09-02 14:02   ` Jani Nikula
2025-09-02 13:31 ` [PATCH 8/8] drm/i915/dram: Print memory details even if something went wrong Ville Syrjala
2025-09-02 14:03   ` Jani Nikula
2025-09-02 16:02 ` ✓ CI.KUnit: success for drm/i915/dram: DRAM detection stuff Patchwork
2025-09-02 16:18 ` ✗ CI.checksparse: warning " Patchwork
2025-09-02 16:38 ` ✓ Xe.CI.BAT: success " Patchwork
2025-09-02 22:06 ` ✓ Xe.CI.Full: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).