* [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters
@ 2025-03-11 17:04 Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display Gustavo Sousa
` (11 more replies)
0 siblings, 12 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-11 17:04 UTC (permalink / raw)
To: intel-gfx, intel-xe
Cc: Matt Roper, Ville Syrjälä, Jani Nikula, Gustavo Sousa
Bandwidth parameters for Xe3_LPD have been updated with respect to
previous display releases. Encode them into xe3lpd_sa_info and use that
new struct.
Since we are touching intel_bw.c, also take the opportunity convert it
to intel_display.
Changes in v2:
- Fix typo in patch #2.
Changes in v3:
- Squash patches #1 and #2 into a single one and modify it to convert
intel_bw.c internally to intel_display (new patch subject is
"drm/i915/display: Convert intel_bw.c internally to intel_display").
- Add a new patch #2 to convert intel_bw.c externally to intel_display.
- Link to v2: https://lore.kernel.org/r/20250217153550.43909-1-gustavo.sousa@intel.com
Changes in v4:
- Prefer intel_uncore_read() for MCHBAR registers. (Ville)
- Link to v3: https://lore.kernel.org/r/20250307-xe3lpd-bandwidth-update-v3-0-58bbe81f65bf@intel.com
Changes in v5:
- Do not include intel_de.h anymore. (Ville)
- Link to v4: https://lore.kernel.org/r/20250310-xe3lpd-bandwidth-update-v4-0-4191964b034d@intel.com
---
Gustavo Sousa (3):
drm/i915/display: Convert intel_bw.c internally to intel_display
drm/i915/display: Convert intel_bw.c externally to intel_display
drm/i915/xe3lpd: Update bandwidth parameters
drivers/gpu/drm/i915/display/intel_bw.c | 440 +++++++++++----------
drivers/gpu/drm/i915/display/intel_bw.h | 9 +-
drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +-
.../gpu/drm/i915/display/intel_display_driver.c | 2 +-
drivers/gpu/drm/i915/display/skl_watermark.c | 10 +-
drivers/gpu/drm/i915/i915_driver.c | 2 +-
drivers/gpu/drm/xe/display/xe_display.c | 2 +-
7 files changed, 245 insertions(+), 223 deletions(-)
---
base-commit: f8df428b3850ed87a1e2f3b12b6025328d8a6373
change-id: 20250228-xe3lpd-bandwidth-update-f011599c0c3e
Best regards,
--
Gustavo Sousa <gustavo.sousa@intel.com>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
@ 2025-03-11 17:04 ` Gustavo Sousa
2025-03-11 18:04 ` Jani Nikula
2025-03-14 21:17 ` Matt Roper
2025-03-11 17:04 ` [PATCH v5 2/3] drm/i915/display: Convert intel_bw.c externally " Gustavo Sousa
` (10 subsequent siblings)
11 siblings, 2 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-11 17:04 UTC (permalink / raw)
To: intel-gfx, intel-xe
Cc: Matt Roper, Ville Syrjälä, Jani Nikula, Gustavo Sousa
Update intel_bw.c internally use intel_display. Conversion of the public
interface will come as a follow-up.
v2:
- Prefer intel_uncore_read() for MCHBAR registers. (Ville)
v3:
- Remove the unnecessary inclusion of intel_de.h after changes from
v2. (Ville)
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
---
drivers/gpu/drm/i915/display/intel_bw.c | 416 +++++++++++++++++---------------
1 file changed, 217 insertions(+), 199 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
index 048be287224774110d94fe2944daa580d8dc20a6..6f805af32926d3608929655de97699747d7a5798 100644
--- a/drivers/gpu/drm/i915/display/intel_bw.c
+++ b/drivers/gpu/drm/i915/display/intel_bw.c
@@ -39,14 +39,15 @@ struct intel_qgv_info {
u8 deinterleave;
};
-static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
+static int dg1_mchbar_read_qgv_point_info(struct intel_display *display,
struct intel_qgv_point *sp,
int point)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
u32 dclk_ratio, dclk_reference;
u32 val;
- val = intel_uncore_read(&dev_priv->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
+ val = intel_uncore_read(&i915->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
dclk_ratio = REG_FIELD_GET(DG1_QCLK_RATIO_MASK, val);
if (val & DG1_QCLK_REFERENCE)
dclk_reference = 6; /* 6 * 16.666 MHz = 100 MHz */
@@ -54,18 +55,18 @@ static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
dclk_reference = 8; /* 8 * 16.666 MHz = 133 MHz */
sp->dclk = DIV_ROUND_UP((16667 * dclk_ratio * dclk_reference) + 500, 1000);
- val = intel_uncore_read(&dev_priv->uncore, SKL_MC_BIOS_DATA_0_0_0_MCHBAR_PCU);
+ val = intel_uncore_read(&i915->uncore, SKL_MC_BIOS_DATA_0_0_0_MCHBAR_PCU);
if (val & DG1_GEAR_TYPE)
sp->dclk *= 2;
if (sp->dclk == 0)
return -EINVAL;
- val = intel_uncore_read(&dev_priv->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR);
+ val = intel_uncore_read(&i915->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR);
sp->t_rp = REG_FIELD_GET(DG1_DRAM_T_RP_MASK, val);
sp->t_rdpre = REG_FIELD_GET(DG1_DRAM_T_RDPRE_MASK, val);
- val = intel_uncore_read(&dev_priv->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR_HIGH);
+ val = intel_uncore_read(&i915->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR_HIGH);
sp->t_rcd = REG_FIELD_GET(DG1_DRAM_T_RCD_MASK, val);
sp->t_ras = REG_FIELD_GET(DG1_DRAM_T_RAS_MASK, val);
@@ -74,22 +75,23 @@ static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
return 0;
}
-static int icl_pcode_read_qgv_point_info(struct drm_i915_private *dev_priv,
+static int icl_pcode_read_qgv_point_info(struct intel_display *display,
struct intel_qgv_point *sp,
int point)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
u32 val = 0, val2 = 0;
u16 dclk;
int ret;
- ret = snb_pcode_read(&dev_priv->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
+ ret = snb_pcode_read(&i915->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
ICL_PCODE_MEM_SS_READ_QGV_POINT_INFO(point),
&val, &val2);
if (ret)
return ret;
dclk = val & 0xffff;
- sp->dclk = DIV_ROUND_UP((16667 * dclk) + (DISPLAY_VER(dev_priv) >= 12 ? 500 : 0),
+ sp->dclk = DIV_ROUND_UP((16667 * dclk) + (DISPLAY_VER(display) >= 12 ? 500 : 0),
1000);
sp->t_rp = (val & 0xff0000) >> 16;
sp->t_rcd = (val & 0xff000000) >> 24;
@@ -102,14 +104,15 @@ static int icl_pcode_read_qgv_point_info(struct drm_i915_private *dev_priv,
return 0;
}
-static int adls_pcode_read_psf_gv_point_info(struct drm_i915_private *dev_priv,
- struct intel_psf_gv_point *points)
+static int adls_pcode_read_psf_gv_point_info(struct intel_display *display,
+ struct intel_psf_gv_point *points)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
u32 val = 0;
int ret;
int i;
- ret = snb_pcode_read(&dev_priv->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
+ ret = snb_pcode_read(&i915->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
ADL_PCODE_MEM_SS_READ_PSF_GV_INFO, &val, NULL);
if (ret)
return ret;
@@ -122,10 +125,10 @@ static int adls_pcode_read_psf_gv_point_info(struct drm_i915_private *dev_priv,
return 0;
}
-static u16 icl_qgv_points_mask(struct drm_i915_private *i915)
+static u16 icl_qgv_points_mask(struct intel_display *display)
{
- unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
- unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
+ unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
+ unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
u16 qgv_points = 0, psf_points = 0;
/*
@@ -142,18 +145,19 @@ static u16 icl_qgv_points_mask(struct drm_i915_private *i915)
return ICL_PCODE_REQ_QGV_PT(qgv_points) | ADLS_PCODE_REQ_PSF_PT(psf_points);
}
-static bool is_sagv_enabled(struct drm_i915_private *i915, u16 points_mask)
+static bool is_sagv_enabled(struct intel_display *display, u16 points_mask)
{
- return !is_power_of_2(~points_mask & icl_qgv_points_mask(i915) &
+ return !is_power_of_2(~points_mask & icl_qgv_points_mask(display) &
ICL_PCODE_REQ_QGV_PT_MASK);
}
int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
u32 points_mask)
{
+ struct intel_display *display = &dev_priv->display;
int ret;
- if (DISPLAY_VER(dev_priv) >= 14)
+ if (DISPLAY_VER(display) >= 14)
return 0;
/* bspec says to keep retrying for at least 1 ms */
@@ -164,27 +168,28 @@ int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
1);
if (ret < 0) {
- drm_err(&dev_priv->drm,
+ drm_err(display->drm,
"Failed to disable qgv points (0x%x) points: 0x%x\n",
ret, points_mask);
return ret;
}
- dev_priv->display.sagv.status = is_sagv_enabled(dev_priv, points_mask) ?
+ display->sagv.status = is_sagv_enabled(display, points_mask) ?
I915_SAGV_ENABLED : I915_SAGV_DISABLED;
return 0;
}
-static int mtl_read_qgv_point_info(struct drm_i915_private *dev_priv,
+static int mtl_read_qgv_point_info(struct intel_display *display,
struct intel_qgv_point *sp, int point)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
u32 val, val2;
u16 dclk;
- val = intel_uncore_read(&dev_priv->uncore,
+ val = intel_uncore_read(&i915->uncore,
MTL_MEM_SS_INFO_QGV_POINT_LOW(point));
- val2 = intel_uncore_read(&dev_priv->uncore,
+ val2 = intel_uncore_read(&i915->uncore,
MTL_MEM_SS_INFO_QGV_POINT_HIGH(point));
dclk = REG_FIELD_GET(MTL_DCLK_MASK, val);
sp->dclk = DIV_ROUND_CLOSEST(16667 * dclk, 1000);
@@ -200,29 +205,30 @@ static int mtl_read_qgv_point_info(struct drm_i915_private *dev_priv,
}
static int
-intel_read_qgv_point_info(struct drm_i915_private *dev_priv,
+intel_read_qgv_point_info(struct intel_display *display,
struct intel_qgv_point *sp,
int point)
{
- if (DISPLAY_VER(dev_priv) >= 14)
- return mtl_read_qgv_point_info(dev_priv, sp, point);
- else if (IS_DG1(dev_priv))
- return dg1_mchbar_read_qgv_point_info(dev_priv, sp, point);
+ if (DISPLAY_VER(display) >= 14)
+ return mtl_read_qgv_point_info(display, sp, point);
+ else if (display->platform.dg1)
+ return dg1_mchbar_read_qgv_point_info(display, sp, point);
else
- return icl_pcode_read_qgv_point_info(dev_priv, sp, point);
+ return icl_pcode_read_qgv_point_info(display, sp, point);
}
-static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
+static int icl_get_qgv_points(struct intel_display *display,
struct intel_qgv_info *qi,
bool is_y_tile)
{
- const struct dram_info *dram_info = &dev_priv->dram_info;
+ struct drm_i915_private *i915 = to_i915(display->drm);
+ const struct dram_info *dram_info = &i915->dram_info;
int i, ret;
qi->num_points = dram_info->num_qgv_points;
qi->num_psf_points = dram_info->num_psf_gv_points;
- if (DISPLAY_VER(dev_priv) >= 14) {
+ if (DISPLAY_VER(display) >= 14) {
switch (dram_info->type) {
case INTEL_DRAM_DDR4:
qi->t_bl = 4;
@@ -250,7 +256,7 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
MISSING_CASE(dram_info->type);
return -EINVAL;
}
- } else if (DISPLAY_VER(dev_priv) >= 12) {
+ } else if (DISPLAY_VER(display) >= 12) {
switch (dram_info->type) {
case INTEL_DRAM_DDR4:
qi->t_bl = is_y_tile ? 8 : 4;
@@ -265,7 +271,7 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
qi->deinterleave = is_y_tile ? 1 : 2;
break;
case INTEL_DRAM_LPDDR4:
- if (IS_ROCKETLAKE(dev_priv)) {
+ if (display->platform.rocketlake) {
qi->t_bl = 8;
qi->max_numchannels = 4;
qi->channel_width = 32;
@@ -284,39 +290,39 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
qi->max_numchannels = 1;
break;
}
- } else if (DISPLAY_VER(dev_priv) == 11) {
- qi->t_bl = dev_priv->dram_info.type == INTEL_DRAM_DDR4 ? 4 : 8;
+ } else if (DISPLAY_VER(display) == 11) {
+ qi->t_bl = dram_info->type == INTEL_DRAM_DDR4 ? 4 : 8;
qi->max_numchannels = 1;
}
- if (drm_WARN_ON(&dev_priv->drm,
+ if (drm_WARN_ON(display->drm,
qi->num_points > ARRAY_SIZE(qi->points)))
qi->num_points = ARRAY_SIZE(qi->points);
for (i = 0; i < qi->num_points; i++) {
struct intel_qgv_point *sp = &qi->points[i];
- ret = intel_read_qgv_point_info(dev_priv, sp, i);
+ ret = intel_read_qgv_point_info(display, sp, i);
if (ret) {
- drm_dbg_kms(&dev_priv->drm, "Could not read QGV %d info\n", i);
+ drm_dbg_kms(display->drm, "Could not read QGV %d info\n", i);
return ret;
}
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"QGV %d: DCLK=%d tRP=%d tRDPRE=%d tRAS=%d tRCD=%d tRC=%d\n",
i, sp->dclk, sp->t_rp, sp->t_rdpre, sp->t_ras,
sp->t_rcd, sp->t_rc);
}
if (qi->num_psf_points > 0) {
- ret = adls_pcode_read_psf_gv_point_info(dev_priv, qi->psf_points);
+ ret = adls_pcode_read_psf_gv_point_info(display, qi->psf_points);
if (ret) {
- drm_err(&dev_priv->drm, "Failed to read PSF point data; PSF points will not be considered in bandwidth calculations.\n");
+ drm_err(display->drm, "Failed to read PSF point data; PSF points will not be considered in bandwidth calculations.\n");
qi->num_psf_points = 0;
}
for (i = 0; i < qi->num_psf_points; i++)
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"PSF GV %d: CLK=%d \n",
i, qi->psf_points[i].clk);
}
@@ -398,20 +404,21 @@ static const struct intel_sa_info xe2_hpd_sa_info = {
/* Other values not used by simplified algorithm */
};
-static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel_sa_info *sa)
+static int icl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_qgv_info qi = {};
bool is_y_tile = true; /* assume y tile may be used */
- int num_channels = max_t(u8, 1, dev_priv->dram_info.num_channels);
+ int num_channels = max_t(u8, 1, i915->dram_info.num_channels);
int ipqdepth, ipqdepthpch = 16;
int dclk_max;
int maxdebw;
- int num_groups = ARRAY_SIZE(dev_priv->display.bw.max);
+ int num_groups = ARRAY_SIZE(display->bw.max);
int i, ret;
- ret = icl_get_qgv_points(dev_priv, &qi, is_y_tile);
+ ret = icl_get_qgv_points(display, &qi, is_y_tile);
if (ret) {
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"Failed to get memory subsystem information, ignoring bandwidth limits");
return ret;
}
@@ -422,7 +429,7 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
qi.deinterleave = DIV_ROUND_UP(num_channels, is_y_tile ? 4 : 2);
for (i = 0; i < num_groups; i++) {
- struct intel_bw_info *bi = &dev_priv->display.bw.max[i];
+ struct intel_bw_info *bi = &display->bw.max[i];
int clpchgroup;
int j;
@@ -449,7 +456,7 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
bi->deratedbw[j] = min(maxdebw,
bw * (100 - sa->derating) / 100);
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"BW%d / QGV %d: num_planes=%d deratedbw=%u\n",
i, j, bi->num_planes, bi->deratedbw[j]);
}
@@ -460,44 +467,45 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
* as it will fail and pointless anyway.
*/
if (qi.num_points == 1)
- dev_priv->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
+ display->sagv.status = I915_SAGV_NOT_CONTROLLED;
else
- dev_priv->display.sagv.status = I915_SAGV_ENABLED;
+ display->sagv.status = I915_SAGV_ENABLED;
return 0;
}
-static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel_sa_info *sa)
+static int tgl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_qgv_info qi = {};
- const struct dram_info *dram_info = &dev_priv->dram_info;
+ const struct dram_info *dram_info = &i915->dram_info;
bool is_y_tile = true; /* assume y tile may be used */
- int num_channels = max_t(u8, 1, dev_priv->dram_info.num_channels);
+ int num_channels = max_t(u8, 1, dram_info->num_channels);
int ipqdepth, ipqdepthpch = 16;
int dclk_max;
int maxdebw, peakbw;
int clperchgroup;
- int num_groups = ARRAY_SIZE(dev_priv->display.bw.max);
+ int num_groups = ARRAY_SIZE(display->bw.max);
int i, ret;
- ret = icl_get_qgv_points(dev_priv, &qi, is_y_tile);
+ ret = icl_get_qgv_points(display, &qi, is_y_tile);
if (ret) {
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"Failed to get memory subsystem information, ignoring bandwidth limits");
return ret;
}
- if (DISPLAY_VER(dev_priv) < 14 &&
+ if (DISPLAY_VER(display) < 14 &&
(dram_info->type == INTEL_DRAM_LPDDR4 || dram_info->type == INTEL_DRAM_LPDDR5))
num_channels *= 2;
qi.deinterleave = qi.deinterleave ? : DIV_ROUND_UP(num_channels, is_y_tile ? 4 : 2);
- if (num_channels < qi.max_numchannels && DISPLAY_VER(dev_priv) >= 12)
+ if (num_channels < qi.max_numchannels && DISPLAY_VER(display) >= 12)
qi.deinterleave = max(DIV_ROUND_UP(qi.deinterleave, 2), 1);
- if (DISPLAY_VER(dev_priv) >= 12 && num_channels > qi.max_numchannels)
- drm_warn(&dev_priv->drm, "Number of channels exceeds max number of channels.");
+ if (DISPLAY_VER(display) >= 12 && num_channels > qi.max_numchannels)
+ drm_warn(display->drm, "Number of channels exceeds max number of channels.");
if (qi.max_numchannels != 0)
num_channels = min_t(u8, num_channels, qi.max_numchannels);
@@ -514,7 +522,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
clperchgroup = 4 * DIV_ROUND_UP(8, num_channels) * qi.deinterleave;
for (i = 0; i < num_groups; i++) {
- struct intel_bw_info *bi = &dev_priv->display.bw.max[i];
+ struct intel_bw_info *bi = &display->bw.max[i];
struct intel_bw_info *bi_next;
int clpchgroup;
int j;
@@ -522,7 +530,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
clpchgroup = (sa->deburst * qi.deinterleave / num_channels) << i;
if (i < num_groups - 1) {
- bi_next = &dev_priv->display.bw.max[i + 1];
+ bi_next = &display->bw.max[i + 1];
if (clpchgroup < clperchgroup)
bi_next->num_planes = (ipqdepth - clpchgroup) /
@@ -554,7 +562,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
num_channels *
qi.channel_width, 8);
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"BW%d / QGV %d: num_planes=%d deratedbw=%u peakbw: %u\n",
i, j, bi->num_planes, bi->deratedbw[j],
bi->peakbw[j]);
@@ -565,7 +573,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
bi->psf_bw[j] = adl_calc_psf_bw(sp->clk);
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"BW%d / PSF GV %d: num_planes=%d bw=%u\n",
i, j, bi->num_planes, bi->psf_bw[j]);
}
@@ -577,17 +585,17 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
* as it will fail and pointless anyway.
*/
if (qi.num_points == 1)
- dev_priv->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
+ display->sagv.status = I915_SAGV_NOT_CONTROLLED;
else
- dev_priv->display.sagv.status = I915_SAGV_ENABLED;
+ display->sagv.status = I915_SAGV_ENABLED;
return 0;
}
-static void dg2_get_bw_info(struct drm_i915_private *i915)
+static void dg2_get_bw_info(struct intel_display *display)
{
- unsigned int deratedbw = IS_DG2_G11(i915) ? 38000 : 50000;
- int num_groups = ARRAY_SIZE(i915->display.bw.max);
+ unsigned int deratedbw = display->platform.dg2_g11 ? 38000 : 50000;
+ int num_groups = ARRAY_SIZE(display->bw.max);
int i;
/*
@@ -598,7 +606,7 @@ static void dg2_get_bw_info(struct drm_i915_private *i915)
* whereas DG2-G11 platforms have 38 GB/s.
*/
for (i = 0; i < num_groups; i++) {
- struct intel_bw_info *bi = &i915->display.bw.max[i];
+ struct intel_bw_info *bi = &display->bw.max[i];
bi->num_planes = 1;
/* Need only one dummy QGV point per group */
@@ -606,20 +614,21 @@ static void dg2_get_bw_info(struct drm_i915_private *i915)
bi->deratedbw[0] = deratedbw;
}
- i915->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
+ display->sagv.status = I915_SAGV_NOT_CONTROLLED;
}
-static int xe2_hpd_get_bw_info(struct drm_i915_private *i915,
+static int xe2_hpd_get_bw_info(struct intel_display *display,
const struct intel_sa_info *sa)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_qgv_info qi = {};
int num_channels = i915->dram_info.num_channels;
int peakbw, maxdebw;
int ret, i;
- ret = icl_get_qgv_points(i915, &qi, true);
+ ret = icl_get_qgv_points(display, &qi, true);
if (ret) {
- drm_dbg_kms(&i915->drm,
+ drm_dbg_kms(display->drm,
"Failed to get memory subsystem information, ignoring bandwidth limits");
return ret;
}
@@ -631,33 +640,33 @@ static int xe2_hpd_get_bw_info(struct drm_i915_private *i915,
const struct intel_qgv_point *point = &qi.points[i];
int bw = num_channels * (qi.channel_width / 8) * point->dclk;
- i915->display.bw.max[0].deratedbw[i] =
+ display->bw.max[0].deratedbw[i] =
min(maxdebw, (100 - sa->derating) * bw / 100);
- i915->display.bw.max[0].peakbw[i] = bw;
+ display->bw.max[0].peakbw[i] = bw;
- drm_dbg_kms(&i915->drm, "QGV %d: deratedbw=%u peakbw: %u\n",
- i, i915->display.bw.max[0].deratedbw[i],
- i915->display.bw.max[0].peakbw[i]);
+ drm_dbg_kms(display->drm, "QGV %d: deratedbw=%u peakbw: %u\n",
+ i, display->bw.max[0].deratedbw[i],
+ display->bw.max[0].peakbw[i]);
}
/* Bandwidth does not depend on # of planes; set all groups the same */
- i915->display.bw.max[0].num_planes = 1;
- i915->display.bw.max[0].num_qgv_points = qi.num_points;
- for (i = 1; i < ARRAY_SIZE(i915->display.bw.max); i++)
- memcpy(&i915->display.bw.max[i], &i915->display.bw.max[0],
- sizeof(i915->display.bw.max[0]));
+ display->bw.max[0].num_planes = 1;
+ display->bw.max[0].num_qgv_points = qi.num_points;
+ for (i = 1; i < ARRAY_SIZE(display->bw.max); i++)
+ memcpy(&display->bw.max[i], &display->bw.max[0],
+ sizeof(display->bw.max[0]));
/*
* Xe2_HPD should always have exactly two QGV points representing
* battery and plugged-in operation.
*/
- drm_WARN_ON(&i915->drm, qi.num_points != 2);
- i915->display.sagv.status = I915_SAGV_ENABLED;
+ drm_WARN_ON(display->drm, qi.num_points != 2);
+ display->sagv.status = I915_SAGV_ENABLED;
return 0;
}
-static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
+static unsigned int icl_max_bw_index(struct intel_display *display,
int num_planes, int qgv_point)
{
int i;
@@ -667,9 +676,9 @@ static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
*/
num_planes = max(1, num_planes);
- for (i = 0; i < ARRAY_SIZE(dev_priv->display.bw.max); i++) {
+ for (i = 0; i < ARRAY_SIZE(display->bw.max); i++) {
const struct intel_bw_info *bi =
- &dev_priv->display.bw.max[i];
+ &display->bw.max[i];
/*
* Pcode will not expose all QGV points when
@@ -685,7 +694,7 @@ static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
return UINT_MAX;
}
-static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
+static unsigned int tgl_max_bw_index(struct intel_display *display,
int num_planes, int qgv_point)
{
int i;
@@ -695,9 +704,9 @@ static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
*/
num_planes = max(1, num_planes);
- for (i = ARRAY_SIZE(dev_priv->display.bw.max) - 1; i >= 0; i--) {
+ for (i = ARRAY_SIZE(display->bw.max) - 1; i >= 0; i--) {
const struct intel_bw_info *bi =
- &dev_priv->display.bw.max[i];
+ &display->bw.max[i];
/*
* Pcode will not expose all QGV points when
@@ -713,52 +722,54 @@ static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
return 0;
}
-static unsigned int adl_psf_bw(struct drm_i915_private *dev_priv,
+static unsigned int adl_psf_bw(struct intel_display *display,
int psf_gv_point)
{
const struct intel_bw_info *bi =
- &dev_priv->display.bw.max[0];
+ &display->bw.max[0];
return bi->psf_bw[psf_gv_point];
}
-static unsigned int icl_qgv_bw(struct drm_i915_private *i915,
+static unsigned int icl_qgv_bw(struct intel_display *display,
int num_active_planes, int qgv_point)
{
unsigned int idx;
- if (DISPLAY_VER(i915) >= 12)
- idx = tgl_max_bw_index(i915, num_active_planes, qgv_point);
+ if (DISPLAY_VER(display) >= 12)
+ idx = tgl_max_bw_index(display, num_active_planes, qgv_point);
else
- idx = icl_max_bw_index(i915, num_active_planes, qgv_point);
+ idx = icl_max_bw_index(display, num_active_planes, qgv_point);
- if (idx >= ARRAY_SIZE(i915->display.bw.max))
+ if (idx >= ARRAY_SIZE(display->bw.max))
return 0;
- return i915->display.bw.max[idx].deratedbw[qgv_point];
+ return display->bw.max[idx].deratedbw[qgv_point];
}
void intel_bw_init_hw(struct drm_i915_private *dev_priv)
{
- if (!HAS_DISPLAY(dev_priv))
+ struct intel_display *display = &dev_priv->display;
+
+ if (!HAS_DISPLAY(display))
return;
- if (DISPLAY_VERx100(dev_priv) >= 1401 && IS_DGFX(dev_priv))
- xe2_hpd_get_bw_info(dev_priv, &xe2_hpd_sa_info);
- else if (DISPLAY_VER(dev_priv) >= 14)
- tgl_get_bw_info(dev_priv, &mtl_sa_info);
- else if (IS_DG2(dev_priv))
- dg2_get_bw_info(dev_priv);
- else if (IS_ALDERLAKE_P(dev_priv))
- tgl_get_bw_info(dev_priv, &adlp_sa_info);
- else if (IS_ALDERLAKE_S(dev_priv))
- tgl_get_bw_info(dev_priv, &adls_sa_info);
- else if (IS_ROCKETLAKE(dev_priv))
- tgl_get_bw_info(dev_priv, &rkl_sa_info);
- else if (DISPLAY_VER(dev_priv) == 12)
- tgl_get_bw_info(dev_priv, &tgl_sa_info);
- else if (DISPLAY_VER(dev_priv) == 11)
- icl_get_bw_info(dev_priv, &icl_sa_info);
+ if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
+ xe2_hpd_get_bw_info(display, &xe2_hpd_sa_info);
+ else if (DISPLAY_VER(display) >= 14)
+ tgl_get_bw_info(display, &mtl_sa_info);
+ else if (display->platform.dg2)
+ dg2_get_bw_info(display);
+ else if (display->platform.alderlake_p)
+ tgl_get_bw_info(display, &adlp_sa_info);
+ else if (display->platform.alderlake_s)
+ tgl_get_bw_info(display, &adls_sa_info);
+ else if (display->platform.rocketlake)
+ tgl_get_bw_info(display, &rkl_sa_info);
+ else if (DISPLAY_VER(display) == 12)
+ tgl_get_bw_info(display, &tgl_sa_info);
+ else if (DISPLAY_VER(display) == 11)
+ icl_get_bw_info(display, &icl_sa_info);
}
static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_state *crtc_state)
@@ -772,8 +783,8 @@ static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_stat
static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_state)
{
+ struct intel_display *display = to_intel_display(crtc_state);
struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
- struct drm_i915_private *i915 = to_i915(crtc->base.dev);
unsigned int data_rate = 0;
enum plane_id plane_id;
@@ -787,7 +798,7 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_
data_rate += crtc_state->data_rate[plane_id];
- if (DISPLAY_VER(i915) < 11)
+ if (DISPLAY_VER(display) < 11)
data_rate += crtc_state->data_rate_y[plane_id];
}
@@ -797,37 +808,37 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_
/* "Maximum Pipe Read Bandwidth" */
static int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state)
{
- struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
- struct drm_i915_private *i915 = to_i915(crtc->base.dev);
+ struct intel_display *display = to_intel_display(crtc_state);
- if (DISPLAY_VER(i915) < 12)
+ if (DISPLAY_VER(display) < 12)
return 0;
return DIV_ROUND_UP_ULL(mul_u32_u32(intel_bw_crtc_data_rate(crtc_state), 10), 512);
}
-static unsigned int intel_bw_num_active_planes(struct drm_i915_private *dev_priv,
+static unsigned int intel_bw_num_active_planes(struct intel_display *display,
const struct intel_bw_state *bw_state)
{
unsigned int num_active_planes = 0;
enum pipe pipe;
- for_each_pipe(dev_priv, pipe)
+ for_each_pipe(display, pipe)
num_active_planes += bw_state->num_active_planes[pipe];
return num_active_planes;
}
-static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv,
+static unsigned int intel_bw_data_rate(struct intel_display *display,
const struct intel_bw_state *bw_state)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
unsigned int data_rate = 0;
enum pipe pipe;
- for_each_pipe(dev_priv, pipe)
+ for_each_pipe(display, pipe)
data_rate += bw_state->data_rate[pipe];
- if (DISPLAY_VER(dev_priv) >= 13 && i915_vtd_active(dev_priv))
+ if (DISPLAY_VER(display) >= 13 && i915_vtd_active(i915))
data_rate = DIV_ROUND_UP(data_rate * 105, 100);
return data_rate;
@@ -836,10 +847,10 @@ static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv,
struct intel_bw_state *
intel_atomic_get_old_bw_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *bw_state;
- bw_state = intel_atomic_get_old_global_obj_state(state, &dev_priv->display.bw.obj);
+ bw_state = intel_atomic_get_old_global_obj_state(state, &display->bw.obj);
return to_intel_bw_state(bw_state);
}
@@ -847,10 +858,10 @@ intel_atomic_get_old_bw_state(struct intel_atomic_state *state)
struct intel_bw_state *
intel_atomic_get_new_bw_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *bw_state;
- bw_state = intel_atomic_get_new_global_obj_state(state, &dev_priv->display.bw.obj);
+ bw_state = intel_atomic_get_new_global_obj_state(state, &display->bw.obj);
return to_intel_bw_state(bw_state);
}
@@ -858,27 +869,27 @@ intel_atomic_get_new_bw_state(struct intel_atomic_state *state)
struct intel_bw_state *
intel_atomic_get_bw_state(struct intel_atomic_state *state)
{
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
struct intel_global_state *bw_state;
- bw_state = intel_atomic_get_global_obj_state(state, &dev_priv->display.bw.obj);
+ bw_state = intel_atomic_get_global_obj_state(state, &display->bw.obj);
if (IS_ERR(bw_state))
return ERR_CAST(bw_state);
return to_intel_bw_state(bw_state);
}
-static unsigned int icl_max_bw_qgv_point_mask(struct drm_i915_private *i915,
+static unsigned int icl_max_bw_qgv_point_mask(struct intel_display *display,
int num_active_planes)
{
- unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
+ unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
unsigned int max_bw_point = 0;
unsigned int max_bw = 0;
int i;
for (i = 0; i < num_qgv_points; i++) {
unsigned int max_data_rate =
- icl_qgv_bw(i915, num_active_planes, i);
+ icl_qgv_bw(display, num_active_planes, i);
/*
* We need to know which qgv point gives us
@@ -897,23 +908,23 @@ static unsigned int icl_max_bw_qgv_point_mask(struct drm_i915_private *i915,
return max_bw_point;
}
-static u16 icl_prepare_qgv_points_mask(struct drm_i915_private *i915,
+static u16 icl_prepare_qgv_points_mask(struct intel_display *display,
unsigned int qgv_points,
unsigned int psf_points)
{
return ~(ICL_PCODE_REQ_QGV_PT(qgv_points) |
- ADLS_PCODE_REQ_PSF_PT(psf_points)) & icl_qgv_points_mask(i915);
+ ADLS_PCODE_REQ_PSF_PT(psf_points)) & icl_qgv_points_mask(display);
}
-static unsigned int icl_max_bw_psf_gv_point_mask(struct drm_i915_private *i915)
+static unsigned int icl_max_bw_psf_gv_point_mask(struct intel_display *display)
{
- unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
+ unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
unsigned int max_bw_point_mask = 0;
unsigned int max_bw = 0;
int i;
for (i = 0; i < num_psf_gv_points; i++) {
- unsigned int max_data_rate = adl_psf_bw(i915, i);
+ unsigned int max_data_rate = adl_psf_bw(display, i);
if (max_data_rate > max_bw) {
max_bw_point_mask = BIT(i);
@@ -926,29 +937,31 @@ static unsigned int icl_max_bw_psf_gv_point_mask(struct drm_i915_private *i915)
return max_bw_point_mask;
}
-static void icl_force_disable_sagv(struct drm_i915_private *i915,
+static void icl_force_disable_sagv(struct intel_display *display,
struct intel_bw_state *bw_state)
{
- unsigned int qgv_points = icl_max_bw_qgv_point_mask(i915, 0);
- unsigned int psf_points = icl_max_bw_psf_gv_point_mask(i915);
+ struct drm_i915_private *i915 = to_i915(display->drm);
+ unsigned int qgv_points = icl_max_bw_qgv_point_mask(display, 0);
+ unsigned int psf_points = icl_max_bw_psf_gv_point_mask(display);
- bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(i915,
+ bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(display,
qgv_points,
psf_points);
- drm_dbg_kms(&i915->drm, "Forcing SAGV disable: mask 0x%x\n",
+ drm_dbg_kms(display->drm, "Forcing SAGV disable: mask 0x%x\n",
bw_state->qgv_points_mask);
icl_pcode_restrict_qgv_points(i915, bw_state->qgv_points_mask);
}
-static int mtl_find_qgv_points(struct drm_i915_private *i915,
+static int mtl_find_qgv_points(struct intel_display *display,
unsigned int data_rate,
unsigned int num_active_planes,
struct intel_bw_state *new_bw_state)
{
+ struct drm_i915_private *i915 = to_i915(display->drm);
unsigned int best_rate = UINT_MAX;
- unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
+ unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
unsigned int qgv_peak_bw = 0;
int i;
int ret;
@@ -964,7 +977,7 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
*/
if (!intel_can_enable_sagv(i915, new_bw_state)) {
new_bw_state->qgv_point_peakbw = U16_MAX;
- drm_dbg_kms(&i915->drm, "No SAGV, use UINT_MAX as peak bw.");
+ drm_dbg_kms(display->drm, "No SAGV, use UINT_MAX as peak bw.");
return 0;
}
@@ -974,27 +987,27 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
*/
for (i = 0; i < num_qgv_points; i++) {
unsigned int bw_index =
- tgl_max_bw_index(i915, num_active_planes, i);
+ tgl_max_bw_index(display, num_active_planes, i);
unsigned int max_data_rate;
- if (bw_index >= ARRAY_SIZE(i915->display.bw.max))
+ if (bw_index >= ARRAY_SIZE(display->bw.max))
continue;
- max_data_rate = i915->display.bw.max[bw_index].deratedbw[i];
+ max_data_rate = display->bw.max[bw_index].deratedbw[i];
if (max_data_rate < data_rate)
continue;
if (max_data_rate - data_rate < best_rate) {
best_rate = max_data_rate - data_rate;
- qgv_peak_bw = i915->display.bw.max[bw_index].peakbw[i];
+ qgv_peak_bw = display->bw.max[bw_index].peakbw[i];
}
- drm_dbg_kms(&i915->drm, "QGV point %d: max bw %d required %d qgv_peak_bw: %d\n",
+ drm_dbg_kms(display->drm, "QGV point %d: max bw %d required %d qgv_peak_bw: %d\n",
i, max_data_rate, data_rate, qgv_peak_bw);
}
- drm_dbg_kms(&i915->drm, "Matching peaks QGV bw: %d for required data rate: %d\n",
+ drm_dbg_kms(display->drm, "Matching peaks QGV bw: %d for required data rate: %d\n",
qgv_peak_bw, data_rate);
/*
@@ -1002,7 +1015,7 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
* satisfying the required data rate is found
*/
if (qgv_peak_bw == 0) {
- drm_dbg_kms(&i915->drm, "No QGV points for bw %d for display configuration(%d active planes).\n",
+ drm_dbg_kms(display->drm, "No QGV points for bw %d for display configuration(%d active planes).\n",
data_rate, num_active_planes);
return -EINVAL;
}
@@ -1013,14 +1026,15 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
return 0;
}
-static int icl_find_qgv_points(struct drm_i915_private *i915,
+static int icl_find_qgv_points(struct intel_display *display,
unsigned int data_rate,
unsigned int num_active_planes,
const struct intel_bw_state *old_bw_state,
struct intel_bw_state *new_bw_state)
{
- unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
- unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
+ struct drm_i915_private *i915 = to_i915(display->drm);
+ unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
+ unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
u16 psf_points = 0;
u16 qgv_points = 0;
int i;
@@ -1031,22 +1045,22 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
return ret;
for (i = 0; i < num_qgv_points; i++) {
- unsigned int max_data_rate = icl_qgv_bw(i915,
+ unsigned int max_data_rate = icl_qgv_bw(display,
num_active_planes, i);
if (max_data_rate >= data_rate)
qgv_points |= BIT(i);
- drm_dbg_kms(&i915->drm, "QGV point %d: max bw %d required %d\n",
+ drm_dbg_kms(display->drm, "QGV point %d: max bw %d required %d\n",
i, max_data_rate, data_rate);
}
for (i = 0; i < num_psf_gv_points; i++) {
- unsigned int max_data_rate = adl_psf_bw(i915, i);
+ unsigned int max_data_rate = adl_psf_bw(display, i);
if (max_data_rate >= data_rate)
psf_points |= BIT(i);
- drm_dbg_kms(&i915->drm, "PSF GV point %d: max bw %d"
+ drm_dbg_kms(display->drm, "PSF GV point %d: max bw %d"
" required %d\n",
i, max_data_rate, data_rate);
}
@@ -1057,14 +1071,14 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
* reasons.
*/
if (qgv_points == 0) {
- drm_dbg_kms(&i915->drm, "No QGV points provide sufficient memory"
+ drm_dbg_kms(display->drm, "No QGV points provide sufficient memory"
" bandwidth %d for display configuration(%d active planes).\n",
data_rate, num_active_planes);
return -EINVAL;
}
if (num_psf_gv_points > 0 && psf_points == 0) {
- drm_dbg_kms(&i915->drm, "No PSF GV points provide sufficient memory"
+ drm_dbg_kms(display->drm, "No PSF GV points provide sufficient memory"
" bandwidth %d for display configuration(%d active planes).\n",
data_rate, num_active_planes);
return -EINVAL;
@@ -1076,8 +1090,8 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
* cause.
*/
if (!intel_can_enable_sagv(i915, new_bw_state)) {
- qgv_points = icl_max_bw_qgv_point_mask(i915, num_active_planes);
- drm_dbg_kms(&i915->drm, "No SAGV, using single QGV point mask 0x%x\n",
+ qgv_points = icl_max_bw_qgv_point_mask(display, num_active_planes);
+ drm_dbg_kms(display->drm, "No SAGV, using single QGV point mask 0x%x\n",
qgv_points);
}
@@ -1085,7 +1099,7 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
* We store the ones which need to be masked as that is what PCode
* actually accepts as a parameter.
*/
- new_bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(i915,
+ new_bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(display,
qgv_points,
psf_points);
/*
@@ -1101,38 +1115,38 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
return 0;
}
-static int intel_bw_check_qgv_points(struct drm_i915_private *i915,
+static int intel_bw_check_qgv_points(struct intel_display *display,
const struct intel_bw_state *old_bw_state,
struct intel_bw_state *new_bw_state)
{
- unsigned int data_rate = intel_bw_data_rate(i915, new_bw_state);
+ unsigned int data_rate = intel_bw_data_rate(display, new_bw_state);
unsigned int num_active_planes =
- intel_bw_num_active_planes(i915, new_bw_state);
+ intel_bw_num_active_planes(display, new_bw_state);
data_rate = DIV_ROUND_UP(data_rate, 1000);
- if (DISPLAY_VER(i915) >= 14)
- return mtl_find_qgv_points(i915, data_rate, num_active_planes,
+ if (DISPLAY_VER(display) >= 14)
+ return mtl_find_qgv_points(display, data_rate, num_active_planes,
new_bw_state);
else
- return icl_find_qgv_points(i915, data_rate, num_active_planes,
+ return icl_find_qgv_points(display, data_rate, num_active_planes,
old_bw_state, new_bw_state);
}
-static bool intel_bw_state_changed(struct drm_i915_private *i915,
+static bool intel_bw_state_changed(struct intel_display *display,
const struct intel_bw_state *old_bw_state,
const struct intel_bw_state *new_bw_state)
{
enum pipe pipe;
- for_each_pipe(i915, pipe) {
+ for_each_pipe(display, pipe) {
const struct intel_dbuf_bw *old_crtc_bw =
&old_bw_state->dbuf_bw[pipe];
const struct intel_dbuf_bw *new_crtc_bw =
&new_bw_state->dbuf_bw[pipe];
enum dbuf_slice slice;
- for_each_dbuf_slice(i915, slice) {
+ for_each_dbuf_slice(display, slice) {
if (old_crtc_bw->max_bw[slice] != new_crtc_bw->max_bw[slice] ||
old_crtc_bw->active_planes[slice] != new_crtc_bw->active_planes[slice])
return true;
@@ -1151,7 +1165,8 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
const struct skl_ddb_entry *ddb,
unsigned int data_rate)
{
- struct drm_i915_private *i915 = to_i915(crtc->base.dev);
+ struct intel_display *display = to_intel_display(crtc);
+ struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[crtc->pipe];
unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(i915, ddb);
enum dbuf_slice slice;
@@ -1160,7 +1175,7 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
* The arbiter can only really guarantee an
* equal share of the total bw to each plane.
*/
- for_each_dbuf_slice_in_mask(i915, slice, dbuf_mask) {
+ for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) {
crtc_bw->max_bw[slice] = max(crtc_bw->max_bw[slice], data_rate);
crtc_bw->active_planes[slice] |= BIT(plane_id);
}
@@ -1169,8 +1184,8 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
const struct intel_crtc_state *crtc_state)
{
+ struct intel_display *display = to_intel_display(crtc_state);
struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
- struct drm_i915_private *i915 = to_i915(crtc->base.dev);
struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[crtc->pipe];
enum plane_id plane_id;
@@ -1191,7 +1206,7 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
&crtc_state->wm.skl.plane_ddb[plane_id],
crtc_state->data_rate[plane_id]);
- if (DISPLAY_VER(i915) < 11)
+ if (DISPLAY_VER(display) < 11)
skl_plane_calc_dbuf_bw(bw_state, crtc, plane_id,
&crtc_state->wm.skl.plane_ddb_y[plane_id],
crtc_state->data_rate[plane_id]);
@@ -1200,13 +1215,13 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
/* "Maximum Data Buffer Bandwidth" */
static int
-intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
+intel_bw_dbuf_min_cdclk(struct intel_display *display,
const struct intel_bw_state *bw_state)
{
unsigned int total_max_bw = 0;
enum dbuf_slice slice;
- for_each_dbuf_slice(i915, slice) {
+ for_each_dbuf_slice(display, slice) {
int num_active_planes = 0;
unsigned int max_bw = 0;
enum pipe pipe;
@@ -1215,7 +1230,7 @@ intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
* The arbiter can only really guarantee an
* equal share of the total bw to each plane.
*/
- for_each_pipe(i915, pipe) {
+ for_each_pipe(display, pipe) {
const struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[pipe];
max_bw = max(crtc_bw->max_bw[slice], max_bw);
@@ -1232,12 +1247,13 @@ intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
int intel_bw_min_cdclk(struct drm_i915_private *i915,
const struct intel_bw_state *bw_state)
{
+ struct intel_display *display = &i915->display;
enum pipe pipe;
int min_cdclk;
- min_cdclk = intel_bw_dbuf_min_cdclk(i915, bw_state);
+ min_cdclk = intel_bw_dbuf_min_cdclk(display, bw_state);
- for_each_pipe(i915, pipe)
+ for_each_pipe(display, pipe)
min_cdclk = max(min_cdclk, bw_state->min_cdclk[pipe]);
return min_cdclk;
@@ -1246,6 +1262,7 @@ int intel_bw_min_cdclk(struct drm_i915_private *i915,
int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
bool *need_cdclk_calc)
{
+ struct intel_display *display = to_intel_display(state);
struct drm_i915_private *dev_priv = to_i915(state->base.dev);
struct intel_bw_state *new_bw_state = NULL;
const struct intel_bw_state *old_bw_state = NULL;
@@ -1255,7 +1272,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
struct intel_crtc *crtc;
int i;
- if (DISPLAY_VER(dev_priv) < 9)
+ if (DISPLAY_VER(display) < 9)
return 0;
for_each_new_intel_crtc_in_state(state, crtc, crtc_state, i) {
@@ -1274,7 +1291,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
if (!old_bw_state)
return 0;
- if (intel_bw_state_changed(dev_priv, old_bw_state, new_bw_state)) {
+ if (intel_bw_state_changed(display, old_bw_state, new_bw_state)) {
int ret = intel_atomic_lock_global_state(&new_bw_state->base);
if (ret)
return ret;
@@ -1309,7 +1326,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
if (new_min_cdclk <= cdclk_state->bw_min_cdclk)
return 0;
- drm_dbg_kms(&dev_priv->drm,
+ drm_dbg_kms(display->drm,
"new bandwidth min cdclk (%d kHz) > old min cdclk (%d kHz)\n",
new_min_cdclk, cdclk_state->bw_min_cdclk);
*need_cdclk_calc = true;
@@ -1319,7 +1336,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *changed)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
const struct intel_crtc_state *new_crtc_state, *old_crtc_state;
struct intel_crtc *crtc;
int i;
@@ -1353,7 +1370,7 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan
*changed = true;
- drm_dbg_kms(&i915->drm,
+ drm_dbg_kms(display->drm,
"[CRTC:%d:%s] data rate %u num active planes %u\n",
crtc->base.base.id, crtc->base.name,
new_bw_state->data_rate[crtc->pipe],
@@ -1365,14 +1382,15 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan
int intel_bw_atomic_check(struct intel_atomic_state *state)
{
+ struct intel_display *display = to_intel_display(state);
+ struct drm_i915_private *i915 = to_i915(display->drm);
bool changed = false;
- struct drm_i915_private *i915 = to_i915(state->base.dev);
struct intel_bw_state *new_bw_state;
const struct intel_bw_state *old_bw_state;
int ret;
/* FIXME earlier gens need some checks too */
- if (DISPLAY_VER(i915) < 11)
+ if (DISPLAY_VER(display) < 11)
return 0;
ret = intel_bw_check_data_rate(state, &changed);
@@ -1395,7 +1413,7 @@ int intel_bw_atomic_check(struct intel_atomic_state *state)
if (!changed)
return 0;
- ret = intel_bw_check_qgv_points(i915, old_bw_state, new_bw_state);
+ ret = intel_bw_check_qgv_points(display, old_bw_state, new_bw_state);
if (ret)
return ret;
@@ -1407,8 +1425,8 @@ int intel_bw_atomic_check(struct intel_atomic_state *state)
static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
const struct intel_crtc_state *crtc_state)
{
+ struct intel_display *display = to_intel_display(crtc_state);
struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
- struct drm_i915_private *i915 = to_i915(crtc->base.dev);
bw_state->data_rate[crtc->pipe] =
intel_bw_crtc_data_rate(crtc_state);
@@ -1416,7 +1434,7 @@ static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
intel_bw_crtc_num_active_planes(crtc_state);
bw_state->force_check_qgv = true;
- drm_dbg_kms(&i915->drm, "pipe %c data rate %u num active planes %u\n",
+ drm_dbg_kms(display->drm, "pipe %c data rate %u num active planes %u\n",
pipe_name(crtc->pipe),
bw_state->data_rate[crtc->pipe],
bw_state->num_active_planes[crtc->pipe]);
@@ -1499,8 +1517,8 @@ int intel_bw_init(struct drm_i915_private *i915)
* Limit this only if we have SAGV. And for Display version 14 onwards
* sagv is handled though pmdemand requests
*/
- if (intel_has_sagv(i915) && IS_DISPLAY_VER(i915, 11, 13))
- icl_force_disable_sagv(i915, state);
+ if (intel_has_sagv(i915) && IS_DISPLAY_VER(display, 11, 13))
+ icl_force_disable_sagv(display, state);
return 0;
}
--
2.48.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH v5 2/3] drm/i915/display: Convert intel_bw.c externally to intel_display
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display Gustavo Sousa
@ 2025-03-11 17:04 ` Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 3/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (9 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-11 17:04 UTC (permalink / raw)
To: intel-gfx, intel-xe
Cc: Matt Roper, Ville Syrjälä, Jani Nikula, Gustavo Sousa
We already have internal interface for intel_bw.c converted to use
intel_display. Now convert the external interface as well.
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
---
drivers/gpu/drm/i915/display/intel_bw.c | 25 +++++++++-------------
drivers/gpu/drm/i915/display/intel_bw.h | 9 ++++----
drivers/gpu/drm/i915/display/intel_cdclk.c | 3 +--
.../gpu/drm/i915/display/intel_display_driver.c | 2 +-
drivers/gpu/drm/i915/display/skl_watermark.c | 10 +++++----
drivers/gpu/drm/i915/i915_driver.c | 2 +-
drivers/gpu/drm/xe/display/xe_display.c | 2 +-
7 files changed, 24 insertions(+), 29 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
index 6f805af32926d3608929655de97699747d7a5798..bda080d9ed4cfd1804fab818ac489dbe0bfaf640 100644
--- a/drivers/gpu/drm/i915/display/intel_bw.c
+++ b/drivers/gpu/drm/i915/display/intel_bw.c
@@ -151,17 +151,17 @@ static bool is_sagv_enabled(struct intel_display *display, u16 points_mask)
ICL_PCODE_REQ_QGV_PT_MASK);
}
-int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
+int icl_pcode_restrict_qgv_points(struct intel_display *display,
u32 points_mask)
{
- struct intel_display *display = &dev_priv->display;
+ struct drm_i915_private *i915 = to_i915(display->drm);
int ret;
if (DISPLAY_VER(display) >= 14)
return 0;
/* bspec says to keep retrying for at least 1 ms */
- ret = skl_pcode_request(&dev_priv->uncore, ICL_PCODE_SAGV_DE_MEM_SS_CONFIG,
+ ret = skl_pcode_request(&i915->uncore, ICL_PCODE_SAGV_DE_MEM_SS_CONFIG,
points_mask,
ICL_PCODE_REP_QGV_MASK | ADLS_PCODE_REP_PSF_MASK,
ICL_PCODE_REP_QGV_SAFE | ADLS_PCODE_REP_PSF_SAFE,
@@ -747,10 +747,8 @@ static unsigned int icl_qgv_bw(struct intel_display *display,
return display->bw.max[idx].deratedbw[qgv_point];
}
-void intel_bw_init_hw(struct drm_i915_private *dev_priv)
+void intel_bw_init_hw(struct intel_display *display)
{
- struct intel_display *display = &dev_priv->display;
-
if (!HAS_DISPLAY(display))
return;
@@ -940,7 +938,6 @@ static unsigned int icl_max_bw_psf_gv_point_mask(struct intel_display *display)
static void icl_force_disable_sagv(struct intel_display *display,
struct intel_bw_state *bw_state)
{
- struct drm_i915_private *i915 = to_i915(display->drm);
unsigned int qgv_points = icl_max_bw_qgv_point_mask(display, 0);
unsigned int psf_points = icl_max_bw_psf_gv_point_mask(display);
@@ -951,7 +948,7 @@ static void icl_force_disable_sagv(struct intel_display *display,
drm_dbg_kms(display->drm, "Forcing SAGV disable: mask 0x%x\n",
bw_state->qgv_points_mask);
- icl_pcode_restrict_qgv_points(i915, bw_state->qgv_points_mask);
+ icl_pcode_restrict_qgv_points(display, bw_state->qgv_points_mask);
}
static int mtl_find_qgv_points(struct intel_display *display,
@@ -1244,10 +1241,9 @@ intel_bw_dbuf_min_cdclk(struct intel_display *display,
return DIV_ROUND_UP(total_max_bw, 64);
}
-int intel_bw_min_cdclk(struct drm_i915_private *i915,
+int intel_bw_min_cdclk(struct intel_display *display,
const struct intel_bw_state *bw_state)
{
- struct intel_display *display = &i915->display;
enum pipe pipe;
int min_cdclk;
@@ -1263,7 +1259,6 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
bool *need_cdclk_calc)
{
struct intel_display *display = to_intel_display(state);
- struct drm_i915_private *dev_priv = to_i915(state->base.dev);
struct intel_bw_state *new_bw_state = NULL;
const struct intel_bw_state *old_bw_state = NULL;
const struct intel_cdclk_state *cdclk_state;
@@ -1297,8 +1292,8 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
return ret;
}
- old_min_cdclk = intel_bw_min_cdclk(dev_priv, old_bw_state);
- new_min_cdclk = intel_bw_min_cdclk(dev_priv, new_bw_state);
+ old_min_cdclk = intel_bw_min_cdclk(display, old_bw_state);
+ new_min_cdclk = intel_bw_min_cdclk(display, new_bw_state);
/*
* No need to check against the cdclk state if
@@ -1501,9 +1496,9 @@ static const struct intel_global_state_funcs intel_bw_funcs = {
.atomic_destroy_state = intel_bw_destroy_state,
};
-int intel_bw_init(struct drm_i915_private *i915)
+int intel_bw_init(struct intel_display *display)
{
- struct intel_display *display = &i915->display;
+ struct drm_i915_private *i915 = to_i915(display->drm);
struct intel_bw_state *state;
state = kzalloc(sizeof(*state), GFP_KERNEL);
diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h
index 3313e4eac4f00dc5be0a290219c488216a2ae1f8..c18126c83d2e458daaaef0cda82be46974c5d500 100644
--- a/drivers/gpu/drm/i915/display/intel_bw.h
+++ b/drivers/gpu/drm/i915/display/intel_bw.h
@@ -12,7 +12,6 @@
#include "intel_display_power.h"
#include "intel_global_state.h"
-struct drm_i915_private;
struct intel_atomic_state;
struct intel_crtc;
struct intel_crtc_state;
@@ -72,14 +71,14 @@ intel_atomic_get_new_bw_state(struct intel_atomic_state *state);
struct intel_bw_state *
intel_atomic_get_bw_state(struct intel_atomic_state *state);
-void intel_bw_init_hw(struct drm_i915_private *dev_priv);
-int intel_bw_init(struct drm_i915_private *dev_priv);
+void intel_bw_init_hw(struct intel_display *display);
+int intel_bw_init(struct intel_display *display);
int intel_bw_atomic_check(struct intel_atomic_state *state);
-int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
+int icl_pcode_restrict_qgv_points(struct intel_display *display,
u32 points_mask);
int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
bool *need_cdclk_calc);
-int intel_bw_min_cdclk(struct drm_i915_private *i915,
+int intel_bw_min_cdclk(struct intel_display *display,
const struct intel_bw_state *bw_state);
void intel_bw_update_hw_state(struct intel_display *display);
void intel_bw_crtc_disable_noatomic(struct intel_crtc *crtc);
diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c
index 2a8749a0213e74dbd5cf5f8c94ff5e32226c45fe..984fd9f98c9f77777f903456f5838179a774af5e 100644
--- a/drivers/gpu/drm/i915/display/intel_cdclk.c
+++ b/drivers/gpu/drm/i915/display/intel_cdclk.c
@@ -2808,7 +2808,6 @@ static int intel_crtc_compute_min_cdclk(const struct intel_crtc_state *crtc_stat
static int intel_compute_min_cdclk(struct intel_atomic_state *state)
{
struct intel_display *display = to_intel_display(state);
- struct drm_i915_private *dev_priv = to_i915(display->drm);
struct intel_cdclk_state *cdclk_state =
intel_atomic_get_new_cdclk_state(state);
const struct intel_bw_state *bw_state;
@@ -2836,7 +2835,7 @@ static int intel_compute_min_cdclk(struct intel_atomic_state *state)
bw_state = intel_atomic_get_new_bw_state(state);
if (bw_state) {
- min_cdclk = intel_bw_min_cdclk(dev_priv, bw_state);
+ min_cdclk = intel_bw_min_cdclk(display, bw_state);
if (cdclk_state->bw_min_cdclk != min_cdclk) {
int ret;
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index 31740a677dd807a5cffaad3696268e22b829b70a..5ad2f4090a2db41f984ab3dc0f64e608f0b61fb4 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -259,7 +259,7 @@ int intel_display_driver_probe_noirq(struct intel_display *display)
if (ret)
goto cleanup_vga_client_pw_domain_dmc;
- ret = intel_bw_init(i915);
+ ret = intel_bw_init(display);
if (ret)
goto cleanup_vga_client_pw_domain_dmc;
diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
index 2d0de1c63308fc293e7f0f13ed6489b18928bf58..008919d4d3792ba1ff38c70418c48241aafe1796 100644
--- a/drivers/gpu/drm/i915/display/skl_watermark.c
+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
@@ -249,7 +249,8 @@ static void skl_sagv_post_plane_update(struct intel_atomic_state *state)
static void icl_sagv_pre_plane_update(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
+ struct drm_i915_private *i915 = to_i915(display->drm);
const struct intel_bw_state *old_bw_state =
intel_atomic_get_old_bw_state(state);
const struct intel_bw_state *new_bw_state =
@@ -276,12 +277,13 @@ static void icl_sagv_pre_plane_update(struct intel_atomic_state *state)
* time. Also masking should be done before updating the configuration
* and unmasking afterwards.
*/
- icl_pcode_restrict_qgv_points(i915, new_mask);
+ icl_pcode_restrict_qgv_points(display, new_mask);
}
static void icl_sagv_post_plane_update(struct intel_atomic_state *state)
{
- struct drm_i915_private *i915 = to_i915(state->base.dev);
+ struct intel_display *display = to_intel_display(state);
+ struct drm_i915_private *i915 = to_i915(display->drm);
const struct intel_bw_state *old_bw_state =
intel_atomic_get_old_bw_state(state);
const struct intel_bw_state *new_bw_state =
@@ -308,7 +310,7 @@ static void icl_sagv_post_plane_update(struct intel_atomic_state *state)
* time. Also masking should be done before updating the configuration
* and unmasking afterwards.
*/
- icl_pcode_restrict_qgv_points(i915, new_mask);
+ icl_pcode_restrict_qgv_points(display, new_mask);
}
void intel_sagv_pre_plane_update(struct intel_atomic_state *state)
diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c
index ce3cc93ea211bb8c7805d56ae5e67b371fb5fba9..6507dcfe4bf534db83c501606efaf39079fb6b68 100644
--- a/drivers/gpu/drm/i915/i915_driver.c
+++ b/drivers/gpu/drm/i915/i915_driver.c
@@ -578,7 +578,7 @@ static int i915_driver_hw_probe(struct drm_i915_private *dev_priv)
*/
intel_dram_detect(dev_priv);
- intel_bw_init_hw(dev_priv);
+ intel_bw_init_hw(display);
return 0;
diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c
index 0b0aca7a25afd09a9dab089249f89d33dc1c06a9..7fb6028ae73c4ecb283406e953063c62e346812a 100644
--- a/drivers/gpu/drm/xe/display/xe_display.c
+++ b/drivers/gpu/drm/xe/display/xe_display.c
@@ -147,7 +147,7 @@ int xe_display_init_early(struct xe_device *xe)
*/
intel_dram_detect(xe);
- intel_bw_init_hw(xe);
+ intel_bw_init_hw(display);
intel_display_device_info_runtime_init(display);
--
2.48.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH v5 3/3] drm/i915/xe3lpd: Update bandwidth parameters
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 2/3] drm/i915/display: Convert intel_bw.c externally " Gustavo Sousa
@ 2025-03-11 17:04 ` Gustavo Sousa
2025-03-11 18:38 ` ✓ CI.Patch_applied: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5) Patchwork
` (8 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-11 17:04 UTC (permalink / raw)
To: intel-gfx, intel-xe
Cc: Matt Roper, Ville Syrjälä, Jani Nikula, Gustavo Sousa
Bandwidth parameters for Xe3_LPD have been updated with respect to
previous display releases. Encode them into xe3lpd_sa_info and use that
new struct.
Bspec: 68859
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
---
drivers/gpu/drm/i915/display/intel_bw.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
index bda080d9ed4cfd1804fab818ac489dbe0bfaf640..dc7612658a9da9493ad9068f28126c76d187f2ea 100644
--- a/drivers/gpu/drm/i915/display/intel_bw.c
+++ b/drivers/gpu/drm/i915/display/intel_bw.c
@@ -404,6 +404,13 @@ static const struct intel_sa_info xe2_hpd_sa_info = {
/* Other values not used by simplified algorithm */
};
+static const struct intel_sa_info xe3lpd_sa_info = {
+ .deburst = 32,
+ .deprogbwlimit = 65, /* GB/s */
+ .displayrtids = 256,
+ .derating = 10,
+};
+
static int icl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
{
struct drm_i915_private *i915 = to_i915(display->drm);
@@ -752,7 +759,9 @@ void intel_bw_init_hw(struct intel_display *display)
if (!HAS_DISPLAY(display))
return;
- if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
+ if (DISPLAY_VER(display) >= 30)
+ tgl_get_bw_info(display, &xe3lpd_sa_info);
+ else if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
xe2_hpd_get_bw_info(display, &xe2_hpd_sa_info);
else if (DISPLAY_VER(display) >= 14)
tgl_get_bw_info(display, &mtl_sa_info);
--
2.48.1
^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display
2025-03-11 17:04 ` [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display Gustavo Sousa
@ 2025-03-11 18:04 ` Jani Nikula
2025-03-13 13:10 ` Gustavo Sousa
2025-03-14 21:17 ` Matt Roper
1 sibling, 1 reply; 18+ messages in thread
From: Jani Nikula @ 2025-03-11 18:04 UTC (permalink / raw)
To: Gustavo Sousa, intel-gfx, intel-xe
Cc: Matt Roper, Ville Syrjälä, Gustavo Sousa
On Tue, 11 Mar 2025, Gustavo Sousa <gustavo.sousa@intel.com> wrote:
> diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
> index 048be287224774110d94fe2944daa580d8dc20a6..6f805af32926d3608929655de97699747d7a5798 100644
> --- a/drivers/gpu/drm/i915/display/intel_bw.c
> +++ b/drivers/gpu/drm/i915/display/intel_bw.c
> @@ -39,14 +39,15 @@ struct intel_qgv_info {
> u8 deinterleave;
> };
>
> -static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
> +static int dg1_mchbar_read_qgv_point_info(struct intel_display *display,
> struct intel_qgv_point *sp,
> int point)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
This is reviewed already, and I'm not requesting changes, but for future
reference, I tend to keep the dev_priv name where it's already being
used. We don't really benefit from dev_priv -> i915 conversions anymore
in display, they'll all need to be removed eventually, but this causes
extra churn where none is required.
> u32 dclk_ratio, dclk_reference;
> u32 val;
>
> - val = intel_uncore_read(&dev_priv->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
> + val = intel_uncore_read(&i915->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
Like above.
BR,
Jani.
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✓ CI.Patch_applied: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (2 preceding siblings ...)
2025-03-11 17:04 ` [PATCH v5 3/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
@ 2025-03-11 18:38 ` Patchwork
2025-03-11 18:39 ` ✓ CI.checkpatch: " Patchwork
` (7 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 18:38 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : success
== Summary ==
=== Applying kernel patches on branch 'drm-tip' with base: ===
Base commit: f8df428b3850 drm-tip: 2025y-03m-11d-14h-05m-47s UTC integration manifest
=== git am output follows ===
Applying: drm/i915/display: Convert intel_bw.c internally to intel_display
Applying: drm/i915/display: Convert intel_bw.c externally to intel_display
Applying: drm/i915/xe3lpd: Update bandwidth parameters
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✓ CI.checkpatch: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (3 preceding siblings ...)
2025-03-11 18:38 ` ✓ CI.Patch_applied: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5) Patchwork
@ 2025-03-11 18:39 ` Patchwork
2025-03-11 18:40 ` ✓ CI.KUnit: " Patchwork
` (6 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 18:39 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : success
== Summary ==
+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
cbb4e4a079d89106c2736adc3c7de6f9dc56da07
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit f2f92d979d446dbe190bca525e466e3466a9ebd1
Author: Gustavo Sousa <gustavo.sousa@intel.com>
Date: Tue Mar 11 14:04:52 2025 -0300
drm/i915/xe3lpd: Update bandwidth parameters
Bandwidth parameters for Xe3_LPD have been updated with respect to
previous display releases. Encode them into xe3lpd_sa_info and use that
new struct.
Bspec: 68859
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
+ /mt/dim checkpatch f8df428b3850ed87a1e2f3b12b6025328d8a6373 drm-intel
5b6619c10fc0 drm/i915/display: Convert intel_bw.c internally to intel_display
873c9fa77e66 drm/i915/display: Convert intel_bw.c externally to intel_display
f2f92d979d44 drm/i915/xe3lpd: Update bandwidth parameters
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✓ CI.KUnit: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (4 preceding siblings ...)
2025-03-11 18:39 ` ✓ CI.checkpatch: " Patchwork
@ 2025-03-11 18:40 ` Patchwork
2025-03-11 18:57 ` ✓ CI.Build: " Patchwork
` (5 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 18:40 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : success
== Summary ==
+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[18:39:09] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[18:39:14] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json ARCH=um O=.kunit --jobs=48
../lib/iomap.c:156:5: warning: no previous prototype for ‘ioread64_lo_hi’ [-Wmissing-prototypes]
156 | u64 ioread64_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:163:5: warning: no previous prototype for ‘ioread64_hi_lo’ [-Wmissing-prototypes]
163 | u64 ioread64_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:170:5: warning: no previous prototype for ‘ioread64be_lo_hi’ [-Wmissing-prototypes]
170 | u64 ioread64be_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:178:5: warning: no previous prototype for ‘ioread64be_hi_lo’ [-Wmissing-prototypes]
178 | u64 ioread64be_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:264:6: warning: no previous prototype for ‘iowrite64_lo_hi’ [-Wmissing-prototypes]
264 | void iowrite64_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:272:6: warning: no previous prototype for ‘iowrite64_hi_lo’ [-Wmissing-prototypes]
272 | void iowrite64_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:280:6: warning: no previous prototype for ‘iowrite64be_lo_hi’ [-Wmissing-prototypes]
280 | void iowrite64be_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
../lib/iomap.c:288:6: warning: no previous prototype for ‘iowrite64be_hi_lo’ [-Wmissing-prototypes]
288 | void iowrite64be_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
[18:39:40] Starting KUnit Kernel (1/1)...
[18:39:40] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[18:39:40] ================== guc_buf (11 subtests) ===================
[18:39:40] [PASSED] test_smallest
[18:39:40] [PASSED] test_largest
[18:39:40] [PASSED] test_granular
[18:39:40] [PASSED] test_unique
[18:39:40] [PASSED] test_overlap
[18:39:40] [PASSED] test_reusable
[18:39:40] [PASSED] test_too_big
[18:39:40] [PASSED] test_flush
[18:39:40] [PASSED] test_lookup
[18:39:40] [PASSED] test_data
[18:39:40] [PASSED] test_class
[18:39:40] ===================== [PASSED] guc_buf =====================
[18:39:40] =================== guc_dbm (7 subtests) ===================
[18:39:40] [PASSED] test_empty
[18:39:40] [PASSED] test_default
[18:39:40] ======================== test_size ========================
[18:39:40] [PASSED] 4
[18:39:40] [PASSED] 8
[18:39:40] [PASSED] 32
[18:39:40] [PASSED] 256
[18:39:40] ==================== [PASSED] test_size ====================
[18:39:40] ======================= test_reuse ========================
[18:39:40] [PASSED] 4
[18:39:40] [PASSED] 8
[18:39:40] [PASSED] 32
[18:39:40] [PASSED] 256
[18:39:40] =================== [PASSED] test_reuse ====================
[18:39:40] =================== test_range_overlap ====================
[18:39:40] [PASSED] 4
[18:39:40] [PASSED] 8
[18:39:40] [PASSED] 32
[18:39:40] [PASSED] 256
[18:39:40] =============== [PASSED] test_range_overlap ================
[18:39:40] =================== test_range_compact ====================
[18:39:40] [PASSED] 4
[18:39:40] [PASSED] 8
[18:39:40] [PASSED] 32
[18:39:40] [PASSED] 256
[18:39:40] =============== [PASSED] test_range_compact ================
[18:39:40] ==================== test_range_spare =====================
[18:39:40] [PASSED] 4
[18:39:40] [PASSED] 8
[18:39:40] [PASSED] 32
[18:39:40] [PASSED] 256
[18:39:40] ================ [PASSED] test_range_spare =================
[18:39:40] ===================== [PASSED] guc_dbm =====================
[18:39:40] =================== guc_idm (6 subtests) ===================
[18:39:40] [PASSED] bad_init
[18:39:40] [PASSED] no_init
[18:39:40] [PASSED] init_fini
[18:39:40] [PASSED] check_used
[18:39:40] [PASSED] check_quota
[18:39:40] [PASSED] check_all
[18:39:40] ===================== [PASSED] guc_idm =====================
[18:39:40] ================== no_relay (3 subtests) ===================
[18:39:40] [PASSED] xe_drops_guc2pf_if_not_ready
[18:39:40] [PASSED] xe_drops_guc2vf_if_not_ready
[18:39:40] [PASSED] xe_rejects_send_if_not_ready
[18:39:40] ==================== [PASSED] no_relay =====================
[18:39:40] ================== pf_relay (14 subtests) ==================
[18:39:40] [PASSED] pf_rejects_guc2pf_too_short
[18:39:40] [PASSED] pf_rejects_guc2pf_too_long
[18:39:40] [PASSED] pf_rejects_guc2pf_no_payload
[18:39:40] [PASSED] pf_fails_no_payload
[18:39:40] [PASSED] pf_fails_bad_origin
[18:39:40] [PASSED] pf_fails_bad_type
[18:39:40] [PASSED] pf_txn_reports_error
[18:39:40] [PASSED] pf_txn_sends_pf2guc
[18:39:40] [PASSED] pf_sends_pf2guc
[18:39:40] [SKIPPED] pf_loopback_nop
[18:39:40] [SKIPPED] pf_loopback_echo
[18:39:40] [SKIPPED] pf_loopback_fail
[18:39:40] [SKIPPED] pf_loopback_busy
[18:39:40] [SKIPPED] pf_loopback_retry
[18:39:40] ==================== [PASSED] pf_relay =====================
[18:39:40] ================== vf_relay (3 subtests) ===================
[18:39:40] [PASSED] vf_rejects_guc2vf_too_short
[18:39:40] [PASSED] vf_rejects_guc2vf_too_long
[18:39:40] [PASSED] vf_rejects_guc2vf_no_payload
[18:39:40] ==================== [PASSED] vf_relay =====================
[18:39:40] ================= pf_service (11 subtests) =================
[18:39:40] [PASSED] pf_negotiate_any
[18:39:40] [PASSED] pf_negotiate_base_match
[18:39:40] [PASSED] pf_negotiate_base_newer
[18:39:40] [PASSED] pf_negotiate_base_next
[18:39:40] [SKIPPED] pf_negotiate_base_older
[18:39:40] [PASSED] pf_negotiate_base_prev
[18:39:40] [PASSED] pf_negotiate_latest_match
[18:39:40] [PASSED] pf_negotiate_latest_newer
[18:39:40] [PASSED] pf_negotiate_latest_next
[18:39:40] [SKIPPED] pf_negotiate_latest_older
[18:39:40] [SKIPPED] pf_negotiate_latest_prev
[18:39:40] =================== [PASSED] pf_service ====================
[18:39:40] ===================== lmtt (1 subtest) =====================
[18:39:40] ======================== test_ops =========================
[18:39:40] [PASSED] 2-level
[18:39:40] [PASSED] multi-level
[18:39:40] ==================== [PASSED] test_ops =====================
[18:39:40] ====================== [PASSED] lmtt =======================
[18:39:40] =================== xe_mocs (2 subtests) ===================
[18:39:40] ================ xe_live_mocs_kernel_kunit ================
[18:39:40] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[18:39:40] ================ xe_live_mocs_reset_kunit =================
[18:39:40] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[18:39:40] ==================== [SKIPPED] xe_mocs =====================
[18:39:40] ================= xe_migrate (2 subtests) ==================
[18:39:40] ================= xe_migrate_sanity_kunit =================
[18:39:40] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[18:39:40] ================== xe_validate_ccs_kunit ==================
[18:39:40] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[18:39:40] =================== [SKIPPED] xe_migrate ===================
[18:39:40] ================== xe_dma_buf (1 subtest) ==================
[18:39:40] ==================== xe_dma_buf_kunit =====================
[18:39:40] ================ [SKIPPED] xe_dma_buf_kunit ================
[18:39:40] =================== [SKIPPED] xe_dma_buf ===================
[18:39:40] ================= xe_bo_shrink (1 subtest) =================
[18:39:40] =================== xe_bo_shrink_kunit ====================
[18:39:40] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[18:39:40] ================== [SKIPPED] xe_bo_shrink ==================
[18:39:40] ==================== xe_bo (2 subtests) ====================
[18:39:40] ================== xe_ccs_migrate_kunit ===================
[18:39:40] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
stty: 'standard input': Inappropriate ioctl for device
[18:39:40] ==================== xe_bo_evict_kunit ====================
[18:39:40] =============== [SKIPPED] xe_bo_evict_kunit ================
[18:39:40] ===================== [SKIPPED] xe_bo ======================
[18:39:40] ==================== args (11 subtests) ====================
[18:39:40] [PASSED] count_args_test
[18:39:40] [PASSED] call_args_example
[18:39:40] [PASSED] call_args_test
[18:39:40] [PASSED] drop_first_arg_example
[18:39:40] [PASSED] drop_first_arg_test
[18:39:40] [PASSED] first_arg_example
[18:39:40] [PASSED] first_arg_test
[18:39:40] [PASSED] last_arg_example
[18:39:40] [PASSED] last_arg_test
[18:39:40] [PASSED] pick_arg_example
[18:39:40] [PASSED] sep_comma_example
[18:39:40] ====================== [PASSED] args =======================
[18:39:40] =================== xe_pci (2 subtests) ====================
[18:39:40] [PASSED] xe_gmdid_graphics_ip
[18:39:40] [PASSED] xe_gmdid_media_ip
[18:39:40] ===================== [PASSED] xe_pci ======================
[18:39:40] =================== xe_rtp (2 subtests) ====================
[18:39:40] =============== xe_rtp_process_to_sr_tests ================
[18:39:40] [PASSED] coalesce-same-reg
[18:39:40] [PASSED] no-match-no-add
[18:39:40] [PASSED] match-or
[18:39:40] [PASSED] match-or-xfail
[18:39:40] [PASSED] no-match-no-add-multiple-rules
[18:39:40] [PASSED] two-regs-two-entries
[18:39:40] [PASSED] clr-one-set-other
[18:39:40] [PASSED] set-field
[18:39:40] [PASSED] conflict-duplicate
[18:39:40] [PASSED] conflict-not-disjoint
[18:39:40] [PASSED] conflict-reg-type
[18:39:40] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[18:39:40] ================== xe_rtp_process_tests ===================
[18:39:40] [PASSED] active1
[18:39:40] [PASSED] active2
[18:39:40] [PASSED] active-inactive
[18:39:40] [PASSED] inactive-active
[18:39:40] [PASSED] inactive-1st_or_active-inactive
[18:39:40] [PASSED] inactive-2nd_or_active-inactive
[18:39:40] [PASSED] inactive-last_or_active-inactive
[18:39:40] [PASSED] inactive-no_or_active-inactive
[18:39:40] ============== [PASSED] xe_rtp_process_tests ===============
[18:39:40] ===================== [PASSED] xe_rtp ======================
[18:39:40] ==================== xe_wa (1 subtest) =====================
[18:39:40] ======================== xe_wa_gt =========================
[18:39:40] [PASSED] TIGERLAKE (B0)
[18:39:40] [PASSED] DG1 (A0)
[18:39:40] [PASSED] DG1 (B0)
[18:39:40] [PASSED] ALDERLAKE_S (A0)
[18:39:40] [PASSED] ALDERLAKE_S (B0)
[18:39:40] [PASSED] ALDERLAKE_S (C0)
[18:39:40] [PASSED] ALDERLAKE_S (D0)
[18:39:40] [PASSED] ALDERLAKE_P (A0)
[18:39:40] [PASSED] ALDERLAKE_P (B0)
[18:39:40] [PASSED] ALDERLAKE_P (C0)
[18:39:40] [PASSED] ALDERLAKE_S_RPLS (D0)
[18:39:40] [PASSED] ALDERLAKE_P_RPLU (E0)
[18:39:40] [PASSED] DG2_G10 (C0)
[18:39:40] [PASSED] DG2_G11 (B1)
[18:39:40] [PASSED] DG2_G12 (A1)
[18:39:40] [PASSED] METEORLAKE (g:A0, m:A0)
[18:39:40] [PASSED] METEORLAKE (g:A0, m:A0)
[18:39:40] [PASSED] METEORLAKE (g:A0, m:A0)
[18:39:40] [PASSED] LUNARLAKE (g:A0, m:A0)
[18:39:40] [PASSED] LUNARLAKE (g:B0, m:A0)
[18:39:40] [PASSED] BATTLEMAGE (g:A0, m:A1)
[18:39:40] ==================== [PASSED] xe_wa_gt =====================
[18:39:40] ====================== [PASSED] xe_wa ======================
[18:39:40] ============================================================
[18:39:40] Testing complete. Ran 133 tests: passed: 117, skipped: 16
[18:39:40] Elapsed time: 30.463s total, 4.178s configuring, 26.018s building, 0.254s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[18:39:40] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[18:39:42] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json ARCH=um O=.kunit --jobs=48
../lib/iomap.c:156:5: warning: no previous prototype for ‘ioread64_lo_hi’ [-Wmissing-prototypes]
156 | u64 ioread64_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:163:5: warning: no previous prototype for ‘ioread64_hi_lo’ [-Wmissing-prototypes]
163 | u64 ioread64_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:170:5: warning: no previous prototype for ‘ioread64be_lo_hi’ [-Wmissing-prototypes]
170 | u64 ioread64be_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:178:5: warning: no previous prototype for ‘ioread64be_hi_lo’ [-Wmissing-prototypes]
178 | u64 ioread64be_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:264:6: warning: no previous prototype for ‘iowrite64_lo_hi’ [-Wmissing-prototypes]
264 | void iowrite64_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:272:6: warning: no previous prototype for ‘iowrite64_hi_lo’ [-Wmissing-prototypes]
272 | void iowrite64_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:280:6: warning: no previous prototype for ‘iowrite64be_lo_hi’ [-Wmissing-prototypes]
280 | void iowrite64be_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
../lib/iomap.c:288:6: warning: no previous prototype for ‘iowrite64be_hi_lo’ [-Wmissing-prototypes]
288 | void iowrite64be_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
[18:40:03] Starting KUnit Kernel (1/1)...
[18:40:03] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[18:40:03] =========== drm_validate_clone_mode (2 subtests) ===========
[18:40:03] ============== drm_test_check_in_clone_mode ===============
[18:40:03] [PASSED] in_clone_mode
[18:40:03] [PASSED] not_in_clone_mode
[18:40:03] ========== [PASSED] drm_test_check_in_clone_mode ===========
[18:40:03] =============== drm_test_check_valid_clones ===============
[18:40:03] [PASSED] not_in_clone_mode
[18:40:03] [PASSED] valid_clone
[18:40:03] [PASSED] invalid_clone
[18:40:03] =========== [PASSED] drm_test_check_valid_clones ===========
[18:40:03] ============= [PASSED] drm_validate_clone_mode =============
[18:40:03] ============= drm_validate_modeset (1 subtest) =============
[18:40:03] [PASSED] drm_test_check_connector_changed_modeset
[18:40:03] ============== [PASSED] drm_validate_modeset ===============
[18:40:03] ================== drm_buddy (7 subtests) ==================
[18:40:03] [PASSED] drm_test_buddy_alloc_limit
[18:40:03] [PASSED] drm_test_buddy_alloc_optimistic
[18:40:03] [PASSED] drm_test_buddy_alloc_pessimistic
[18:40:03] [PASSED] drm_test_buddy_alloc_pathological
[18:40:03] [PASSED] drm_test_buddy_alloc_contiguous
[18:40:03] [PASSED] drm_test_buddy_alloc_clear
[18:40:03] [PASSED] drm_test_buddy_alloc_range_bias
[18:40:03] ==================== [PASSED] drm_buddy ====================
[18:40:03] ============= drm_cmdline_parser (40 subtests) =============
[18:40:03] [PASSED] drm_test_cmdline_force_d_only
[18:40:03] [PASSED] drm_test_cmdline_force_D_only_dvi
[18:40:03] [PASSED] drm_test_cmdline_force_D_only_hdmi
[18:40:03] [PASSED] drm_test_cmdline_force_D_only_not_digital
[18:40:03] [PASSED] drm_test_cmdline_force_e_only
[18:40:03] [PASSED] drm_test_cmdline_res
[18:40:03] [PASSED] drm_test_cmdline_res_vesa
[18:40:03] [PASSED] drm_test_cmdline_res_vesa_rblank
[18:40:03] [PASSED] drm_test_cmdline_res_rblank
[18:40:03] [PASSED] drm_test_cmdline_res_bpp
[18:40:03] [PASSED] drm_test_cmdline_res_refresh
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[18:40:03] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[18:40:03] [PASSED] drm_test_cmdline_res_margins_force_on
[18:40:03] [PASSED] drm_test_cmdline_res_vesa_margins
[18:40:03] [PASSED] drm_test_cmdline_name
[18:40:03] [PASSED] drm_test_cmdline_name_bpp
[18:40:03] [PASSED] drm_test_cmdline_name_option
[18:40:03] [PASSED] drm_test_cmdline_name_bpp_option
[18:40:03] [PASSED] drm_test_cmdline_rotate_0
[18:40:03] [PASSED] drm_test_cmdline_rotate_90
[18:40:03] [PASSED] drm_test_cmdline_rotate_180
[18:40:03] [PASSED] drm_test_cmdline_rotate_270
[18:40:03] [PASSED] drm_test_cmdline_hmirror
[18:40:03] [PASSED] drm_test_cmdline_vmirror
[18:40:03] [PASSED] drm_test_cmdline_margin_options
[18:40:03] [PASSED] drm_test_cmdline_multiple_options
[18:40:03] [PASSED] drm_test_cmdline_bpp_extra_and_option
[18:40:03] [PASSED] drm_test_cmdline_extra_and_option
[18:40:03] [PASSED] drm_test_cmdline_freestanding_options
[18:40:03] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[18:40:03] [PASSED] drm_test_cmdline_panel_orientation
[18:40:03] ================ drm_test_cmdline_invalid =================
[18:40:03] [PASSED] margin_only
[18:40:03] [PASSED] interlace_only
[18:40:03] [PASSED] res_missing_x
[18:40:03] [PASSED] res_missing_y
[18:40:03] [PASSED] res_bad_y
[18:40:03] [PASSED] res_missing_y_bpp
[18:40:03] [PASSED] res_bad_bpp
[18:40:03] [PASSED] res_bad_refresh
[18:40:03] [PASSED] res_bpp_refresh_force_on_off
[18:40:03] [PASSED] res_invalid_mode
[18:40:03] [PASSED] res_bpp_wrong_place_mode
[18:40:03] [PASSED] name_bpp_refresh
[18:40:03] [PASSED] name_refresh
[18:40:03] [PASSED] name_refresh_wrong_mode
[18:40:03] [PASSED] name_refresh_invalid_mode
[18:40:03] [PASSED] rotate_multiple
[18:40:03] [PASSED] rotate_invalid_val
[18:40:03] [PASSED] rotate_truncated
[18:40:03] [PASSED] invalid_option
[18:40:03] [PASSED] invalid_tv_option
[18:40:03] [PASSED] truncated_tv_option
[18:40:03] ============ [PASSED] drm_test_cmdline_invalid =============
[18:40:03] =============== drm_test_cmdline_tv_options ===============
[18:40:03] [PASSED] NTSC
[18:40:03] [PASSED] NTSC_443
[18:40:03] [PASSED] NTSC_J
[18:40:03] [PASSED] PAL
[18:40:03] [PASSED] PAL_M
[18:40:03] [PASSED] PAL_N
[18:40:03] [PASSED] SECAM
[18:40:03] [PASSED] MONO_525
[18:40:03] [PASSED] MONO_625
[18:40:03] =========== [PASSED] drm_test_cmdline_tv_options ===========
[18:40:03] =============== [PASSED] drm_cmdline_parser ================
[18:40:03] ========== drmm_connector_hdmi_init (20 subtests) ==========
[18:40:03] [PASSED] drm_test_connector_hdmi_init_valid
[18:40:03] [PASSED] drm_test_connector_hdmi_init_bpc_8
[18:40:03] [PASSED] drm_test_connector_hdmi_init_bpc_10
[18:40:03] [PASSED] drm_test_connector_hdmi_init_bpc_12
[18:40:03] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[18:40:03] [PASSED] drm_test_connector_hdmi_init_bpc_null
[18:40:03] [PASSED] drm_test_connector_hdmi_init_formats_empty
[18:40:03] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[18:40:03] === drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[18:40:03] [PASSED] supported_formats=0x9 yuv420_allowed=1
[18:40:03] [PASSED] supported_formats=0x9 yuv420_allowed=0
[18:40:03] [PASSED] supported_formats=0x3 yuv420_allowed=1
[18:40:03] [PASSED] supported_formats=0x3 yuv420_allowed=0
[18:40:03] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[18:40:03] [PASSED] drm_test_connector_hdmi_init_null_ddc
[18:40:03] [PASSED] drm_test_connector_hdmi_init_null_product
[18:40:03] [PASSED] drm_test_connector_hdmi_init_null_vendor
[18:40:03] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[18:40:03] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[18:40:03] [PASSED] drm_test_connector_hdmi_init_product_valid
[18:40:03] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[18:40:03] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[18:40:03] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[18:40:03] ========= drm_test_connector_hdmi_init_type_valid =========
[18:40:03] [PASSED] HDMI-A
[18:40:03] [PASSED] HDMI-B
[18:40:03] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[18:40:03] ======== drm_test_connector_hdmi_init_type_invalid ========
[18:40:03] [PASSED] Unknown
[18:40:03] [PASSED] VGA
[18:40:03] [PASSED] DVI-I
[18:40:03] [PASSED] DVI-D
[18:40:03] [PASSED] DVI-A
[18:40:03] [PASSED] Composite
[18:40:03] [PASSED] SVIDEO
[18:40:03] [PASSED] LVDS
[18:40:03] [PASSED] Component
[18:40:03] [PASSED] DIN
[18:40:03] [PASSED] DP
[18:40:03] [PASSED] TV
[18:40:03] [PASSED] eDP
[18:40:03] [PASSED] Virtual
[18:40:03] [PASSED] DSI
[18:40:03] [PASSED] DPI
[18:40:03] [PASSED] Writeback
[18:40:03] [PASSED] SPI
[18:40:03] [PASSED] USB
[18:40:03] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[18:40:03] ============ [PASSED] drmm_connector_hdmi_init =============
[18:40:03] ============= drmm_connector_init (3 subtests) =============
[18:40:03] [PASSED] drm_test_drmm_connector_init
[18:40:03] [PASSED] drm_test_drmm_connector_init_null_ddc
[18:40:03] ========= drm_test_drmm_connector_init_type_valid =========
[18:40:03] [PASSED] Unknown
[18:40:03] [PASSED] VGA
[18:40:03] [PASSED] DVI-I
[18:40:03] [PASSED] DVI-D
[18:40:03] [PASSED] DVI-A
[18:40:03] [PASSED] Composite
[18:40:03] [PASSED] SVIDEO
[18:40:03] [PASSED] LVDS
[18:40:03] [PASSED] Component
[18:40:03] [PASSED] DIN
[18:40:03] [PASSED] DP
[18:40:03] [PASSED] HDMI-A
[18:40:03] [PASSED] HDMI-B
[18:40:03] [PASSED] TV
[18:40:03] [PASSED] eDP
[18:40:03] [PASSED] Virtual
[18:40:03] [PASSED] DSI
[18:40:03] [PASSED] DPI
[18:40:03] [PASSED] Writeback
[18:40:03] [PASSED] SPI
[18:40:03] [PASSED] USB
[18:40:03] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[18:40:03] =============== [PASSED] drmm_connector_init ===============
[18:40:03] ========= drm_connector_dynamic_init (6 subtests) ==========
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_init
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_init_properties
[18:40:03] ===== drm_test_drm_connector_dynamic_init_type_valid ======
[18:40:03] [PASSED] Unknown
[18:40:03] [PASSED] VGA
[18:40:03] [PASSED] DVI-I
[18:40:03] [PASSED] DVI-D
[18:40:03] [PASSED] DVI-A
[18:40:03] [PASSED] Composite
[18:40:03] [PASSED] SVIDEO
[18:40:03] [PASSED] LVDS
[18:40:03] [PASSED] Component
[18:40:03] [PASSED] DIN
[18:40:03] [PASSED] DP
[18:40:03] [PASSED] HDMI-A
[18:40:03] [PASSED] HDMI-B
[18:40:03] [PASSED] TV
[18:40:03] [PASSED] eDP
[18:40:03] [PASSED] Virtual
[18:40:03] [PASSED] DSI
[18:40:03] [PASSED] DPI
[18:40:03] [PASSED] Writeback
[18:40:03] [PASSED] SPI
[18:40:03] [PASSED] USB
[18:40:03] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[18:40:03] ======== drm_test_drm_connector_dynamic_init_name =========
[18:40:03] [PASSED] Unknown
[18:40:03] [PASSED] VGA
[18:40:03] [PASSED] DVI-I
[18:40:03] [PASSED] DVI-D
[18:40:03] [PASSED] DVI-A
[18:40:03] [PASSED] Composite
[18:40:03] [PASSED] SVIDEO
[18:40:03] [PASSED] LVDS
[18:40:03] [PASSED] Component
[18:40:03] [PASSED] DIN
[18:40:03] [PASSED] DP
[18:40:03] [PASSED] HDMI-A
[18:40:03] [PASSED] HDMI-B
[18:40:03] [PASSED] TV
[18:40:03] [PASSED] eDP
[18:40:03] [PASSED] Virtual
[18:40:03] [PASSED] DSI
[18:40:03] [PASSED] DPI
[18:40:03] [PASSED] Writeback
[18:40:03] [PASSED] SPI
[18:40:03] [PASSED] USB
[18:40:03] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[18:40:03] =========== [PASSED] drm_connector_dynamic_init ============
[18:40:03] ==== drm_connector_dynamic_register_early (4 subtests) =====
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[18:40:03] ====== [PASSED] drm_connector_dynamic_register_early =======
[18:40:03] ======= drm_connector_dynamic_register (7 subtests) ========
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[18:40:03] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[18:40:03] ========= [PASSED] drm_connector_dynamic_register ==========
[18:40:03] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[18:40:03] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[18:40:03] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[18:40:03] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[18:40:03] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[18:40:03] ========== drm_test_get_tv_mode_from_name_valid ===========
[18:40:03] [PASSED] NTSC
[18:40:03] [PASSED] NTSC-443
[18:40:03] [PASSED] NTSC-J
[18:40:03] [PASSED] PAL
[18:40:03] [PASSED] PAL-M
[18:40:03] [PASSED] PAL-N
[18:40:03] [PASSED] SECAM
[18:40:03] [PASSED] Mono
[18:40:03] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[18:40:03] [PASSED] drm_test_get_tv_mode_from_name_truncated
[18:40:03] ============ [PASSED] drm_get_tv_mode_from_name ============
[18:40:03] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[18:40:03] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[18:40:03] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[18:40:03] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[18:40:03] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[18:40:03] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[18:40:03] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[18:40:03] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid =
[18:40:03] [PASSED] VIC 96
[18:40:03] [PASSED] VIC 97
[18:40:03] [PASSED] VIC 101
[18:40:03] [PASSED] VIC 102
[18:40:03] [PASSED] VIC 106
[18:40:03] [PASSED] VIC 107
[18:40:03] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[18:40:03] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[18:40:03] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[18:40:03] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[18:40:03] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[18:40:03] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[18:40:03] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[18:40:03] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[18:40:03] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name ====
[18:40:03] [PASSED] Automatic
[18:40:03] [PASSED] Full
[18:40:03] [PASSED] Limited 16:235
[18:40:03] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[18:40:03] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[18:40:03] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[18:40:03] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[18:40:03] === drm_test_drm_hdmi_connector_get_output_format_name ====
[18:40:03] [PASSED] RGB
[18:40:03] [PASSED] YUV 4:2:0
[18:40:03] [PASSED] YUV 4:2:2
[18:40:03] [PASSED] YUV 4:4:4
[18:40:03] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[18:40:03] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[18:40:03] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[18:40:03] ============= drm_damage_helper (21 subtests) ==============
[18:40:03] [PASSED] drm_test_damage_iter_no_damage
[18:40:03] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[18:40:03] [PASSED] drm_test_damage_iter_no_damage_src_moved
[18:40:03] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[18:40:03] [PASSED] drm_test_damage_iter_no_damage_not_visible
[18:40:03] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[18:40:03] [PASSED] drm_test_damage_iter_no_damage_no_fb
[18:40:03] [PASSED] drm_test_damage_iter_simple_damage
[18:40:03] [PASSED] drm_test_damage_iter_single_damage
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_outside_src
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_src_moved
[18:40:03] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[18:40:03] [PASSED] drm_test_damage_iter_damage
[18:40:03] [PASSED] drm_test_damage_iter_damage_one_intersect
[18:40:03] [PASSED] drm_test_damage_iter_damage_one_outside
[18:40:03] [PASSED] drm_test_damage_iter_damage_src_moved
[18:40:03] [PASSED] drm_test_damage_iter_damage_not_visible
[18:40:03] ================ [PASSED] drm_damage_helper ================
[18:40:03] ============== drm_dp_mst_helper (3 subtests) ==============
[18:40:03] ============== drm_test_dp_mst_calc_pbn_mode ==============
[18:40:03] [PASSED] Clock 154000 BPP 30 DSC disabled
[18:40:03] [PASSED] Clock 234000 BPP 30 DSC disabled
[18:40:03] [PASSED] Clock 297000 BPP 24 DSC disabled
[18:40:03] [PASSED] Clock 332880 BPP 24 DSC enabled
[18:40:03] [PASSED] Clock 324540 BPP 24 DSC enabled
[18:40:03] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[18:40:03] ============== drm_test_dp_mst_calc_pbn_div ===============
[18:40:03] [PASSED] Link rate 2000000 lane count 4
[18:40:03] [PASSED] Link rate 2000000 lane count 2
[18:40:03] [PASSED] Link rate 2000000 lane count 1
[18:40:03] [PASSED] Link rate 1350000 lane count 4
[18:40:03] [PASSED] Link rate 1350000 lane count 2
[18:40:03] [PASSED] Link rate 1350000 lane count 1
[18:40:03] [PASSED] Link rate 1000000 lane count 4
[18:40:03] [PASSED] Link rate 1000000 lane count 2
[18:40:03] [PASSED] Link rate 1000000 lane count 1
[18:40:03] [PASSED] Link rate 810000 lane count 4
[18:40:03] [PASSED] Link rate 810000 lane count 2
[18:40:03] [PASSED] Link rate 810000 lane count 1
[18:40:03] [PASSED] Link rate 540000 lane count 4
[18:40:03] [PASSED] Link rate 540000 lane count 2
[18:40:03] [PASSED] Link rate 540000 lane count 1
[18:40:03] [PASSED] Link rate 270000 lane count 4
[18:40:03] [PASSED] Link rate 270000 lane count 2
[18:40:03] [PASSED] Link rate 270000 lane count 1
[18:40:03] [PASSED] Link rate 162000 lane count 4
[18:40:03] [PASSED] Link rate 162000 lane count 2
[18:40:03] [PASSED] Link rate 162000 lane count 1
[18:40:03] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[18:40:03] ========= drm_test_dp_mst_sideband_msg_req_decode =========
[18:40:03] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[18:40:03] [PASSED] DP_POWER_UP_PHY with port number
[18:40:03] [PASSED] DP_POWER_DOWN_PHY with port number
[18:40:03] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[18:40:03] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[18:40:03] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[18:40:03] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[18:40:03] [PASSED] DP_QUERY_PAYLOAD with port number
[18:40:03] [PASSED] DP_QUERY_PAYLOAD with VCPI
[18:40:03] [PASSED] DP_REMOTE_DPCD_READ with port number
[18:40:03] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[18:40:03] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[18:40:03] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[18:40:03] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[18:40:03] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[18:40:03] [PASSED] DP_REMOTE_I2C_READ with port number
[18:40:03] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[18:40:03] [PASSED] DP_REMOTE_I2C_READ with transactions array
[18:40:03] [PASSED] DP_REMOTE_I2C_WRITE with port number
[18:40:03] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[18:40:03] [PASSED] DP_REMOTE_I2C_WRITE with data array
[18:40:03] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[18:40:03] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[18:40:03] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[18:40:03] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[18:40:03] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[18:40:03] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[18:40:03] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[18:40:03] ================ [PASSED] drm_dp_mst_helper ================
[18:40:03] ================== drm_exec (7 subtests) ===================
[18:40:03] [PASSED] sanitycheck
[18:40:03] [PASSED] test_lock
[18:40:03] [PASSED] test_lock_unlock
[18:40:03] [PASSED] test_duplicates
[18:40:03] [PASSED] test_prepare
[18:40:03] [PASSED] test_prepare_array
[18:40:03] [PASSED] test_multiple_loops
[18:40:03] ==================== [PASSED] drm_exec =====================
[18:40:03] =========== drm_format_helper_test (18 subtests) ===========
[18:40:03] ============== drm_test_fb_xrgb8888_to_gray8 ==============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[18:40:03] ============= drm_test_fb_xrgb8888_to_rgb332 ==============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[18:40:03] ============= drm_test_fb_xrgb8888_to_rgb565 ==============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[18:40:03] ============ drm_test_fb_xrgb8888_to_xrgb1555 =============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[18:40:03] ============ drm_test_fb_xrgb8888_to_argb1555 =============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[18:40:03] ============ drm_test_fb_xrgb8888_to_rgba5551 =============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[18:40:03] ============= drm_test_fb_xrgb8888_to_rgb888 ==============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[18:40:03] ============= drm_test_fb_xrgb8888_to_bgr888 ==============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[18:40:03] ============ drm_test_fb_xrgb8888_to_argb8888 =============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[18:40:03] =========== drm_test_fb_xrgb8888_to_xrgb2101010 ===========
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[18:40:03] =========== drm_test_fb_xrgb8888_to_argb2101010 ===========
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[18:40:03] ============== drm_test_fb_xrgb8888_to_mono ===============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[18:40:03] ==================== drm_test_fb_swab =====================
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ================ [PASSED] drm_test_fb_swab =================
[18:40:03] ============ drm_test_fb_xrgb8888_to_xbgr8888 =============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[18:40:03] ============ drm_test_fb_xrgb8888_to_abgr8888 =============
[18:40:03] [PASSED] single_pixel_source_buffer
[18:40:03] [PASSED] single_pixel_clip_rectangle
[18:40:03] [PASSED] well_known_colors
[18:40:03] [PASSED] destination_pitch
[18:40:03] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[18:40:03] ================= drm_test_fb_clip_offset =================
[18:40:03] [PASSED] pass through
[18:40:03] [PASSED] horizontal offset
[18:40:03] [PASSED] vertical offset
[18:40:03] [PASSED] horizontal and vertical offset
[18:40:03] [PASSED] horizontal offset (custom pitch)
[18:40:03] [PASSED] vertical offset (custom pitch)
[18:40:03] [PASSED] horizontal and vertical offset (custom pitch)
[18:40:03] ============= [PASSED] drm_test_fb_clip_offset =============
[18:40:03] ============== drm_test_fb_build_fourcc_list ==============
[18:40:03] [PASSED] no native formats
[18:40:03] [PASSED] XRGB8888 as native format
[18:40:03] [PASSED] remove duplicates
[18:40:03] [PASSED] convert alpha formats
[18:40:03] [PASSED] random formats
[18:40:03] ========== [PASSED] drm_test_fb_build_fourcc_list ==========
[18:40:03] =================== drm_test_fb_memcpy ====================
[18:40:03] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[18:40:03] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[18:40:03] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[18:40:03] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[18:40:03] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[18:40:03] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[18:40:03] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[18:40:03] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[18:40:03] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[18:40:03] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[18:40:03] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[18:40:03] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[18:40:03] =============== [PASSED] drm_test_fb_memcpy ================
[18:40:03] ============= [PASSED] drm_format_helper_test ==============
[18:40:03] ================= drm_format (18 subtests) =================
[18:40:03] [PASSED] drm_test_format_block_width_invalid
[18:40:03] [PASSED] drm_test_format_block_width_one_plane
[18:40:03] [PASSED] drm_test_format_block_width_two_plane
[18:40:03] [PASSED] drm_test_format_block_width_three_plane
[18:40:03] [PASSED] drm_test_format_block_width_tiled
[18:40:03] [PASSED] drm_test_format_block_height_invalid
[18:40:03] [PASSED] drm_test_format_block_height_one_plane
[18:40:03] [PASSED] drm_test_format_block_height_two_plane
[18:40:03] [PASSED] drm_test_format_block_height_three_plane
[18:40:03] [PASSED] drm_test_format_block_height_tiled
[18:40:03] [PASSED] drm_test_format_min_pitch_invalid
[18:40:03] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[18:40:03] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[18:40:03] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[18:40:03] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[18:40:03] [PASSED] drm_test_format_min_pitch_two_plane
[18:40:03] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[18:40:03] [PASSED] drm_test_format_min_pitch_tiled
[18:40:03] =================== [PASSED] drm_format ====================
[18:40:03] ============== drm_framebuffer (10 subtests) ===============
[18:40:03] ========== drm_test_framebuffer_check_src_coords ==========
[18:40:03] [PASSED] Success: source fits into fb
[18:40:03] [PASSED] Fail: overflowing fb with x-axis coordinate
[18:40:03] [PASSED] Fail: overflowing fb with y-axis coordinate
[18:40:03] [PASSED] Fail: overflowing fb with source width
[18:40:03] [PASSED] Fail: overflowing fb with source height
[18:40:03] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[18:40:03] [PASSED] drm_test_framebuffer_cleanup
[18:40:03] =============== drm_test_framebuffer_create ===============
[18:40:03] [PASSED] ABGR8888 normal sizes
[18:40:03] [PASSED] ABGR8888 max sizes
[18:40:03] [PASSED] ABGR8888 pitch greater than min required
[18:40:03] [PASSED] ABGR8888 pitch less than min required
[18:40:03] [PASSED] ABGR8888 Invalid width
[18:40:03] [PASSED] ABGR8888 Invalid buffer handle
[18:40:03] [PASSED] No pixel format
[18:40:03] [PASSED] ABGR8888 Width 0
[18:40:03] [PASSED] ABGR8888 Height 0
[18:40:03] [PASSED] ABGR8888 Out of bound height * pitch combination
[18:40:03] [PASSED] ABGR8888 Large buffer offset
[18:40:03] [PASSED] ABGR8888 Buffer offset for inexistent plane
[18:40:03] [PASSED] ABGR8888 Invalid flag
[18:40:03] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[18:40:03] [PASSED] ABGR8888 Valid buffer modifier
[18:40:03] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[18:40:03] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] NV12 Normal sizes
[18:40:03] [PASSED] NV12 Max sizes
[18:40:03] [PASSED] NV12 Invalid pitch
[18:40:03] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[18:40:03] [PASSED] NV12 different modifier per-plane
[18:40:03] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[18:40:03] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] NV12 Modifier for inexistent plane
[18:40:03] [PASSED] NV12 Handle for inexistent plane
[18:40:03] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[18:40:03] [PASSED] YVU420 Normal sizes
[18:40:03] [PASSED] YVU420 Max sizes
[18:40:03] [PASSED] YVU420 Invalid pitch
[18:40:03] [PASSED] YVU420 Different pitches
[18:40:03] [PASSED] YVU420 Different buffer offsets/pitches
[18:40:03] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[18:40:03] [PASSED] YVU420 Valid modifier
[18:40:03] [PASSED] YVU420 Different modifiers per plane
[18:40:03] [PASSED] YVU420 Modifier for inexistent plane
[18:40:03] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[18:40:03] [PASSED] X0L2 Normal sizes
[18:40:03] [PASSED] X0L2 Max sizes
[18:40:03] [PASSED] X0L2 Invalid pitch
[18:40:03] [PASSED] X0L2 Pitch greater than minimum required
[18:40:03] [PASSED] X0L2 Handle for inexistent plane
[18:40:03] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[18:40:03] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[18:40:03] [PASSED] X0L2 Valid modifier
[18:40:03] [PASSED] X0L2 Modifier for inexistent plane
[18:40:03] =========== [PASSED] drm_test_framebuffer_create ===========
[18:40:03] [PASSED] drm_test_framebuffer_free
[18:40:03] [PASSED] drm_test_framebuffer_init
[18:40:03] [PASSED] drm_test_framebuffer_init_bad_format
[18:40:03] [PASSED] drm_test_framebuffer_init_dev_mismatch
[18:40:03] [PASSED] drm_test_framebuffer_lookup
[18:40:03] [PASSED] drm_test_framebuffer_lookup_inexistent
[18:40:03] [PASSED] drm_test_framebuffer_modifiers_not_supported
[18:40:03] ================= [PASSED] drm_framebuffer =================
[18:40:03] ================ drm_gem_shmem (8 subtests) ================
[18:40:03] [PASSED] drm_gem_shmem_test_obj_create
[18:40:03] [PASSED] drm_gem_shmem_test_obj_create_private
[18:40:03] [PASSED] drm_gem_shmem_test_pin_pages
[18:40:03] [PASSED] drm_gem_shmem_test_vmap
[18:40:03] [PASSED] drm_gem_shmem_test_get_pages_sgt
[18:40:03] [PASSED] drm_gem_shmem_test_get_sg_table
[18:40:03] [PASSED] drm_gem_shmem_test_madvise
[18:40:03] [PASSED] drm_gem_shmem_test_purge
[18:40:03] ================== [PASSED] drm_gem_shmem ==================
[18:40:03] === drm_atomic_helper_connector_hdmi_check (23 subtests) ===
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[18:40:03] [PASSED] drm_test_check_disable_connector
[18:40:03] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[18:40:03] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback
[18:40:03] [PASSED] drm_test_check_max_tmds_rate_format_fallback
[18:40:03] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[18:40:03] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[18:40:03] [PASSED] drm_test_check_output_bpc_dvi
[18:40:03] [PASSED] drm_test_check_output_bpc_format_vic_1
[18:40:03] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[18:40:03] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[18:40:03] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[18:40:03] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[18:40:03] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[18:40:03] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[18:40:03] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[18:40:03] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[18:40:03] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[18:40:03] [PASSED] drm_test_check_broadcast_rgb_value
[18:40:03] [PASSED] drm_test_check_bpc_8_value
[18:40:03] [PASSED] drm_test_check_bpc_10_value
[18:40:03] [PASSED] drm_test_check_bpc_12_value
[18:40:03] [PASSED] drm_test_check_format_value
[18:40:03] [PASSED] drm_test_check_tmds_char_value
[18:40:03] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[18:40:03] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[18:40:03] [PASSED] drm_test_check_mode_valid
[18:40:03] [PASSED] drm_test_check_mode_valid_reject
[18:40:03] [PASSED] drm_test_check_mode_valid_reject_rate
[18:40:03] [PASSED] drm_test_check_mode_valid_reject_max_clock
[18:40:03] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[18:40:03] ================= drm_managed (2 subtests) =================
[18:40:03] [PASSED] drm_test_managed_release_action
[18:40:03] [PASSED] drm_test_managed_run_action
[18:40:03] =================== [PASSED] drm_managed ===================
[18:40:03] =================== drm_mm (6 subtests) ====================
[18:40:03] [PASSED] drm_test_mm_init
[18:40:03] [PASSED] drm_test_mm_debug
[18:40:03] [PASSED] drm_test_mm_align32
[18:40:03] [PASSED] drm_test_mm_align64
[18:40:03] [PASSED] drm_test_mm_lowest
[18:40:03] [PASSED] drm_test_mm_highest
[18:40:03] ===================== [PASSED] drm_mm ======================
[18:40:03] ============= drm_modes_analog_tv (5 subtests) =============
[18:40:03] [PASSED] drm_test_modes_analog_tv_mono_576i
[18:40:03] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[18:40:03] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[18:40:03] [PASSED] drm_test_modes_analog_tv_pal_576i
[18:40:03] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[18:40:03] =============== [PASSED] drm_modes_analog_tv ===============
[18:40:03] ============== drm_plane_helper (2 subtests) ===============
[18:40:03] =============== drm_test_check_plane_state ================
[18:40:03] [PASSED] clipping_simple
[18:40:03] [PASSED] clipping_rotate_reflect
[18:40:03] [PASSED] positioning_simple
[18:40:03] [PASSED] upscaling
[18:40:03] [PASSED] downscaling
[18:40:03] [PASSED] rounding1
[18:40:03] [PASSED] rounding2
[18:40:03] [PASSED] rounding3
[18:40:03] [PASSED] rounding4
[18:40:03] =========== [PASSED] drm_test_check_plane_state ============
[18:40:03] =========== drm_test_check_invalid_plane_state ============
[18:40:03] [PASSED] positioning_invalid
[18:40:03] [PASSED] upscaling_invalid
[18:40:03] [PASSED] downscaling_invalid
[18:40:03] ======= [PASSED] drm_test_check_invalid_plane_state ========
[18:40:03] ================ [PASSED] drm_plane_helper =================
[18:40:03] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[18:40:03] ====== drm_test_connector_helper_tv_get_modes_check =======
[18:40:03] [PASSED] None
[18:40:03] [PASSED] PAL
[18:40:03] [PASSED] NTSC
[18:40:03] [PASSED] Both, NTSC Default
[18:40:03] [PASSED] Both, PAL Default
[18:40:03] [PASSED] Both, NTSC Default, with PAL on command-line
[18:40:03] [PASSED] Both, PAL Default, with NTSC on command-line
[18:40:03] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[18:40:03] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[18:40:03] ================== drm_rect (9 subtests) ===================
[18:40:03] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[18:40:03] [PASSED] drm_test_rect_clip_scaled_not_clipped
[18:40:03] [PASSED] drm_test_rect_clip_scaled_clipped
[18:40:03] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[18:40:03] ================= drm_test_rect_intersect =================
[18:40:03] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[18:40:03] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[18:40:03] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[18:40:03] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[18:40:03] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[18:40:03] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[18:40:03] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[18:40:03] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[18:40:03] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[18:40:03] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[18:40:03] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[18:40:03] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[18:40:03] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[18:40:03] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[18:40:03] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[18:40:03] ============= [PASSED] drm_test_rect_intersect =============
[18:40:03] ================ drm_test_rect_calc_hscale ================
[18:40:03] [PASSED] normal use
[18:40:03] [PASSED] out of max range
[18:40:03] [PASSED] out of min range
[18:40:03] [PASSED] zero dst
[18:40:03] [PASSED] negative src
[18:40:03] [PASSED] negative dst
[18:40:03] ============ [PASSED] drm_test_rect_calc_hscale ============
[18:40:03] ================ drm_test_rect_calc_vscale ================
[18:40:03] [PASSED] normal use
[18:40:03] [PASSED] out of max range
[18:40:03] [PASSED] out of min range
[18:40:03] [PASSED] zero dst
[18:40:03] [PASSED] negative src
[18:40:03] [PASSED] negative dst
stty: 'standard input': Inappropriate ioctl for device
[18:40:03] ============ [PASSED] drm_test_rect_calc_vscale ============
[18:40:03] ================== drm_test_rect_rotate ===================
[18:40:03] [PASSED] reflect-x
[18:40:03] [PASSED] reflect-y
[18:40:03] [PASSED] rotate-0
[18:40:03] [PASSED] rotate-90
[18:40:03] [PASSED] rotate-180
[18:40:03] [PASSED] rotate-270
[18:40:03] ============== [PASSED] drm_test_rect_rotate ===============
[18:40:03] ================ drm_test_rect_rotate_inv =================
[18:40:03] [PASSED] reflect-x
[18:40:03] [PASSED] reflect-y
[18:40:03] [PASSED] rotate-0
[18:40:03] [PASSED] rotate-90
[18:40:03] [PASSED] rotate-180
[18:40:03] [PASSED] rotate-270
[18:40:03] ============ [PASSED] drm_test_rect_rotate_inv =============
[18:40:03] ==================== [PASSED] drm_rect =====================
[18:40:03] ============================================================
[18:40:03] Testing complete. Ran 602 tests: passed: 602
[18:40:03] Elapsed time: 22.875s total, 1.691s configuring, 21.017s building, 0.143s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[18:40:03] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[18:40:05] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json ARCH=um O=.kunit --jobs=48
[18:40:12] Starting KUnit Kernel (1/1)...
[18:40:12] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[18:40:12] ================= ttm_device (5 subtests) ==================
[18:40:12] [PASSED] ttm_device_init_basic
[18:40:12] [PASSED] ttm_device_init_multiple
[18:40:12] [PASSED] ttm_device_fini_basic
[18:40:12] [PASSED] ttm_device_init_no_vma_man
[18:40:12] ================== ttm_device_init_pools ==================
[18:40:12] [PASSED] No DMA allocations, no DMA32 required
[18:40:12] [PASSED] DMA allocations, DMA32 required
[18:40:12] [PASSED] No DMA allocations, DMA32 required
[18:40:12] [PASSED] DMA allocations, no DMA32 required
[18:40:12] ============== [PASSED] ttm_device_init_pools ==============
[18:40:12] =================== [PASSED] ttm_device ====================
[18:40:12] ================== ttm_pool (8 subtests) ===================
[18:40:12] ================== ttm_pool_alloc_basic ===================
[18:40:12] [PASSED] One page
[18:40:12] [PASSED] More than one page
[18:40:12] [PASSED] Above the allocation limit
[18:40:12] [PASSED] One page, with coherent DMA mappings enabled
[18:40:12] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[18:40:12] ============== [PASSED] ttm_pool_alloc_basic ===============
[18:40:12] ============== ttm_pool_alloc_basic_dma_addr ==============
[18:40:12] [PASSED] One page
[18:40:12] [PASSED] More than one page
[18:40:12] [PASSED] Above the allocation limit
[18:40:12] [PASSED] One page, with coherent DMA mappings enabled
[18:40:12] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[18:40:12] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[18:40:12] [PASSED] ttm_pool_alloc_order_caching_match
[18:40:12] [PASSED] ttm_pool_alloc_caching_mismatch
[18:40:12] [PASSED] ttm_pool_alloc_order_mismatch
[18:40:12] [PASSED] ttm_pool_free_dma_alloc
[18:40:12] [PASSED] ttm_pool_free_no_dma_alloc
[18:40:12] [PASSED] ttm_pool_fini_basic
[18:40:12] ==================== [PASSED] ttm_pool =====================
[18:40:12] ================ ttm_resource (8 subtests) =================
[18:40:12] ================= ttm_resource_init_basic =================
[18:40:12] [PASSED] Init resource in TTM_PL_SYSTEM
[18:40:12] [PASSED] Init resource in TTM_PL_VRAM
[18:40:12] [PASSED] Init resource in a private placement
[18:40:12] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[18:40:12] ============= [PASSED] ttm_resource_init_basic =============
[18:40:12] [PASSED] ttm_resource_init_pinned
[18:40:12] [PASSED] ttm_resource_fini_basic
[18:40:12] [PASSED] ttm_resource_manager_init_basic
[18:40:12] [PASSED] ttm_resource_manager_usage_basic
[18:40:12] [PASSED] ttm_resource_manager_set_used_basic
[18:40:12] [PASSED] ttm_sys_man_alloc_basic
[18:40:12] [PASSED] ttm_sys_man_free_basic
[18:40:12] ================== [PASSED] ttm_resource ===================
[18:40:12] =================== ttm_tt (15 subtests) ===================
[18:40:12] ==================== ttm_tt_init_basic ====================
[18:40:12] [PASSED] Page-aligned size
[18:40:12] [PASSED] Extra pages requested
[18:40:12] ================ [PASSED] ttm_tt_init_basic ================
[18:40:12] [PASSED] ttm_tt_init_misaligned
[18:40:12] [PASSED] ttm_tt_fini_basic
[18:40:12] [PASSED] ttm_tt_fini_sg
[18:40:12] [PASSED] ttm_tt_fini_shmem
[18:40:12] [PASSED] ttm_tt_create_basic
[18:40:12] [PASSED] ttm_tt_create_invalid_bo_type
[18:40:12] [PASSED] ttm_tt_create_ttm_exists
[18:40:12] [PASSED] ttm_tt_create_failed
[18:40:12] [PASSED] ttm_tt_destroy_basic
[18:40:12] [PASSED] ttm_tt_populate_null_ttm
[18:40:12] [PASSED] ttm_tt_populate_populated_ttm
[18:40:12] [PASSED] ttm_tt_unpopulate_basic
[18:40:12] [PASSED] ttm_tt_unpopulate_empty_ttm
[18:40:12] [PASSED] ttm_tt_swapin_basic
[18:40:12] ===================== [PASSED] ttm_tt ======================
[18:40:12] =================== ttm_bo (14 subtests) ===================
[18:40:12] =========== ttm_bo_reserve_optimistic_no_ticket ===========
[18:40:12] [PASSED] Cannot be interrupted and sleeps
[18:40:12] [PASSED] Cannot be interrupted, locks straight away
[18:40:12] [PASSED] Can be interrupted, sleeps
[18:40:12] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[18:40:12] [PASSED] ttm_bo_reserve_locked_no_sleep
[18:40:12] [PASSED] ttm_bo_reserve_no_wait_ticket
[18:40:12] [PASSED] ttm_bo_reserve_double_resv
[18:40:12] [PASSED] ttm_bo_reserve_interrupted
[18:40:12] [PASSED] ttm_bo_reserve_deadlock
[18:40:12] [PASSED] ttm_bo_unreserve_basic
[18:40:12] [PASSED] ttm_bo_unreserve_pinned
[18:40:12] [PASSED] ttm_bo_unreserve_bulk
[18:40:12] [PASSED] ttm_bo_put_basic
[18:40:12] [PASSED] ttm_bo_put_shared_resv
[18:40:12] [PASSED] ttm_bo_pin_basic
[18:40:12] [PASSED] ttm_bo_pin_unpin_resource
[18:40:12] [PASSED] ttm_bo_multiple_pin_one_unpin
[18:40:12] ===================== [PASSED] ttm_bo ======================
[18:40:12] ============== ttm_bo_validate (22 subtests) ===============
[18:40:12] ============== ttm_bo_init_reserved_sys_man ===============
[18:40:12] [PASSED] Buffer object for userspace
[18:40:12] [PASSED] Kernel buffer object
[18:40:12] [PASSED] Shared buffer object
[18:40:12] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[18:40:12] ============== ttm_bo_init_reserved_mock_man ==============
[18:40:12] [PASSED] Buffer object for userspace
[18:40:12] [PASSED] Kernel buffer object
[18:40:12] [PASSED] Shared buffer object
[18:40:12] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[18:40:12] [PASSED] ttm_bo_init_reserved_resv
[18:40:12] ================== ttm_bo_validate_basic ==================
[18:40:12] [PASSED] Buffer object for userspace
[18:40:12] [PASSED] Kernel buffer object
[18:40:12] [PASSED] Shared buffer object
[18:40:12] ============== [PASSED] ttm_bo_validate_basic ==============
[18:40:12] [PASSED] ttm_bo_validate_invalid_placement
[18:40:12] ============= ttm_bo_validate_same_placement ==============
[18:40:12] [PASSED] System manager
[18:40:12] [PASSED] VRAM manager
[18:40:12] ========= [PASSED] ttm_bo_validate_same_placement ==========
[18:40:12] [PASSED] ttm_bo_validate_failed_alloc
[18:40:12] [PASSED] ttm_bo_validate_pinned
[18:40:12] [PASSED] ttm_bo_validate_busy_placement
[18:40:12] ================ ttm_bo_validate_multihop =================
[18:40:12] [PASSED] Buffer object for userspace
[18:40:12] [PASSED] Kernel buffer object
[18:40:12] [PASSED] Shared buffer object
[18:40:12] ============ [PASSED] ttm_bo_validate_multihop =============
[18:40:12] ========== ttm_bo_validate_no_placement_signaled ==========
[18:40:12] [PASSED] Buffer object in system domain, no page vector
[18:40:12] [PASSED] Buffer object in system domain with an existing page vector
[18:40:12] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[18:40:12] ======== ttm_bo_validate_no_placement_not_signaled ========
[18:40:12] [PASSED] Buffer object for userspace
[18:40:12] [PASSED] Kernel buffer object
[18:40:12] [PASSED] Shared buffer object
[18:40:12] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[18:40:12] [PASSED] ttm_bo_validate_move_fence_signaled
[18:40:13] ========= ttm_bo_validate_move_fence_not_signaled =========
[18:40:13] [PASSED] Waits for GPU
[18:40:13] [PASSED] Tries to lock straight away
[18:40:13] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[18:40:13] [PASSED] ttm_bo_validate_swapout
[18:40:13] [PASSED] ttm_bo_validate_happy_evict
[18:40:13] [PASSED] ttm_bo_validate_all_pinned_evict
[18:40:13] [PASSED] ttm_bo_validate_allowed_only_evict
[18:40:13] [PASSED] ttm_bo_validate_deleted_evict
[18:40:13] [PASSED] ttm_bo_validate_busy_domain_evict
[18:40:13] [PASSED] ttm_bo_validate_evict_gutting
[18:40:13] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[18:40:13] ================= [PASSED] ttm_bo_validate =================
[18:40:13] ============================================================
[18:40:13] Testing complete. Ran 102 tests: passed: 102
[18:40:13] Elapsed time: 9.920s total, 1.659s configuring, 7.593s building, 0.576s running
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✓ CI.Build: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (5 preceding siblings ...)
2025-03-11 18:40 ` ✓ CI.KUnit: " Patchwork
@ 2025-03-11 18:57 ` Patchwork
2025-03-11 18:59 ` ✓ CI.Hooks: " Patchwork
` (4 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 18:57 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : success
== Summary ==
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/events/amd/
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/events/amd/amd-uncore.ko
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/events/rapl.ko
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/kvm/
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/kvm/kvm.ko
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/kvm/kvm-intel.ko
lib/modules/6.14.0-rc6-xe+/kernel/arch/x86/kvm/kvm-amd.ko
lib/modules/6.14.0-rc6-xe+/kernel/kernel/
lib/modules/6.14.0-rc6-xe+/kernel/kernel/kheaders.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/
lib/modules/6.14.0-rc6-xe+/kernel/crypto/ecrdsa_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/xcbc.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/serpent_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/aria_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/crypto_simd.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/adiantum.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/tcrypt.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/crypto_engine.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/zstd.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/asymmetric_keys/
lib/modules/6.14.0-rc6-xe+/kernel/crypto/asymmetric_keys/pkcs7_test_key.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/asymmetric_keys/pkcs8_key_parser.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/des_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/xctr.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/authenc.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/sm4_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/camellia_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/sm3.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/pcrypt.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/aegis128.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/af_alg.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/algif_aead.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/cmac.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/sm3_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/aes_ti.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/chacha_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/poly1305_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/nhpoly1305.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/crc32_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/essiv.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/ccm.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/wp512.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/streebog_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/authencesn.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/echainiv.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/lrw.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/cryptd.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/crypto_user.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/algif_hash.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/polyval-generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/hctr2.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/842.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/pcbc.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/ansi_cprng.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/cast6_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/twofish_common.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/twofish_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/lz4hc.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/blowfish_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/md4.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/chacha20poly1305.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/curve25519-generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/lz4.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/rmd160.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/algif_skcipher.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/cast5_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/fcrypt.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/ecdsa_generic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/sm4.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/cast_common.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/blowfish_common.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/michael_mic.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/async_tx/
lib/modules/6.14.0-rc6-xe+/kernel/crypto/async_tx/async_xor.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/async_tx/async_tx.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/async_tx/async_memcpy.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/async_tx/async_pq.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/async_tx/async_raid6_recov.ko
lib/modules/6.14.0-rc6-xe+/kernel/crypto/algif_rng.ko
lib/modules/6.14.0-rc6-xe+/kernel/block/
lib/modules/6.14.0-rc6-xe+/kernel/block/bfq.ko
lib/modules/6.14.0-rc6-xe+/kernel/block/kyber-iosched.ko
lib/modules/6.14.0-rc6-xe+/build
lib/modules/6.14.0-rc6-xe+/modules.alias.bin
lib/modules/6.14.0-rc6-xe+/modules.builtin
lib/modules/6.14.0-rc6-xe+/modules.softdep
lib/modules/6.14.0-rc6-xe+/modules.alias
lib/modules/6.14.0-rc6-xe+/modules.order
lib/modules/6.14.0-rc6-xe+/modules.symbols
lib/modules/6.14.0-rc6-xe+/modules.dep.bin
+ mv kernel-nodebug.tar.gz ..
+ cd ..
+ rm -rf archive
++ date +%s
+ echo -e '\e[0Ksection_end:1741719417:package_x86_64_nodebug\r\e[0K'
^[[0Ksection_end:1741719417:package_x86_64_nodebug
^[[0K
+ sync
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✓ CI.Hooks: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (6 preceding siblings ...)
2025-03-11 18:57 ` ✓ CI.Build: " Patchwork
@ 2025-03-11 18:59 ` Patchwork
2025-03-11 19:01 ` ✗ CI.checksparse: warning " Patchwork
` (3 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 18:59 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : success
== Summary ==
run-parts: executing /workspace/ci/hooks/00-showenv
+ grep -Ei '(^|\W)CI_'
+ export
declare -x CI_KERNEL_BUILD_DIR="/workspace/kernel/build64-default"
declare -x CI_KERNEL_SRC_DIR="/workspace/kernel"
declare -x CI_TOOLS_SRC_DIR="/workspace/ci"
declare -x CI_WORKSPACE_DIR="/workspace"
run-parts: executing /workspace/ci/hooks/10-build-W1
+ SRC_DIR=/workspace/kernel
+ RESTORE_DISPLAY_CONFIG=0
+ '[' -n /workspace/kernel/build64-default ']'
+ BUILD_DIR=/workspace/kernel/build64-default
+ cd /workspace/kernel
++ nproc
+ make -j48 O=/workspace/kernel/build64-default modules_prepare
make[1]: Entering directory '/workspace/kernel/build64-default'
GEN Makefile
DESCEND objtool
CALL ../scripts/checksyscalls.sh
INSTALL libsubcmd_headers
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/exec-cmd.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/help.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/pager.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/run-command.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/parse-options.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/sigchain.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/subcmd-config.o
LD /workspace/kernel/build64-default/tools/objtool/libsubcmd/libsubcmd-in.o
AR /workspace/kernel/build64-default/tools/objtool/libsubcmd/libsubcmd.a
CC /workspace/kernel/build64-default/tools/objtool/weak.o
CC /workspace/kernel/build64-default/tools/objtool/check.o
CC /workspace/kernel/build64-default/tools/objtool/special.o
CC /workspace/kernel/build64-default/tools/objtool/arch/x86/special.o
CC /workspace/kernel/build64-default/tools/objtool/builtin-check.o
CC /workspace/kernel/build64-default/tools/objtool/elf.o
CC /workspace/kernel/build64-default/tools/objtool/arch/x86/decode.o
CC /workspace/kernel/build64-default/tools/objtool/objtool.o
CC /workspace/kernel/build64-default/tools/objtool/arch/x86/orc.o
CC /workspace/kernel/build64-default/tools/objtool/orc_gen.o
CC /workspace/kernel/build64-default/tools/objtool/orc_dump.o
CC /workspace/kernel/build64-default/tools/objtool/libstring.o
CC /workspace/kernel/build64-default/tools/objtool/libctype.o
CC /workspace/kernel/build64-default/tools/objtool/str_error_r.o
CC /workspace/kernel/build64-default/tools/objtool/librbtree.o
LD /workspace/kernel/build64-default/tools/objtool/arch/x86/objtool-in.o
LD /workspace/kernel/build64-default/tools/objtool/objtool-in.o
LINK /workspace/kernel/build64-default/tools/objtool/objtool
make[1]: Leaving directory '/workspace/kernel/build64-default'
++ nproc
+ make -j48 O=/workspace/kernel/build64-default W=1 drivers/gpu/drm/xe
make[1]: Entering directory '/workspace/kernel/build64-default'
make[2]: Nothing to be done for 'drivers/gpu/drm/xe'.
make[1]: Leaving directory '/workspace/kernel/build64-default'
run-parts: executing /workspace/ci/hooks/11-build-32b
+++ realpath /workspace/ci/hooks/11-build-32b
++ dirname /workspace/ci/hooks/11-build-32b
+ THIS_SCRIPT_DIR=/workspace/ci/hooks
+ SRC_DIR=/workspace/kernel
+ TOOLS_SRC_DIR=/workspace/ci
+ '[' -n /workspace/kernel/build64-default ']'
+ BUILD_DIR=/workspace/kernel/build64-default
+ BUILD_DIR=/workspace/kernel/build64-default/build32
+ cd /workspace/kernel
+ mkdir -p /workspace/kernel/build64-default/build32
++ nproc
+ make -j48 ARCH=i386 O=/workspace/kernel/build64-default/build32 defconfig
make[1]: Entering directory '/workspace/kernel/build64-default/build32'
GEN Makefile
HOSTCC scripts/basic/fixdep
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/confdata.o
HOSTCC scripts/kconfig/expr.o
LEX scripts/kconfig/lexer.lex.c
YACC scripts/kconfig/parser.tab.[ch]
HOSTCC scripts/kconfig/menu.o
HOSTCC scripts/kconfig/preprocess.o
HOSTCC scripts/kconfig/symbol.o
HOSTCC scripts/kconfig/util.o
HOSTCC scripts/kconfig/lexer.lex.o
HOSTCC scripts/kconfig/parser.tab.o
HOSTLD scripts/kconfig/conf
*** Default configuration is based on 'i386_defconfig'
#
# configuration written to .config
#
make[1]: Leaving directory '/workspace/kernel/build64-default/build32'
+ cd /workspace/kernel/build64-default/build32
+ /workspace/kernel/scripts/kconfig/merge_config.sh .config /workspace/ci/kernel/fragments/10-xe.fragment
Using .config as base
Merging /workspace/ci/kernel/fragments/10-xe.fragment
Value of CONFIG_DRM_XE is redefined by fragment /workspace/ci/kernel/fragments/10-xe.fragment:
Previous value: # CONFIG_DRM_XE is not set
New value: CONFIG_DRM_XE=m
GEN Makefile
WARNING: unmet direct dependencies detected for FB_IOMEM_HELPERS
Depends on [n]: HAS_IOMEM [=y] && FB_CORE [=n]
Selected by [m]:
- DRM_XE_DISPLAY [=y] && HAS_IOMEM [=y] && DRM [=y] && DRM_XE [=m] && DRM_XE [=m]=m [=m] && HAS_IOPORT [=y]
#
# configuration written to .config
#
Value requested for CONFIG_HAVE_UID16 not in final .config
Requested value: CONFIG_HAVE_UID16=y
Actual value:
Value requested for CONFIG_UID16 not in final .config
Requested value: CONFIG_UID16=y
Actual value:
Value requested for CONFIG_X86_32 not in final .config
Requested value: CONFIG_X86_32=y
Actual value:
Value requested for CONFIG_OUTPUT_FORMAT not in final .config
Requested value: CONFIG_OUTPUT_FORMAT="elf32-i386"
Actual value: CONFIG_OUTPUT_FORMAT="elf64-x86-64"
Value requested for CONFIG_ARCH_MMAP_RND_BITS_MIN not in final .config
Requested value: CONFIG_ARCH_MMAP_RND_BITS_MIN=8
Actual value: CONFIG_ARCH_MMAP_RND_BITS_MIN=28
Value requested for CONFIG_ARCH_MMAP_RND_BITS_MAX not in final .config
Requested value: CONFIG_ARCH_MMAP_RND_BITS_MAX=16
Actual value: CONFIG_ARCH_MMAP_RND_BITS_MAX=32
Value requested for CONFIG_PGTABLE_LEVELS not in final .config
Requested value: CONFIG_PGTABLE_LEVELS=2
Actual value: CONFIG_PGTABLE_LEVELS=5
Value requested for CONFIG_X86_BIGSMP not in final .config
Requested value: # CONFIG_X86_BIGSMP is not set
Actual value:
Value requested for CONFIG_X86_INTEL_QUARK not in final .config
Requested value: # CONFIG_X86_INTEL_QUARK is not set
Actual value:
Value requested for CONFIG_X86_RDC321X not in final .config
Requested value: # CONFIG_X86_RDC321X is not set
Actual value:
Value requested for CONFIG_X86_32_NON_STANDARD not in final .config
Requested value: # CONFIG_X86_32_NON_STANDARD is not set
Actual value:
Value requested for CONFIG_X86_32_IRIS not in final .config
Requested value: # CONFIG_X86_32_IRIS is not set
Actual value:
Value requested for CONFIG_M486SX not in final .config
Requested value: # CONFIG_M486SX is not set
Actual value:
Value requested for CONFIG_M486 not in final .config
Requested value: # CONFIG_M486 is not set
Actual value:
Value requested for CONFIG_M586 not in final .config
Requested value: # CONFIG_M586 is not set
Actual value:
Value requested for CONFIG_M586TSC not in final .config
Requested value: # CONFIG_M586TSC is not set
Actual value:
Value requested for CONFIG_M586MMX not in final .config
Requested value: # CONFIG_M586MMX is not set
Actual value:
Value requested for CONFIG_M686 not in final .config
Requested value: CONFIG_M686=y
Actual value:
Value requested for CONFIG_MPENTIUMII not in final .config
Requested value: # CONFIG_MPENTIUMII is not set
Actual value:
Value requested for CONFIG_MPENTIUMIII not in final .config
Requested value: # CONFIG_MPENTIUMIII is not set
Actual value:
Value requested for CONFIG_MPENTIUMM not in final .config
Requested value: # CONFIG_MPENTIUMM is not set
Actual value:
Value requested for CONFIG_MPENTIUM4 not in final .config
Requested value: # CONFIG_MPENTIUM4 is not set
Actual value:
Value requested for CONFIG_MK6 not in final .config
Requested value: # CONFIG_MK6 is not set
Actual value:
Value requested for CONFIG_MK7 not in final .config
Requested value: # CONFIG_MK7 is not set
Actual value:
Value requested for CONFIG_MCRUSOE not in final .config
Requested value: # CONFIG_MCRUSOE is not set
Actual value:
Value requested for CONFIG_MEFFICEON not in final .config
Requested value: # CONFIG_MEFFICEON is not set
Actual value:
Value requested for CONFIG_MWINCHIPC6 not in final .config
Requested value: # CONFIG_MWINCHIPC6 is not set
Actual value:
Value requested for CONFIG_MWINCHIP3D not in final .config
Requested value: # CONFIG_MWINCHIP3D is not set
Actual value:
Value requested for CONFIG_MELAN not in final .config
Requested value: # CONFIG_MELAN is not set
Actual value:
Value requested for CONFIG_MGEODEGX1 not in final .config
Requested value: # CONFIG_MGEODEGX1 is not set
Actual value:
Value requested for CONFIG_MGEODE_LX not in final .config
Requested value: # CONFIG_MGEODE_LX is not set
Actual value:
Value requested for CONFIG_MCYRIXIII not in final .config
Requested value: # CONFIG_MCYRIXIII is not set
Actual value:
Value requested for CONFIG_MVIAC3_2 not in final .config
Requested value: # CONFIG_MVIAC3_2 is not set
Actual value:
Value requested for CONFIG_MVIAC7 not in final .config
Requested value: # CONFIG_MVIAC7 is not set
Actual value:
Value requested for CONFIG_X86_GENERIC not in final .config
Requested value: # CONFIG_X86_GENERIC is not set
Actual value:
Value requested for CONFIG_X86_INTERNODE_CACHE_SHIFT not in final .config
Requested value: CONFIG_X86_INTERNODE_CACHE_SHIFT=5
Actual value: CONFIG_X86_INTERNODE_CACHE_SHIFT=6
Value requested for CONFIG_X86_L1_CACHE_SHIFT not in final .config
Requested value: CONFIG_X86_L1_CACHE_SHIFT=5
Actual value: CONFIG_X86_L1_CACHE_SHIFT=6
Value requested for CONFIG_X86_USE_PPRO_CHECKSUM not in final .config
Requested value: CONFIG_X86_USE_PPRO_CHECKSUM=y
Actual value:
Value requested for CONFIG_X86_MINIMUM_CPU_FAMILY not in final .config
Requested value: CONFIG_X86_MINIMUM_CPU_FAMILY=6
Actual value: CONFIG_X86_MINIMUM_CPU_FAMILY=64
Value requested for CONFIG_CPU_SUP_TRANSMETA_32 not in final .config
Requested value: CONFIG_CPU_SUP_TRANSMETA_32=y
Actual value:
Value requested for CONFIG_CPU_SUP_VORTEX_32 not in final .config
Requested value: CONFIG_CPU_SUP_VORTEX_32=y
Actual value:
Value requested for CONFIG_HPET_TIMER not in final .config
Requested value: # CONFIG_HPET_TIMER is not set
Actual value: CONFIG_HPET_TIMER=y
Value requested for CONFIG_NR_CPUS_RANGE_END not in final .config
Requested value: CONFIG_NR_CPUS_RANGE_END=8
Actual value: CONFIG_NR_CPUS_RANGE_END=512
Value requested for CONFIG_NR_CPUS_DEFAULT not in final .config
Requested value: CONFIG_NR_CPUS_DEFAULT=8
Actual value: CONFIG_NR_CPUS_DEFAULT=64
Value requested for CONFIG_X86_ANCIENT_MCE not in final .config
Requested value: # CONFIG_X86_ANCIENT_MCE is not set
Actual value:
Value requested for CONFIG_X86_LEGACY_VM86 not in final .config
Requested value: # CONFIG_X86_LEGACY_VM86 is not set
Actual value:
Value requested for CONFIG_X86_ESPFIX32 not in final .config
Requested value: CONFIG_X86_ESPFIX32=y
Actual value:
Value requested for CONFIG_TOSHIBA not in final .config
Requested value: # CONFIG_TOSHIBA is not set
Actual value:
Value requested for CONFIG_X86_REBOOTFIXUPS not in final .config
Requested value: # CONFIG_X86_REBOOTFIXUPS is not set
Actual value:
Value requested for CONFIG_MICROCODE_INITRD32 not in final .config
Requested value: CONFIG_MICROCODE_INITRD32=y
Actual value:
Value requested for CONFIG_NOHIGHMEM not in final .config
Requested value: # CONFIG_NOHIGHMEM is not set
Actual value:
Value requested for CONFIG_HIGHMEM4G not in final .config
Requested value: CONFIG_HIGHMEM4G=y
Actual value:
Value requested for CONFIG_HIGHMEM64G not in final .config
Requested value: # CONFIG_HIGHMEM64G is not set
Actual value:
Value requested for CONFIG_VMSPLIT_3G not in final .config
Requested value: CONFIG_VMSPLIT_3G=y
Actual value:
Value requested for CONFIG_VMSPLIT_3G_OPT not in final .config
Requested value: # CONFIG_VMSPLIT_3G_OPT is not set
Actual value:
Value requested for CONFIG_VMSPLIT_2G not in final .config
Requested value: # CONFIG_VMSPLIT_2G is not set
Actual value:
Value requested for CONFIG_VMSPLIT_2G_OPT not in final .config
Requested value: # CONFIG_VMSPLIT_2G_OPT is not set
Actual value:
Value requested for CONFIG_VMSPLIT_1G not in final .config
Requested value: # CONFIG_VMSPLIT_1G is not set
Actual value:
Value requested for CONFIG_PAGE_OFFSET not in final .config
Requested value: CONFIG_PAGE_OFFSET=0xC0000000
Actual value:
Value requested for CONFIG_HIGHMEM not in final .config
Requested value: CONFIG_HIGHMEM=y
Actual value:
Value requested for CONFIG_X86_PAE not in final .config
Requested value: # CONFIG_X86_PAE is not set
Actual value:
Value requested for CONFIG_ARCH_FLATMEM_ENABLE not in final .config
Requested value: CONFIG_ARCH_FLATMEM_ENABLE=y
Actual value:
Value requested for CONFIG_ARCH_SELECT_MEMORY_MODEL not in final .config
Requested value: CONFIG_ARCH_SELECT_MEMORY_MODEL=y
Actual value:
Value requested for CONFIG_ILLEGAL_POINTER_VALUE not in final .config
Requested value: CONFIG_ILLEGAL_POINTER_VALUE=0
Actual value: CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
Value requested for CONFIG_HIGHPTE not in final .config
Requested value: # CONFIG_HIGHPTE is not set
Actual value:
Value requested for CONFIG_COMPAT_VDSO not in final .config
Requested value: # CONFIG_COMPAT_VDSO is not set
Actual value:
Value requested for CONFIG_FUNCTION_PADDING_CFI not in final .config
Requested value: CONFIG_FUNCTION_PADDING_CFI=0
Actual value: CONFIG_FUNCTION_PADDING_CFI=11
Value requested for CONFIG_FUNCTION_PADDING_BYTES not in final .config
Requested value: CONFIG_FUNCTION_PADDING_BYTES=4
Actual value: CONFIG_FUNCTION_PADDING_BYTES=16
Value requested for CONFIG_APM not in final .config
Requested value: # CONFIG_APM is not set
Actual value:
Value requested for CONFIG_X86_POWERNOW_K6 not in final .config
Requested value: # CONFIG_X86_POWERNOW_K6 is not set
Actual value:
Value requested for CONFIG_X86_POWERNOW_K7 not in final .config
Requested value: # CONFIG_X86_POWERNOW_K7 is not set
Actual value:
Value requested for CONFIG_X86_GX_SUSPMOD not in final .config
Requested value: # CONFIG_X86_GX_SUSPMOD is not set
Actual value:
Value requested for CONFIG_X86_SPEEDSTEP_ICH not in final .config
Requested value: # CONFIG_X86_SPEEDSTEP_ICH is not set
Actual value:
Value requested for CONFIG_X86_SPEEDSTEP_SMI not in final .config
Requested value: # CONFIG_X86_SPEEDSTEP_SMI is not set
Actual value:
Value requested for CONFIG_X86_CPUFREQ_NFORCE2 not in final .config
Requested value: # CONFIG_X86_CPUFREQ_NFORCE2 is not set
Actual value:
Value requested for CONFIG_X86_LONGRUN not in final .config
Requested value: # CONFIG_X86_LONGRUN is not set
Actual value:
Value requested for CONFIG_X86_LONGHAUL not in final .config
Requested value: # CONFIG_X86_LONGHAUL is not set
Actual value:
Value requested for CONFIG_X86_E_POWERSAVER not in final .config
Requested value: # CONFIG_X86_E_POWERSAVER is not set
Actual value:
Value requested for CONFIG_PCI_GOBIOS not in final .config
Requested value: # CONFIG_PCI_GOBIOS is not set
Actual value:
Value requested for CONFIG_PCI_GOMMCONFIG not in final .config
Requested value: # CONFIG_PCI_GOMMCONFIG is not set
Actual value:
Value requested for CONFIG_PCI_GODIRECT not in final .config
Requested value: # CONFIG_PCI_GODIRECT is not set
Actual value:
Value requested for CONFIG_PCI_GOANY not in final .config
Requested value: CONFIG_PCI_GOANY=y
Actual value:
Value requested for CONFIG_PCI_BIOS not in final .config
Requested value: CONFIG_PCI_BIOS=y
Actual value:
Value requested for CONFIG_ISA not in final .config
Requested value: # CONFIG_ISA is not set
Actual value:
Value requested for CONFIG_SCx200 not in final .config
Requested value: # CONFIG_SCx200 is not set
Actual value:
Value requested for CONFIG_OLPC not in final .config
Requested value: # CONFIG_OLPC is not set
Actual value:
Value requested for CONFIG_ALIX not in final .config
Requested value: # CONFIG_ALIX is not set
Actual value:
Value requested for CONFIG_NET5501 not in final .config
Requested value: # CONFIG_NET5501 is not set
Actual value:
Value requested for CONFIG_GEOS not in final .config
Requested value: # CONFIG_GEOS is not set
Actual value:
Value requested for CONFIG_COMPAT_32 not in final .config
Requested value: CONFIG_COMPAT_32=y
Actual value:
Value requested for CONFIG_HAVE_ATOMIC_IOMAP not in final .config
Requested value: CONFIG_HAVE_ATOMIC_IOMAP=y
Actual value:
Value requested for CONFIG_ARCH_32BIT_OFF_T not in final .config
Requested value: CONFIG_ARCH_32BIT_OFF_T=y
Actual value:
Value requested for CONFIG_ARCH_WANT_IPC_PARSE_VERSION not in final .config
Requested value: CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
Actual value:
Value requested for CONFIG_MODULES_USE_ELF_REL not in final .config
Requested value: CONFIG_MODULES_USE_ELF_REL=y
Actual value:
Value requested for CONFIG_ARCH_MMAP_RND_BITS not in final .config
Requested value: CONFIG_ARCH_MMAP_RND_BITS=8
Actual value: CONFIG_ARCH_MMAP_RND_BITS=28
Value requested for CONFIG_CLONE_BACKWARDS not in final .config
Requested value: CONFIG_CLONE_BACKWARDS=y
Actual value:
Value requested for CONFIG_OLD_SIGSUSPEND3 not in final .config
Requested value: CONFIG_OLD_SIGSUSPEND3=y
Actual value:
Value requested for CONFIG_OLD_SIGACTION not in final .config
Requested value: CONFIG_OLD_SIGACTION=y
Actual value:
Value requested for CONFIG_ARCH_SPLIT_ARG64 not in final .config
Requested value: CONFIG_ARCH_SPLIT_ARG64=y
Actual value:
Value requested for CONFIG_FUNCTION_ALIGNMENT not in final .config
Requested value: CONFIG_FUNCTION_ALIGNMENT=4
Actual value: CONFIG_FUNCTION_ALIGNMENT=16
Value requested for CONFIG_SELECT_MEMORY_MODEL not in final .config
Requested value: CONFIG_SELECT_MEMORY_MODEL=y
Actual value:
Value requested for CONFIG_FLATMEM_MANUAL not in final .config
Requested value: CONFIG_FLATMEM_MANUAL=y
Actual value:
Value requested for CONFIG_SPARSEMEM_MANUAL not in final .config
Requested value: # CONFIG_SPARSEMEM_MANUAL is not set
Actual value:
Value requested for CONFIG_FLATMEM not in final .config
Requested value: CONFIG_FLATMEM=y
Actual value:
Value requested for CONFIG_SPARSEMEM_STATIC not in final .config
Requested value: CONFIG_SPARSEMEM_STATIC=y
Actual value:
Value requested for CONFIG_BOUNCE not in final .config
Requested value: CONFIG_BOUNCE=y
Actual value:
Value requested for CONFIG_KMAP_LOCAL not in final .config
Requested value: CONFIG_KMAP_LOCAL=y
Actual value:
Value requested for CONFIG_HOTPLUG_PCI_COMPAQ not in final .config
Requested value: # CONFIG_HOTPLUG_PCI_COMPAQ is not set
Actual value:
Value requested for CONFIG_HOTPLUG_PCI_IBM not in final .config
Requested value: # CONFIG_HOTPLUG_PCI_IBM is not set
Actual value:
Value requested for CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH not in final .config
Requested value: CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH=y
Actual value:
Value requested for CONFIG_PCH_PHUB not in final .config
Requested value: # CONFIG_PCH_PHUB is not set
Actual value:
Value requested for CONFIG_SCSI_NSP32 not in final .config
Requested value: # CONFIG_SCSI_NSP32 is not set
Actual value:
Value requested for CONFIG_PATA_CS5520 not in final .config
Requested value: # CONFIG_PATA_CS5520 is not set
Actual value:
Value requested for CONFIG_PATA_CS5530 not in final .config
Requested value: # CONFIG_PATA_CS5530 is not set
Actual value:
Value requested for CONFIG_PATA_CS5535 not in final .config
Requested value: # CONFIG_PATA_CS5535 is not set
Actual value:
Value requested for CONFIG_PATA_CS5536 not in final .config
Requested value: # CONFIG_PATA_CS5536 is not set
Actual value:
Value requested for CONFIG_PATA_SC1200 not in final .config
Requested value: # CONFIG_PATA_SC1200 is not set
Actual value:
Value requested for CONFIG_PCH_GBE not in final .config
Requested value: # CONFIG_PCH_GBE is not set
Actual value:
Value requested for CONFIG_INPUT_WISTRON_BTNS not in final .config
Requested value: # CONFIG_INPUT_WISTRON_BTNS is not set
Actual value:
Value requested for CONFIG_SERIAL_TIMBERDALE not in final .config
Requested value: # CONFIG_SERIAL_TIMBERDALE is not set
Actual value:
Value requested for CONFIG_SERIAL_PCH_UART not in final .config
Requested value: # CONFIG_SERIAL_PCH_UART is not set
Actual value:
Value requested for CONFIG_HW_RANDOM_GEODE not in final .config
Requested value: CONFIG_HW_RANDOM_GEODE=y
Actual value:
Value requested for CONFIG_SONYPI not in final .config
Requested value: # CONFIG_SONYPI is not set
Actual value:
Value requested for CONFIG_PC8736x_GPIO not in final .config
Requested value: # CONFIG_PC8736x_GPIO is not set
Actual value:
Value requested for CONFIG_NSC_GPIO not in final .config
Requested value: # CONFIG_NSC_GPIO is not set
Actual value:
Value requested for CONFIG_I2C_EG20T not in final .config
Requested value: # CONFIG_I2C_EG20T is not set
Actual value:
Value requested for CONFIG_SCx200_ACB not in final .config
Requested value: # CONFIG_SCx200_ACB is not set
Actual value:
Value requested for CONFIG_PTP_1588_CLOCK_PCH not in final .config
Requested value: # CONFIG_PTP_1588_CLOCK_PCH is not set
Actual value:
Value requested for CONFIG_SBC8360_WDT not in final .config
Requested value: # CONFIG_SBC8360_WDT is not set
Actual value:
Value requested for CONFIG_SBC7240_WDT not in final .config
Requested value: # CONFIG_SBC7240_WDT is not set
Actual value:
Value requested for CONFIG_MFD_CS5535 not in final .config
Requested value: # CONFIG_MFD_CS5535 is not set
Actual value:
Value requested for CONFIG_AGP_ALI not in final .config
Requested value: # CONFIG_AGP_ALI is not set
Actual value:
Value requested for CONFIG_AGP_ATI not in final .config
Requested value: # CONFIG_AGP_ATI is not set
Actual value:
Value requested for CONFIG_AGP_AMD not in final .config
Requested value: # CONFIG_AGP_AMD is not set
Actual value:
Value requested for CONFIG_AGP_NVIDIA not in final .config
Requested value: # CONFIG_AGP_NVIDIA is not set
Actual value:
Value requested for CONFIG_AGP_SWORKS not in final .config
Requested value: # CONFIG_AGP_SWORKS is not set
Actual value:
Value requested for CONFIG_AGP_EFFICEON not in final .config
Requested value: # CONFIG_AGP_EFFICEON is not set
Actual value:
Value requested for CONFIG_SND_CS5530 not in final .config
Requested value: # CONFIG_SND_CS5530 is not set
Actual value:
Value requested for CONFIG_SND_CS5535AUDIO not in final .config
Requested value: # CONFIG_SND_CS5535AUDIO is not set
Actual value:
Value requested for CONFIG_SND_SIS7019 not in final .config
Requested value: # CONFIG_SND_SIS7019 is not set
Actual value:
Value requested for CONFIG_LEDS_OT200 not in final .config
Requested value: # CONFIG_LEDS_OT200 is not set
Actual value:
Value requested for CONFIG_PCH_DMA not in final .config
Requested value: # CONFIG_PCH_DMA is not set
Actual value:
Value requested for CONFIG_CLKSRC_I8253 not in final .config
Requested value: CONFIG_CLKSRC_I8253=y
Actual value:
Value requested for CONFIG_MAILBOX not in final .config
Requested value: # CONFIG_MAILBOX is not set
Actual value: CONFIG_MAILBOX=y
Value requested for CONFIG_CRYPTO_SERPENT_SSE2_586 not in final .config
Requested value: # CONFIG_CRYPTO_SERPENT_SSE2_586 is not set
Actual value:
Value requested for CONFIG_CRYPTO_TWOFISH_586 not in final .config
Requested value: # CONFIG_CRYPTO_TWOFISH_586 is not set
Actual value:
Value requested for CONFIG_CRYPTO_DEV_GEODE not in final .config
Requested value: # CONFIG_CRYPTO_DEV_GEODE is not set
Actual value:
Value requested for CONFIG_CRYPTO_DEV_HIFN_795X not in final .config
Requested value: # CONFIG_CRYPTO_DEV_HIFN_795X is not set
Actual value:
Value requested for CONFIG_CRYPTO_LIB_POLY1305_RSIZE not in final .config
Requested value: CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1
Actual value: CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11
Value requested for CONFIG_AUDIT_GENERIC not in final .config
Requested value: CONFIG_AUDIT_GENERIC=y
Actual value:
Value requested for CONFIG_GENERIC_VDSO_32 not in final .config
Requested value: CONFIG_GENERIC_VDSO_32=y
Actual value:
Value requested for CONFIG_DEBUG_KMAP_LOCAL not in final .config
Requested value: # CONFIG_DEBUG_KMAP_LOCAL is not set
Actual value:
Value requested for CONFIG_DEBUG_HIGHMEM not in final .config
Requested value: # CONFIG_DEBUG_HIGHMEM is not set
Actual value:
Value requested for CONFIG_HAVE_DEBUG_STACKOVERFLOW not in final .config
Requested value: CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
Actual value:
Value requested for CONFIG_DEBUG_STACKOVERFLOW not in final .config
Requested value: # CONFIG_DEBUG_STACKOVERFLOW is not set
Actual value:
Value requested for CONFIG_HAVE_FUNCTION_GRAPH_TRACER not in final .config
Requested value: CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
Actual value:
Value requested for CONFIG_HAVE_FUNCTION_GRAPH_FREGS not in final .config
Requested value: CONFIG_HAVE_FUNCTION_GRAPH_FREGS=y
Actual value:
Value requested for CONFIG_HAVE_FTRACE_GRAPH_FUNC not in final .config
Requested value: CONFIG_HAVE_FTRACE_GRAPH_FUNC=y
Actual value:
Value requested for CONFIG_DRM_KUNIT_TEST not in final .config
Requested value: CONFIG_DRM_KUNIT_TEST=m
Actual value:
Value requested for CONFIG_DRM_XE_WERROR not in final .config
Requested value: CONFIG_DRM_XE_WERROR=y
Actual value:
Value requested for CONFIG_DRM_XE_DEBUG not in final .config
Requested value: CONFIG_DRM_XE_DEBUG=y
Actual value:
Value requested for CONFIG_DRM_XE_DEBUG_MEM not in final .config
Requested value: CONFIG_DRM_XE_DEBUG_MEM=y
Actual value:
Value requested for CONFIG_DRM_XE_KUNIT_TEST not in final .config
Requested value: CONFIG_DRM_XE_KUNIT_TEST=m
Actual value:
++ nproc
+ make -j48 ARCH=i386 olddefconfig
GEN Makefile
WARNING: unmet direct dependencies detected for FB_IOMEM_HELPERS
Depends on [n]: HAS_IOMEM [=y] && FB_CORE [=n]
Selected by [m]:
- DRM_XE_DISPLAY [=y] && HAS_IOMEM [=y] && DRM [=y] && DRM_XE [=m] && DRM_XE [=m]=m [=m] && HAS_IOPORT [=y]
#
# configuration written to .config
#
++ nproc
+ make -j48 ARCH=i386
SYNC include/config/auto.conf.cmd
GEN Makefile
WARNING: unmet direct dependencies detected for FB_IOMEM_HELPERS
Depends on [n]: HAS_IOMEM [=y] && FB_CORE [=n]
Selected by [m]:
- DRM_XE_DISPLAY [=y] && HAS_IOMEM [=y] && DRM [=y] && DRM_XE [=m] && DRM_XE [=m]=m [=m] && HAS_IOPORT [=y]
WARNING: unmet direct dependencies detected for FB_IOMEM_HELPERS
Depends on [n]: HAS_IOMEM [=y] && FB_CORE [=n]
Selected by [m]:
- DRM_XE_DISPLAY [=y] && HAS_IOMEM [=y] && DRM [=y] && DRM_XE [=m] && DRM_XE [=m]=m [=m] && HAS_IOPORT [=y]
WARNING: unmet direct dependencies detected for FB_IOMEM_HELPERS
Depends on [n]: HAS_IOMEM [=y] && FB_CORE [=n]
Selected by [m]:
- DRM_XE_DISPLAY [=y] && HAS_IOMEM [=y] && DRM [=y] && DRM_XE [=m] && DRM_XE [=m]=m [=m] && HAS_IOPORT [=y]
GEN Makefile
WRAP arch/x86/include/generated/uapi/asm/bpf_perf_event.h
WRAP arch/x86/include/generated/uapi/asm/errno.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_32.h
WRAP arch/x86/include/generated/uapi/asm/ioctl.h
WRAP arch/x86/include/generated/uapi/asm/fcntl.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_x32.h
WRAP arch/x86/include/generated/uapi/asm/ioctls.h
WRAP arch/x86/include/generated/uapi/asm/ipcbuf.h
SYSTBL arch/x86/include/generated/asm/syscalls_32.h
UPD include/generated/uapi/linux/version.h
WRAP arch/x86/include/generated/uapi/asm/param.h
WRAP arch/x86/include/generated/uapi/asm/poll.h
WRAP arch/x86/include/generated/uapi/asm/resource.h
WRAP arch/x86/include/generated/uapi/asm/socket.h
WRAP arch/x86/include/generated/uapi/asm/sockios.h
WRAP arch/x86/include/generated/uapi/asm/termbits.h
WRAP arch/x86/include/generated/uapi/asm/termios.h
WRAP arch/x86/include/generated/uapi/asm/types.h
UPD include/generated/compile.h
HOSTCC arch/x86/tools/relocs_32.o
HOSTCC arch/x86/tools/relocs_64.o
HOSTCC arch/x86/tools/relocs_common.o
WRAP arch/x86/include/generated/asm/early_ioremap.h
WRAP arch/x86/include/generated/asm/fprobe.h
WRAP arch/x86/include/generated/asm/mcs_spinlock.h
WRAP arch/x86/include/generated/asm/mmzone.h
WRAP arch/x86/include/generated/asm/irq_regs.h
WRAP arch/x86/include/generated/asm/kmap_size.h
WRAP arch/x86/include/generated/asm/local64.h
WRAP arch/x86/include/generated/asm/mmiowb.h
WRAP arch/x86/include/generated/asm/module.lds.h
WRAP arch/x86/include/generated/asm/rwonce.h
HOSTCC scripts/kallsyms
HOSTCC scripts/sorttable
HOSTCC scripts/asn1_compiler
HOSTCC scripts/selinux/mdp/mdp
HOSTLD arch/x86/tools/relocs
UPD include/config/kernel.release
UPD include/generated/utsrelease.h
CC scripts/mod/empty.o
HOSTCC scripts/mod/mk_elfconfig
CC scripts/mod/devicetable-offsets.s
UPD scripts/mod/devicetable-offsets.h
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/modpost.o
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/sumversion.o
HOSTCC scripts/mod/symsearch.o
HOSTLD scripts/mod/modpost
CC kernel/bounds.s
CHKSHA1 /workspace/kernel/include/linux/atomic/atomic-arch-fallback.h
CHKSHA1 /workspace/kernel/include/linux/atomic/atomic-instrumented.h
CHKSHA1 /workspace/kernel/include/linux/atomic/atomic-long.h
UPD include/generated/timeconst.h
UPD include/generated/bounds.h
CC arch/x86/kernel/asm-offsets.s
UPD include/generated/asm-offsets.h
CALL /workspace/kernel/scripts/checksyscalls.sh
LDS scripts/module.lds
CC init/main.o
HOSTCC usr/gen_init_cpio
CC certs/system_keyring.o
CC init/do_mounts.o
CC init/do_mounts_initrd.o
UPD init/utsversion-tmp.h
CC init/initramfs.o
CC mm/filemap.o
CC security/commoncap.o
CC init/calibrate.o
CC ipc/util.o
CC mm/mempool.o
CC init/init_task.o
CC ipc/msgutil.o
CC security/lsm_syscalls.o
CC io_uring/io_uring.o
AS arch/x86/entry/entry.o
CC block/bdev.o
CC mm/oom_kill.o
AS arch/x86/lib/atomic64_cx8_32.o
CC arch/x86/realmode/init.o
CC mm/fadvise.o
CC arch/x86/power/cpu.o
CC arch/x86/pci/i386.o
CC ipc/msg.o
CC security/keys/gc.o
AR virt/lib/built-in.a
AR arch/x86/crypto/built-in.a
AR arch/x86/net/built-in.a
CC security/integrity/iint.o
CC arch/x86/video/video-common.o
HOSTCC security/selinux/genheaders
AR arch/x86/entry/vsyscall/built-in.a
CC block/partitions/core.o
AR drivers/cache/built-in.a
CC fs/nfs_common/nfsacl.o
CC arch/x86/events/amd/core.o
CC arch/x86/virt/svm/cmdline.o
CC block/fops.o
CC net/core/sock.o
CC lib/math/div64.o
CC arch/x86/mm/pat/set_memory.o
AR arch/x86/platform/atom/built-in.a
AR sound/i2c/other/built-in.a
CC fs/notify/dnotify/dnotify.o
CC arch/x86/kernel/fpu/init.o
CC sound/core/seq/seq.o
AR virt/built-in.a
CC net/ethernet/eth.o
CC fs/iomap/trace.o
AR drivers/irqchip/built-in.a
AR sound/i2c/built-in.a
AS arch/x86/lib/checksum_32.o
AR arch/x86/platform/ce4100/built-in.a
CC arch/x86/entry/vdso/vma.o
CC io_uring/opdef.o
CC kernel/locking/mutex.o
AR drivers/pwm/built-in.a
AR drivers/bus/mhi/built-in.a
CC arch/x86/platform/efi/memmap.o
AR drivers/bus/built-in.a
CC kernel/sched/core.o
CC block/bio.o
CC arch/x86/lib/cmdline.o
CC crypto/asymmetric_keys/asymmetric_type.o
AR drivers/leds/trigger/built-in.a
AR drivers/leds/blink/built-in.a
AR drivers/leds/simple/built-in.a
CC drivers/leds/led-core.o
AR arch/x86/virt/svm/built-in.a
AR arch/x86/virt/vmx/built-in.a
AR arch/x86/virt/built-in.a
CC net/core/request_sock.o
AS arch/x86/lib/cmpxchg8b_emu.o
CC lib/math/gcd.o
GEN security/selinux/flask.h security/selinux/av_permissions.h
CC arch/x86/lib/cpu.o
CC security/selinux/avc.o
CC lib/math/lcm.o
CC lib/math/int_log.o
CC net/core/skbuff.o
GEN usr/initramfs_data.cpio
COPY usr/initramfs_inc_data
AS usr/initramfs_data.o
HOSTCC certs/extract-cert
AR usr/built-in.a
CC lib/math/int_pow.o
CC net/core/datagram.o
CC arch/x86/kernel/fpu/bugs.o
CC lib/math/int_sqrt.o
CC arch/x86/kernel/fpu/core.o
CC lib/math/reciprocal_div.o
CC sound/core/seq/seq_lock.o
CC arch/x86/lib/delay.o
AS arch/x86/realmode/rm/header.o
CC lib/math/rational.o
AS arch/x86/realmode/rm/trampoline_32.o
AR arch/x86/video/built-in.a
CC fs/iomap/iter.o
AS arch/x86/realmode/rm/stack.o
CERT certs/x509_certificate_list
AS arch/x86/realmode/rm/reboot.o
CERT certs/signing_key.x509
AS certs/system_certificates.o
AR certs/built-in.a
AS arch/x86/realmode/rm/wakeup_asm.o
AR net/802/built-in.a
CC security/integrity/integrity_audit.o
CC fs/nfs_common/grace.o
CC net/sched/sch_generic.o
CC drivers/leds/led-class.o
CC arch/x86/realmode/rm/wakemain.o
CC kernel/power/qos.o
CC drivers/pci/msi/pcidev_msi.o
CC kernel/power/main.o
CC io_uring/kbuf.o
CC arch/x86/entry/vdso/extable.o
CC crypto/asymmetric_keys/restrict.o
CC security/keys/key.o
AR fs/notify/dnotify/built-in.a
CC ipc/sem.o
CC fs/notify/inotify/inotify_fsnotify.o
CC arch/x86/pci/init.o
CC arch/x86/realmode/rm/video-mode.o
CC arch/x86/platform/efi/quirks.o
CC ipc/shm.o
CC arch/x86/power/hibernate_32.o
CC net/sched/sch_mq.o
AS arch/x86/lib/getuser.o
GEN arch/x86/lib/inat-tables.c
CC block/partitions/msdos.o
CC arch/x86/lib/insn-eval.o
AS arch/x86/realmode/rm/copy.o
CC sound/core/seq/seq_clientmgr.o
AS arch/x86/realmode/rm/bioscall.o
CC arch/x86/realmode/rm/regs.o
AR lib/math/built-in.a
CC lib/crypto/mpi/generic_mpih-lshift.o
CC arch/x86/realmode/rm/video-vga.o
CC lib/crypto/memneq.o
CC arch/x86/pci/pcbios.o
CC net/netlink/af_netlink.o
CC arch/x86/realmode/rm/video-vesa.o
CC arch/x86/realmode/rm/video-bios.o
CC kernel/printk/printk.o
CC kernel/power/console.o
PASYMS arch/x86/realmode/rm/pasyms.h
CC net/sched/sch_frag.o
CC crypto/asymmetric_keys/signature.o
CC kernel/printk/printk_safe.o
CC arch/x86/events/amd/lbr.o
CC sound/core/sound.o
LDS arch/x86/realmode/rm/realmode.lds
LD arch/x86/realmode/rm/realmode.elf
CC lib/crypto/mpi/generic_mpih-mul1.o
RELOCS arch/x86/realmode/rm/realmode.relocs
OBJCOPY arch/x86/realmode/rm/realmode.bin
AS arch/x86/realmode/rmpiggy.o
CC drivers/leds/led-triggers.o
AR arch/x86/realmode/built-in.a
CC kernel/locking/semaphore.o
CC arch/x86/kernel/cpu/mce/core.o
CC fs/notify/inotify/inotify_user.o
AR net/ethernet/built-in.a
CC drivers/pci/msi/api.o
CC kernel/locking/rwsem.o
CC fs/iomap/buffered-io.o
CC arch/x86/mm/pat/memtype.o
CC fs/nfs_common/common.o
CC arch/x86/kernel/acpi/boot.o
AR security/integrity/built-in.a
CC arch/x86/kernel/apic/apic.o
CC init/version.o
CC drivers/pci/pcie/portdrv.o
LDS arch/x86/entry/vdso/vdso32/vdso32.lds
AS arch/x86/entry/vdso/vdso32/note.o
AS arch/x86/power/hibernate_asm_32.o
AS arch/x86/entry/vdso/vdso32/system_call.o
CC arch/x86/power/hibernate.o
CC block/elevator.o
AS arch/x86/entry/vdso/vdso32/sigreturn.o
CC arch/x86/entry/vdso/vdso32/vclock_gettime.o
AR drivers/pci/pwrctrl/built-in.a
CC arch/x86/mm/init.o
AR init/built-in.a
CC crypto/asymmetric_keys/public_key.o
AR arch/x86/platform/geode/built-in.a
CC block/partitions/efi.o
CC sound/core/init.o
CC arch/x86/kernel/fpu/regset.o
CC arch/x86/platform/efi/efi.o
CC arch/x86/mm/pat/memtype_interval.o
CC arch/x86/pci/mmconfig_32.o
CC arch/x86/pci/direct.o
CC arch/x86/lib/insn.o
CC arch/x86/pci/mmconfig-shared.o
CC security/keys/keyring.o
CC arch/x86/pci/fixup.o
CC security/selinux/hooks.o
CC lib/crypto/mpi/generic_mpih-mul2.o
CC drivers/pci/pcie/rcec.o
CC kernel/power/process.o
AR fs/notify/fanotify/built-in.a
CC arch/x86/events/amd/ibs.o
AR arch/x86/platform/iris/built-in.a
CC sound/core/seq/seq_memory.o
CC mm/maccess.o
AR drivers/leds/built-in.a
CC arch/x86/kernel/apic/apic_common.o
CC drivers/pci/msi/msi.o
AR net/bpf/built-in.a
CC io_uring/rsrc.o
CC block/blk-core.o
CC kernel/irq/irqdesc.o
CC arch/x86/lib/kaslr.o
AR fs/nfs_common/built-in.a
CC kernel/rcu/update.o
CC kernel/locking/percpu-rwsem.o
CC kernel/sched/fair.o
CC arch/x86/kernel/fpu/signal.o
CC arch/x86/entry/vdso/vdso32/vgetcpu.o
AR arch/x86/power/built-in.a
CC kernel/sched/build_policy.o
CC io_uring/notif.o
AR fs/notify/inotify/built-in.a
CC fs/notify/fsnotify.o
HOSTCC arch/x86/entry/vdso/vdso2c
ASN.1 crypto/asymmetric_keys/x509.asn1.[ch]
ASN.1 crypto/asymmetric_keys/x509_akid.asn1.[ch]
CC arch/x86/lib/memcpy_32.o
CC crypto/asymmetric_keys/x509_loader.o
CC security/min_addr.o
AS arch/x86/lib/memmove_32.o
CC arch/x86/lib/misc.o
CC lib/crypto/mpi/generic_mpih-mul3.o
CC arch/x86/events/intel/core.o
AR arch/x86/mm/pat/built-in.a
CC arch/x86/lib/pc-conf-reg.o
CC arch/x86/platform/efi/efi_32.o
CC net/netlink/genetlink.o
CC mm/page-writeback.o
CC arch/x86/entry/vdso/vdso32-setup.o
CC drivers/pci/pcie/bwctrl.o
CC arch/x86/kernel/acpi/sleep.o
CC crypto/asymmetric_keys/x509_public_key.o
CC ipc/syscall.o
CC arch/x86/mm/init_32.o
AR block/partitions/built-in.a
CC arch/x86/kernel/cpu/mtrr/mtrr.o
AS arch/x86/lib/putuser.o
CC ipc/ipc_sysctl.o
AS arch/x86/lib/retpoline.o
CC net/sched/sch_api.o
CC arch/x86/lib/string_32.o
CC drivers/pci/pcie/aspm.o
AS arch/x86/kernel/acpi/wakeup_32.o
CC sound/core/seq/seq_queue.o
CC security/selinux/selinuxfs.o
CC arch/x86/pci/acpi.o
CC fs/quota/dquot.o
CC fs/quota/quota_v2.o
CC arch/x86/lib/strstr_32.o
CC lib/crypto/utils.o
CC arch/x86/lib/usercopy.o
VDSO arch/x86/entry/vdso/vdso32.so.dbg
CC kernel/irq/handle.o
CC kernel/locking/spinlock.o
OBJCOPY arch/x86/entry/vdso/vdso32.so
VDSO2C arch/x86/entry/vdso/vdso-image-32.c
CC arch/x86/entry/vdso/vdso-image-32.o
CC kernel/power/suspend.o
CC lib/crypto/mpi/generic_mpih-rshift.o
CC kernel/locking/osq_lock.o
CC security/keys/keyctl.o
CC drivers/pci/msi/irqdomain.o
AS arch/x86/platform/efi/efi_stub_32.o
CC arch/x86/events/amd/uncore.o
CC ipc/mqueue.o
CC fs/proc/task_mmu.o
CC arch/x86/lib/usercopy_32.o
CC arch/x86/kernel/apic/apic_noop.o
AR arch/x86/entry/vdso/built-in.a
ASN.1 crypto/asymmetric_keys/pkcs7.asn1.[ch]
CC arch/x86/mm/fault.o
CC crypto/asymmetric_keys/pkcs7_trust.o
AS arch/x86/entry/entry_32.o
CC lib/zlib_inflate/inffast.o
CC arch/x86/kernel/fpu/xstate.o
CC arch/x86/kernel/cpu/mce/severity.o
CC arch/x86/platform/efi/runtime-map.o
CC arch/x86/entry/syscall_32.o
CC fs/proc/inode.o
CC kernel/locking/qspinlock.o
CC fs/proc/root.o
CC fs/notify/notification.o
CC arch/x86/kernel/acpi/cstate.o
CC sound/core/memory.o
CC lib/zlib_inflate/inflate.o
CC sound/core/control.o
CC kernel/irq/manage.o
CC arch/x86/kernel/cpu/mtrr/if.o
CC fs/iomap/direct-io.o
CC kernel/printk/nbcon.o
CC arch/x86/lib/msr-smp.o
CC arch/x86/lib/cache-smp.o
CC block/blk-sysfs.o
CC crypto/asymmetric_keys/pkcs7_verify.o
CC net/ethtool/ioctl.o
CC arch/x86/pci/legacy.o
CC kernel/locking/rtmutex_api.o
CC sound/core/seq/seq_fifo.o
CC lib/crypto/mpi/generic_mpih-sub1.o
CC arch/x86/kernel/apic/ipi.o
CC arch/x86/events/zhaoxin/core.o
CC arch/x86/lib/crc32-glue.o
CC arch/x86/pci/irq.o
AR arch/x86/kernel/acpi/built-in.a
AR drivers/pci/msi/built-in.a
CC kernel/power/hibernate.o
CC lib/zlib_deflate/deflate.o
CC fs/notify/group.o
CC io_uring/tctx.o
CC lib/crypto/mpi/generic_mpih-add1.o
AR arch/x86/platform/efi/built-in.a
CC arch/x86/platform/intel/iosf_mbi.o
CC arch/x86/kernel/cpu/mtrr/generic.o
CC crypto/asymmetric_keys/x509.asn1.o
CC drivers/pci/pcie/pme.o
CC lib/zlib_inflate/infutil.o
CC arch/x86/kernel/cpu/mce/genpool.o
CC crypto/asymmetric_keys/x509_akid.asn1.o
CC lib/zlib_deflate/deftree.o
CC arch/x86/kernel/cpu/mce/intel.o
CC crypto/asymmetric_keys/x509_cert_parser.o
CC arch/x86/kernel/cpu/mce/amd.o
AS arch/x86/lib/crc32-pclmul.o
CC ipc/namespace.o
CC arch/x86/lib/msr.o
CC arch/x86/kernel/apic/vector.o
CC ipc/mq_sysctl.o
CC net/netlink/policy.o
CC arch/x86/kernel/cpu/mce/threshold.o
CC sound/core/seq/seq_prioq.o
AR arch/x86/events/amd/built-in.a
CC kernel/irq/spurious.o
CC kernel/printk/printk_ringbuffer.o
CC arch/x86/entry/common.o
CC security/keys/permission.o
AR arch/x86/kernel/fpu/built-in.a
CC mm/folio-compat.o
CC lib/zlib_inflate/inftrees.o
CC security/security.o
CC block/blk-flush.o
CC arch/x86/mm/ioremap.o
AR arch/x86/events/zhaoxin/built-in.a
CC fs/iomap/fiemap.o
CC fs/iomap/seek.o
CC lib/crypto/mpi/mpicoder.o
CC crypto/asymmetric_keys/pkcs7.asn1.o
CC lib/zlib_inflate/inflate_syms.o
CC kernel/locking/qrwlock.o
AS arch/x86/entry/thunk.o
CC drivers/video/console/dummycon.o
CC fs/notify/mark.o
CC drivers/video/backlight/backlight.o
CC crypto/asymmetric_keys/pkcs7_parser.o
CC arch/x86/kernel/cpu/mtrr/cleanup.o
CC security/selinux/netlink.o
CC arch/x86/kernel/cpu/microcode/core.o
CC drivers/pci/hotplug/pci_hotplug_core.o
CC kernel/rcu/sync.o
AR arch/x86/platform/intel/built-in.a
AR ipc/built-in.a
CC net/sched/sch_blackhole.o
AR arch/x86/platform/intel-mid/built-in.a
CC lib/zlib_deflate/deflate_syms.o
AR arch/x86/platform/intel-quark/built-in.a
CC net/core/stream.o
AR arch/x86/platform/olpc/built-in.a
AR arch/x86/platform/scx200/built-in.a
CC fs/quota/quota_tree.o
AR arch/x86/platform/ts5500/built-in.a
CC security/lsm_audit.o
CC kernel/irq/resend.o
AR drivers/pci/pcie/built-in.a
AR arch/x86/platform/uv/built-in.a
CC drivers/video/console/vgacon.o
AR arch/x86/platform/built-in.a
CC io_uring/filetable.o
CC arch/x86/kernel/cpu/microcode/intel.o
CC sound/core/seq/seq_timer.o
CC fs/proc/base.o
AR lib/zlib_inflate/built-in.a
CC arch/x86/kernel/cpu/microcode/amd.o
CC fs/proc/generic.o
CC arch/x86/pci/common.o
CC kernel/rcu/srcutree.o
CC kernel/printk/sysctl.o
CC security/keys/process_keys.o
AS arch/x86/lib/msr-reg.o
AR kernel/locking/built-in.a
CC security/device_cgroup.o
CC net/ethtool/common.o
CC arch/x86/lib/msr-reg-export.o
CC lib/crypto/mpi/mpi-add.o
CC mm/readahead.o
AR lib/zlib_deflate/built-in.a
CC arch/x86/pci/early.o
AR arch/x86/entry/built-in.a
CC fs/proc/array.o
AR net/netlink/built-in.a
AR crypto/asymmetric_keys/built-in.a
CC kernel/rcu/tree.o
CC crypto/api.o
CC kernel/power/snapshot.o
CC arch/x86/kernel/cpu/cacheinfo.o
AS arch/x86/lib/hweight.o
CC fs/iomap/swapfile.o
AR kernel/livepatch/built-in.a
CC sound/core/seq/seq_system.o
CC kernel/dma/mapping.o
CC arch/x86/kernel/cpu/scattered.o
CC arch/x86/lib/iomem.o
CC arch/x86/kernel/cpu/topology_common.o
CC kernel/irq/chip.o
CC arch/x86/mm/extable.o
CC block/blk-settings.o
AR kernel/printk/built-in.a
CC arch/x86/kernel/kprobes/core.o
CC arch/x86/kernel/cpu/mtrr/amd.o
CC kernel/dma/direct.o
AR drivers/video/backlight/built-in.a
CC arch/x86/pci/bus_numa.o
AR arch/x86/kernel/cpu/mce/built-in.a
CC arch/x86/pci/amd_bus.o
AR sound/drivers/opl3/built-in.a
CC drivers/pci/hotplug/acpi_pcihp.o
CC fs/notify/fdinfo.o
AR sound/drivers/opl4/built-in.a
AR sound/drivers/mpu401/built-in.a
AR sound/drivers/vx/built-in.a
AR sound/drivers/pcsp/built-in.a
AR sound/drivers/built-in.a
CC arch/x86/kernel/cpu/mtrr/cyrix.o
AR drivers/idle/built-in.a
CC arch/x86/kernel/apic/init.o
CC kernel/rcu/rcu_segcblist.o
CC net/sched/cls_api.o
CC arch/x86/lib/atomic64_32.o
CC security/keys/request_key.o
CC block/blk-ioc.o
CC io_uring/rw.o
CC lib/crypto/mpi/mpi-bit.o
CC fs/quota/quota.o
CC arch/x86/lib/inat.o
CC arch/x86/events/intel/bts.o
AR arch/x86/lib/built-in.a
CC kernel/power/swap.o
CC fs/quota/kqid.o
CC fs/quota/netlink.o
CC security/selinux/nlmsgtab.o
CC sound/core/seq/seq_ports.o
CC net/sched/act_api.o
AR drivers/video/console/built-in.a
CC net/core/scm.o
AR drivers/video/fbdev/core/built-in.a
AR arch/x86/lib/lib.a
AR drivers/video/fbdev/omap/built-in.a
AR arch/x86/kernel/cpu/microcode/built-in.a
CC mm/swap.o
CC security/selinux/netif.o
AR drivers/video/fbdev/omap2/omapfb/dss/built-in.a
CC mm/truncate.o
AR drivers/video/fbdev/omap2/omapfb/displays/built-in.a
AR fs/iomap/built-in.a
CC crypto/cipher.o
AR drivers/video/fbdev/omap2/omapfb/built-in.a
AR drivers/video/fbdev/omap2/built-in.a
CC mm/vmscan.o
AR drivers/video/fbdev/built-in.a
CC kernel/sched/build_utility.o
CC mm/shrinker.o
CC drivers/video/aperture.o
CC arch/x86/kernel/apic/hw_nmi.o
CC arch/x86/kernel/cpu/mtrr/centaur.o
CC arch/x86/mm/mmap.o
CC io_uring/net.o
AR fs/notify/built-in.a
CC kernel/dma/ops_helpers.o
CC arch/x86/events/core.o
CC lib/lzo/lzo1x_compress.o
CC security/selinux/netnode.o
CC lib/crypto/mpi/mpi-cmp.o
CC sound/core/seq/seq_info.o
CC arch/x86/mm/pgtable.o
LDS arch/x86/kernel/vmlinux.lds
CC kernel/irq/dummychip.o
AR drivers/pci/hotplug/built-in.a
CC lib/lzo/lzo1x_decompress_safe.o
CC net/ethtool/netlink.o
AR drivers/pci/controller/dwc/built-in.a
AR drivers/pci/controller/mobiveil/built-in.a
AR sound/isa/ad1816a/built-in.a
AR drivers/pci/controller/plda/built-in.a
AR sound/isa/ad1848/built-in.a
AR drivers/pci/controller/built-in.a
AR sound/isa/cs423x/built-in.a
CC lib/lz4/lz4_decompress.o
AR arch/x86/pci/built-in.a
CC arch/x86/kernel/kprobes/opt.o
AR drivers/pci/switch/built-in.a
AR sound/isa/es1688/built-in.a
CC lib/zstd/zstd_decompress_module.o
CC drivers/pci/access.o
AR sound/isa/galaxy/built-in.a
CC lib/xz/xz_dec_syms.o
AR sound/isa/gus/built-in.a
AR sound/isa/msnd/built-in.a
AR sound/isa/opti9xx/built-in.a
AR sound/isa/sb/built-in.a
CC arch/x86/events/probe.o
AR sound/isa/wavefront/built-in.a
AR sound/isa/wss/built-in.a
AR sound/isa/built-in.a
CC arch/x86/mm/physaddr.o
CC block/blk-map.o
CC security/keys/request_key_auth.o
CC security/keys/user_defined.o
CC crypto/compress.o
CC arch/x86/events/utils.o
CC arch/x86/kernel/cpu/mtrr/legacy.o
CC arch/x86/events/intel/ds.o
CC lib/xz/xz_dec_stream.o
CC arch/x86/kernel/apic/io_apic.o
CC arch/x86/kernel/apic/msi.o
CC kernel/irq/devres.o
CC lib/zstd/decompress/huf_decompress.o
AR lib/lzo/built-in.a
CC net/netfilter/core.o
CC net/xfrm/xfrm_policy.o
CC net/ipv4/netfilter/nf_defrag_ipv4.o
CC net/unix/af_unix.o
CC sound/core/seq/seq_dummy.o
CC lib/crypto/mpi/mpi-sub-ui.o
CC net/ipv6/netfilter/ip6_tables.o
CC drivers/video/cmdline.o
CC drivers/video/nomodeset.o
CC arch/x86/kernel/cpu/topology_ext.o
CC net/unix/garbage.o
CC fs/proc/fd.o
CC block/blk-merge.o
AR fs/quota/built-in.a
CC arch/x86/events/rapl.o
CC lib/zstd/decompress/zstd_ddict.o
CC arch/x86/events/intel/knc.o
CC arch/x86/mm/tlb.o
CC net/core/gen_stats.o
AR arch/x86/kernel/cpu/mtrr/built-in.a
CC net/ipv4/netfilter/nf_reject_ipv4.o
CC kernel/power/user.o
CC kernel/entry/common.o
CC net/netfilter/nf_log.o
CC sound/core/misc.o
AR arch/x86/kernel/kprobes/built-in.a
CC net/ipv4/route.o
CC crypto/algapi.o
CC net/core/gen_estimator.o
CC net/ipv6/af_inet6.o
CC kernel/irq/kexec.o
CC drivers/pci/bus.o
CC security/keys/proc.o
CC lib/xz/xz_dec_lzma2.o
CC arch/x86/kernel/cpu/topology_amd.o
CC net/xfrm/xfrm_state.o
CC fs/kernfs/mount.o
CC security/selinux/netport.o
CC lib/crypto/mpi/mpi-div.o
AR sound/core/seq/built-in.a
CC net/sched/sch_fifo.o
CC sound/core/device.o
CC kernel/dma/remap.o
CC fs/kernfs/inode.o
AR drivers/char/ipmi/built-in.a
CC kernel/irq/autoprobe.o
CC drivers/video/hdmi.o
CC net/ethtool/bitset.o
CC arch/x86/events/intel/lbr.o
AR lib/lz4/built-in.a
CC kernel/power/poweroff.o
CC io_uring/poll.o
CC arch/x86/kernel/cpu/common.o
CC kernel/entry/syscall_user_dispatch.o
CC fs/proc/proc_tty.o
CC mm/shmem.o
CC lib/crypto/chacha.o
CC lib/crypto/aes.o
CC security/keys/sysctl.o
CC sound/core/info.o
AR kernel/power/built-in.a
AS arch/x86/kernel/head_32.o
CC lib/xz/xz_dec_bcj.o
CC kernel/irq/irqdomain.o
CC arch/x86/kernel/apic/probe_32.o
CC io_uring/eventfd.o
CC drivers/pci/probe.o
CC arch/x86/events/intel/p4.o
AR kernel/dma/built-in.a
CC security/selinux/status.o
CC net/ethtool/strset.o
AR sound/pci/ac97/built-in.a
CC lib/zstd/decompress/zstd_decompress.o
AR sound/pci/ali5451/built-in.a
CC lib/crypto/mpi/mpi-mod.o
AR sound/pci/asihpi/built-in.a
CC arch/x86/mm/cpu_entry_area.o
AR sound/pci/au88x0/built-in.a
AR sound/pci/aw2/built-in.a
AR sound/pci/ctxfi/built-in.a
AR sound/pci/ca0106/built-in.a
AR sound/pci/cs46xx/built-in.a
CC lib/zstd/decompress/zstd_decompress_block.o
AR sound/pci/cs5535audio/built-in.a
CC lib/zstd/zstd_common_module.o
CC drivers/pci/host-bridge.o
AR sound/pci/lola/built-in.a
AR sound/pci/lx6464es/built-in.a
AR sound/pci/echoaudio/built-in.a
CC net/core/net_namespace.o
AR sound/pci/emu10k1/built-in.a
CC lib/zstd/common/debug.o
CC sound/pci/hda/hda_bind.o
CC net/packet/af_packet.o
CC crypto/scatterwalk.o
CC fs/kernfs/dir.o
CC lib/zstd/common/entropy_common.o
CC net/netfilter/nf_queue.o
AR drivers/video/built-in.a
CC fs/sysfs/file.o
CC net/ipv4/netfilter/ip_tables.o
CC fs/sysfs/dir.o
CC kernel/module/main.o
CC block/blk-timeout.o
AR arch/x86/kernel/apic/built-in.a
AR kernel/entry/built-in.a
CC net/ethtool/linkinfo.o
CC security/selinux/ss/ebitmap.o
CC security/keys/keyctl_pkey.o
CC arch/x86/events/intel/p6.o
AR lib/xz/built-in.a
CC fs/proc/cmdline.o
CC net/sched/cls_cgroup.o
CC mm/util.o
CC net/xfrm/xfrm_hash.o
CC net/unix/sysctl_net_unix.o
CC kernel/irq/proc.o
AR net/dsa/built-in.a
CC kernel/module/strict_rwx.o
CC net/ipv6/netfilter/ip6table_filter.o
CC lib/crypto/mpi/mpi-mul.o
CC lib/crypto/arc4.o
CC arch/x86/mm/maccess.o
CC net/ipv4/inetpeer.o
CC sound/core/isadma.o
CC crypto/proc.o
AR sound/pci/ice1712/built-in.a
AR sound/ppc/built-in.a
AR kernel/rcu/built-in.a
CC kernel/module/kmod.o
CC fs/proc/consoles.o
CC kernel/time/time.o
CC arch/x86/kernel/cpu/rdrand.o
CC net/sched/ematch.o
CC sound/pci/hda/hda_codec.o
CC net/sunrpc/auth_gss/auth_gss.o
CC arch/x86/mm/pgprot.o
AR net/wireless/tests/built-in.a
CC net/wireless/core.o
AR net/mac80211/tests/built-in.a
CC net/mac80211/main.o
CC net/netlabel/netlabel_user.o
CC net/rfkill/core.o
CC arch/x86/events/msr.o
CC fs/kernfs/file.o
AR security/keys/built-in.a
CC block/blk-lib.o
CC drivers/acpi/acpica/dsargs.o
CC drivers/pnp/pnpacpi/core.o
CC drivers/pnp/pnpacpi/rsparser.o
CC net/rfkill/input.o
CC net/ipv4/netfilter/iptable_filter.o
CC fs/sysfs/symlink.o
CC arch/x86/events/intel/pt.o
CC kernel/irq/migration.o
CC lib/crypto/mpi/mpih-cmp.o
CC sound/core/vmaster.o
CC drivers/pci/remove.o
CC arch/x86/kernel/cpu/match.o
CC io_uring/uring_cmd.o
CC net/ethtool/linkmodes.o
AR net/unix/built-in.a
CC net/sunrpc/clnt.o
CC net/mac80211/status.o
CC crypto/aead.o
AR kernel/sched/built-in.a
CC net/netfilter/nf_sockopt.o
CC fs/proc/cpuinfo.o
CC drivers/acpi/acpica/dscontrol.o
CC arch/x86/mm/pgtable_32.o
CC arch/x86/kernel/head32.o
CC security/selinux/ss/hashtab.o
CC net/ipv6/netfilter/ip6table_mangle.o
CC net/core/secure_seq.o
CC sound/core/ctljack.o
CC kernel/irq/cpuhotplug.o
CC kernel/irq/pm.o
CC fs/proc/devices.o
CC arch/x86/kernel/cpu/bugs.o
CC net/ipv6/netfilter/nf_defrag_ipv6_hooks.o
CC net/sunrpc/xprt.o
CC net/9p/mod.o
CC lib/crypto/mpi/mpih-div.o
CC net/wireless/sysfs.o
AR drivers/acpi/pmic/built-in.a
CC drivers/pci/pci.o
CC fs/sysfs/mount.o
CC block/blk-mq.o
CC kernel/time/timer.o
CC lib/crypto/mpi/mpih-mul.o
CC drivers/acpi/acpica/dsdebug.o
CC net/ipv6/anycast.o
AR net/sched/built-in.a
CC security/selinux/ss/symtab.o
CC arch/x86/kernel/ebda.o
CC net/netlabel/netlabel_kapi.o
AR net/rfkill/built-in.a
CC drivers/pnp/core.o
CC kernel/irq/msi.o
CC kernel/irq/affinity.o
CC sound/core/jack.o
CC kernel/futex/core.o
CC fs/kernfs/symlink.o
AR drivers/pnp/pnpacpi/built-in.a
CC net/netlabel/netlabel_domainhash.o
CC fs/sysfs/group.o
CC arch/x86/mm/iomap_32.o
CC lib/crypto/mpi/mpi-pow.o
CC net/ipv4/netfilter/iptable_mangle.o
CC security/selinux/ss/sidtab.o
CC drivers/acpi/acpica/dsfield.o
CC net/xfrm/xfrm_input.o
CC fs/proc/interrupts.o
CC net/9p/client.o
CC crypto/geniv.o
CC lib/zstd/common/error_private.o
CC lib/zstd/common/fse_decompress.o
CC kernel/irq/matrix.o
CC net/ipv6/ip6_output.o
CC net/ethtool/rss.o
CC net/netfilter/utils.o
CC io_uring/openclose.o
CC mm/mmzone.o
CC arch/x86/mm/hugetlbpage.o
CC arch/x86/events/intel/uncore.o
CC block/blk-mq-tag.o
CC kernel/module/tree_lookup.o
CC net/mac80211/driver-ops.o
CC net/mac80211/sta_info.o
CC drivers/pnp/card.o
CC drivers/acpi/acpica/dsinit.o
AR sound/pci/korg1212/built-in.a
CC drivers/acpi/acpica/dsmethod.o
CC drivers/acpi/dptf/int340x_thermal.o
CC sound/core/hwdep.o
AR fs/kernfs/built-in.a
CC lib/crypto/gf128mul.o
AR fs/sysfs/built-in.a
CC io_uring/sqpoll.o
CC net/core/flow_dissector.o
CC fs/proc/loadavg.o
CC net/dns_resolver/dns_key.o
CC lib/crypto/mpi/mpiutil.o
CC kernel/futex/syscalls.o
CC lib/zstd/common/zstd_common.o
CC net/ipv6/netfilter/nf_conntrack_reasm.o
CC mm/vmstat.o
AR lib/zstd/built-in.a
CC lib/crypto/blake2s.o
CC lib/crypto/blake2s-generic.o
CC sound/pci/hda/hda_jack.o
CC arch/x86/mm/dump_pagetables.o
CC drivers/acpi/x86/apple.o
CC kernel/module/kallsyms.o
CC drivers/acpi/acpica/dsmthdat.o
AR drivers/acpi/dptf/built-in.a
CC kernel/module/procfs.o
CC net/ipv4/netfilter/ipt_REJECT.o
CC net/sunrpc/auth_gss/gss_mech_switch.o
CC kernel/cgroup/cgroup.o
CC crypto/lskcipher.o
CC net/netfilter/nfnetlink.o
CC arch/x86/kernel/cpu/aperfmperf.o
CC drivers/pnp/driver.o
CC fs/proc/meminfo.o
CC net/xfrm/xfrm_output.o
AR net/packet/built-in.a
CC kernel/futex/pi.o
CC drivers/acpi/acpica/dsobject.o
CC net/netlabel/netlabel_addrlist.o
CC net/dns_resolver/dns_query.o
CC net/mac80211/wep.o
CC net/ethtool/linkstate.o
CC security/selinux/ss/avtab.o
CC sound/core/timer.o
AR lib/crypto/mpi/built-in.a
CC lib/dim/dim.o
CC lib/crypto/sha1.o
CC fs/devpts/inode.o
CC drivers/acpi/tables.o
AR kernel/irq/built-in.a
CC drivers/pnp/resource.o
CC arch/x86/kernel/cpu/cpuid-deps.o
CC drivers/acpi/x86/cmos_rtc.o
AR sound/arm/built-in.a
CC kernel/time/hrtimer.o
CC net/xfrm/xfrm_sysctl.o
CC kernel/futex/requeue.o
CC net/wireless/radiotap.o
CC net/netfilter/nfnetlink_log.o
CC sound/pci/hda/hda_auto_parser.o
CC fs/netfs/buffered_read.o
CC drivers/acpi/acpica/dsopcode.o
CC fs/ext4/balloc.o
CC lib/dim/net_dim.o
CC kernel/module/sysfs.o
CC arch/x86/mm/highmem_32.o
CC security/selinux/ss/policydb.o
CC lib/crypto/sha256.o
CC fs/ext4/bitmap.o
CC arch/x86/kernel/cpu/umwait.o
CC fs/ext4/block_validity.o
CC fs/proc/stat.o
CC net/9p/error.o
CC arch/x86/events/intel/uncore_nhmex.o
CC security/selinux/ss/services.o
AR net/dns_resolver/built-in.a
CC net/9p/protocol.o
CC sound/pci/hda/hda_sysfs.o
CC crypto/skcipher.o
CC [M] net/ipv4/netfilter/iptable_nat.o
CC drivers/acpi/acpica/dspkginit.o
CC drivers/acpi/x86/lpss.o
CC drivers/acpi/osi.o
AR fs/devpts/built-in.a
MKCAP arch/x86/kernel/cpu/capflags.c
CC io_uring/xattr.o
CC kernel/futex/waitwake.o
CC net/ipv6/netfilter/nf_reject_ipv6.o
CC net/ethtool/debug.o
CC net/ethtool/wol.o
CC mm/backing-dev.o
CC lib/fonts/fonts.o
CC arch/x86/kernel/cpu/powerflags.o
CC net/netlabel/netlabel_mgmt.o
AR arch/x86/mm/built-in.a
CC arch/x86/kernel/cpu/topology.o
AR lib/crypto/built-in.a
CC net/sunrpc/auth_gss/svcauth_gss.o
CC drivers/pci/pci-driver.o
CC kernel/time/sleep_timeout.o
CC drivers/acpi/osl.o
AR sound/pci/mixart/built-in.a
CC net/sunrpc/socklib.o
AR kernel/module/built-in.a
AR sound/pci/nm256/built-in.a
CC net/xfrm/xfrm_replay.o
CC fs/jbd2/transaction.o
CC drivers/pnp/manager.o
CC drivers/acpi/acpica/dsutils.o
CC security/selinux/ss/conditional.o
CC fs/proc/uptime.o
CC arch/x86/kernel/platform-quirks.o
CC net/ipv6/ip6_input.o
CC net/wireless/util.o
CC crypto/seqiv.o
CC lib/dim/rdma_dim.o
CC kernel/time/timekeeping.o
CC net/core/sysctl_net_core.o
CC lib/fonts/font_8x16.o
CC fs/netfs/buffered_write.o
CC net/mac80211/aead_api.o
CC kernel/cgroup/rstat.o
CC sound/core/hrtimer.o
CC net/9p/trans_common.o
CC sound/pci/hda/hda_controller.o
CC drivers/acpi/x86/s2idle.o
CC arch/x86/events/intel/uncore_snb.o
CC net/ipv4/protocol.o
CC net/xfrm/xfrm_device.o
CC arch/x86/kernel/cpu/proc.o
CC net/9p/trans_fd.o
CC drivers/acpi/acpica/dswexec.o
CC io_uring/nop.o
AR kernel/futex/built-in.a
AR sound/sh/built-in.a
CC net/mac80211/wpa.o
CC net/core/dev.o
AR lib/fonts/built-in.a
CC io_uring/fs.o
AR lib/dim/built-in.a
CC lib/argv_split.o
CC block/blk-stat.o
CC net/netfilter/nf_conntrack_core.o
CC drivers/pnp/support.o
CC block/blk-mq-sysfs.o
CC net/handshake/alert.o
CC fs/proc/util.o
AR net/ipv4/netfilter/built-in.a
AR sound/pci/oxygen/built-in.a
CC net/devres.o
CC net/handshake/genl.o
CC sound/core/pcm.o
CC net/ethtool/features.o
CC crypto/echainiv.o
CC net/xfrm/xfrm_nat_keepalive.o
CC net/ethtool/privflags.o
CC lib/bug.o
CC fs/ext4/dir.o
CC drivers/acpi/acpica/dswload.o
CC mm/mm_init.o
CC net/ipv6/netfilter/ip6t_ipv6header.o
CC net/netlabel/netlabel_unlabeled.o
CC fs/netfs/direct_read.o
CC io_uring/splice.o
AR sound/synth/emux/built-in.a
AR sound/synth/built-in.a
CC mm/percpu.o
CC drivers/pci/search.o
CC fs/proc/version.o
CC drivers/pnp/interface.o
CC drivers/acpi/x86/utils.o
CC drivers/acpi/acpica/dswload2.o
CC net/ipv4/ip_input.o
CC sound/core/pcm_native.o
CC crypto/ahash.o
CC net/handshake/netlink.o
CC drivers/pci/rom.o
CC arch/x86/events/intel/uncore_snbep.o
CC drivers/pci/setup-res.o
CC net/ipv6/netfilter/ip6t_REJECT.o
CC sound/pci/hda/hda_proc.o
CC block/blk-mq-cpumap.o
CC drivers/acpi/x86/blacklist.o
CC fs/jbd2/commit.o
CC net/9p/trans_virtio.o
CC fs/ramfs/inode.o
CC arch/x86/events/intel/uncore_discovery.o
CC net/socket.o
CC arch/x86/kernel/process_32.o
CC lib/buildid.o
CC net/mac80211/scan.o
CC drivers/acpi/acpica/dswscope.o
CC fs/ext4/ext4_jbd2.o
CC fs/proc/softirqs.o
CC kernel/time/ntp.o
CC kernel/cgroup/namespace.o
CC kernel/time/clocksource.o
CC drivers/pnp/quirks.o
CC kernel/trace/trace_clock.o
CC kernel/trace/ring_buffer.o
CC net/sunrpc/auth_gss/gss_rpc_upcall.o
CC net/ethtool/rings.o
CC drivers/pnp/system.o
AR drivers/acpi/x86/built-in.a
CC sound/pci/hda/hda_hwdep.o
CC fs/jbd2/recovery.o
CC kernel/cgroup/cgroup-v1.o
CC drivers/acpi/acpica/dswstate.o
CC fs/netfs/direct_write.o
CC security/selinux/ss/mls.o
CC io_uring/sync.o
CC kernel/cgroup/freezer.o
CC arch/x86/kernel/cpu/feat_ctl.o
CC net/xfrm/xfrm_algo.o
CC net/netlabel/netlabel_cipso_v4.o
CC block/blk-mq-sched.o
CC drivers/pci/irq.o
CC fs/ramfs/file-mmu.o
CC io_uring/msg_ring.o
CC net/ethtool/channels.o
CC kernel/time/jiffies.o
CC lib/clz_tab.o
CC lib/cmdline.o
CC crypto/shash.o
CC fs/proc/namespaces.o
CC drivers/acpi/acpica/evevent.o
CC kernel/time/timer_list.o
CC lib/cpumask.o
CC net/mac80211/offchannel.o
CC fs/netfs/iterator.o
CC net/ipv6/addrconf.o
CC kernel/time/timeconv.o
CC kernel/cgroup/legacy_freezer.o
CC net/handshake/request.o
CC kernel/cgroup/pids.o
AR net/ipv6/netfilter/built-in.a
CC net/wireless/reg.o
CC kernel/cgroup/rdma.o
AR drivers/pnp/built-in.a
CC net/xfrm/xfrm_user.o
CC sound/pci/hda/hda_intel.o
CC net/ipv4/ip_fragment.o
CC net/mac80211/ht.o
CC net/sunrpc/auth_gss/gss_rpc_xdr.o
CC security/selinux/ss/context.o
CC fs/ext4/extents.o
CC drivers/acpi/acpica/evgpe.o
AR net/9p/built-in.a
CC net/core/dev_addr_lists.o
CC net/netfilter/nf_conntrack_standalone.o
CC drivers/pci/vpd.o
CC net/ipv6/addrlabel.o
AR fs/ramfs/built-in.a
CC net/core/dst.o
CC net/ipv6/route.o
CC fs/jbd2/checkpoint.o
CC net/ipv4/ip_forward.o
CC block/ioctl.o
CC block/genhd.o
CC fs/netfs/locking.o
CC lib/ctype.o
CC lib/dec_and_lock.o
CC net/sunrpc/xprtsock.o
CC fs/proc/self.o
CC io_uring/advise.o
CC kernel/time/timecounter.o
CC io_uring/epoll.o
CC drivers/acpi/acpica/evgpeblk.o
CC net/netlabel/netlabel_calipso.o
CC kernel/time/alarmtimer.o
CC net/sysctl_net.o
CC net/ipv6/ip6_fib.o
CC net/mac80211/agg-tx.o
CC fs/hugetlbfs/inode.o
CC kernel/cgroup/cpuset.o
CC lib/decompress.o
CC net/ethtool/coalesce.o
CC crypto/akcipher.o
CC net/ethtool/pause.o
CC lib/decompress_bunzip2.o
CC net/sunrpc/auth_gss/trace.o
CC lib/decompress_inflate.o
CC mm/slab_common.o
CC arch/x86/events/intel/cstate.o
CC drivers/acpi/acpica/evgpeinit.o
CC security/selinux/netlabel.o
CC fs/proc/thread_self.o
CC drivers/pci/setup-bus.o
CC sound/core/pcm_lib.o
CC fs/netfs/main.o
CC fs/jbd2/revoke.o
CC fs/netfs/misc.o
CC net/handshake/tlshd.o
CC kernel/time/posix-timers.o
CC net/netfilter/nf_conntrack_expect.o
CC io_uring/statx.o
CC net/sunrpc/auth_gss/gss_krb5_mech.o
CC net/sunrpc/auth_gss/gss_krb5_seal.o
CC crypto/sig.o
AR sound/usb/misc/built-in.a
AR sound/usb/usx2y/built-in.a
AR sound/usb/caiaq/built-in.a
CC kernel/cgroup/misc.o
AR sound/usb/6fire/built-in.a
CC fs/fat/cache.o
CC drivers/acpi/acpica/evgpeutil.o
AR sound/usb/hiface/built-in.a
AR sound/usb/bcd2000/built-in.a
AR sound/usb/built-in.a
CC net/wireless/scan.o
CC drivers/acpi/utils.o
CC lib/decompress_unlz4.o
CC block/ioprio.o
CC fs/ext4/extents_status.o
AR sound/pci/hda/built-in.a
AR sound/pci/pcxhr/built-in.a
AR sound/pci/riptide/built-in.a
CC net/ipv4/ip_options.o
AR sound/pci/rme9652/built-in.a
CC net/ipv6/ipv6_sockglue.o
AR sound/pci/trident/built-in.a
AR sound/pci/ymfpci/built-in.a
AR sound/pci/vx222/built-in.a
CC fs/proc/proc_sysctl.o
AR sound/pci/built-in.a
AR net/netlabel/built-in.a
CC net/handshake/trace.o
CC io_uring/timeout.o
CC sound/core/pcm_misc.o
CC fs/netfs/objects.o
CC drivers/pci/vc.o
AR arch/x86/events/intel/built-in.a
CC arch/x86/kernel/cpu/intel.o
AR arch/x86/events/built-in.a
CC fs/isofs/namei.o
CC drivers/acpi/acpica/evglock.o
CC net/ethtool/eee.o
CC fs/netfs/read_collect.o
CC kernel/trace/trace.o
CC lib/decompress_unlzma.o
CC fs/jbd2/journal.o
CC fs/isofs/inode.o
CC arch/x86/kernel/signal.o
CC net/mac80211/agg-rx.o
CC crypto/kpp.o
AR drivers/amba/built-in.a
AR fs/hugetlbfs/built-in.a
CC fs/fat/dir.o
CC net/wireless/nl80211.o
CC block/badblocks.o
CC drivers/acpi/acpica/evhandler.o
CC sound/core/pcm_memory.o
AR security/selinux/built-in.a
AR security/built-in.a
CC net/ipv4/ip_output.o
CC fs/proc/proc_net.o
CC lib/decompress_unlzo.o
CC kernel/trace/trace_output.o
CC kernel/cgroup/debug.o
CC drivers/pci/mmap.o
CC arch/x86/kernel/cpu/tsx.o
CC kernel/time/posix-cpu-timers.o
CC fs/nfs/client.o
AR net/xfrm/built-in.a
CC fs/fat/fatent.o
CC kernel/trace/trace_seq.o
ASN.1 crypto/rsapubkey.asn1.[ch]
ASN.1 crypto/rsaprivkey.asn1.[ch]
CC arch/x86/kernel/cpu/intel_epb.o
CC drivers/acpi/acpica/evmisc.o
CC drivers/acpi/acpica/evregion.o
CC net/netfilter/nf_conntrack_helper.o
CC kernel/bpf/core.o
CC block/blk-rq-qos.o
AR sound/firewire/built-in.a
CC arch/x86/kernel/signal_32.o
CC io_uring/fdinfo.o
CC net/core/netevent.o
CC net/ethtool/tsinfo.o
CC drivers/acpi/reboot.o
CC fs/proc/kcore.o
CC drivers/acpi/acpica/evrgnini.o
CC crypto/rsa.o
CC kernel/events/core.o
CC lib/decompress_unxz.o
CC mm/compaction.o
CC net/sunrpc/auth_gss/gss_krb5_unseal.o
CC kernel/events/ring_buffer.o
CC fs/exportfs/expfs.o
CC arch/x86/kernel/cpu/amd.o
CC sound/core/memalloc.o
CC drivers/pci/devres.o
CC kernel/trace/trace_stat.o
CC fs/ext4/file.o
CC fs/fat/file.o
CC arch/x86/kernel/traps.o
AR net/handshake/built-in.a
CC net/mac80211/vht.o
CC crypto/rsa_helper.o
AR kernel/cgroup/built-in.a
CC fs/netfs/read_pgpriv2.o
CC kernel/events/callchain.o
CC drivers/acpi/acpica/evsci.o
CC fs/isofs/dir.o
CC kernel/time/posix-clock.o
CC lib/decompress_unzstd.o
CC drivers/acpi/nvs.o
CC fs/ext4/fsmap.o
CC net/ethtool/cabletest.o
CC kernel/events/hw_breakpoint.o
CC block/disk-events.o
CC kernel/time/itimer.o
CC drivers/acpi/wakeup.o
CC crypto/rsa-pkcs1pad.o
CC drivers/acpi/acpica/evxface.o
CC fs/netfs/read_retry.o
CC io_uring/cancel.o
AR fs/exportfs/built-in.a
CC kernel/fork.o
CC drivers/pci/proc.o
AR drivers/clk/actions/built-in.a
CC net/sunrpc/sched.o
AR drivers/clk/analogbits/built-in.a
AR drivers/clk/bcm/built-in.a
AR drivers/clk/imgtec/built-in.a
AR drivers/clk/imx/built-in.a
CC fs/proc/vmcore.o
AR drivers/clk/ingenic/built-in.a
AR drivers/clk/mediatek/built-in.a
AR drivers/clk/microchip/built-in.a
AR drivers/clk/mstar/built-in.a
CC lib/dump_stack.o
AR drivers/clk/mvebu/built-in.a
AR drivers/clk/ralink/built-in.a
AR drivers/clk/renesas/built-in.a
CC fs/proc/kmsg.o
AR drivers/clk/socfpga/built-in.a
AR drivers/clk/sophgo/built-in.a
AR drivers/clk/sprd/built-in.a
AR drivers/clk/starfive/built-in.a
CC lib/earlycpio.o
AR drivers/clk/sunxi-ng/built-in.a
AR drivers/clk/ti/built-in.a
CC net/ipv4/ip_sockglue.o
AR drivers/clk/versatile/built-in.a
CC net/sunrpc/auth_gss/gss_krb5_wrap.o
AR drivers/clk/xilinx/built-in.a
CC arch/x86/kernel/cpu/hygon.o
AR drivers/clk/built-in.a
CC net/netfilter/nf_conntrack_proto.o
CC sound/core/pcm_timer.o
CC fs/isofs/util.o
CC fs/fat/inode.o
CC net/wireless/mlme.o
CC net/ipv6/ndisc.o
CC drivers/acpi/acpica/evxfevnt.o
CC net/netfilter/nf_conntrack_proto_generic.o
CC net/mac80211/he.o
CC net/mac80211/s1g.o
CC mm/show_mem.o
CC net/sunrpc/auth.o
CC fs/nfs/dir.o
CC io_uring/waitid.o
CC net/ipv6/udp.o
CC net/mac80211/ibss.o
CC drivers/pci/pci-sysfs.o
CC fs/lockd/clntlock.o
CC net/sunrpc/auth_gss/gss_krb5_crypto.o
CC drivers/dma/dw/core.o
CC crypto/rsassa-pkcs1.o
AR drivers/soc/apple/built-in.a
AR drivers/soc/aspeed/built-in.a
AR drivers/soc/bcm/built-in.a
CC block/blk-ia-ranges.o
CC fs/netfs/read_single.o
AR drivers/soc/fsl/built-in.a
AR drivers/soc/fujitsu/built-in.a
AR drivers/soc/hisilicon/built-in.a
AR drivers/soc/imx/built-in.a
AR drivers/soc/ixp4xx/built-in.a
AR drivers/soc/loongson/built-in.a
CC arch/x86/kernel/cpu/centaur.o
AR drivers/soc/mediatek/built-in.a
CC drivers/acpi/acpica/evxfgpe.o
CC lib/extable.o
AR drivers/soc/microchip/built-in.a
AR drivers/soc/nuvoton/built-in.a
AR drivers/soc/pxa/built-in.a
AR fs/jbd2/built-in.a
CC crypto/acompress.o
AR drivers/soc/amlogic/built-in.a
AR drivers/soc/qcom/built-in.a
CC sound/core/seq_device.o
AR drivers/soc/renesas/built-in.a
AR drivers/soc/rockchip/built-in.a
AR drivers/soc/sunxi/built-in.a
CC kernel/time/clockevents.o
AR drivers/soc/ti/built-in.a
AR drivers/soc/versatile/built-in.a
CC net/ethtool/tunnels.o
CC net/sunrpc/auth_gss/gss_krb5_keys.o
AR drivers/soc/xilinx/built-in.a
AR drivers/soc/built-in.a
CC drivers/dma/dw/dw.o
CC fs/isofs/rock.o
CC net/sunrpc/auth_null.o
CC fs/isofs/export.o
CC drivers/acpi/acpica/evxfregn.o
CC drivers/dma/hsu/hsu.o
CC fs/proc/page.o
CC arch/x86/kernel/cpu/transmeta.o
CC lib/flex_proportions.o
CC net/netfilter/nf_conntrack_proto_tcp.o
CC fs/fat/misc.o
CC fs/nfs/file.o
CC net/mac80211/iface.o
CC io_uring/register.o
CC drivers/acpi/acpica/exconcat.o
CC block/early-lookup.o
AR sound/core/built-in.a
CC arch/x86/kernel/cpu/zhaoxin.o
CC net/core/neighbour.o
CC fs/ext4/fsync.o
CC drivers/dma/dw/idma32.o
AR sound/sparc/built-in.a
AR sound/spi/built-in.a
AR sound/parisc/built-in.a
CC fs/netfs/rolling_buffer.o
AR sound/pcmcia/vx/built-in.a
CC kernel/time/tick-common.o
AR sound/pcmcia/pdaudiocf/built-in.a
AR sound/pcmcia/built-in.a
AR sound/mips/built-in.a
CC net/ipv4/inet_hashtables.o
AR sound/soc/built-in.a
CC lib/idr.o
AR sound/atmel/built-in.a
CC sound/hda/hda_bus_type.o
CC kernel/time/tick-broadcast.o
CC net/ipv4/inet_timewait_sock.o
CC crypto/scompress.o
CC fs/lockd/clntproc.o
CC sound/hda/hdac_bus.o
CC drivers/pci/slot.o
AR kernel/bpf/built-in.a
CC sound/hda/hdac_device.o
CC net/wireless/ibss.o
CC arch/x86/kernel/idt.o
CC io_uring/truncate.o
CC mm/interval_tree.o
CC drivers/acpi/acpica/exconfig.o
CC fs/isofs/joliet.o
CC sound/hda/hdac_sysfs.o
CC arch/x86/kernel/cpu/vortex.o
AR drivers/dma/hsu/built-in.a
CC drivers/acpi/acpica/exconvrt.o
AR fs/proc/built-in.a
CC fs/nfs/getroot.o
CC net/ipv4/inet_connection_sock.o
CC net/ethtool/fec.o
CC block/bounce.o
AR net/sunrpc/auth_gss/built-in.a
CC drivers/dma/dw/acpi.o
CC lib/iomem_copy.o
CC kernel/time/tick-broadcast-hrtimer.o
CC fs/fat/nfs.o
CC net/core/rtnetlink.o
CC kernel/trace/trace_printk.o
CC mm/list_lru.o
CC arch/x86/kernel/cpu/perfctr-watchdog.o
CC lib/irq_regs.o
CC drivers/pci/pci-acpi.o
CC net/sunrpc/auth_tls.o
CC fs/isofs/compress.o
CC drivers/acpi/acpica/excreate.o
CC fs/netfs/write_collect.o
CC kernel/exec_domain.o
CC block/bsg.o
CC arch/x86/kernel/irq.o
CC fs/lockd/clntxdr.o
CC lib/is_single_threaded.o
CC mm/workingset.o
CC crypto/algboss.o
CC io_uring/memmap.o
CC drivers/pci/iomap.o
CC block/blk-cgroup.o
CC kernel/time/tick-oneshot.o
CC fs/fat/namei_vfat.o
CC kernel/panic.o
CC drivers/acpi/sleep.o
CC net/wireless/sme.o
CC fs/ext4/hash.o
CC drivers/acpi/acpica/exdebug.o
CC sound/hda/hdac_regmap.o
AR drivers/dma/dw/built-in.a
AR drivers/dma/idxd/built-in.a
CC net/ipv6/udplite.o
AR drivers/dma/amd/built-in.a
AR drivers/dma/mediatek/built-in.a
AR drivers/dma/qcom/built-in.a
CC fs/lockd/host.o
AR drivers/dma/stm32/built-in.a
AR drivers/dma/ti/built-in.a
CC lib/klist.o
AR drivers/dma/xilinx/built-in.a
CC arch/x86/kernel/cpu/vmware.o
CC drivers/dma/dmaengine.o
CC net/sunrpc/auth_unix.o
CC fs/netfs/write_issue.o
AR sound/x86/built-in.a
CC fs/nls/nls_base.o
CC fs/nls/nls_cp437.o
CC kernel/time/tick-sched.o
CC net/netfilter/nf_conntrack_proto_udp.o
CC net/core/utils.o
CC block/blk-ioprio.o
CC lib/kobject.o
CC kernel/trace/pid_list.o
CC io_uring/alloc_cache.o
CC drivers/acpi/acpica/exdump.o
CC fs/nls/nls_ascii.o
CC net/ethtool/eeprom.o
CC lib/kobject_uevent.o
AR fs/isofs/built-in.a
CC drivers/virtio/virtio.o
CC fs/lockd/svc.o
CC kernel/events/uprobes.o
CC net/core/link_watch.o
CC fs/fat/namei_msdos.o
CC mm/debug.o
CC kernel/trace/trace_sched_switch.o
CC drivers/pci/quirks.o
CC arch/x86/kernel/cpu/hypervisor.o
CC crypto/testmgr.o
CC fs/nfs/inode.o
CC crypto/cmac.o
CC drivers/acpi/acpica/exfield.o
CC drivers/dma/virt-dma.o
CC net/netfilter/nf_conntrack_proto_icmp.o
CC fs/nls/nls_iso8859-1.o
CC kernel/trace/trace_nop.o
CC fs/ext4/ialloc.o
AR sound/xen/built-in.a
CC fs/ext4/indirect.o
CC sound/hda/hdac_controller.o
CC drivers/tty/vt/vt_ioctl.o
CC arch/x86/kernel/cpu/mshyperv.o
CC drivers/tty/hvc/hvc_console.o
CC fs/ext4/inline.o
AR fs/unicode/built-in.a
CC net/netfilter/nf_conntrack_extend.o
CC fs/autofs/init.o
CC io_uring/io-wq.o
CC kernel/time/timer_migration.o
CC fs/nls/nls_utf8.o
CC net/ipv6/raw.o
CC drivers/acpi/acpica/exfldio.o
CC net/wireless/chan.o
CC net/ipv4/tcp.o
CC drivers/virtio/virtio_ring.o
CC fs/lockd/svclock.o
CC fs/netfs/write_retry.o
CC crypto/hmac.o
CC arch/x86/kernel/irq_32.o
CC net/mac80211/link.o
CC block/blk-iolatency.o
CC drivers/dma/acpi-dma.o
CC net/core/filter.o
CC mm/gup.o
CC net/sunrpc/svc.o
CC net/ethtool/stats.o
CC io_uring/futex.o
CC block/blk-iocost.o
AR fs/nls/built-in.a
CC mm/mmap_lock.o
CC sound/hda/hdac_stream.o
AR fs/fat/built-in.a
AR sound/virtio/built-in.a
CC kernel/time/vsyscall.o
CC drivers/virtio/virtio_anchor.o
CC net/netfilter/nf_conntrack_acct.o
CC lib/logic_pio.o
CC drivers/char/hw_random/core.o
AR drivers/iommu/amd/built-in.a
AR drivers/iommu/intel/built-in.a
CC fs/autofs/inode.o
AR drivers/iommu/arm/arm-smmu/built-in.a
AR drivers/iommu/arm/arm-smmu-v3/built-in.a
AR drivers/iommu/arm/built-in.a
CC drivers/acpi/acpica/exmisc.o
AR drivers/iommu/iommufd/built-in.a
AR drivers/iommu/riscv/built-in.a
CC mm/highmem.o
CC drivers/iommu/iommu.o
CC sound/sound_core.o
CC kernel/trace/blktrace.o
CC arch/x86/kernel/cpu/debugfs.o
AR drivers/tty/hvc/built-in.a
CC crypto/crypto_null.o
CC drivers/tty/vt/vc_screen.o
CC net/wireless/ethtool.o
CC kernel/time/timekeeping_debug.o
CC drivers/pci/pci-label.o
CC drivers/char/agp/backend.o
CC drivers/acpi/acpica/exmutex.o
CC drivers/acpi/acpica/exnames.o
AR drivers/dma/built-in.a
CC block/mq-deadline.o
CC net/sunrpc/svcsock.o
CC lib/maple_tree.o
CC arch/x86/kernel/dumpstack_32.o
AR fs/netfs/built-in.a
CC net/ipv6/icmp.o
CC fs/nfs/super.o
CC mm/memory.o
CC drivers/virtio/virtio_pci_modern_dev.o
CC drivers/char/hw_random/intel-rng.o
CC arch/x86/kernel/cpu/bus_lock.o
CC fs/autofs/root.o
CC io_uring/napi.o
CC crypto/md5.o
CC drivers/pci/vgaarb.o
CC sound/hda/array.o
CC drivers/acpi/acpica/exoparg1.o
CC drivers/char/agp/generic.o
CC fs/ext4/inode.o
CC fs/lockd/svcshare.o
AR drivers/gpu/host1x/built-in.a
CC net/netfilter/nf_conntrack_seqadj.o
CC net/netfilter/nf_conntrack_proto_icmpv6.o
CC sound/hda/hdmi_chmap.o
CC net/ethtool/phc_vclocks.o
CC arch/x86/kernel/time.o
CC drivers/tty/vt/selection.o
CC net/sunrpc/svcauth.o
CC block/kyber-iosched.o
CC kernel/time/namespace.o
CC sound/last.o
AR drivers/gpu/drm/tests/built-in.a
AR drivers/gpu/drm/arm/built-in.a
CC drivers/virtio/virtio_pci_legacy_dev.o
AR drivers/gpu/drm/clients/built-in.a
CC drivers/gpu/drm/display/drm_display_helper_mod.o
CC net/mac80211/rate.o
CC crypto/sha256_generic.o
CC drivers/gpu/drm/display/drm_dp_dual_mode_helper.o
CC drivers/acpi/acpica/exoparg2.o
AR kernel/events/built-in.a
CC drivers/acpi/device_sysfs.o
CC drivers/char/hw_random/amd-rng.o
AR drivers/gpu/vga/built-in.a
CC drivers/tty/serial/8250/8250_core.o
CC drivers/iommu/iommu-traces.o
CC net/ipv6/mcast.o
CC lib/memcat_p.o
CC drivers/acpi/acpica/exoparg3.o
CC net/mac80211/michael.o
CC drivers/gpu/drm/ttm/ttm_tt.o
CC fs/autofs/symlink.o
CC arch/x86/kernel/cpu/capflags.o
CC drivers/tty/serial/8250/8250_platform.o
CC kernel/trace/trace_events.o
AR arch/x86/kernel/cpu/built-in.a
CC drivers/tty/serial/8250/8250_pnp.o
CC arch/x86/kernel/ioport.o
CC drivers/gpu/drm/i915/i915_config.o
CC drivers/acpi/device_pm.o
CC drivers/virtio/virtio_pci_modern.o
CC fs/lockd/svcproc.o
CC drivers/tty/vt/keyboard.o
AR kernel/time/built-in.a
CC drivers/tty/serial/serial_core.o
AR drivers/tty/ipwireless/built-in.a
CC drivers/char/agp/isoch.o
CC drivers/acpi/acpica/exoparg6.o
AR drivers/pci/built-in.a
CC sound/hda/trace.o
CC net/ipv6/reassembly.o
CC net/ipv4/tcp_input.o
CC crypto/sha512_generic.o
CC net/ethtool/mm.o
CC drivers/char/mem.o
CC drivers/tty/serial/serial_base_bus.o
CC drivers/tty/vt/vt.o
CC drivers/gpu/drm/i915/i915_driver.o
CC drivers/acpi/acpica/exprep.o
CC kernel/cpu.o
CC drivers/char/hw_random/geode-rng.o
CC arch/x86/kernel/dumpstack.o
COPY drivers/tty/vt/defkeymap.c
CC fs/ext4/ioctl.o
CC fs/nfs/io.o
AR io_uring/built-in.a
CC drivers/acpi/acpica/exregion.o
CC drivers/gpu/drm/display/drm_dp_helper.o
CC drivers/acpi/acpica/exresnte.o
AR drivers/gpu/drm/renesas/rcar-du/built-in.a
CC drivers/acpi/proc.o
AR drivers/gpu/drm/renesas/rz-du/built-in.a
AR drivers/gpu/drm/renesas/built-in.a
CC crypto/sha3_generic.o
CC net/netfilter/nf_conntrack_netlink.o
CC net/netfilter/nf_conntrack_ftp.o
CC fs/autofs/waitq.o
CC sound/hda/hdac_component.o
CC fs/ext4/mballoc.o
CC net/sunrpc/svcauth_unix.o
CC drivers/iommu/iommu-sysfs.o
CC drivers/tty/serial/serial_ctrl.o
CC drivers/tty/serial/8250/8250_rsa.o
CC drivers/gpu/drm/ttm/ttm_bo.o
CC net/ipv4/tcp_output.o
CC block/blk-mq-debugfs.o
CC drivers/virtio/virtio_pci_common.o
CC drivers/acpi/acpica/exresolv.o
AR drivers/gpu/drm/omapdrm/built-in.a
CC fs/lockd/svcsubs.o
CC drivers/char/agp/amd64-agp.o
CC net/ipv6/tcp_ipv6.o
CC drivers/char/hw_random/via-rng.o
CC net/ipv6/ping.o
CC mm/mincore.o
CC drivers/iommu/dma-iommu.o
CC crypto/ecb.o
CC drivers/gpu/drm/i915/i915_drm_client.o
CC arch/x86/kernel/nmi.o
CC drivers/gpu/drm/ttm/ttm_bo_util.o
CC net/ipv4/tcp_timer.o
CC net/ethtool/module.o
CC drivers/acpi/acpica/exresop.o
AR drivers/gpu/drm/tilcdc/built-in.a
CC net/core/sock_diag.o
CC drivers/char/agp/intel-agp.o
CC sound/hda/hdac_i915.o
CC drivers/gpu/drm/i915/i915_getparam.o
CC sound/hda/intel-dsp-config.o
CC net/sunrpc/addr.o
CC drivers/tty/serial/8250/8250_port.o
AR drivers/char/hw_random/built-in.a
CC net/netfilter/nf_conntrack_irc.o
CC fs/autofs/expire.o
CC fs/nfs/direct.o
CC lib/nmi_backtrace.o
CC crypto/cbc.o
CC kernel/trace/trace_export.o
CC drivers/acpi/acpica/exserial.o
CC fs/lockd/mon.o
CC block/blk-pm.o
CC drivers/virtio/virtio_pci_legacy.o
CC block/holder.o
CC net/ipv4/tcp_ipv4.o
CC net/mac80211/tkip.o
CC drivers/virtio/virtio_pci_admin_legacy_io.o
CC kernel/exit.o
CC crypto/ctr.o
CC fs/nfs/pagelist.o
CC fs/ext4/migrate.o
CC sound/hda/intel-nhlt.o
CC drivers/acpi/acpica/exstore.o
CC arch/x86/kernel/ldt.o
CC drivers/char/agp/intel-gtt.o
CC drivers/iommu/iova.o
CC drivers/gpu/drm/ttm/ttm_bo_vm.o
CC mm/mlock.o
CC drivers/tty/serial/serial_port.o
CC net/ipv4/tcp_minisocks.o
CC drivers/virtio/virtio_input.o
CC fs/autofs/dev-ioctl.o
CC drivers/gpu/drm/i915/i915_ioctl.o
CC net/mac80211/aes_cmac.o
CC drivers/connector/cn_queue.o
CC net/ethtool/cmis_fw_update.o
CC kernel/trace/trace_event_perf.o
CC drivers/connector/connector.o
CC drivers/char/random.o
CC drivers/gpu/drm/display/drm_dp_mst_topology.o
CC fs/9p/vfs_super.o
CC crypto/gcm.o
AR block/built-in.a
CC drivers/gpu/drm/i915/i915_irq.o
CC drivers/acpi/acpica/exstoren.o
AR fs/hostfs/built-in.a
CC drivers/tty/vt/consolemap.o
CC net/ipv4/tcp_cong.o
CC sound/hda/intel-sdw-acpi.o
CC fs/ext4/mmp.o
HOSTCC drivers/tty/vt/conmakehash
CC arch/x86/kernel/setup.o
CC drivers/base/power/sysfs.o
CC drivers/base/firmware_loader/builtin/main.o
CC drivers/base/firmware_loader/main.o
CC net/sunrpc/rpcb_clnt.o
CC drivers/block/loop.o
CC fs/lockd/trace.o
CC drivers/acpi/acpica/exstorob.o
CC net/netfilter/nf_conntrack_sip.o
CC crypto/ccm.o
CC drivers/acpi/bus.o
CC drivers/gpu/drm/ttm/ttm_module.o
AR drivers/base/firmware_loader/builtin/built-in.a
CC net/wireless/mesh.o
CC drivers/gpu/drm/display/drm_dsc_helper.o
CC drivers/virtio/virtio_dma_buf.o
AR drivers/iommu/built-in.a
AR sound/hda/built-in.a
CC net/ipv4/tcp_metrics.o
AR sound/built-in.a
AR drivers/char/agp/built-in.a
CC drivers/connector/cn_proc.o
CC net/netfilter/nf_nat_core.o
AR fs/autofs/built-in.a
CC fs/9p/vfs_inode.o
CC drivers/base/power/generic_ops.o
CC drivers/tty/serial/earlycon.o
CC fs/lockd/xdr.o
CC drivers/acpi/acpica/exsystem.o
CC kernel/trace/trace_events_filter.o
CC kernel/trace/trace_events_trigger.o
CC drivers/tty/serial/8250/8250_dma.o
CC fs/debugfs/inode.o
CC fs/tracefs/inode.o
CC [M] fs/efivarfs/inode.o
CC drivers/tty/vt/defkeymap.o
CC mm/mmap.o
CC net/ethtool/cmis_cdb.o
CC [M] fs/efivarfs/file.o
CC fs/open.o
CC fs/debugfs/file.o
CC net/ipv6/exthdrs.o
CC drivers/gpu/drm/ttm/ttm_execbuf_util.o
CONMK drivers/tty/vt/consolemap_deftbl.c
CC drivers/tty/vt/consolemap_deftbl.o
AR drivers/tty/vt/built-in.a
CC drivers/base/power/common.o
CC lib/objpool.o
CC drivers/acpi/acpica/extrace.o
AR drivers/virtio/built-in.a
CC drivers/tty/serial/8250/8250_dwlib.o
CC net/wireless/ap.o
CC arch/x86/kernel/x86_init.o
AR drivers/base/firmware_loader/built-in.a
CC arch/x86/kernel/i8259.o
CC drivers/gpu/drm/i915/i915_mitigations.o
CC crypto/aes_generic.o
CC drivers/gpu/drm/i915/i915_module.o
CC drivers/char/misc.o
CC net/ipv6/datagram.o
CC fs/nfs/read.o
CC kernel/trace/trace_eprobe.o
CC fs/tracefs/event_inode.o
CC fs/ext4/move_extent.o
CC mm/mmu_gather.o
CC drivers/acpi/acpica/exutils.o
CC [M] fs/efivarfs/super.o
CC drivers/char/virtio_console.o
CC net/mac80211/aes_gmac.o
CC drivers/misc/eeprom/eeprom_93cx6.o
AR drivers/misc/cb710/built-in.a
CC fs/9p/vfs_inode_dotl.o
CC kernel/softirq.o
CC drivers/gpu/drm/ttm/ttm_range_manager.o
CC lib/plist.o
CC drivers/base/power/qos.o
AR drivers/connector/built-in.a
CC kernel/resource.o
CC lib/radix-tree.o
CC kernel/trace/trace_kprobe.o
AR drivers/misc/lis3lv02d/built-in.a
CC drivers/block/virtio_blk.o
CC arch/x86/kernel/irqinit.o
CC net/sunrpc/timer.o
CC net/netfilter/nf_nat_proto.o
CC fs/lockd/clnt4xdr.o
CC drivers/tty/serial/8250/8250_pcilib.o
CC drivers/gpu/drm/i915/i915_params.o
CC drivers/acpi/acpica/hwacpi.o
CC drivers/base/power/runtime.o
AR drivers/misc/eeprom/built-in.a
CC crypto/authenc.o
AR drivers/misc/cardreader/built-in.a
AR drivers/misc/keba/built-in.a
AR drivers/misc/built-in.a
CC net/ethtool/pse-pd.o
CC fs/nfs/symlink.o
CC mm/mprotect.o
CC net/wireless/trace.o
CC drivers/base/regmap/regmap.o
CC net/mac80211/fils_aead.o
AR fs/debugfs/built-in.a
CC drivers/base/regmap/regcache.o
CC net/ipv4/tcp_fastopen.o
CC fs/9p/vfs_addr.o
CC drivers/char/hpet.o
CC kernel/sysctl.o
CC net/core/dev_ioctl.o
CC drivers/acpi/acpica/hwesleep.o
CC drivers/gpu/drm/ttm/ttm_resource.o
CC fs/ext4/namei.o
CC fs/9p/vfs_file.o
CC [M] fs/efivarfs/vars.o
CC net/ipv6/ip6_flowlabel.o
AR fs/tracefs/built-in.a
CC drivers/acpi/glue.o
CC net/sunrpc/xdr.o
CC drivers/gpu/drm/display/drm_hdcp_helper.o
CC drivers/acpi/acpica/hwgpe.o
CC drivers/gpu/drm/virtio/virtgpu_drv.o
AR drivers/gpu/drm/imx/built-in.a
CC drivers/char/nvram.o
CC net/ethtool/plca.o
AR drivers/mfd/built-in.a
CC net/netfilter/nf_nat_helper.o
CC drivers/tty/serial/8250/8250_early.o
CC drivers/acpi/acpica/hwregs.o
CC lib/ratelimit.o
CC mm/mremap.o
CC arch/x86/kernel/jump_label.o
CC fs/read_write.o
CC net/ipv4/tcp_rate.o
CC drivers/gpu/drm/i915/i915_pci.o
CC fs/9p/vfs_dir.o
CC drivers/base/regmap/regcache-rbtree.o
CC net/ipv6/inet6_connection_sock.o
CC drivers/acpi/acpica/hwsleep.o
CC lib/rbtree.o
AR drivers/nfc/built-in.a
CC drivers/acpi/scan.o
CC crypto/authencesn.o
AR drivers/base/test/built-in.a
CC drivers/gpu/drm/display/drm_hdmi_helper.o
CC drivers/tty/serial/8250/8250_exar.o
CC net/ipv6/udp_offload.o
AR drivers/block/built-in.a
CC drivers/base/power/wakeirq.o
CC fs/lockd/xdr4.o
CC net/mac80211/cfg.o
CC drivers/acpi/mipi-disco-img.o
CC drivers/acpi/acpica/hwvalid.o
CC fs/9p/vfs_dentry.o
CC net/netfilter/nf_nat_masquerade.o
CC drivers/base/component.o
LD [M] fs/efivarfs/efivarfs.o
CC fs/lockd/svc4proc.o
CC drivers/gpu/drm/virtio/virtgpu_kms.o
CC fs/nfs/unlink.o
CC drivers/acpi/resource.o
CC drivers/gpu/drm/display/drm_scdc_helper.o
CC drivers/acpi/acpi_processor.o
CC kernel/capability.o
CC mm/msync.o
CC kernel/ptrace.o
CC drivers/gpu/drm/ttm/ttm_pool.o
CC net/ethtool/phy.o
CC fs/file_table.o
CC drivers/tty/serial/8250/8250_lpss.o
CC lib/seq_buf.o
CC arch/x86/kernel/irq_work.o
AR drivers/char/built-in.a
CC drivers/base/core.o
CC net/ipv6/seg6.o
CC drivers/acpi/acpica/hwxface.o
CC fs/nfs/write.o
CC drivers/base/power/main.o
CC net/wireless/ocb.o
AR drivers/gpu/drm/panel/built-in.a
CC net/core/tso.o
CC fs/ext4/page-io.o
CC mm/page_vma_mapped.o
CC drivers/gpu/drm/ttm/ttm_device.o
CC kernel/trace/error_report-traces.o
CC fs/9p/v9fs.o
CC drivers/tty/tty_io.o
CC drivers/base/bus.o
CC drivers/base/power/wakeup.o
CC drivers/gpu/drm/i915/i915_scatterlist.o
CC net/ethtool/tsconfig.o
CC drivers/acpi/acpica/hwxfsleep.o
CC net/core/sock_reuseport.o
CC net/wireless/pmsr.o
CC arch/x86/kernel/probe_roms.o
CC lib/siphash.o
CC crypto/lzo.o
CC drivers/gpu/drm/virtio/virtgpu_gem.o
CC fs/nfs/namespace.o
CC drivers/tty/serial/8250/8250_mid.o
AR drivers/gpu/drm/display/built-in.a
CC drivers/gpu/drm/i915/i915_switcheroo.o
CC net/ipv4/tcp_recovery.o
CC arch/x86/kernel/sys_ia32.o
CC drivers/tty/n_tty.o
GEN net/wireless/shipped-certs.c
CC net/sunrpc/sunrpc_syms.o
CC drivers/base/regmap/regcache-flat.o
CC net/netfilter/nf_nat_ftp.o
CC arch/x86/kernel/ksysfs.o
CC kernel/trace/power-traces.o
CC drivers/gpu/drm/i915/i915_sysfs.o
CC drivers/acpi/acpica/hwpci.o
CC fs/lockd/procfs.o
CC fs/nfs/mount_clnt.o
CC mm/pagewalk.o
CC crypto/lzo-rle.o
AR drivers/gpu/drm/bridge/analogix/built-in.a
AR drivers/gpu/drm/bridge/cadence/built-in.a
CC net/mac80211/ethtool.o
CC net/mac80211/rx.o
AR drivers/gpu/drm/bridge/imx/built-in.a
CC lib/string.o
CC net/netfilter/nf_nat_irc.o
AR drivers/gpu/drm/bridge/synopsys/built-in.a
AR drivers/gpu/drm/bridge/built-in.a
CC drivers/gpu/drm/ttm/ttm_sys_manager.o
CC drivers/gpu/drm/i915/i915_utils.o
CC net/mac80211/spectmgmt.o
CC net/ipv6/fib6_notifier.o
CC fs/ext4/readpage.o
CC fs/9p/fid.o
CC crypto/rng.o
CC drivers/acpi/acpica/nsaccess.o
CC fs/ext4/resize.o
CC net/wireless/shipped-certs.o
CC lib/timerqueue.o
CC arch/x86/kernel/bootflag.o
CC drivers/tty/tty_ioctl.o
CC drivers/tty/serial/8250/8250_pci.o
CC drivers/acpi/processor_core.o
CC drivers/gpu/drm/virtio/virtgpu_vram.o
CC drivers/base/power/wakeup_stats.o
CC mm/pgtable-generic.o
CC drivers/base/regmap/regcache-maple.o
AR drivers/gpu/drm/hisilicon/built-in.a
CC drivers/base/power/trace.o
CC lib/union_find.o
CC lib/vsprintf.o
CC drivers/gpu/drm/ttm/ttm_backup.o
AR net/ethtool/built-in.a
CC kernel/user.o
CC drivers/tty/tty_ldisc.o
CC kernel/trace/rpm-traces.o
AR fs/lockd/built-in.a
CC drivers/acpi/acpica/nsalloc.o
CC drivers/acpi/processor_pdc.o
CC lib/win_minmax.o
CC net/core/fib_notifier.o
CC net/sunrpc/cache.o
CC arch/x86/kernel/e820.o
AR drivers/dax/hmem/built-in.a
AR drivers/dax/built-in.a
CC drivers/gpu/drm/i915/intel_clock_gating.o
CC drivers/gpu/drm/ttm/ttm_agp_backend.o
CC fs/9p/xattr.o
CC drivers/base/dd.o
CC lib/xarray.o
CC net/ipv4/tcp_ulp.o
CC net/mac80211/tx.o
CC drivers/base/syscore.o
CC fs/ext4/super.o
CC net/ipv4/tcp_offload.o
CC drivers/dma-buf/dma-buf.o
CC crypto/drbg.o
CC net/sunrpc/rpc_pipe.o
AR drivers/cxl/core/built-in.a
AR drivers/cxl/built-in.a
CC fs/super.o
CC drivers/acpi/acpica/nsarguments.o
CC drivers/base/driver.o
CC net/mac80211/key.o
CC drivers/dma-buf/dma-fence.o
CC net/ipv4/tcp_plb.o
CC net/ipv6/rpl.o
CC net/netfilter/nf_nat_sip.o
CC net/core/xdp.o
CC drivers/gpu/drm/i915/intel_cpu_info.o
CC drivers/acpi/acpica/nsconvert.o
CC drivers/base/regmap/regmap-debugfs.o
CC net/netfilter/x_tables.o
CC drivers/gpu/drm/virtio/virtgpu_display.o
CC mm/rmap.o
AR drivers/base/power/built-in.a
CC net/mac80211/util.o
CC fs/nfs/nfstrace.o
CC arch/x86/kernel/pci-dma.o
CC drivers/acpi/acpica/nsdump.o
CC kernel/signal.o
CC fs/char_dev.o
CC drivers/tty/serial/8250/8250_pericom.o
CC lib/lockref.o
AR drivers/gpu/drm/ttm/built-in.a
CC net/ipv6/ioam6.o
CC drivers/gpu/drm/virtio/virtgpu_vq.o
AR fs/9p/built-in.a
CC drivers/dma-buf/dma-fence-array.o
CC fs/ext4/symlink.o
CC net/ipv4/datagram.o
CC kernel/trace/trace_dynevent.o
CC net/mac80211/parse.o
CC drivers/gpu/drm/i915/intel_device_info.o
CC drivers/acpi/acpica/nseval.o
CC net/sunrpc/sysfs.o
CC net/netfilter/xt_tcpudp.o
AR drivers/gpu/drm/mxsfb/built-in.a
CC drivers/macintosh/mac_hid.o
CC kernel/trace/trace_probe.o
AR drivers/scsi/pcmcia/built-in.a
CC drivers/scsi/scsi.o
CC crypto/jitterentropy.o
AR drivers/base/regmap/built-in.a
CC drivers/base/class.o
CC net/sunrpc/svc_xprt.o
CC arch/x86/kernel/quirks.o
AR drivers/nvme/common/built-in.a
AR drivers/nvme/host/built-in.a
CC crypto/jitterentropy-kcapi.o
AR drivers/nvme/target/built-in.a
AR drivers/nvme/built-in.a
CC net/ipv6/sysctl_net_ipv6.o
CC drivers/acpi/acpica/nsinit.o
CC net/ipv6/xfrm6_policy.o
CC kernel/trace/trace_uprobe.o
CC drivers/acpi/ec.o
CC mm/vmalloc.o
CC drivers/base/platform.o
CC drivers/scsi/hosts.o
AR drivers/gpu/drm/tiny/built-in.a
CC net/sunrpc/xprtmultipath.o
AR drivers/tty/serial/8250/built-in.a
CC kernel/trace/rethook.o
AR drivers/tty/serial/built-in.a
CC drivers/tty/tty_buffer.o
CC net/ipv4/raw.o
CC drivers/dma-buf/dma-fence-chain.o
CC fs/nfs/export.o
CC drivers/dma-buf/dma-fence-unwrap.o
AR drivers/macintosh/built-in.a
CC net/mac80211/wme.o
CC drivers/acpi/acpica/nsload.o
CC crypto/ghash-generic.o
CC net/core/flow_offload.o
CC mm/vma.o
CC fs/nfs/sysfs.o
CC drivers/gpu/drm/i915/intel_memory_region.o
CC fs/ext4/sysfs.o
CC drivers/base/cpu.o
CC lib/bcd.o
CC arch/x86/kernel/kdebugfs.o
CC net/ipv6/xfrm6_state.o
CC drivers/scsi/scsi_ioctl.o
CC crypto/hash_info.o
CC mm/process_vm_access.o
CC drivers/gpu/drm/virtio/virtgpu_fence.o
CC drivers/gpu/drm/i915/intel_pcode.o
CC drivers/acpi/acpica/nsnames.o
CC net/ipv6/xfrm6_input.o
CC drivers/dma-buf/dma-resv.o
CC fs/nfs/fs_context.o
CC crypto/rsapubkey.asn1.o
CC drivers/tty/tty_port.o
AR drivers/gpu/drm/xlnx/built-in.a
CC crypto/rsaprivkey.asn1.o
CC arch/x86/kernel/alternative.o
AR crypto/built-in.a
CC net/core/gro.o
CC drivers/gpu/drm/virtio/virtgpu_object.o
CC drivers/dma-buf/sync_file.o
CC fs/stat.o
CC drivers/base/firmware.o
CC net/netfilter/xt_CONNSECMARK.o
CC lib/sort.o
CC fs/ext4/xattr.o
CC drivers/acpi/acpica/nsobject.o
CC net/netfilter/xt_NFLOG.o
AR drivers/gpu/drm/gud/built-in.a
CC drivers/gpu/drm/virtio/virtgpu_debugfs.o
CC net/netfilter/xt_SECMARK.o
CC fs/nfs/nfsroot.o
CC lib/parser.o
CC kernel/sys.o
CC drivers/tty/tty_mutex.o
CC mm/page_alloc.o
CC net/mac80211/chan.o
CC lib/debug_locks.o
CC drivers/base/init.o
CC net/mac80211/trace.o
CC drivers/acpi/dock.o
CC fs/exec.o
CC drivers/ata/libata-core.o
CC drivers/acpi/acpica/nsparse.o
CC drivers/scsi/scsicam.o
AR drivers/net/phy/mediatek/built-in.a
AR drivers/net/phy/qcom/built-in.a
CC lib/random32.o
CC drivers/scsi/scsi_error.o
CC net/core/netdev-genl.o
CC net/ipv4/udp.o
CC drivers/net/phy/realtek/realtek_main.o
CC drivers/net/phy/realtek/realtek_hwmon.o
CC drivers/scsi/scsi_lib.o
CC drivers/scsi/constants.o
CC net/sunrpc/stats.o
CC drivers/gpu/drm/i915/intel_region_ttm.o
AR drivers/dma-buf/built-in.a
AR drivers/gpu/drm/solomon/built-in.a
CC drivers/scsi/scsi_lib_dma.o
CC [M] drivers/gpu/drm/scheduler/sched_main.o
CC drivers/base/map.o
AR kernel/trace/built-in.a
CC drivers/tty/tty_ldsem.o
CC drivers/tty/tty_baudrate.o
CC net/ipv6/xfrm6_output.o
CC drivers/gpu/drm/virtio/virtgpu_plane.o
CC drivers/acpi/acpica/nspredef.o
CC drivers/acpi/acpica/nsprepkg.o
CC lib/bust_spinlocks.o
CC drivers/acpi/pci_root.o
CC net/core/netdev-genl-gen.o
AR drivers/net/pse-pd/built-in.a
CC drivers/ata/libata-scsi.o
CC drivers/acpi/acpica/nsrepair.o
CC drivers/firewire/init_ohci1394_dma.o
CC drivers/scsi/scsi_scan.o
CC net/netfilter/xt_TCPMSS.o
CC [M] drivers/gpu/drm/scheduler/sched_fence.o
CC arch/x86/kernel/i8253.o
CC drivers/gpu/drm/i915/intel_runtime_pm.o
CC lib/kasprintf.o
CC drivers/ata/libata-eh.o
CC drivers/base/devres.o
CC drivers/base/attribute_container.o
CC drivers/ata/libata-transport.o
CC drivers/gpu/drm/virtio/virtgpu_ioctl.o
CC drivers/tty/tty_jobctrl.o
CC kernel/umh.o
CC arch/x86/kernel/hw_breakpoint.o
CC arch/x86/kernel/tsc.o
CC drivers/acpi/acpica/nsrepair2.o
CC kernel/workqueue.o
CC drivers/ata/libata-trace.o
CC drivers/cdrom/cdrom.o
CC net/sunrpc/sysctl.o
CC lib/bitmap.o
CC net/ipv6/xfrm6_protocol.o
CC drivers/net/phy/mdio-boardinfo.o
CC arch/x86/kernel/tsc_msr.o
AR drivers/auxdisplay/built-in.a
HOSTCC drivers/gpu/drm/xe/xe_gen_wa_oob
AR drivers/firewire/built-in.a
CC net/netfilter/xt_conntrack.o
CC drivers/net/mdio/acpi_mdio.o
CC net/netfilter/xt_policy.o
AR drivers/net/phy/realtek/built-in.a
CC lib/scatterlist.o
GEN xe_wa_oob.c xe_wa_oob.h
CC [M] drivers/gpu/drm/xe/xe_bb.o
CC drivers/tty/n_null.o
CC drivers/acpi/acpica/nssearch.o
GEN drivers/scsi/scsi_devinfo_tbl.c
CC net/mac80211/mlme.o
CC mm/page_frag_cache.o
CC fs/nfs/sysctl.o
CC drivers/base/transport_class.o
CC lib/list_sort.o
CC [M] drivers/gpu/drm/xe/xe_bo.o
CC net/ipv6/netfilter.o
CC [M] drivers/gpu/drm/scheduler/sched_entity.o
CC drivers/net/phy/stubs.o
CC net/core/gso.o
CC net/ipv4/udplite.o
CC drivers/ata/libata-sata.o
CC drivers/gpu/drm/virtio/virtgpu_prime.o
CC drivers/base/topology.o
CC net/core/net-sysfs.o
CC drivers/tty/pty.o
AR drivers/net/pcs/built-in.a
CC net/ipv4/udp_offload.o
CC kernel/pid.o
CC drivers/gpu/drm/i915/intel_sbi.o
CC drivers/gpu/drm/i915/intel_step.o
CC drivers/acpi/acpica/nsutils.o
CC drivers/net/mdio/fwnode_mdio.o
CC net/mac80211/tdls.o
CC drivers/base/container.o
CC drivers/scsi/scsi_devinfo.o
CC mm/init-mm.o
CC drivers/net/phy/mdio_devres.o
AR drivers/net/ethernet/3com/built-in.a
AR drivers/net/usb/built-in.a
CC drivers/net/ethernet/8390/ne2k-pci.o
AR drivers/net/wireless/admtek/built-in.a
AR drivers/net/wireless/ath/built-in.a
AR drivers/net/ethernet/adaptec/built-in.a
AR drivers/net/wireless/atmel/built-in.a
AR net/sunrpc/built-in.a
AR drivers/net/wireless/broadcom/built-in.a
CC drivers/pcmcia/cs.o
CC fs/ext4/xattr_hurd.o
AR drivers/net/wireless/intel/built-in.a
AR drivers/net/wireless/intersil/built-in.a
AR drivers/net/wireless/marvell/built-in.a
AR drivers/net/wireless/mediatek/built-in.a
CC drivers/gpu/drm/drm_atomic.o
AR drivers/net/wireless/microchip/built-in.a
AR drivers/net/wireless/purelifi/built-in.a
CC drivers/net/mii.o
AR drivers/net/wireless/quantenna/built-in.a
CC arch/x86/kernel/io_delay.o
AR drivers/net/wireless/ralink/built-in.a
AR drivers/net/wireless/realtek/built-in.a
AR drivers/net/wireless/rsi/built-in.a
AR drivers/net/wireless/silabs/built-in.a
CC lib/uuid.o
AR drivers/net/wireless/st/built-in.a
CC drivers/base/property.o
AR drivers/net/wireless/ti/built-in.a
AR drivers/net/wireless/zydas/built-in.a
LD [M] drivers/gpu/drm/scheduler/gpu-sched.o
CC drivers/base/cacheinfo.o
AR drivers/net/wireless/virtual/built-in.a
AR drivers/net/wireless/built-in.a
CC drivers/ata/libata-sff.o
CC drivers/acpi/acpica/nswalk.o
CC net/ipv4/arp.o
CC lib/iov_iter.o
CC drivers/gpu/drm/drm_atomic_uapi.o
CC drivers/gpu/drm/drm_auth.o
CC drivers/gpu/drm/virtio/virtgpu_trace_points.o
CC net/mac80211/ocb.o
CC net/mac80211/airtime.o
CC net/netfilter/xt_state.o
CC drivers/acpi/pci_link.o
CC arch/x86/kernel/rtc.o
CC drivers/tty/tty_audit.o
CC net/core/hotdata.o
CC fs/nfs/nfs3super.o
CC net/ipv4/icmp.o
AR drivers/net/ethernet/agere/built-in.a
CC drivers/base/swnode.o
CC [M] drivers/gpu/drm/xe/xe_bo_evict.o
CC drivers/acpi/acpica/nsxfeval.o
CC fs/ext4/xattr_trusted.o
AR drivers/net/mdio/built-in.a
CC net/ipv6/proc.o
CC drivers/gpu/drm/virtio/virtgpu_submit.o
CC drivers/scsi/scsi_sysctl.o
CC drivers/net/phy/phy.o
CC lib/clz_ctz.o
AR drivers/cdrom/built-in.a
CC arch/x86/kernel/resource.o
CC drivers/tty/sysrq.o
CC drivers/gpu/drm/i915/intel_uncore.o
CC net/ipv4/devinet.o
CC drivers/pcmcia/socket_sysfs.o
CC mm/memblock.o
CC drivers/net/phy/phy-c45.o
CC fs/ext4/xattr_user.o
CC drivers/base/faux.o
CC drivers/net/ethernet/8390/8390.o
CC [M] drivers/gpu/drm/xe/xe_devcoredump.o
AS arch/x86/kernel/irqflags.o
CC drivers/acpi/acpica/nsxfname.o
CC arch/x86/kernel/static_call.o
CC drivers/net/loopback.o
CC drivers/ata/libata-pmp.o
CC [M] net/netfilter/nf_log_syslog.o
CC drivers/acpi/pci_irq.o
CC drivers/gpu/drm/i915/intel_uncore_trace.o
CC net/ipv6/syncookies.o
CC fs/pipe.o
CC drivers/scsi/scsi_proc.o
CC drivers/gpu/drm/drm_blend.o
CC fs/ext4/fast_commit.o
CC lib/bsearch.o
CC net/mac80211/eht.o
CC [M] drivers/gpu/drm/xe/xe_device.o
CC [M] net/netfilter/xt_mark.o
CC drivers/base/auxiliary.o
CC net/core/netdev_rx_queue.o
CC arch/x86/kernel/process.o
CC drivers/net/netconsole.o
AR drivers/gpu/drm/virtio/built-in.a
CC drivers/base/devtmpfs.o
CC drivers/gpu/drm/i915/intel_wakeref.o
CC drivers/pcmcia/cardbus.o
CC fs/nfs/nfs3client.o
CC drivers/acpi/acpica/nsxfobj.o
CC mm/slub.o
CC net/mac80211/led.o
CC net/mac80211/pm.o
AR drivers/tty/built-in.a
CC drivers/ata/libata-acpi.o
CC drivers/base/module.o
CC lib/find_bit.o
CC drivers/acpi/acpica/psargs.o
CC drivers/acpi/acpica/psloop.o
CC drivers/scsi/scsi_debugfs.o
CC drivers/net/phy/phy-core.o
CC drivers/pcmcia/ds.o
CC fs/nfs/nfs3proc.o
CC drivers/gpu/drm/drm_bridge.o
CC drivers/scsi/scsi_trace.o
AR drivers/net/ethernet/8390/built-in.a
CC drivers/scsi/scsi_logging.o
AR drivers/net/ethernet/alacritech/built-in.a
CC drivers/usb/common/common.o
AR drivers/net/ethernet/alteon/built-in.a
AR drivers/net/ethernet/amazon/built-in.a
AR drivers/net/ethernet/amd/built-in.a
CC fs/namei.o
AR drivers/net/ethernet/aquantia/built-in.a
CC drivers/gpu/drm/i915/vlv_sideband.o
AR drivers/net/ethernet/arc/built-in.a
CC drivers/net/virtio_net.o
AR drivers/net/ethernet/asix/built-in.a
CC lib/llist.o
AR drivers/net/ethernet/atheros/built-in.a
AR drivers/net/ethernet/cadence/built-in.a
CC [M] drivers/gpu/drm/xe/xe_device_sysfs.o
CC kernel/task_work.o
CC drivers/net/ethernet/broadcom/bnx2.o
AR drivers/net/ethernet/brocade/built-in.a
CC drivers/usb/core/usb.o
CC drivers/net/ethernet/broadcom/tg3.o
AR net/wireless/built-in.a
CC drivers/gpu/drm/i915/vlv_suspend.o
CC drivers/gpu/drm/i915/soc/intel_dram.o
CC drivers/acpi/acpi_apd.o
CC kernel/extable.o
CC drivers/acpi/acpi_platform.o
CC drivers/net/phy/phy_device.o
CC drivers/input/serio/serio.o
CC drivers/base/auxiliary_sysfs.o
CC drivers/acpi/acpica/psobject.o
CC drivers/input/keyboard/atkbd.o
CC net/core/net-procfs.o
CC net/ipv6/calipso.o
CC drivers/gpu/drm/i915/soc/intel_gmch.o
CC lib/lwq.o
CC drivers/input/serio/i8042.o
CC drivers/ata/libata-pata-timings.o
CC fs/ext4/orphan.o
CC drivers/pcmcia/pcmcia_resource.o
CC mm/madvise.o
CC lib/memweight.o
CC drivers/usb/common/debug.o
CC net/core/netpoll.o
CC [M] net/netfilter/xt_nat.o
CC lib/kfifo.o
AR drivers/usb/phy/built-in.a
CC drivers/gpu/drm/drm_cache.o
CC drivers/net/phy/linkmode.o
CC drivers/net/phy/phy_link_topology.o
AR drivers/usb/common/built-in.a
CC drivers/base/devcoredump.o
CC drivers/rtc/lib.o
CC drivers/input/serio/serport.o
CC arch/x86/kernel/ptrace.o
CC fs/nfs/nfs3xdr.o
CC net/ipv4/af_inet.o
CC net/ipv6/ah6.o
CC drivers/acpi/acpica/psopcode.o
CC drivers/scsi/scsi_pm.o
CC drivers/usb/mon/mon_main.o
CC [M] drivers/gpu/drm/xe/xe_dma_buf.o
CC drivers/usb/host/pci-quirks.o
CC net/core/fib_rules.o
CC drivers/usb/class/usblp.o
CC drivers/scsi/scsi_bsg.o
CC drivers/base/platform-msi.o
CC drivers/usb/core/hub.o
CC drivers/acpi/acpica/psopinfo.o
CC drivers/rtc/class.o
CC kernel/params.o
CC drivers/ata/ahci.o
CC net/ipv4/igmp.o
CC drivers/usb/core/hcd.o
CC drivers/net/net_failover.o
CC drivers/usb/host/ehci-hcd.o
CC drivers/usb/core/urb.o
CC drivers/base/physical_location.o
CC drivers/gpu/drm/i915/soc/intel_pch.o
CC drivers/acpi/acpi_pnp.o
AR drivers/input/keyboard/built-in.a
CC drivers/input/mouse/psmouse-base.o
AR drivers/input/joystick/built-in.a
CC [M] drivers/gpu/drm/xe/xe_drm_client.o
CC fs/ext4/acl.o
CC mm/page_io.o
CC [M] drivers/gpu/drm/xe/xe_eu_stall.o
CC drivers/gpu/drm/i915/soc/intel_rom.o
CC fs/nfs/nfs3acl.o
CC drivers/acpi/acpica/psparse.o
CC drivers/rtc/interface.o
CC lib/percpu-refcount.o
CC drivers/input/mouse/synaptics.o
CC drivers/usb/mon/mon_stat.o
CC drivers/pcmcia/cistpl.o
CC kernel/kthread.o
CC drivers/scsi/scsi_common.o
CC drivers/input/serio/libps2.o
CC arch/x86/kernel/tls.o
CC [M] net/netfilter/xt_LOG.o
CC net/ipv4/fib_frontend.o
CC drivers/input/mouse/focaltech.o
CC fs/nfs/nfs4proc.o
CC drivers/base/trace.o
CC drivers/scsi/scsi_transport_spi.o
AR drivers/usb/class/built-in.a
CC mm/swap_state.o
CC drivers/acpi/acpica/psscope.o
CC drivers/i2c/algos/i2c-algo-bit.o
CC drivers/i2c/busses/i2c-i801.o
CC drivers/input/mouse/alps.o
CC drivers/usb/mon/mon_text.o
CC drivers/net/phy/mdio_bus.o
CC lib/rhashtable.o
CC fs/nfs/nfs4xdr.o
CC drivers/usb/storage/scsiglue.o
CC fs/ext4/xattr_security.o
CC drivers/acpi/power.o
CC net/ipv6/esp6.o
CC drivers/acpi/acpica/pstree.o
CC drivers/ata/libahci.o
AR drivers/input/tablet/built-in.a
CC net/ipv6/sit.o
CC drivers/acpi/event.o
AR drivers/input/serio/built-in.a
CC drivers/usb/mon/mon_bin.o
CC drivers/net/phy/mdio_device.o
CC net/core/net-traces.o
CC drivers/gpu/drm/i915/i915_memcpy.o
CC drivers/gpu/drm/drm_color_mgmt.o
CC drivers/usb/host/ehci-pci.o
CC arch/x86/kernel/step.o
AR drivers/net/ethernet/cavium/common/built-in.a
CC drivers/gpu/drm/i915/i915_mm.o
AR drivers/net/ethernet/cavium/thunder/built-in.a
AR drivers/base/built-in.a
AR drivers/net/ethernet/cavium/liquidio/built-in.a
AR drivers/net/ethernet/cavium/octeon/built-in.a
CC [M] net/netfilter/xt_MASQUERADE.o
AR drivers/net/ethernet/cavium/built-in.a
CC drivers/acpi/acpica/psutils.o
AR drivers/usb/misc/built-in.a
CC drivers/rtc/nvmem.o
AR drivers/input/touchscreen/built-in.a
CC mm/swapfile.o
CC drivers/net/phy/swphy.o
CC [M] drivers/gpu/drm/xe/xe_exec.o
CC drivers/usb/early/ehci-dbgp.o
CC drivers/net/phy/fixed_phy.o
AR drivers/net/ethernet/chelsio/built-in.a
CC lib/base64.o
CC drivers/gpu/drm/drm_connector.o
CC drivers/gpu/drm/i915/i915_sw_fence.o
AR drivers/i2c/algos/built-in.a
CC kernel/sys_ni.o
CC fs/fcntl.o
CC drivers/usb/storage/protocol.o
CC [M] net/netfilter/xt_addrtype.o
CC drivers/pcmcia/pcmcia_cis.o
AR fs/ext4/built-in.a
AR drivers/input/misc/built-in.a
CC fs/nfs/nfs4state.o
CC drivers/usb/host/ohci-hcd.o
CC drivers/scsi/virtio_scsi.o
CC drivers/rtc/dev.o
AR drivers/i2c/muxes/built-in.a
CC drivers/acpi/acpica/pswalk.o
CC arch/x86/kernel/i8237.o
CC drivers/rtc/proc.o
CC drivers/rtc/sysfs.o
CC drivers/ata/ata_piix.o
CC lib/once.o
AR drivers/i3c/built-in.a
AR drivers/i2c/busses/built-in.a
CC drivers/i2c/i2c-boardinfo.o
CC [M] drivers/gpu/drm/xe/xe_exec_queue.o
CC kernel/nsproxy.o
AR drivers/net/ethernet/cisco/built-in.a
CC drivers/usb/host/ohci-pci.o
AR drivers/media/i2c/built-in.a
CC drivers/ata/pata_amd.o
AR drivers/media/tuners/built-in.a
AR drivers/media/rc/keymaps/built-in.a
CC lib/refcount.o
AR drivers/media/rc/built-in.a
AR drivers/media/common/b2c2/built-in.a
AR drivers/media/common/saa7146/built-in.a
AR drivers/media/common/siano/built-in.a
AR drivers/media/common/v4l2-tpg/built-in.a
CC drivers/acpi/acpica/psxface.o
CC arch/x86/kernel/stacktrace.o
AR drivers/media/common/videobuf2/built-in.a
AR drivers/media/common/built-in.a
CC drivers/acpi/acpica/rsaddr.o
AR drivers/media/platform/allegro-dvt/built-in.a
AR drivers/usb/mon/built-in.a
CC net/ipv4/fib_semantics.o
AR drivers/media/platform/amlogic/meson-ge2d/built-in.a
AR drivers/media/platform/amlogic/built-in.a
CC lib/rcuref.o
CC drivers/acpi/acpica/rscalc.o
AR drivers/media/platform/amphion/built-in.a
AR drivers/media/platform/aspeed/built-in.a
CC drivers/acpi/evged.o
AR drivers/media/platform/atmel/built-in.a
AR drivers/media/platform/broadcom/built-in.a
AR drivers/media/platform/cadence/built-in.a
CC drivers/gpu/drm/i915/i915_sw_fence_work.o
CC mm/swap_slots.o
AR drivers/media/platform/chips-media/coda/built-in.a
AR drivers/media/platform/chips-media/wave5/built-in.a
AR drivers/media/platform/chips-media/built-in.a
AR drivers/media/platform/imagination/built-in.a
CC fs/nfs/nfs4renewd.o
AR drivers/media/platform/intel/built-in.a
AR drivers/usb/early/built-in.a
AR drivers/media/pci/ttpci/built-in.a
AR drivers/media/platform/marvell/built-in.a
CC drivers/usb/core/message.o
CC drivers/ata/pata_oldpiix.o
CC drivers/usb/storage/transport.o
AR drivers/media/pci/b2c2/built-in.a
CC lib/usercopy.o
CC drivers/i2c/i2c-core-base.o
CC drivers/input/mouse/byd.o
AR drivers/media/platform/mediatek/jpeg/built-in.a
AR drivers/media/pci/pluto2/built-in.a
AR drivers/media/platform/mediatek/mdp/built-in.a
AR drivers/media/pci/dm1105/built-in.a
AR drivers/media/platform/mediatek/vpu/built-in.a
AR drivers/media/platform/mediatek/vcodec/common/built-in.a
AR drivers/media/pci/pt1/built-in.a
AR drivers/media/platform/mediatek/mdp3/built-in.a
CC mm/dmapool.o
AR drivers/media/usb/b2c2/built-in.a
AR drivers/media/pci/pt3/built-in.a
AR drivers/media/platform/mediatek/vcodec/encoder/built-in.a
CC drivers/usb/storage/usb.o
AR drivers/media/pci/mantis/built-in.a
AR drivers/media/platform/mediatek/vcodec/decoder/built-in.a
AR drivers/media/usb/dvb-usb/built-in.a
AR drivers/media/platform/mediatek/vcodec/built-in.a
AR drivers/media/pci/ngene/built-in.a
AR drivers/media/usb/dvb-usb-v2/built-in.a
CC drivers/usb/storage/initializers.o
AR drivers/net/phy/built-in.a
AR drivers/media/platform/mediatek/built-in.a
AR drivers/media/pci/ddbridge/built-in.a
AR drivers/media/usb/s2255/built-in.a
CC drivers/acpi/acpica/rscreate.o
AR drivers/media/pci/saa7146/built-in.a
AR drivers/media/usb/siano/built-in.a
AR drivers/media/platform/microchip/built-in.a
CC drivers/gpu/drm/drm_crtc.o
AR drivers/media/pci/smipcie/built-in.a
AR drivers/media/usb/ttusb-budget/built-in.a
CC net/mac80211/rc80211_minstrel_ht.o
AR drivers/media/platform/nuvoton/built-in.a
CC drivers/acpi/sysfs.o
AR drivers/media/pci/netup_unidvb/built-in.a
AR drivers/media/usb/ttusb-dec/built-in.a
AR drivers/media/usb/built-in.a
AR drivers/media/platform/nvidia/tegra-vde/built-in.a
AR drivers/media/platform/nvidia/built-in.a
AR drivers/media/pci/intel/ipu3/built-in.a
CC net/ipv4/fib_trie.o
AR drivers/media/pci/intel/ivsc/built-in.a
AR drivers/media/pci/intel/built-in.a
AR drivers/media/platform/nxp/dw100/built-in.a
AR drivers/media/pci/built-in.a
AR drivers/media/platform/nxp/imx-jpeg/built-in.a
CC drivers/rtc/rtc-mc146818-lib.o
CC drivers/rtc/rtc-cmos.o
AR drivers/media/platform/nxp/imx8-isi/built-in.a
AR drivers/media/platform/nxp/built-in.a
AR drivers/media/platform/qcom/camss/built-in.a
CC drivers/ata/pata_sch.o
AR drivers/media/platform/qcom/venus/built-in.a
CC drivers/pcmcia/rsrc_mgr.o
CC drivers/gpu/drm/i915/i915_syncmap.o
AR drivers/media/platform/qcom/built-in.a
CC [M] drivers/gpu/drm/xe/xe_execlist.o
CC arch/x86/kernel/reboot.o
AR drivers/media/platform/raspberrypi/pisp_be/built-in.a
AR drivers/media/platform/renesas/rcar-vin/built-in.a
AR drivers/media/platform/raspberrypi/rp1-cfe/built-in.a
AR drivers/media/platform/renesas/rzg2l-cru/built-in.a
AR drivers/media/platform/raspberrypi/built-in.a
CC lib/errseq.o
CC arch/x86/kernel/msr.o
AR drivers/media/platform/renesas/vsp1/built-in.a
AR drivers/media/platform/renesas/built-in.a
AR drivers/media/platform/rockchip/rga/built-in.a
AR drivers/media/platform/rockchip/rkisp1/built-in.a
CC drivers/scsi/sd.o
AR drivers/media/platform/rockchip/built-in.a
AR drivers/media/platform/samsung/exynos-gsc/built-in.a
AR drivers/media/platform/st/sti/bdisp/built-in.a
CC kernel/notifier.o
CC net/core/selftests.o
AR drivers/media/platform/samsung/exynos4-is/built-in.a
AR drivers/media/platform/st/sti/c8sectpfe/built-in.a
AR drivers/media/platform/samsung/s3c-camif/built-in.a
AR drivers/media/platform/st/sti/delta/built-in.a
CC net/core/ptp_classifier.o
AR drivers/media/platform/samsung/s5p-g2d/built-in.a
AR drivers/media/platform/st/sti/hva/built-in.a
CC lib/bucket_locks.o
AR drivers/media/platform/samsung/s5p-jpeg/built-in.a
AR drivers/media/platform/st/stm32/built-in.a
AR drivers/media/platform/st/built-in.a
AR drivers/media/platform/samsung/s5p-mfc/built-in.a
AR drivers/media/platform/samsung/built-in.a
CC drivers/acpi/acpica/rsdumpinfo.o
AR drivers/net/ethernet/cortina/built-in.a
AR drivers/media/platform/sunxi/sun4i-csi/built-in.a
AR drivers/media/mmc/siano/built-in.a
AR drivers/media/mmc/built-in.a
AR drivers/media/platform/sunxi/sun6i-csi/built-in.a
CC kernel/ksysfs.o
AR drivers/media/platform/sunxi/sun6i-mipi-csi2/built-in.a
CC drivers/pcmcia/rsrc_nonstatic.o
CC drivers/usb/storage/sierra_ms.o
AR drivers/media/platform/sunxi/sun8i-a83t-mipi-csi2/built-in.a
AR drivers/media/platform/sunxi/sun8i-di/built-in.a
AR drivers/media/platform/sunxi/sun8i-rotate/built-in.a
AR drivers/media/platform/sunxi/built-in.a
AR drivers/media/platform/verisilicon/built-in.a
AR drivers/media/platform/ti/am437x/built-in.a
AR drivers/media/platform/ti/cal/built-in.a
AR drivers/media/platform/via/built-in.a
CC net/mac80211/wbrf.o
CC fs/nfs/nfs4super.o
CC [M] drivers/gpu/drm/xe/xe_force_wake.o
AR drivers/media/platform/ti/vpe/built-in.a
AR drivers/media/platform/ti/davinci/built-in.a
CC drivers/usb/core/driver.o
AR net/netfilter/built-in.a
AR drivers/media/platform/ti/j721e-csi2rx/built-in.a
CC net/ipv6/addrconf_core.o
AR drivers/media/platform/ti/omap/built-in.a
CC drivers/usb/core/config.o
CC drivers/input/mouse/logips2pp.o
AR drivers/media/platform/ti/omap3isp/built-in.a
AR drivers/media/platform/ti/built-in.a
AR drivers/media/platform/xilinx/built-in.a
AR drivers/media/platform/built-in.a
CC drivers/usb/storage/option_ms.o
CC drivers/gpu/drm/i915/i915_user_extensions.o
AR drivers/media/firewire/built-in.a
AR drivers/media/spi/built-in.a
CC drivers/acpi/property.o
CC kernel/cred.o
AR drivers/media/test-drivers/built-in.a
AR drivers/net/ethernet/dec/tulip/built-in.a
AR drivers/net/ethernet/dec/built-in.a
AR drivers/media/built-in.a
CC drivers/gpu/drm/drm_displayid.o
CC drivers/acpi/acpica/rsinfo.o
CC drivers/gpu/drm/drm_drv.o
CC drivers/usb/host/uhci-hcd.o
CC drivers/input/mouse/lifebook.o
CC drivers/usb/storage/usual-tables.o
AR drivers/pps/clients/built-in.a
CC drivers/pps/pps.o
CC [M] drivers/gpu/drm/xe/xe_ggtt.o
CC drivers/ata/pata_mpiix.o
CC drivers/acpi/debugfs.o
CC lib/generic-radix-tree.o
CC drivers/scsi/sr.o
CC drivers/pcmcia/yenta_socket.o
CC mm/hugetlb.o
CC drivers/gpu/drm/i915/i915_debugfs.o
CC arch/x86/kernel/cpuid.o
CC drivers/acpi/acpi_lpat.o
CC drivers/acpi/acpica/rsio.o
CC drivers/input/input.o
CC drivers/scsi/sr_ioctl.o
AR drivers/rtc/built-in.a
CC drivers/i2c/i2c-core-smbus.o
CC fs/nfs/nfs4file.o
CC drivers/ata/ata_generic.o
AR drivers/net/ethernet/dlink/built-in.a
CC drivers/pps/kapi.o
CC fs/nfs/delegation.o
CC arch/x86/kernel/early-quirks.o
CC drivers/usb/core/file.o
CC drivers/i2c/i2c-core-acpi.o
CC lib/bitmap-str.o
CC drivers/pps/sysfs.o
AR drivers/usb/storage/built-in.a
CC mm/mmu_notifier.o
CC drivers/acpi/acpica/rsirq.o
CC fs/ioctl.o
CC drivers/input/mouse/trackpoint.o
AR drivers/net/ethernet/emulex/built-in.a
CC drivers/input/input-compat.o
CC drivers/usb/host/xhci.o
CC drivers/acpi/acpica/rslist.o
CC drivers/acpi/acpica/rsmemory.o
CC drivers/input/mouse/cypress_ps2.o
CC drivers/scsi/sr_vendor.o
CC net/ipv6/exthdrs_core.o
CC drivers/ptp/ptp_clock.o
CC drivers/input/mouse/psmouse-smbus.o
CC [M] drivers/gpu/drm/xe/xe_gpu_scheduler.o
CC kernel/reboot.o
CC drivers/usb/host/xhci-mem.o
CC mm/migrate.o
CC net/ipv6/ip6_checksum.o
CC drivers/ptp/ptp_chardev.o
CC drivers/ptp/ptp_sysfs.o
CC drivers/i2c/i2c-smbus.o
CC drivers/scsi/sg.o
CC net/core/netprio_cgroup.o
CC net/ipv6/ip6_icmp.o
AR drivers/pps/built-in.a
CC drivers/gpu/drm/i915/i915_debugfs_params.o
CC drivers/input/input-mt.o
CC drivers/usb/core/buffer.o
CC drivers/acpi/acpica/rsmisc.o
AR drivers/net/ethernet/engleder/built-in.a
CC mm/page_counter.o
CC drivers/power/supply/power_supply_core.o
CC net/ipv6/output_core.o
AR drivers/ata/built-in.a
CC mm/hugetlb_cgroup.o
CC drivers/acpi/acpica/rsserial.o
CC drivers/usb/host/xhci-ext-caps.o
CC drivers/usb/host/xhci-ring.o
CC [M] drivers/gpu/drm/xe/xe_gsc.o
CC lib/string_helpers.o
CC fs/readdir.o
CC drivers/acpi/acpi_pcc.o
CC arch/x86/kernel/smp.o
CC drivers/gpu/drm/drm_dumb_buffers.o
AR drivers/pcmcia/built-in.a
CC drivers/hwmon/hwmon.o
AR drivers/net/ethernet/ezchip/built-in.a
CC drivers/acpi/ac.o
CC arch/x86/kernel/smpboot.o
CC drivers/power/supply/power_supply_sysfs.o
CC fs/nfs/nfs4idmap.o
CC kernel/async.o
CC drivers/acpi/acpica/rsutils.o
CC net/ipv4/fib_notifier.o
AR drivers/input/mouse/built-in.a
CC mm/early_ioremap.o
CC [M] drivers/gpu/drm/xe/xe_gsc_debugfs.o
CC lib/hexdump.o
CC arch/x86/kernel/tsc_sync.o
CC drivers/usb/core/sysfs.o
CC drivers/ptp/ptp_vclock.o
CC drivers/usb/host/xhci-hub.o
CC drivers/acpi/acpica/rsxface.o
AR drivers/i2c/built-in.a
CC drivers/input/input-poller.o
CC net/ipv4/inet_fragment.o
CC drivers/gpu/drm/i915/i915_pmu.o
AR drivers/net/ethernet/fujitsu/built-in.a
CC net/ipv4/ping.o
AR drivers/net/ethernet/fungible/built-in.a
AR drivers/net/ethernet/google/built-in.a
AR drivers/thermal/broadcom/built-in.a
CC lib/kstrtox.o
AR drivers/thermal/renesas/built-in.a
CC lib/iomap.o
CC drivers/acpi/button.o
CC net/ipv4/ip_tunnel_core.o
CC mm/secretmem.o
AR drivers/thermal/samsung/built-in.a
CC drivers/gpu/drm/drm_edid.o
CC drivers/thermal/intel/intel_tcc.o
CC [M] drivers/gpu/drm/xe/xe_gsc_proxy.o
CC drivers/input/ff-core.o
CC drivers/thermal/intel/therm_throt.o
CC kernel/range.o
CC net/core/netclassid_cgroup.o
CC drivers/acpi/acpica/tbdata.o
CC drivers/gpu/drm/drm_eld.o
CC drivers/power/supply/power_supply_leds.o
CC net/core/dst_cache.o
CC drivers/acpi/acpica/tbfadt.o
CC fs/nfs/callback.o
CC fs/select.o
CC drivers/power/supply/power_supply_hwmon.o
CC kernel/smpboot.o
AR net/mac80211/built-in.a
CC drivers/usb/host/xhci-dbg.o
CC drivers/acpi/fan_core.o
CC kernel/ucount.o
CC drivers/scsi/scsi_sysfs.o
AR drivers/net/ethernet/hisilicon/built-in.a
CC arch/x86/kernel/setup_percpu.o
CC drivers/acpi/acpica/tbfind.o
CC net/ipv6/protocol.o
AR drivers/thermal/st/built-in.a
CC lib/iomap_copy.o
CC drivers/gpu/drm/i915/gt/gen2_engine_cs.o
CC drivers/gpu/drm/i915/gt/gen6_engine_cs.o
CC fs/nfs/callback_xdr.o
AR drivers/net/ethernet/huawei/built-in.a
CC drivers/usb/core/endpoint.o
CC fs/dcache.o
CC net/core/gro_cells.o
CC net/core/failover.o
CC net/ipv4/gre_offload.o
CC drivers/usb/host/xhci-trace.o
CC drivers/acpi/fan_attr.o
CC drivers/ptp/ptp_kvm_x86.o
CC kernel/regset.o
CC [M] drivers/gpu/drm/xe/xe_gsc_submit.o
CC drivers/gpu/drm/drm_encoder.o
CC lib/devres.o
CC drivers/acpi/acpica/tbinstal.o
AR drivers/power/supply/built-in.a
CC drivers/input/touchscreen.o
AR drivers/power/built-in.a
CC [M] drivers/thermal/intel/x86_pkg_temp_thermal.o
CC arch/x86/kernel/mpparse.o
AR drivers/watchdog/built-in.a
CC drivers/net/ethernet/intel/e1000/e1000_main.o
CC arch/x86/kernel/trace_clock.o
CC drivers/net/ethernet/intel/e1000e/82571.o
CC drivers/md/md.o
CC drivers/acpi/fan_hwmon.o
AR drivers/hwmon/built-in.a
CC lib/check_signature.o
CC drivers/net/ethernet/intel/e1000/e1000_hw.o
CC drivers/input/ff-memless.o
CC drivers/md/md-bitmap.o
CC fs/inode.o
CC drivers/acpi/acpica/tbprint.o
CC drivers/cpufreq/cpufreq.o
CC drivers/gpu/drm/drm_file.o
CC kernel/ksyms_common.o
CC kernel/groups.o
CC net/ipv6/ip6_offload.o
CC lib/interval_tree.o
CC arch/x86/kernel/trace.o
CC drivers/usb/core/devio.o
CC drivers/cpuidle/governors/menu.o
CC drivers/usb/core/notify.o
CC drivers/cpufreq/freq_table.o
CC drivers/acpi/acpi_video.o
CC drivers/net/ethernet/intel/e100.o
CC drivers/acpi/acpica/tbutils.o
AR drivers/net/ethernet/i825xx/built-in.a
CC drivers/ptp/ptp_kvm_common.o
AR drivers/net/ethernet/microsoft/built-in.a
AR drivers/thermal/intel/built-in.a
CC drivers/usb/host/xhci-debugfs.o
CC drivers/cpuidle/governors/haltpoll.o
CC lib/assoc_array.o
CC drivers/net/ethernet/intel/e1000e/ich8lan.o
CC fs/attr.o
CC drivers/cpuidle/cpuidle.o
CC drivers/gpu/drm/i915/gt/gen6_ppgtt.o
AR drivers/thermal/qcom/built-in.a
AR drivers/thermal/tegra/built-in.a
CC drivers/acpi/video_detect.o
AR drivers/thermal/mediatek/built-in.a
CC drivers/thermal/thermal_core.o
CC drivers/usb/core/generic.o
CC mm/hmm.o
CC kernel/kcmp.o
AR drivers/scsi/built-in.a
CC net/ipv6/tcpv6_offload.o
CC drivers/md/md-autodetect.o
CC drivers/thermal/thermal_sysfs.o
CC [M] drivers/gpu/drm/xe/xe_gt.o
AR net/core/built-in.a
CC drivers/cpufreq/cpufreq_performance.o
CC drivers/input/sparse-keymap.o
CC drivers/usb/core/quirks.o
AR drivers/net/ethernet/litex/built-in.a
CC drivers/cpuidle/driver.o
CC arch/x86/kernel/rethook.o
CC drivers/thermal/thermal_trip.o
CC fs/bad_inode.o
CC drivers/acpi/acpica/tbxface.o
CC lib/bitrev.o
CC drivers/gpu/drm/drm_fourcc.o
CC net/ipv4/metrics.o
CC drivers/net/ethernet/intel/e1000e/80003es2lan.o
AR drivers/mmc/built-in.a
CC drivers/thermal/thermal_helpers.o
CC drivers/acpi/processor_driver.o
CC fs/nfs/callback_proc.o
CC drivers/cpufreq/cpufreq_userspace.o
AR drivers/ptp/built-in.a
CC drivers/usb/core/devices.o
CC drivers/net/ethernet/intel/e1000/e1000_ethtool.o
CC [M] drivers/gpu/drm/xe/xe_gt_ccs_mode.o
AR drivers/net/ethernet/marvell/octeon_ep/built-in.a
CC [M] drivers/gpu/drm/xe/xe_gt_clock.o
AR drivers/net/ethernet/marvell/octeon_ep_vf/built-in.a
CC drivers/md/dm.o
CC arch/x86/kernel/vmcore_info_32.o
AR drivers/net/ethernet/marvell/octeontx2/built-in.a
CC drivers/acpi/acpica/tbxfload.o
CC drivers/net/ethernet/intel/e1000/e1000_param.o
AR drivers/net/ethernet/marvell/prestera/built-in.a
CC lib/crc-ccitt.o
CC drivers/net/ethernet/marvell/sky2.o
CC drivers/usb/core/phy.o
CC net/ipv4/netlink.o
AR drivers/cpuidle/governors/built-in.a
CC mm/memfd.o
CC net/ipv6/exthdrs_offload.o
CC drivers/input/vivaldi-fmap.o
CC kernel/freezer.o
CC drivers/acpi/acpica/tbxfroot.o
CC fs/file.o
CC drivers/gpu/drm/drm_framebuffer.o
CC lib/crc16.o
CC drivers/usb/core/port.o
CC drivers/net/ethernet/intel/e1000e/mac.o
AR drivers/net/ethernet/mellanox/built-in.a
CC arch/x86/kernel/machine_kexec_32.o
CC drivers/gpu/drm/drm_gem.o
AR drivers/ufs/built-in.a
CC drivers/gpu/drm/i915/gt/gen7_renderclear.o
CC fs/nfs/nfs4namespace.o
CC drivers/md/dm-table.o
CC [M] drivers/gpu/drm/xe/xe_gt_freq.o
CC drivers/cpuidle/governor.o
AR drivers/net/ethernet/meta/built-in.a
AS arch/x86/kernel/relocate_kernel_32.o
CC fs/filesystems.o
CC drivers/acpi/processor_thermal.o
CC drivers/acpi/processor_idle.o
CC drivers/input/input-leds.o
CC drivers/acpi/acpica/utaddress.o
CC drivers/thermal/thermal_thresholds.o
HOSTCC lib/gen_crc32table
CC drivers/usb/core/hcd-pci.o
CC drivers/usb/host/xhci-pci.o
CC drivers/cpufreq/cpufreq_ondemand.o
CC lib/xxhash.o
CC drivers/acpi/processor_throttling.o
CC drivers/gpu/drm/i915/gt/gen8_engine_cs.o
CC net/ipv4/nexthop.o
AR drivers/firmware/arm_ffa/built-in.a
AR drivers/net/ethernet/broadcom/built-in.a
AR drivers/firmware/arm_scmi/built-in.a
CC drivers/clocksource/acpi_pm.o
AR drivers/crypto/stm32/built-in.a
AR drivers/firmware/broadcom/built-in.a
AR drivers/crypto/xilinx/built-in.a
CC drivers/cpuidle/sysfs.o
AR drivers/crypto/hisilicon/built-in.a
CC drivers/cpuidle/poll_state.o
CC drivers/input/evdev.o
AR drivers/firmware/cirrus/test/built-in.a
AR drivers/firmware/cirrus/built-in.a
AR drivers/crypto/intel/keembay/built-in.a
AR drivers/crypto/intel/ixp4xx/built-in.a
AR drivers/firmware/meson/built-in.a
AR drivers/crypto/intel/built-in.a
AR drivers/firmware/microchip/built-in.a
CC fs/nfs/nfs4getroot.o
CC drivers/net/ethernet/intel/e1000e/manage.o
AR drivers/crypto/starfive/built-in.a
CC mm/ptdump.o
CC drivers/gpu/drm/drm_ioctl.o
CC net/ipv6/inet6_hashtables.o
AR drivers/crypto/built-in.a
CC drivers/usb/core/usb-acpi.o
CC drivers/acpi/acpica/utalloc.o
CC arch/x86/kernel/crash_dump_32.o
CC kernel/profile.o
CC drivers/firmware/efi/libstub/efi-stub-helper.o
CC drivers/clocksource/i8253.o
CC drivers/firmware/efi/efi-bgrt.o
CC drivers/md/dm-target.o
CC drivers/thermal/thermal_netlink.o
CC lib/genalloc.o
CC fs/nfs/nfs4client.o
CC net/ipv6/mcast_snoop.o
CC drivers/gpu/drm/i915/gt/gen8_ppgtt.o
CC kernel/stacktrace.o
CC drivers/cpufreq/cpufreq_governor.o
CC [M] drivers/gpu/drm/xe/xe_gt_idle.o
CC fs/nfs/nfs4session.o
CC arch/x86/kernel/crash.o
CC drivers/md/dm-linear.o
CC fs/namespace.o
CC drivers/gpu/drm/i915/gt/intel_breadcrumbs.o
CC drivers/cpuidle/cpuidle-haltpoll.o
CC drivers/acpi/acpica/utascii.o
AR drivers/firmware/imx/built-in.a
CC drivers/hid/usbhid/hid-core.o
CC drivers/acpi/processor_perflib.o
AR drivers/platform/x86/amd/built-in.a
AR drivers/platform/surface/built-in.a
AR drivers/platform/x86/intel/built-in.a
CC kernel/dma.o
CC drivers/platform/x86/wmi.o
CC mm/execmem.o
AR drivers/clocksource/built-in.a
CC [M] drivers/gpu/drm/xe/xe_gt_mcr.o
CC [M] drivers/gpu/drm/xe/xe_gt_pagefault.o
CC drivers/firmware/efi/efi.o
CC drivers/gpu/drm/drm_lease.o
CC net/ipv4/udp_tunnel_stub.o
CC drivers/hid/hid-core.o
CC fs/seq_file.o
CC drivers/md/dm-stripe.o
CC drivers/acpi/acpica/utbuffer.o
AR drivers/usb/core/built-in.a
CC drivers/acpi/acpica/utcksum.o
CC drivers/gpu/drm/drm_managed.o
CC drivers/firmware/efi/libstub/gop.o
CC drivers/firmware/efi/libstub/secureboot.o
AR drivers/net/ethernet/intel/e1000/built-in.a
AR drivers/net/ethernet/micrel/built-in.a
CC drivers/firmware/efi/libstub/tpm.o
AR drivers/net/ethernet/microchip/built-in.a
CC lib/percpu_counter.o
AR drivers/cpuidle/built-in.a
CC drivers/acpi/acpica/utcopy.o
CC drivers/thermal/thermal_hwmon.o
CC drivers/mailbox/mailbox.o
CC drivers/mailbox/pcc.o
CC drivers/firmware/efi/libstub/file.o
CC drivers/gpu/drm/i915/gt/intel_context.o
CC drivers/cpufreq/cpufreq_governor_attr_set.o
AR drivers/input/built-in.a
CC drivers/gpu/drm/i915/gt/intel_context_sseu.o
CC lib/audit.o
CC drivers/firmware/efi/vars.o
CC arch/x86/kernel/module.o
AR drivers/usb/host/built-in.a
CC drivers/acpi/container.o
AR drivers/usb/built-in.a
CC kernel/smp.o
AR drivers/net/ethernet/mscc/built-in.a
CC drivers/acpi/acpica/utexcep.o
CC drivers/gpu/drm/drm_mm.o
CC drivers/firmware/efi/libstub/mem.o
CC drivers/net/ethernet/intel/e1000e/nvm.o
CC drivers/thermal/gov_step_wise.o
CC drivers/hid/usbhid/hiddev.o
CC [M] drivers/gpu/drm/xe/xe_gt_sysfs.o
CC drivers/hid/hid-input.o
CC drivers/firmware/efi/reboot.o
AR mm/built-in.a
CC drivers/gpu/drm/drm_mode_config.o
CC drivers/acpi/acpica/utdebug.o
CC fs/xattr.o
CC kernel/uid16.o
CC drivers/hid/usbhid/hid-pidff.o
CC drivers/firmware/efi/memattr.o
CC drivers/cpufreq/acpi-cpufreq.o
CC drivers/firmware/efi/tpm.o
AR net/ipv6/built-in.a
CC [M] drivers/gpu/drm/xe/xe_gt_throttle.o
AR drivers/perf/built-in.a
CC drivers/firmware/efi/libstub/random.o
CC kernel/kallsyms.o
CC drivers/platform/x86/wmi-bmof.o
CC lib/syscall.o
CC drivers/acpi/acpica/utdecode.o
CC fs/nfs/dns_resolve.o
AR drivers/mailbox/built-in.a
CC drivers/firmware/efi/memmap.o
CC kernel/acct.o
CC fs/nfs/nfs4trace.o
CC drivers/platform/x86/eeepc-laptop.o
AR drivers/net/ethernet/myricom/built-in.a
AR drivers/net/ethernet/natsemi/built-in.a
CC net/ipv4/ip_tunnel.o
CC drivers/hid/hid-quirks.o
AR drivers/net/ethernet/neterion/built-in.a
CC kernel/vmcore_info.o
CC kernel/elfcorehdr.o
CC fs/nfs/nfs4sysctl.o
AR drivers/thermal/built-in.a
AR drivers/net/ethernet/netronome/built-in.a
CC lib/errname.o
CC net/ipv4/sysctl_net_ipv4.o
CC fs/libfs.o
CC arch/x86/kernel/doublefault_32.o
CC drivers/md/dm-ioctl.o
CC net/ipv4/proc.o
CC drivers/gpu/drm/drm_mode_object.o
CC drivers/md/dm-io.o
CC drivers/gpu/drm/drm_modes.o
AR drivers/firmware/psci/built-in.a
CC drivers/cpufreq/amd-pstate.o
CC drivers/gpu/drm/i915/gt/intel_engine_cs.o
CC drivers/platform/x86/p2sb.o
CC drivers/acpi/acpica/utdelete.o
CC drivers/gpu/drm/i915/gt/intel_engine_heartbeat.o
CC drivers/cpufreq/amd-pstate-trace.o
AR drivers/hwtracing/intel_th/built-in.a
CC arch/x86/kernel/early_printk.o
CC arch/x86/kernel/hpet.o
AR drivers/net/ethernet/marvell/built-in.a
CC drivers/net/ethernet/intel/e1000e/phy.o
CC drivers/firmware/efi/capsule.o
CC lib/nlattr.o
CC drivers/firmware/efi/libstub/randomalloc.o
CC drivers/acpi/acpica/uterror.o
CC kernel/crash_reserve.o
CC [M] drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o
AR drivers/firmware/qcom/built-in.a
CC drivers/net/ethernet/intel/e1000e/param.o
AR drivers/firmware/smccc/built-in.a
CC drivers/md/dm-kcopyd.o
CC drivers/net/ethernet/intel/e1000e/ethtool.o
AR drivers/net/ethernet/ni/built-in.a
CC arch/x86/kernel/amd_nb.o
AR drivers/android/built-in.a
AR drivers/nvmem/layouts/built-in.a
AR drivers/firmware/tegra/built-in.a
CC drivers/gpu/drm/drm_modeset_lock.o
CC drivers/nvmem/core.o
CC [M] drivers/gpu/drm/xe/xe_gt_topology.o
CC drivers/gpu/drm/i915/gt/intel_engine_pm.o
CC drivers/net/ethernet/nvidia/forcedeth.o
CC net/ipv4/fib_rules.o
CC drivers/acpi/thermal_lib.o
CC fs/fs-writeback.o
CC drivers/gpu/drm/drm_plane.o
CC drivers/acpi/acpica/uteval.o
CC drivers/gpu/drm/drm_prime.o
AR drivers/net/ethernet/oki-semi/built-in.a
CC drivers/firmware/efi/esrt.o
CC arch/x86/kernel/amd_node.o
CC arch/x86/kernel/kvm.o
CC drivers/gpu/drm/i915/gt/intel_engine_user.o
CC drivers/gpu/drm/i915/gt/intel_execlists_submission.o
CC drivers/firmware/efi/runtime-wrappers.o
CC drivers/gpu/drm/i915/gt/intel_ggtt.o
AR drivers/platform/x86/built-in.a
CC drivers/gpu/drm/drm_print.o
AR drivers/platform/built-in.a
CC drivers/firmware/efi/capsule-loader.o
CC fs/pnode.o
AR drivers/hid/usbhid/built-in.a
CC fs/splice.o
CC drivers/acpi/acpica/utglobal.o
CC drivers/firmware/efi/libstub/pci.o
AR drivers/net/ethernet/packetengines/built-in.a
CC drivers/firmware/efi/earlycon.o
CC lib/cpu_rmap.o
CC kernel/kexec_core.o
CC drivers/md/dm-sysfs.o
CC [M] drivers/gpu/drm/xe/xe_guc.o
CC drivers/net/ethernet/intel/e1000e/netdev.o
CC drivers/gpu/drm/drm_property.o
CC drivers/cpufreq/intel_pstate.o
CC net/ipv4/ipmr.o
CC drivers/hid/hid-debug.o
CC drivers/acpi/acpica/uthex.o
AR drivers/firmware/xilinx/built-in.a
CC drivers/firmware/efi/libstub/skip_spaces.o
AR drivers/net/ethernet/qlogic/built-in.a
CC drivers/firmware/dmi_scan.o
CC kernel/crash_core.o
CC drivers/acpi/thermal.o
CC drivers/net/ethernet/intel/e1000e/ptp.o
CC [M] drivers/gpu/drm/xe/xe_guc_ads.o
CC drivers/md/dm-stats.o
CC drivers/acpi/acpica/utids.o
CC drivers/acpi/nhlt.o
CC drivers/gpu/drm/i915/gt/intel_ggtt_fencing.o
CC drivers/firmware/dmi-id.o
CC fs/sync.o
CC [M] drivers/gpu/drm/xe/xe_guc_buf.o
CC lib/dynamic_queue_limits.o
CC drivers/acpi/acpica/utinit.o
CC drivers/gpu/drm/i915/gt/intel_gt.o
CC drivers/gpu/drm/drm_rect.o
CC drivers/acpi/acpica/utlock.o
CC kernel/kexec.o
AR drivers/nvmem/built-in.a
CC kernel/utsname.o
CC drivers/firmware/efi/libstub/lib-cmdline.o
AR drivers/net/ethernet/qualcomm/emac/built-in.a
CC drivers/net/ethernet/realtek/8139too.o
AR drivers/net/ethernet/qualcomm/built-in.a
CC drivers/firmware/efi/libstub/lib-ctype.o
CC fs/utimes.o
AR drivers/net/ethernet/renesas/built-in.a
CC drivers/acpi/acpica/utmath.o
CC kernel/pid_namespace.o
CC drivers/acpi/acpi_memhotplug.o
CC net/ipv4/ipmr_base.o
CC drivers/net/ethernet/realtek/r8169_main.o
CC arch/x86/kernel/kvmclock.o
CC drivers/firmware/efi/libstub/alignedmem.o
CC net/ipv4/syncookies.o
CC drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.o
CC drivers/gpu/drm/drm_syncobj.o
CC drivers/hid/hidraw.o
CC lib/glob.o
CC [M] drivers/gpu/drm/xe/xe_guc_capture.o
CC kernel/stop_machine.o
CC drivers/acpi/ioapic.o
CC fs/d_path.o
AR drivers/firmware/efi/built-in.a
CC net/ipv4/tunnel4.o
CC drivers/gpu/drm/i915/gt/intel_gt_ccs_mode.o
CC drivers/acpi/acpica/utmisc.o
CC drivers/firmware/efi/libstub/relocate.o
CC drivers/md/dm-rq.o
CC drivers/hid/hid-generic.o
CC fs/stack.o
CC drivers/acpi/acpica/utmutex.o
CC kernel/audit.o
CC drivers/net/ethernet/realtek/r8169_firmware.o
CC drivers/firmware/efi/libstub/printk.o
CC drivers/gpu/drm/i915/gt/intel_gt_clock_utils.o
CC drivers/gpu/drm/i915/gt/intel_gt_debugfs.o
CC arch/x86/kernel/paravirt.o
CC drivers/firmware/memmap.o
AR drivers/net/ethernet/rdc/built-in.a
CC drivers/firmware/efi/libstub/vsprintf.o
CC kernel/auditfilter.o
CC drivers/acpi/acpica/utnonansi.o
CC drivers/acpi/battery.o
CC drivers/firmware/efi/libstub/x86-stub.o
CC lib/strncpy_from_user.o
CC drivers/net/ethernet/realtek/r8169_phy_config.o
CC drivers/gpu/drm/drm_sysfs.o
CC [M] drivers/gpu/drm/xe/xe_guc_ct.o
CC net/ipv4/ipconfig.o
CC drivers/acpi/acpica/utobject.o
CC lib/strnlen_user.o
CC drivers/md/dm-io-rewind.o
CC fs/fs_struct.o
CC drivers/hid/hid-a4tech.o
CC drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.o
CC net/ipv4/netfilter.o
AR drivers/net/ethernet/rocker/built-in.a
CC [M] drivers/gpu/drm/xe/xe_guc_db_mgr.o
CC lib/net_utils.o
CC drivers/firmware/efi/libstub/smbios.o
CC drivers/gpu/drm/drm_trace_points.o
CC fs/statfs.o
CC drivers/gpu/drm/i915/gt/intel_gt_irq.o
CC drivers/md/dm-builtin.o
CC drivers/hid/hid-apple.o
CC net/ipv4/tcp_cubic.o
AR fs/nfs/built-in.a
AR drivers/net/ethernet/samsung/built-in.a
CC drivers/hid/hid-belkin.o
CC drivers/acpi/bgrt.o
CC [M] drivers/gpu/drm/xe/xe_guc_engine_activity.o
CC drivers/gpu/drm/drm_vblank.o
CC arch/x86/kernel/pvclock.o
CC drivers/md/dm-raid1.o
CC lib/sg_pool.o
CC drivers/acpi/spcr.o
CC drivers/acpi/acpica/utosi.o
CC kernel/auditsc.o
CC drivers/gpu/drm/i915/gt/intel_gt_mcr.o
CC drivers/gpu/drm/drm_vblank_work.o
CC lib/stackdepot.o
CC drivers/md/dm-log.o
CC kernel/audit_watch.o
CC kernel/audit_fsnotify.o
CC drivers/acpi/acpica/utownerid.o
CC [M] drivers/gpu/drm/xe/xe_guc_hwconfig.o
CC drivers/hid/hid-cherry.o
AR drivers/cpufreq/built-in.a
CC drivers/hid/hid-chicony.o
CC [M] drivers/gpu/drm/xe/xe_guc_id_mgr.o
CC arch/x86/kernel/pcspeaker.o
CC drivers/md/dm-region-hash.o
AR drivers/net/ethernet/seeq/built-in.a
CC [M] drivers/gpu/drm/xe/xe_guc_klv_helpers.o
STUBCPY drivers/firmware/efi/libstub/alignedmem.stub.o
CC lib/asn1_decoder.o
STUBCPY drivers/firmware/efi/libstub/efi-stub-helper.stub.o
STUBCPY drivers/firmware/efi/libstub/file.stub.o
CC drivers/gpu/drm/i915/gt/intel_gt_pm.o
STUBCPY drivers/firmware/efi/libstub/gop.stub.o
STUBCPY drivers/firmware/efi/libstub/lib-cmdline.stub.o
CC drivers/md/dm-zero.o
STUBCPY drivers/firmware/efi/libstub/lib-ctype.stub.o
STUBCPY drivers/firmware/efi/libstub/mem.stub.o
STUBCPY drivers/firmware/efi/libstub/pci.stub.o
AR drivers/net/ethernet/silan/built-in.a
CC kernel/audit_tree.o
STUBCPY drivers/firmware/efi/libstub/printk.stub.o
CC arch/x86/kernel/check.o
STUBCPY drivers/firmware/efi/libstub/random.stub.o
CC arch/x86/kernel/uprobes.o
STUBCPY drivers/firmware/efi/libstub/randomalloc.stub.o
STUBCPY drivers/firmware/efi/libstub/relocate.stub.o
CC drivers/hid/hid-cypress.o
STUBCPY drivers/firmware/efi/libstub/secureboot.stub.o
STUBCPY drivers/firmware/efi/libstub/skip_spaces.stub.o
AR drivers/net/ethernet/nvidia/built-in.a
STUBCPY drivers/firmware/efi/libstub/smbios.stub.o
GEN lib/oid_registry_data.c
STUBCPY drivers/firmware/efi/libstub/tpm.stub.o
CC drivers/gpu/drm/drm_vma_manager.o
CC drivers/acpi/acpica/utpredef.o
STUBCPY drivers/firmware/efi/libstub/vsprintf.stub.o
AR drivers/net/ethernet/sis/built-in.a
STUBCPY drivers/firmware/efi/libstub/x86-stub.stub.o
CC drivers/hid/hid-ezkey.o
AR drivers/firmware/efi/libstub/lib.a
CC arch/x86/kernel/perf_regs.o
AR drivers/firmware/built-in.a
AR drivers/net/ethernet/sfc/built-in.a
AR drivers/net/ethernet/smsc/built-in.a
CC arch/x86/kernel/tracepoint.o
CC lib/ucs2_string.o
CC drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.o
AR drivers/net/ethernet/socionext/built-in.a
CC fs/fs_pin.o
CC net/ipv4/tcp_sigpool.o
CC fs/nsfs.o
CC drivers/hid/hid-gyration.o
CC drivers/acpi/acpica/utresdecode.o
CC lib/sbitmap.o
AR drivers/net/ethernet/stmicro/built-in.a
CC lib/group_cpus.o
CC drivers/acpi/acpica/utresrc.o
CC drivers/gpu/drm/drm_writeback.o
CC [M] drivers/gpu/drm/xe/xe_guc_log.o
CC drivers/gpu/drm/i915/gt/intel_gt_pm_irq.o
CC arch/x86/kernel/itmt.o
CC fs/fs_types.o
AR drivers/net/ethernet/sun/built-in.a
CC fs/fs_context.o
CC drivers/gpu/drm/drm_panel.o
CC [M] drivers/gpu/drm/xe/xe_guc_pc.o
CC arch/x86/kernel/umip.o
CC drivers/acpi/acpica/utstate.o
CC fs/fs_parser.o
CC net/ipv4/cipso_ipv4.o
CC drivers/acpi/acpica/utstring.o
CC lib/fw_table.o
CC drivers/hid/hid-ite.o
AR drivers/net/ethernet/tehuti/built-in.a
CC fs/fsopen.o
CC drivers/gpu/drm/drm_pci.o
CC drivers/gpu/drm/drm_debugfs.o
CC drivers/acpi/acpica/utstrsuppt.o
CC net/ipv4/xfrm4_policy.o
CC fs/init.o
CC [M] drivers/gpu/drm/xe/xe_guc_submit.o
CC drivers/hid/hid-kensington.o
CC drivers/acpi/acpica/utstrtoul64.o
CC drivers/hid/hid-lg.o
CC [M] drivers/gpu/drm/xe/xe_heci_gsc.o
CC fs/kernel_read_file.o
CC drivers/gpu/drm/i915/gt/intel_gt_requests.o
CC kernel/kprobes.o
AR lib/lib.a
CC fs/mnt_idmapping.o
AR drivers/net/ethernet/ti/built-in.a
AR drivers/md/built-in.a
CC arch/x86/kernel/unwind_frame.o
CC drivers/gpu/drm/drm_debugfs_crc.o
CC drivers/acpi/acpica/utxface.o
GEN lib/crc32table.h
CC kernel/seccomp.o
CC fs/remap_range.o
CC drivers/acpi/acpica/utxfinit.o
AR drivers/net/ethernet/vertexcom/built-in.a
CC net/ipv4/xfrm4_state.o
CC drivers/hid/hid-lgff.o
CC net/ipv4/xfrm4_input.o
CC drivers/gpu/drm/drm_panel_orientation_quirks.o
CC drivers/acpi/acpica/utxferror.o
AR drivers/net/ethernet/via/built-in.a
CC fs/pidfs.o
CC drivers/gpu/drm/i915/gt/intel_gt_sysfs.o
CC [M] drivers/gpu/drm/xe/xe_huc.o
CC kernel/relay.o
CC lib/oid_registry.o
CC drivers/gpu/drm/drm_buddy.o
CC drivers/hid/hid-lg4ff.o
CC net/ipv4/xfrm4_output.o
AR drivers/net/ethernet/wangxun/built-in.a
CC fs/buffer.o
CC [M] drivers/gpu/drm/xe/xe_hw_engine.o
CC drivers/hid/hid-lg-g15.o
CC kernel/utsname_sysctl.o
CC drivers/hid/hid-microsoft.o
CC drivers/acpi/acpica/utxfmutex.o
CC drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.o
CC net/ipv4/xfrm4_protocol.o
CC drivers/gpu/drm/i915/gt/intel_gtt.o
CC lib/crc32.o
CC kernel/delayacct.o
CC [M] drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.o
CC fs/mpage.o
AR drivers/net/ethernet/realtek/built-in.a
CC drivers/gpu/drm/drm_gem_shmem_helper.o
CC drivers/gpu/drm/i915/gt/intel_llc.o
CC [M] drivers/gpu/drm/xe/xe_hw_engine_group.o
CC kernel/taskstats.o
CC drivers/hid/hid-monterey.o
CC drivers/gpu/drm/drm_atomic_helper.o
AR arch/x86/kernel/built-in.a
CC kernel/tsacct.o
AR drivers/net/ethernet/wiznet/built-in.a
CC [M] drivers/gpu/drm/xe/xe_hw_fence.o
AR drivers/net/ethernet/xilinx/built-in.a
AR arch/x86/built-in.a
CC fs/proc_namespace.o
CC drivers/gpu/drm/i915/gt/intel_lrc.o
CC drivers/gpu/drm/i915/gt/intel_migrate.o
CC drivers/gpu/drm/drm_atomic_state_helper.o
CC drivers/gpu/drm/i915/gt/intel_mocs.o
CC kernel/tracepoint.o
CC [M] drivers/gpu/drm/xe/xe_irq.o
AR drivers/net/ethernet/xircom/built-in.a
CC drivers/gpu/drm/i915/gt/intel_ppgtt.o
CC fs/direct-io.o
AR drivers/acpi/acpica/built-in.a
AR drivers/acpi/built-in.a
CC kernel/irq_work.o
AR lib/built-in.a
CC drivers/gpu/drm/drm_crtc_helper.o
CC [M] drivers/gpu/drm/xe/xe_lrc.o
AR drivers/net/ethernet/synopsys/built-in.a
AR drivers/net/ethernet/pensando/built-in.a
CC drivers/gpu/drm/i915/gt/intel_rc6.o
CC drivers/hid/hid-ntrig.o
CC drivers/gpu/drm/i915/gt/intel_region_lmem.o
CC fs/eventpoll.o
CC drivers/gpu/drm/drm_damage_helper.o
CC drivers/gpu/drm/i915/gt/intel_renderstate.o
CC [M] drivers/gpu/drm/xe/xe_migrate.o
CC drivers/gpu/drm/drm_flip_work.o
CC drivers/hid/hid-pl.o
CC drivers/gpu/drm/i915/gt/intel_reset.o
CC [M] drivers/gpu/drm/xe/xe_mmio.o
CC fs/anon_inodes.o
CC kernel/static_call.o
CC drivers/gpu/drm/i915/gt/intel_ring.o
CC drivers/hid/hid-petalynx.o
CC drivers/gpu/drm/drm_format_helper.o
CC [M] drivers/gpu/drm/xe/xe_mocs.o
CC drivers/hid/hid-redragon.o
CC drivers/gpu/drm/i915/gt/intel_ring_submission.o
CC kernel/padata.o
AR drivers/net/ethernet/intel/e1000e/built-in.a
CC [M] drivers/gpu/drm/xe/xe_module.o
AR drivers/net/ethernet/intel/built-in.a
CC drivers/gpu/drm/drm_gem_atomic_helper.o
CC fs/signalfd.o
AR drivers/net/ethernet/built-in.a
CC kernel/jump_label.o
CC [M] drivers/gpu/drm/xe/xe_oa.o
CC fs/timerfd.o
CC drivers/gpu/drm/i915/gt/intel_rps.o
CC fs/eventfd.o
CC drivers/gpu/drm/drm_gem_framebuffer_helper.o
CC drivers/hid/hid-samsung.o
AR net/ipv4/built-in.a
AR drivers/net/built-in.a
AR net/built-in.a
CC [M] drivers/gpu/drm/xe/xe_observation.o
CC drivers/gpu/drm/i915/gt/intel_sa_media.o
CC [M] drivers/gpu/drm/xe/xe_pat.o
CC kernel/context_tracking.o
CC drivers/hid/hid-sony.o
CC fs/aio.o
CC [M] drivers/gpu/drm/xe/xe_pci.o
CC drivers/gpu/drm/i915/gt/intel_sseu.o
CC drivers/gpu/drm/drm_kms_helper_common.o
CC [M] drivers/gpu/drm/xe/xe_pcode.o
CC drivers/gpu/drm/i915/gt/intel_sseu_debugfs.o
CC drivers/hid/hid-sunplus.o
CC kernel/iomem.o
CC fs/locks.o
CC drivers/gpu/drm/drm_modeset_helper.o
CC [M] drivers/gpu/drm/xe/xe_pm.o
CC drivers/gpu/drm/i915/gt/intel_timeline.o
CC [M] drivers/gpu/drm/xe/xe_preempt_fence.o
CC drivers/hid/hid-topseed.o
CC kernel/rseq.o
CC fs/binfmt_misc.o
CC drivers/gpu/drm/i915/gt/intel_tlb.o
CC [M] drivers/gpu/drm/xe/xe_pt.o
CC drivers/gpu/drm/drm_plane_helper.o
CC drivers/gpu/drm/i915/gt/intel_wopcm.o
CC fs/binfmt_script.o
CC [M] drivers/gpu/drm/xe/xe_pt_walk.o
CC drivers/gpu/drm/drm_probe_helper.o
CC drivers/gpu/drm/drm_self_refresh_helper.o
CC drivers/gpu/drm/drm_simple_kms_helper.o
CC fs/binfmt_elf.o
CC [M] drivers/gpu/drm/xe/xe_pxp.o
CC fs/mbcache.o
CC drivers/gpu/drm/i915/gt/intel_workarounds.o
CC drivers/gpu/drm/bridge/panel.o
CC fs/posix_acl.o
CC drivers/gpu/drm/i915/gt/shmem_utils.o
CC drivers/gpu/drm/drm_mipi_dsi.o
CC drivers/gpu/drm/i915/gt/sysfs_engines.o
CC [M] drivers/gpu/drm/xe/xe_pxp_debugfs.o
CC drivers/gpu/drm/i915/gt/intel_ggtt_gmch.o
CC [M] drivers/gpu/drm/drm_exec.o
CC drivers/gpu/drm/i915/gt/gen6_renderstate.o
CC fs/coredump.o
CC drivers/gpu/drm/i915/gt/gen7_renderstate.o
CC [M] drivers/gpu/drm/drm_gpuvm.o
CC [M] drivers/gpu/drm/xe/xe_pxp_submit.o
CC fs/drop_caches.o
CC drivers/gpu/drm/i915/gt/gen8_renderstate.o
CC fs/sysctls.o
CC [M] drivers/gpu/drm/xe/xe_query.o
CC fs/fhandle.o
CC [M] drivers/gpu/drm/xe/xe_range_fence.o
CC [M] drivers/gpu/drm/drm_suballoc.o
CC drivers/gpu/drm/i915/gt/gen9_renderstate.o
CC [M] drivers/gpu/drm/xe/xe_reg_sr.o
AR drivers/hid/built-in.a
CC [M] drivers/gpu/drm/xe/xe_reg_whitelist.o
CC drivers/gpu/drm/i915/gem/i915_gem_busy.o
CC [M] drivers/gpu/drm/drm_gem_ttm_helper.o
CC drivers/gpu/drm/i915/gem/i915_gem_clflush.o
CC [M] drivers/gpu/drm/xe/xe_ring_ops.o
CC [M] drivers/gpu/drm/xe/xe_rtp.o
AR kernel/built-in.a
CC [M] drivers/gpu/drm/xe/xe_sa.o
CC drivers/gpu/drm/i915/gem/i915_gem_context.o
CC drivers/gpu/drm/i915/gem/i915_gem_create.o
CC [M] drivers/gpu/drm/xe/xe_sched_job.o
CC [M] drivers/gpu/drm/xe/xe_shrinker.o
CC [M] drivers/gpu/drm/xe/xe_step.o
CC drivers/gpu/drm/i915/gem/i915_gem_dmabuf.o
CC drivers/gpu/drm/i915/gem/i915_gem_domain.o
CC drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o
CC [M] drivers/gpu/drm/xe/xe_survivability_mode.o
CC drivers/gpu/drm/i915/gem/i915_gem_internal.o
CC [M] drivers/gpu/drm/xe/xe_sync.o
CC drivers/gpu/drm/i915/gem/i915_gem_lmem.o
CC drivers/gpu/drm/i915/gem/i915_gem_mman.o
CC [M] drivers/gpu/drm/xe/xe_tile.o
CC [M] drivers/gpu/drm/xe/xe_tile_sysfs.o
CC [M] drivers/gpu/drm/xe/xe_trace.o
CC [M] drivers/gpu/drm/xe/xe_trace_bo.o
CC [M] drivers/gpu/drm/xe/xe_trace_guc.o
CC [M] drivers/gpu/drm/xe/xe_trace_lrc.o
CC drivers/gpu/drm/i915/gem/i915_gem_object.o
CC [M] drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o
CC drivers/gpu/drm/i915/gem/i915_gem_pages.o
CC [M] drivers/gpu/drm/xe/xe_ttm_sys_mgr.o
LD [M] drivers/gpu/drm/drm_suballoc_helper.o
CC drivers/gpu/drm/i915/gem/i915_gem_phys.o
CC drivers/gpu/drm/i915/gem/i915_gem_pm.o
CC drivers/gpu/drm/i915/gem/i915_gem_region.o
CC [M] drivers/gpu/drm/xe/xe_ttm_vram_mgr.o
CC drivers/gpu/drm/i915/gem/i915_gem_shmem.o
CC drivers/gpu/drm/i915/gem/i915_gem_shrinker.o
CC [M] drivers/gpu/drm/xe/xe_tuning.o
LD [M] drivers/gpu/drm/drm_ttm_helper.o
CC drivers/gpu/drm/i915/gem/i915_gem_stolen.o
CC [M] drivers/gpu/drm/xe/xe_uc.o
CC drivers/gpu/drm/i915/gem/i915_gem_throttle.o
CC [M] drivers/gpu/drm/xe/xe_uc_fw.o
CC drivers/gpu/drm/i915/gem/i915_gem_tiling.o
CC [M] drivers/gpu/drm/xe/xe_vm.o
CC drivers/gpu/drm/i915/gem/i915_gem_ttm.o
CC [M] drivers/gpu/drm/xe/xe_vram.o
CC [M] drivers/gpu/drm/xe/xe_vram_freq.o
CC [M] drivers/gpu/drm/xe/xe_vsec.o
CC [M] drivers/gpu/drm/xe/xe_wa.o
CC drivers/gpu/drm/i915/gem/i915_gem_ttm_move.o
CC drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.o
CC [M] drivers/gpu/drm/xe/xe_wait_user_fence.o
CC drivers/gpu/drm/i915/gem/i915_gem_userptr.o
CC [M] drivers/gpu/drm/xe/xe_wopcm.o
CC drivers/gpu/drm/i915/gem/i915_gem_wait.o
CC [M] drivers/gpu/drm/xe/xe_hmm.o
CC drivers/gpu/drm/i915/gem/i915_gemfs.o
CC [M] drivers/gpu/drm/xe/xe_hwmon.o
CC drivers/gpu/drm/i915/i915_active.o
CC [M] drivers/gpu/drm/xe/xe_pmu.o
CC drivers/gpu/drm/i915/i915_cmd_parser.o
AR fs/built-in.a
CC [M] drivers/gpu/drm/xe/xe_gt_sriov_vf.o
CC [M] drivers/gpu/drm/xe/xe_guc_relay.o
CC [M] drivers/gpu/drm/xe/xe_memirq.o
CC drivers/gpu/drm/i915/i915_deps.o
CC [M] drivers/gpu/drm/xe/xe_sriov.o
CC [M] drivers/gpu/drm/xe/xe_sriov_vf.o
CC [M] drivers/gpu/drm/xe/display/ext/i915_irq.o
CC drivers/gpu/drm/i915/i915_gem.o
CC [M] drivers/gpu/drm/xe/display/ext/i915_utils.o
CC [M] drivers/gpu/drm/xe/display/intel_bo.o
CC drivers/gpu/drm/i915/i915_gem_evict.o
CC drivers/gpu/drm/i915/i915_gem_gtt.o
CC [M] drivers/gpu/drm/xe/display/intel_fb_bo.o
CC [M] drivers/gpu/drm/xe/display/intel_fbdev_fb.o
CC drivers/gpu/drm/i915/i915_gem_ww.o
CC drivers/gpu/drm/i915/i915_query.o
CC [M] drivers/gpu/drm/xe/display/xe_display.o
CC drivers/gpu/drm/i915/i915_request.o
CC [M] drivers/gpu/drm/xe/display/xe_display_misc.o
CC drivers/gpu/drm/i915/i915_scheduler.o
CC [M] drivers/gpu/drm/xe/display/xe_display_rps.o
CC drivers/gpu/drm/i915/i915_trace_points.o
CC [M] drivers/gpu/drm/xe/display/xe_display_wa.o
CC [M] drivers/gpu/drm/xe/display/xe_dsb_buffer.o
CC drivers/gpu/drm/i915/i915_ttm_buddy_manager.o
CC [M] drivers/gpu/drm/xe/display/xe_fb_pin.o
CC drivers/gpu/drm/i915/i915_vma.o
CC drivers/gpu/drm/i915/i915_vma_resource.o
CC drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.o
CC drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.o
CC [M] drivers/gpu/drm/xe/display/xe_hdcp_gsc.o
CC drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.o
CC drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.o
CC [M] drivers/gpu/drm/xe/display/xe_plane_initial.o
CC [M] drivers/gpu/drm/xe/display/xe_tdf.o
CC [M] drivers/gpu/drm/xe/i915-soc/intel_dram.o
CC drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.o
CC [M] drivers/gpu/drm/xe/i915-soc/intel_pch.o
CC [M] drivers/gpu/drm/xe/i915-soc/intel_rom.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc.o
CC [M] drivers/gpu/drm/xe/i915-display/icl_dsi.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_alpm.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_atomic.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_ads.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_atomic_plane.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_audio.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_capture.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_backlight.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_bios.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_ct.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_bw.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_cdclk.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_cmtg.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_fw.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_hwconfig.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_color.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_log.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_combo_phy.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_connector.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_rc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_crtc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_crtc_state_dump.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_cursor.o
CC drivers/gpu/drm/i915/gt/uc/intel_guc_submission.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_cx0_phy.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_ddi.o
CC drivers/gpu/drm/i915/gt/uc/intel_huc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_ddi_buf_trans.o
CC drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display.o
CC drivers/gpu/drm/i915/gt/uc/intel_huc_fw.o
CC drivers/gpu/drm/i915/gt/uc/intel_uc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_conversion.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_device.o
CC drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_driver.o
CC drivers/gpu/drm/i915/gt/uc/intel_uc_fw.o
CC drivers/gpu/drm/i915/gt/intel_gsc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_irq.o
CC drivers/gpu/drm/i915/i915_hwmon.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_params.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power.o
CC drivers/gpu/drm/i915/display/hsw_ips.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_map.o
CC drivers/gpu/drm/i915/display/i9xx_plane.o
CC drivers/gpu/drm/i915/display/i9xx_display_sr.o
CC drivers/gpu/drm/i915/display/i9xx_wm.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_well.o
CC drivers/gpu/drm/i915/display/intel_alpm.o
CC drivers/gpu/drm/i915/display/intel_atomic.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_trace.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_wa.o
CC drivers/gpu/drm/i915/display/intel_atomic_plane.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dkl_phy.o
CC drivers/gpu/drm/i915/display/intel_audio.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dmc.o
CC drivers/gpu/drm/i915/display/intel_bios.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dmc_wl.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp.o
CC drivers/gpu/drm/i915/display/intel_bo.o
CC drivers/gpu/drm/i915/display/intel_bw.o
CC drivers/gpu/drm/i915/display/intel_cdclk.o
CC drivers/gpu/drm/i915/display/intel_cmtg.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_aux.o
CC drivers/gpu/drm/i915/display/intel_color.o
CC drivers/gpu/drm/i915/display/intel_combo_phy.o
CC drivers/gpu/drm/i915/display/intel_connector.o
CC drivers/gpu/drm/i915/display/intel_crtc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_aux_backlight.o
CC drivers/gpu/drm/i915/display/intel_crtc_state_dump.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_hdcp.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_link_training.o
CC drivers/gpu/drm/i915/display/intel_cursor.o
CC drivers/gpu/drm/i915/display/intel_display.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_mst.o
CC drivers/gpu/drm/i915/display/intel_display_conversion.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_test.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dpll.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dpll_mgr.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dpt_common.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_drrs.o
CC drivers/gpu/drm/i915/display/intel_display_driver.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dsb.o
CC drivers/gpu/drm/i915/display/intel_display_irq.o
CC drivers/gpu/drm/i915/display/intel_display_params.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi.o
CC drivers/gpu/drm/i915/display/intel_display_power.o
CC drivers/gpu/drm/i915/display/intel_display_power_map.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi_dcs_backlight.o
CC drivers/gpu/drm/i915/display/intel_display_power_well.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi_vbt.o
CC drivers/gpu/drm/i915/display/intel_display_reset.o
CC drivers/gpu/drm/i915/display/intel_display_rps.o
CC drivers/gpu/drm/i915/display/intel_display_snapshot.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_encoder.o
CC drivers/gpu/drm/i915/display/intel_display_wa.o
CC drivers/gpu/drm/i915/display/intel_dmc.o
CC drivers/gpu/drm/i915/display/intel_dmc_wl.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_fb.o
CC drivers/gpu/drm/i915/display/intel_dpio_phy.o
CC drivers/gpu/drm/i915/display/intel_dpll.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_fbc.o
CC drivers/gpu/drm/i915/display/intel_dpll_mgr.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_fdi.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_fifo_underrun.o
CC drivers/gpu/drm/i915/display/intel_dpt.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_frontbuffer.o
CC drivers/gpu/drm/i915/display/intel_dpt_common.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_global_state.o
CC drivers/gpu/drm/i915/display/intel_drrs.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_gmbus.o
CC drivers/gpu/drm/i915/display/intel_dsb.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_hdcp.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_hdcp_gsc_message.o
CC drivers/gpu/drm/i915/display/intel_dsb_buffer.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_hdmi.o
CC drivers/gpu/drm/i915/display/intel_fb.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_hotplug.o
CC drivers/gpu/drm/i915/display/intel_fb_bo.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_hotplug_irq.o
CC drivers/gpu/drm/i915/display/intel_fb_pin.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_hti.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_link_bw.o
CC drivers/gpu/drm/i915/display/intel_fbc.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_lspcon.o
CC drivers/gpu/drm/i915/display/intel_fdi.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_lock.o
CC drivers/gpu/drm/i915/display/intel_fifo_underrun.o
CC drivers/gpu/drm/i915/display/intel_frontbuffer.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_setup.o
CC drivers/gpu/drm/i915/display/intel_global_state.o
CC drivers/gpu/drm/i915/display/intel_hdcp.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_verify.o
CC drivers/gpu/drm/i915/display/intel_hdcp_gsc.o
CC drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_panel.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_pfit.o
CC drivers/gpu/drm/i915/display/intel_hotplug.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_pmdemand.o
CC drivers/gpu/drm/i915/display/intel_hotplug_irq.o
CC drivers/gpu/drm/i915/display/intel_hti.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_pps.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_psr.o
CC drivers/gpu/drm/i915/display/intel_link_bw.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_qp_tables.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_quirks.o
CC drivers/gpu/drm/i915/display/intel_load_detect.o
CC drivers/gpu/drm/i915/display/intel_lpe_audio.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_snps_hdmi_pll.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_snps_phy.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_tc.o
CC drivers/gpu/drm/i915/display/intel_modeset_lock.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_vblank.o
CC drivers/gpu/drm/i915/display/intel_modeset_setup.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_vdsc.o
CC drivers/gpu/drm/i915/display/intel_modeset_verify.o
CC drivers/gpu/drm/i915/display/intel_overlay.o
CC drivers/gpu/drm/i915/display/intel_pch_display.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_vga.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_vrr.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_wm.o
CC [M] drivers/gpu/drm/xe/i915-display/skl_scaler.o
CC drivers/gpu/drm/i915/display/intel_pch_refclk.o
CC [M] drivers/gpu/drm/xe/i915-display/skl_universal_plane.o
CC [M] drivers/gpu/drm/xe/i915-display/skl_watermark.o
CC drivers/gpu/drm/i915/display/intel_plane_initial.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_acpi.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_opregion.o
CC drivers/gpu/drm/i915/display/intel_pmdemand.o
CC drivers/gpu/drm/i915/display/intel_psr.o
CC [M] drivers/gpu/drm/xe/xe_debugfs.o
CC drivers/gpu/drm/i915/display/intel_quirks.o
CC drivers/gpu/drm/i915/display/intel_sprite.o
CC [M] drivers/gpu/drm/xe/xe_gt_debugfs.o
CC [M] drivers/gpu/drm/xe/xe_gt_sriov_vf_debugfs.o
CC drivers/gpu/drm/i915/display/intel_sprite_uapi.o
CC [M] drivers/gpu/drm/xe/xe_gt_stats.o
CC drivers/gpu/drm/i915/display/intel_tc.o
CC drivers/gpu/drm/i915/display/intel_vblank.o
CC drivers/gpu/drm/i915/display/intel_vga.o
CC [M] drivers/gpu/drm/xe/xe_guc_debugfs.o
CC drivers/gpu/drm/i915/display/intel_wm.o
CC [M] drivers/gpu/drm/xe/xe_huc_debugfs.o
CC drivers/gpu/drm/i915/display/skl_scaler.o
CC [M] drivers/gpu/drm/xe/xe_uc_debugfs.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_debugfs.o
CC drivers/gpu/drm/i915/display/skl_universal_plane.o
CC drivers/gpu/drm/i915/display/skl_watermark.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_display_debugfs_params.o
CC drivers/gpu/drm/i915/display/intel_acpi.o
CC drivers/gpu/drm/i915/display/intel_opregion.o
CC [M] drivers/gpu/drm/xe/i915-display/intel_pipe_crc.o
CC drivers/gpu/drm/i915/display/intel_display_debugfs.o
CC drivers/gpu/drm/i915/display/intel_display_debugfs_params.o
CC drivers/gpu/drm/i915/display/intel_pipe_crc.o
CC drivers/gpu/drm/i915/display/dvo_ch7017.o
CC drivers/gpu/drm/i915/display/dvo_ch7xxx.o
CC drivers/gpu/drm/i915/display/dvo_ivch.o
CC drivers/gpu/drm/i915/display/dvo_ns2501.o
CC drivers/gpu/drm/i915/display/dvo_sil164.o
CC drivers/gpu/drm/i915/display/dvo_tfp410.o
CC drivers/gpu/drm/i915/display/g4x_dp.o
CC drivers/gpu/drm/i915/display/g4x_hdmi.o
CC drivers/gpu/drm/i915/display/icl_dsi.o
CC drivers/gpu/drm/i915/display/intel_backlight.o
CC drivers/gpu/drm/i915/display/intel_crt.o
CC drivers/gpu/drm/i915/display/intel_cx0_phy.o
CC drivers/gpu/drm/i915/display/intel_ddi.o
CC drivers/gpu/drm/i915/display/intel_ddi_buf_trans.o
CC drivers/gpu/drm/i915/display/intel_display_device.o
CC drivers/gpu/drm/i915/display/intel_display_trace.o
CC drivers/gpu/drm/i915/display/intel_dkl_phy.o
CC drivers/gpu/drm/i915/display/intel_dp.o
CC drivers/gpu/drm/i915/display/intel_dp_aux.o
CC drivers/gpu/drm/i915/display/intel_dp_aux_backlight.o
CC drivers/gpu/drm/i915/display/intel_dp_hdcp.o
CC drivers/gpu/drm/i915/display/intel_dp_link_training.o
CC drivers/gpu/drm/i915/display/intel_dp_mst.o
CC drivers/gpu/drm/i915/display/intel_dp_test.o
CC drivers/gpu/drm/i915/display/intel_dsi.o
CC drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.o
CC drivers/gpu/drm/i915/display/intel_dsi_vbt.o
CC drivers/gpu/drm/i915/display/intel_dvo.o
CC drivers/gpu/drm/i915/display/intel_encoder.o
CC drivers/gpu/drm/i915/display/intel_gmbus.o
CC drivers/gpu/drm/i915/display/intel_hdmi.o
CC drivers/gpu/drm/i915/display/intel_lspcon.o
CC drivers/gpu/drm/i915/display/intel_lvds.o
CC drivers/gpu/drm/i915/display/intel_panel.o
CC drivers/gpu/drm/i915/display/intel_pfit.o
CC drivers/gpu/drm/i915/display/intel_pps.o
CC drivers/gpu/drm/i915/display/intel_qp_tables.o
CC drivers/gpu/drm/i915/display/intel_sdvo.o
CC drivers/gpu/drm/i915/display/intel_snps_hdmi_pll.o
CC drivers/gpu/drm/i915/display/intel_snps_phy.o
CC drivers/gpu/drm/i915/display/intel_tv.o
CC drivers/gpu/drm/i915/display/intel_vdsc.o
CC drivers/gpu/drm/i915/display/intel_vrr.o
CC drivers/gpu/drm/i915/display/vlv_dsi.o
CC drivers/gpu/drm/i915/display/vlv_dsi_pll.o
CC drivers/gpu/drm/i915/i915_perf.o
CC drivers/gpu/drm/i915/pxp/intel_pxp.o
CC drivers/gpu/drm/i915/pxp/intel_pxp_huc.o
CC drivers/gpu/drm/i915/pxp/intel_pxp_tee.o
CC drivers/gpu/drm/i915/i915_gpu_error.o
CC drivers/gpu/drm/i915/i915_vgpu.o
LD [M] drivers/gpu/drm/xe/xe.o
AR drivers/gpu/drm/i915/built-in.a
AR drivers/gpu/drm/built-in.a
AR drivers/gpu/built-in.a
AR drivers/built-in.a
AR built-in.a
AR vmlinux.a
LD vmlinux.o
OBJCOPY modules.builtin.modinfo
GEN modules.builtin
MODPOST Module.symvers
CC .vmlinux.export.o
CC [M] fs/efivarfs/efivarfs.mod.o
CC [M] .module-common.o
CC [M] drivers/gpu/drm/drm_exec.mod.o
CC [M] drivers/gpu/drm/drm_gpuvm.mod.o
CC [M] drivers/gpu/drm/drm_suballoc_helper.mod.o
CC [M] drivers/gpu/drm/drm_ttm_helper.mod.o
CC [M] drivers/gpu/drm/scheduler/gpu-sched.mod.o
CC [M] drivers/gpu/drm/xe/xe.mod.o
CC [M] drivers/thermal/intel/x86_pkg_temp_thermal.mod.o
CC [M] net/netfilter/nf_log_syslog.mod.o
CC [M] net/netfilter/xt_mark.mod.o
CC [M] net/netfilter/xt_nat.mod.o
CC [M] net/netfilter/xt_LOG.mod.o
CC [M] net/netfilter/xt_MASQUERADE.mod.o
CC [M] net/netfilter/xt_addrtype.mod.o
CC [M] net/ipv4/netfilter/iptable_nat.mod.o
LD [M] fs/efivarfs/efivarfs.ko
LD [M] drivers/gpu/drm/drm_ttm_helper.ko
LD [M] drivers/gpu/drm/drm_exec.ko
LD [M] drivers/gpu/drm/scheduler/gpu-sched.ko
LD [M] drivers/gpu/drm/drm_gpuvm.ko
LD [M] net/netfilter/nf_log_syslog.ko
LD [M] net/netfilter/xt_mark.ko
LD [M] net/ipv4/netfilter/iptable_nat.ko
LD [M] net/netfilter/xt_addrtype.ko
LD [M] drivers/thermal/intel/x86_pkg_temp_thermal.ko
LD [M] net/netfilter/xt_MASQUERADE.ko
LD [M] drivers/gpu/drm/drm_suballoc_helper.ko
LD [M] drivers/gpu/drm/xe/xe.ko
LD [M] net/netfilter/xt_LOG.ko
LD [M] net/netfilter/xt_nat.ko
UPD include/generated/utsversion.h
CC init/version-timestamp.o
KSYMS .tmp_vmlinux0.kallsyms.S
AS .tmp_vmlinux0.kallsyms.o
LD .tmp_vmlinux1
NM .tmp_vmlinux1.syms
KSYMS .tmp_vmlinux1.kallsyms.S
AS .tmp_vmlinux1.kallsyms.o
LD .tmp_vmlinux2
NM .tmp_vmlinux2.syms
KSYMS .tmp_vmlinux2.kallsyms.S
AS .tmp_vmlinux2.kallsyms.o
LD vmlinux
NM System.map
SORTTAB vmlinux
RELOCS arch/x86/boot/compressed/vmlinux.relocs
RSTRIP vmlinux
CC arch/x86/boot/a20.o
AS arch/x86/boot/bioscall.o
CC arch/x86/boot/cmdline.o
AS arch/x86/boot/copy.o
HOSTCC arch/x86/boot/mkcpustr
CC arch/x86/boot/cpuflags.o
CC arch/x86/boot/cpucheck.o
CC arch/x86/boot/early_serial_console.o
CC arch/x86/boot/edd.o
CC arch/x86/boot/main.o
CC arch/x86/boot/memory.o
CC arch/x86/boot/pm.o
AS arch/x86/boot/pmjump.o
CC arch/x86/boot/printf.o
CC arch/x86/boot/regs.o
CC arch/x86/boot/string.o
CC arch/x86/boot/tty.o
CC arch/x86/boot/video.o
CC arch/x86/boot/video-mode.o
CC arch/x86/boot/version.o
CC arch/x86/boot/video-vga.o
CC arch/x86/boot/video-vesa.o
CC arch/x86/boot/video-bios.o
HOSTCC arch/x86/boot/tools/build
CPUSTR arch/x86/boot/cpustr.h
CC arch/x86/boot/cpu.o
LDS arch/x86/boot/compressed/vmlinux.lds
AS arch/x86/boot/compressed/kernel_info.o
AS arch/x86/boot/compressed/head_32.o
VOFFSET arch/x86/boot/compressed/../voffset.h
CC arch/x86/boot/compressed/string.o
CC arch/x86/boot/compressed/cmdline.o
CC arch/x86/boot/compressed/error.o
OBJCOPY arch/x86/boot/compressed/vmlinux.bin
HOSTCC arch/x86/boot/compressed/mkpiggy
CC arch/x86/boot/compressed/cpuflags.o
CC arch/x86/boot/compressed/early_serial_console.o
CC arch/x86/boot/compressed/kaslr.o
CC arch/x86/boot/compressed/acpi.o
CC arch/x86/boot/compressed/efi.o
GZIP arch/x86/boot/compressed/vmlinux.bin.gz
CC arch/x86/boot/compressed/misc.o
MKPIGGY arch/x86/boot/compressed/piggy.S
AS arch/x86/boot/compressed/piggy.o
LD arch/x86/boot/compressed/vmlinux
ZOFFSET arch/x86/boot/zoffset.h
OBJCOPY arch/x86/boot/vmlinux.bin
AS arch/x86/boot/header.o
LD arch/x86/boot/setup.elf
OBJCOPY arch/x86/boot/setup.bin
BUILD arch/x86/boot/bzImage
Kernel: arch/x86/boot/bzImage is ready (#1)
run-parts: executing /workspace/ci/hooks/20-kernel-doc
+ SRC_DIR=/workspace/kernel
+ cd /workspace/kernel
+ find drivers/gpu/drm/xe/ -name '*.[ch]' -not -path 'drivers/gpu/drm/xe/display/*'
+ xargs ./scripts/kernel-doc -Werror -none include/uapi/drm/xe_drm.h
All hooks done
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✗ CI.checksparse: warning for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (7 preceding siblings ...)
2025-03-11 18:59 ` ✓ CI.Hooks: " Patchwork
@ 2025-03-11 19:01 ` Patchwork
2025-03-11 19:22 ` ✓ Xe.CI.BAT: success " Patchwork
` (2 subsequent siblings)
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 19:01 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
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 f8df428b3850ed87a1e2f3b12b6025328d8a6373
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:1978:24: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/display/intel_display_types.h:1978:24: warning: unreplaced symbol '<noident>'
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✓ Xe.CI.BAT: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (8 preceding siblings ...)
2025-03-11 19:01 ` ✗ CI.checksparse: warning " Patchwork
@ 2025-03-11 19:22 ` Patchwork
2025-03-12 10:50 ` ✗ Xe.CI.Full: failure " Patchwork
2025-03-13 14:40 ` [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
11 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-03-11 19:22 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 1541 bytes --]
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : success
== Summary ==
CI Bug Log - changes from xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373_BAT -> xe-pw-144440v5_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (10 -> 9)
------------------------------
Missing (1): bat-adlp-vm
Known issues
------------
Here are the changes found in xe-pw-144440v5_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@xe_exec_basic@twice-userptr-rebind:
- bat-adlp-vf: [PASS][1] -> [ABORT][2] ([Intel XE#4491])
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/bat-adlp-vf/igt@xe_exec_basic@twice-userptr-rebind.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/bat-adlp-vf/igt@xe_exec_basic@twice-userptr-rebind.html
[Intel XE#4491]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4491
Build changes
-------------
* Linux: xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373 -> xe-pw-144440v5
IGT_8270: 49751c5c11723262ec66e564c76503f74a9fa831 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373: f8df428b3850ed87a1e2f3b12b6025328d8a6373
xe-pw-144440v5: 144440v5
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/index.html
[-- Attachment #2: Type: text/html, Size: 2106 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* ✗ Xe.CI.Full: failure for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (9 preceding siblings ...)
2025-03-11 19:22 ` ✓ Xe.CI.BAT: success " Patchwork
@ 2025-03-12 10:50 ` Patchwork
2025-03-13 14:02 ` Gustavo Sousa
2025-03-13 14:40 ` [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
11 siblings, 1 reply; 18+ messages in thread
From: Patchwork @ 2025-03-12 10:50 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 60391 bytes --]
== Series Details ==
Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
URL : https://patchwork.freedesktop.org/series/144440/
State : failure
== Summary ==
CI Bug Log - changes from xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373_full -> xe-pw-144440v5_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with xe-pw-144440v5_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in xe-pw-144440v5_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (4 -> 4)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in xe-pw-144440v5_full:
### IGT changes ###
#### Possible regressions ####
* igt@kms_hdr@static-toggle-suspend:
- shard-dg2-set2: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_hdr@static-toggle-suspend.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_hdr@static-toggle-suspend@pipe-a-hdmi-a-2:
- shard-dg2-set2: NOTRUN -> [INCOMPLETE][3]
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_hdr@static-toggle-suspend@pipe-a-hdmi-a-2.html
* igt@xe_oa@buffer-size:
- shard-bmg: [PASS][4] -> [FAIL][5]
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@xe_oa@buffer-size.html
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_oa@buffer-size.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* {igt@xe_oa@buffer-size@rcs-0-128k}:
- shard-bmg: NOTRUN -> [FAIL][6]
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_oa@buffer-size@rcs-0-128k.html
New tests
---------
New tests have been introduced between xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373_full and xe-pw-144440v5_full:
### New IGT tests (5) ###
* igt@kms_cursor_edge_walk@128x128-right-edge@pipe-c-edp-1:
- Statuses : 1 pass(s)
- Exec time: [4.32] s
* igt@kms_cursor_edge_walk@256x256-right-edge@pipe-c-edp-1:
- Statuses : 1 pass(s)
- Exec time: [4.30] s
* igt@kms_cursor_edge_walk@256x256-top-bottom@pipe-c-edp-1:
- Statuses : 1 pass(s)
- Exec time: [4.29] s
* igt@kms_cursor_edge_walk@256x256-top-edge@pipe-c-edp-1:
- Statuses : 1 pass(s)
- Exec time: [4.25] s
* igt@kms_cursor_edge_walk@64x64-top-bottom@pipe-c-edp-1:
- Statuses : 1 pass(s)
- Exec time: [4.34] s
Known issues
------------
Here are the changes found in xe-pw-144440v5_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
- shard-adlp: [PASS][7] -> [FAIL][8] ([Intel XE#3908]) +1 other test fail
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-adlp-2/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-adlp-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-90:
- shard-dg2-set2: NOTRUN -> [SKIP][9] ([Intel XE#316])
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_big_fb@4-tiled-16bpp-rotate-90.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-90:
- shard-bmg: NOTRUN -> [SKIP][10] ([Intel XE#2327]) +4 other tests skip
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_big_fb@4-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-adlp: [PASS][11] -> [DMESG-FAIL][12] ([Intel XE#4330])
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-adlp-2/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-adlp-2/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
* igt@kms_big_fb@y-tiled-addfb-size-overflow:
- shard-bmg: NOTRUN -> [SKIP][13] ([Intel XE#610])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_big_fb@y-tiled-addfb-size-overflow.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#1124]) +13 other tests skip
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_bw@linear-tiling-3-displays-3840x2160p:
- shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#367]) +1 other test skip
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_bw@linear-tiling-3-displays-3840x2160p.html
* igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc@pipe-c-dp-2:
- shard-dg2-set2: NOTRUN -> [SKIP][16] ([Intel XE#787]) +110 other tests skip
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc@pipe-c-dp-2.html
* igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
- shard-dg2-set2: NOTRUN -> [SKIP][17] ([Intel XE#2907])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc:
- shard-bmg: NOTRUN -> [SKIP][18] ([Intel XE#3432]) +2 other tests skip
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html
* igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs@pipe-d-dp-4:
- shard-dg2-set2: NOTRUN -> [SKIP][19] ([Intel XE#455] / [Intel XE#787]) +21 other tests skip
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs@pipe-d-dp-4.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
- shard-bmg: NOTRUN -> [SKIP][20] ([Intel XE#2887]) +16 other tests skip
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2:
- shard-bmg: NOTRUN -> [SKIP][21] ([Intel XE#2652] / [Intel XE#787]) +17 other tests skip
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2.html
* igt@kms_chamelium_color@ctm-0-50:
- shard-bmg: NOTRUN -> [SKIP][22] ([Intel XE#2325]) +1 other test skip
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_chamelium_color@ctm-0-50.html
* igt@kms_chamelium_edid@dp-edid-change-during-hibernate:
- shard-bmg: NOTRUN -> [SKIP][23] ([Intel XE#2252]) +12 other tests skip
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_chamelium_edid@dp-edid-change-during-hibernate.html
* igt@kms_chamelium_hpd@hdmi-hpd-for-each-pipe:
- shard-dg2-set2: NOTRUN -> [SKIP][24] ([Intel XE#373])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_chamelium_hpd@hdmi-hpd-for-each-pipe.html
* igt@kms_content_protection@atomic:
- shard-bmg: NOTRUN -> [FAIL][25] ([Intel XE#1178]) +1 other test fail
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_content_protection@atomic.html
- shard-dg2-set2: NOTRUN -> [FAIL][26] ([Intel XE#1178]) +1 other test fail
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_content_protection@atomic.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#2390])
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@mei-interface:
- shard-bmg: NOTRUN -> [SKIP][28] ([Intel XE#2341])
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@uevent@pipe-a-dp-2:
- shard-bmg: NOTRUN -> [FAIL][29] ([Intel XE#1188])
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_content_protection@uevent@pipe-a-dp-2.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-bmg: NOTRUN -> [SKIP][30] ([Intel XE#2321]) +2 other tests skip
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-sliding-256x85:
- shard-bmg: NOTRUN -> [SKIP][31] ([Intel XE#2320]) +7 other tests skip
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_cursor_crc@cursor-sliding-256x85.html
* igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
- shard-dg2-set2: [PASS][32] -> [SKIP][33] ([Intel XE#309]) +5 other tests skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-433/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
- shard-bmg: NOTRUN -> [SKIP][34] ([Intel XE#2291]) +2 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
- shard-bmg: [PASS][35] -> [SKIP][36] ([Intel XE#2291]) +1 other test skip
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-bmg: NOTRUN -> [SKIP][37] ([Intel XE#2286])
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_display_modes@extended-mode-basic:
- shard-bmg: NOTRUN -> [SKIP][38] ([Intel XE#4302])
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_display_modes@extended-mode-basic.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
- shard-dg2-set2: NOTRUN -> [SKIP][39] ([Intel XE#4494])
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html
* igt@kms_dp_link_training@uhbr-mst:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#4354])
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_dp_link_training@uhbr-mst.html
* igt@kms_dsc@dsc-basic:
- shard-bmg: NOTRUN -> [SKIP][41] ([Intel XE#2244])
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_dsc@dsc-basic.html
* igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests:
- shard-bmg: NOTRUN -> [SKIP][42] ([Intel XE#4422]) +2 other tests skip
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html
* igt@kms_fbcon_fbt@fbc:
- shard-bmg: NOTRUN -> [SKIP][43] ([Intel XE#4156])
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_fbcon_fbt@fbc.html
* igt@kms_feature_discovery@psr1:
- shard-bmg: NOTRUN -> [SKIP][44] ([Intel XE#2374])
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-flip-vs-expired-vblank@ab-dp2-hdmi-a3:
- shard-bmg: [PASS][45] -> [FAIL][46] ([Intel XE#3321]) +3 other tests fail
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@kms_flip@2x-flip-vs-expired-vblank@ab-dp2-hdmi-a3.html
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_flip@2x-flip-vs-expired-vblank@ab-dp2-hdmi-a3.html
* igt@kms_flip@2x-flip-vs-expired-vblank@cd-hdmi-a2-dp2:
- shard-dg2-set2: NOTRUN -> [FAIL][47] ([Intel XE#301]) +1 other test fail
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_flip@2x-flip-vs-expired-vblank@cd-hdmi-a2-dp2.html
* igt@kms_flip@2x-flip-vs-modeset-vs-hang:
- shard-bmg: NOTRUN -> [SKIP][48] ([Intel XE#2316]) +5 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_flip@2x-flip-vs-modeset-vs-hang.html
* igt@kms_flip@2x-flip-vs-panning-vs-hang:
- shard-dg2-set2: [PASS][49] -> [SKIP][50] ([Intel XE#310]) +1 other test skip
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-433/igt@kms_flip@2x-flip-vs-panning-vs-hang.html
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_flip@2x-flip-vs-panning-vs-hang.html
* igt@kms_flip@2x-plain-flip:
- shard-bmg: [PASS][51] -> [SKIP][52] ([Intel XE#2316]) +1 other test skip
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_flip@2x-plain-flip.html
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_flip@2x-plain-flip.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@d-dp4:
- shard-dg2-set2: [PASS][53] -> [FAIL][54] ([Intel XE#301]) +3 other tests fail
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank-interruptible@d-dp4.html
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank-interruptible@d-dp4.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling:
- shard-bmg: NOTRUN -> [SKIP][55] ([Intel XE#2293] / [Intel XE#2380]) +4 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode:
- shard-adlp: [PASS][56] -> [DMESG-WARN][57] ([Intel XE#4173]) +7 other tests dmesg-warn
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-adlp-9/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode.html
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-adlp-4/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode:
- shard-bmg: NOTRUN -> [SKIP][58] ([Intel XE#2293]) +4 other tests skip
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render:
- shard-bmg: NOTRUN -> [SKIP][59] ([Intel XE#2312]) +30 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt:
- shard-bmg: NOTRUN -> [SKIP][60] ([Intel XE#2311]) +23 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][61] ([Intel XE#4141]) +13 other tests skip
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff:
- shard-dg2-set2: [PASS][62] -> [SKIP][63] ([Intel XE#656]) +5 other tests skip
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-466/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][64] ([Intel XE#2352])
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][65] ([Intel XE#2313]) +25 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-move:
- shard-dg2-set2: NOTRUN -> [SKIP][66] ([Intel XE#653]) +2 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-move.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-dg2-set2: [PASS][67] -> [SKIP][68] ([Intel XE#4328])
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-433/igt@kms_joiner@basic-force-big-joiner.html
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-bmg: NOTRUN -> [SKIP][69] ([Intel XE#2927]) +1 other test skip
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-force-ultra-joiner:
- shard-bmg: NOTRUN -> [SKIP][70] ([Intel XE#2934])
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html
* igt@kms_plane_cursor@primary@pipe-a-hdmi-a-2-size-256:
- shard-dg2-set2: NOTRUN -> [FAIL][71] ([Intel XE#616]) +2 other tests fail
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_plane_cursor@primary@pipe-a-hdmi-a-2-size-256.html
* igt@kms_plane_lowres@tiling-y:
- shard-bmg: NOTRUN -> [SKIP][72] ([Intel XE#2393])
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_plane_lowres@tiling-y.html
* igt@kms_plane_scaling@2x-scaler-multi-pipe:
- shard-bmg: [PASS][73] -> [SKIP][74] ([Intel XE#2571])
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_plane_scaling@2x-scaler-multi-pipe.html
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_plane_scaling@2x-scaler-multi-pipe.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format:
- shard-dg2-set2: NOTRUN -> [SKIP][75] ([Intel XE#2763] / [Intel XE#455]) +1 other test skip
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-b:
- shard-dg2-set2: NOTRUN -> [SKIP][76] ([Intel XE#2763]) +2 other tests skip
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-b.html
* igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-b:
- shard-bmg: NOTRUN -> [SKIP][77] ([Intel XE#2763]) +29 other tests skip
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-b.html
* igt@kms_pm_backlight@fade-with-dpms:
- shard-bmg: NOTRUN -> [SKIP][78] ([Intel XE#870])
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_pm_backlight@fade-with-dpms.html
- shard-dg2-set2: NOTRUN -> [SKIP][79] ([Intel XE#870])
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_pm_backlight@fade-with-dpms.html
* igt@kms_pm_dc@dc5-retention-flops:
- shard-bmg: NOTRUN -> [SKIP][80] ([Intel XE#3309])
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_pm_dc@dc5-retention-flops.html
* igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-dg2-set2: [PASS][81] -> [SKIP][82] ([Intel XE#836])
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-435/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp-stress-no-wait:
- shard-bmg: NOTRUN -> [SKIP][83] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#836])
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html
* igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf:
- shard-dg2-set2: NOTRUN -> [SKIP][84] ([Intel XE#1489])
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area:
- shard-bmg: NOTRUN -> [SKIP][85] ([Intel XE#1489]) +10 other tests skip
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area.html
* igt@kms_psr2_su@page_flip-nv12:
- shard-bmg: NOTRUN -> [SKIP][86] ([Intel XE#2387])
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr@fbc-pr-cursor-blt:
- shard-bmg: NOTRUN -> [SKIP][87] ([Intel XE#2234] / [Intel XE#2850]) +20 other tests skip
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_psr@fbc-pr-cursor-blt.html
* igt@kms_psr@psr-no-drrs:
- shard-dg2-set2: NOTRUN -> [SKIP][88] ([Intel XE#2850] / [Intel XE#929])
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_psr@psr-no-drrs.html
* igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
- shard-bmg: NOTRUN -> [SKIP][89] ([Intel XE#3414] / [Intel XE#3904])
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
* igt@kms_setmode@invalid-clone-single-crtc:
- shard-bmg: NOTRUN -> [SKIP][90] ([Intel XE#1435])
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_setmode@invalid-clone-single-crtc.html
* igt@kms_tiled_display@basic-test-pattern-with-chamelium:
- shard-bmg: NOTRUN -> [SKIP][91] ([Intel XE#2426])
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
* igt@kms_vblank@ts-continuation-dpms-suspend:
- shard-adlp: [PASS][92] -> [DMESG-WARN][93] ([Intel XE#2953] / [Intel XE#4173]) +1 other test dmesg-warn
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-adlp-8/igt@kms_vblank@ts-continuation-dpms-suspend.html
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-adlp-9/igt@kms_vblank@ts-continuation-dpms-suspend.html
* igt@kms_vrr@seamless-rr-switch-vrr:
- shard-bmg: NOTRUN -> [SKIP][94] ([Intel XE#1499]) +1 other test skip
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_vrr@seamless-rr-switch-vrr.html
* igt@kms_writeback@writeback-invalid-parameters:
- shard-bmg: NOTRUN -> [SKIP][95] ([Intel XE#756]) +1 other test skip
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_writeback@writeback-invalid-parameters.html
- shard-dg2-set2: NOTRUN -> [SKIP][96] ([Intel XE#756])
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_writeback@writeback-invalid-parameters.html
* igt@xe_create@multigpu-create-massive-size:
- shard-bmg: NOTRUN -> [SKIP][97] ([Intel XE#2504])
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_create@multigpu-create-massive-size.html
* igt@xe_eu_stall@unprivileged-access:
- shard-dg2-set2: NOTRUN -> [SKIP][98] ([Intel XE#4497])
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@xe_eu_stall@unprivileged-access.html
* igt@xe_eudebug@basic-vm-bind-ufence-reconnect:
- shard-bmg: NOTRUN -> [SKIP][99] ([Intel XE#2905] / [Intel XE#3889])
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_eudebug@basic-vm-bind-ufence-reconnect.html
* igt@xe_eudebug@discovery-empty:
- shard-bmg: NOTRUN -> [SKIP][100] ([Intel XE#2905]) +10 other tests skip
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_eudebug@discovery-empty.html
* igt@xe_eudebug@discovery-empty-clients:
- shard-dg2-set2: NOTRUN -> [SKIP][101] ([Intel XE#2905])
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@xe_eudebug@discovery-empty-clients.html
* igt@xe_exec_basic@multigpu-no-exec-null-defer-bind:
- shard-dg2-set2: [PASS][102] -> [SKIP][103] ([Intel XE#1392]) +4 other tests skip
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@xe_exec_basic@multigpu-no-exec-null-defer-bind.html
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-null-defer-bind.html
* igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][104] ([Intel XE#2322]) +12 other tests skip
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_fault_mode@once-userptr:
- shard-dg2-set2: NOTRUN -> [SKIP][105] ([Intel XE#288]) +2 other tests skip
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@xe_exec_fault_mode@once-userptr.html
* igt@xe_live_ktest@xe_eudebug:
- shard-bmg: NOTRUN -> [SKIP][106] ([Intel XE#2833])
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_live_ktest@xe_eudebug.html
- shard-dg2-set2: NOTRUN -> [SKIP][107] ([Intel XE#455])
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@xe_live_ktest@xe_eudebug.html
* igt@xe_media_fill@media-fill:
- shard-bmg: NOTRUN -> [SKIP][108] ([Intel XE#2459] / [Intel XE#2596])
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_media_fill@media-fill.html
* igt@xe_pat@pat-index-xelp:
- shard-bmg: NOTRUN -> [SKIP][109] ([Intel XE#2245])
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_pat@pat-index-xelp.html
* igt@xe_pm@s3-d3cold-basic-exec:
- shard-bmg: NOTRUN -> [SKIP][110] ([Intel XE#2284]) +2 other tests skip
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_pm@s3-d3cold-basic-exec.html
* igt@xe_pm@s4-mocs:
- shard-bmg: NOTRUN -> [ABORT][111] ([Intel XE#4268]) +2 other tests abort
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_pm@s4-mocs.html
* igt@xe_query@multigpu-query-invalid-extension:
- shard-bmg: NOTRUN -> [SKIP][112] ([Intel XE#944]) +3 other tests skip
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_query@multigpu-query-invalid-extension.html
- shard-dg2-set2: NOTRUN -> [SKIP][113] ([Intel XE#944])
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@xe_query@multigpu-query-invalid-extension.html
* igt@xe_sriov_auto_provisioning@selfconfig-reprovision-reduce-numvfs:
- shard-bmg: NOTRUN -> [SKIP][114] ([Intel XE#4130])
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_sriov_auto_provisioning@selfconfig-reprovision-reduce-numvfs.html
* igt@xe_sriov_flr@flr-twice:
- shard-bmg: NOTRUN -> [SKIP][115] ([Intel XE#4273])
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_sriov_flr@flr-twice.html
#### Possible fixes ####
* igt@kms_async_flips@alternate-sync-async-flip-atomic:
- shard-bmg: [FAIL][116] ([Intel XE#3701] / [Intel XE#3718] / [Intel XE#827]) -> [PASS][117]
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic.html
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic.html
* igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-c-dp-2:
- shard-bmg: [FAIL][118] ([Intel XE#3701] / [Intel XE#827]) -> [PASS][119]
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-c-dp-2.html
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-c-dp-2.html
* igt@kms_async_flips@invalid-async-flip@pipe-b-hdmi-a-1:
- shard-adlp: [DMESG-WARN][120] ([Intel XE#4330]) -> [PASS][121] +1 other test pass
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-adlp-9/igt@kms_async_flips@invalid-async-flip@pipe-b-hdmi-a-1.html
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-adlp-4/igt@kms_async_flips@invalid-async-flip@pipe-b-hdmi-a-1.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs:
- shard-dg2-set2: [INCOMPLETE][122] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#3124]) -> [PASS][123] +1 other test pass
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-463/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions:
- shard-dg2-set2: [SKIP][124] ([Intel XE#309]) -> [PASS][125]
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html
* igt@kms_flip@2x-dpms-vs-vblank-race:
- shard-dg2-set2: [SKIP][126] ([Intel XE#310]) -> [PASS][127] +7 other tests pass
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_flip@2x-dpms-vs-vblank-race.html
[127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_flip@2x-dpms-vs-vblank-race.html
* igt@kms_flip@2x-flip-vs-wf_vblank-interruptible:
- shard-bmg: [SKIP][128] ([Intel XE#2316]) -> [PASS][129] +2 other tests pass
[128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html
[129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html
* igt@kms_flip@basic-flip-vs-wf_vblank:
- shard-bmg: [FAIL][130] ([Intel XE#2882]) -> [PASS][131]
[130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_flip@basic-flip-vs-wf_vblank.html
[131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_flip@basic-flip-vs-wf_vblank.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp4:
- shard-dg2-set2: [FAIL][132] ([Intel XE#301]) -> [PASS][133] +1 other test pass
[132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp4.html
[133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp4.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1:
- shard-lnl: [FAIL][134] ([Intel XE#301]) -> [PASS][135] +1 other test pass
[134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-lnl-5/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
[135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move:
- shard-dg2-set2: [SKIP][136] ([Intel XE#656]) -> [PASS][137] +5 other tests pass
[136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move.html
[137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-bmg: [SKIP][138] ([Intel XE#3012]) -> [PASS][139]
[138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@kms_joiner@basic-force-big-joiner.html
[139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_joiner@basic-force-big-joiner.html
* igt@xe_exec_basic@multigpu-once-basic-defer-mmap:
- shard-dg2-set2: [SKIP][140] ([Intel XE#1392]) -> [PASS][141] +2 other tests pass
[140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-432/igt@xe_exec_basic@multigpu-once-basic-defer-mmap.html
[141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-435/igt@xe_exec_basic@multigpu-once-basic-defer-mmap.html
* igt@xe_module_load@load:
- shard-bmg: ([PASS][142], [PASS][143], [PASS][144], [PASS][145], [PASS][146], [PASS][147], [PASS][148], [PASS][149], [PASS][150], [PASS][151], [PASS][152], [PASS][153], [PASS][154], [PASS][155], [PASS][156], [PASS][157], [PASS][158], [SKIP][159], [PASS][160], [PASS][161]) ([Intel XE#2457]) -> ([PASS][162], [PASS][163], [PASS][164], [PASS][165], [PASS][166], [PASS][167], [PASS][168], [PASS][169], [PASS][170], [PASS][171], [PASS][172], [PASS][173], [PASS][174], [PASS][175], [PASS][176], [PASS][177], [PASS][178], [PASS][179], [PASS][180])
[142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@xe_module_load@load.html
[143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@xe_module_load@load.html
[144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-4/igt@xe_module_load@load.html
[145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-4/igt@xe_module_load@load.html
[146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-4/igt@xe_module_load@load.html
[147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@xe_module_load@load.html
[148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@xe_module_load@load.html
[149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@xe_module_load@load.html
[150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@xe_module_load@load.html
[151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-8/igt@xe_module_load@load.html
[152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-8/igt@xe_module_load@load.html
[153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-8/igt@xe_module_load@load.html
[154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@xe_module_load@load.html
[155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@xe_module_load@load.html
[156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@xe_module_load@load.html
[157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@xe_module_load@load.html
[158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-4/igt@xe_module_load@load.html
[159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-4/igt@xe_module_load@load.html
[160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@xe_module_load@load.html
[161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-4/igt@xe_module_load@load.html
[162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_module_load@load.html
[163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_module_load@load.html
[164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_module_load@load.html
[165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_module_load@load.html
[166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_module_load@load.html
[167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_module_load@load.html
[168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_module_load@load.html
[169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-2/igt@xe_module_load@load.html
[170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_module_load@load.html
[171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_module_load@load.html
[172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_module_load@load.html
[173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@xe_module_load@load.html
[174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_module_load@load.html
[175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_module_load@load.html
[176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-7/igt@xe_module_load@load.html
[177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_module_load@load.html
[178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_module_load@load.html
[179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_module_load@load.html
[180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@xe_module_load@load.html
#### Warnings ####
* igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6:
- shard-dg2-set2: [SKIP][181] ([Intel XE#455] / [Intel XE#787]) -> [SKIP][182] ([Intel XE#787]) +8 other tests skip
[181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6.html
[182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6.html
* igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs-cc@pipe-d-hdmi-a-6:
- shard-dg2-set2: [SKIP][183] ([Intel XE#787]) -> [SKIP][184] ([Intel XE#455] / [Intel XE#787]) +10 other tests skip
[183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-433/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs-cc@pipe-d-hdmi-a-6.html
[184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs-cc@pipe-d-hdmi-a-6.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-dg2-set2: [SKIP][185] ([Intel XE#4418]) -> [SKIP][186] ([Intel XE#4440])
[185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-435/igt@kms_cdclk@mode-transition-all-outputs.html
[186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_content_protection@srm:
- shard-dg2-set2: [FAIL][187] ([Intel XE#1178]) -> [SKIP][188] ([Intel XE#455])
[187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-435/igt@kms_content_protection@srm.html
[188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_content_protection@srm.html
* igt@kms_content_protection@uevent:
- shard-dg2-set2: [FAIL][189] ([Intel XE#1188]) -> [SKIP][190] ([Intel XE#455])
[189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-433/igt@kms_content_protection@uevent.html
[190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_content_protection@uevent.html
- shard-bmg: [SKIP][191] ([Intel XE#2341]) -> [FAIL][192] ([Intel XE#1188])
[191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@kms_content_protection@uevent.html
[192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-4/igt@kms_content_protection@uevent.html
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
- shard-bmg: [FAIL][193] ([Intel XE#3321]) -> [SKIP][194] ([Intel XE#2316])
[193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
[194]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
* igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-mmap-wc:
- shard-bmg: [SKIP][195] ([Intel XE#2312]) -> [SKIP][196] ([Intel XE#2311]) +2 other tests skip
[195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-mmap-wc.html
[196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-msflip-blt:
- shard-bmg: [SKIP][197] ([Intel XE#2311]) -> [SKIP][198] ([Intel XE#2312]) +5 other tests skip
[197]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-msflip-blt.html
[198]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt:
- shard-bmg: [SKIP][199] ([Intel XE#2312]) -> [SKIP][200] ([Intel XE#4141]) +1 other test skip
[199]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt.html
[200]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff:
- shard-bmg: [SKIP][201] ([Intel XE#4141]) -> [SKIP][202] ([Intel XE#2312]) +1 other test skip
[201]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html
[202]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-mmap-wc:
- shard-dg2-set2: [SKIP][203] ([Intel XE#651]) -> [SKIP][204] ([Intel XE#656]) +13 other tests skip
[203]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-435/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
[204]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt:
- shard-dg2-set2: [SKIP][205] ([Intel XE#656]) -> [SKIP][206] ([Intel XE#651]) +12 other tests skip
[205]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt.html
[206]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-rte:
- shard-bmg: [SKIP][207] ([Intel XE#2312]) -> [SKIP][208] ([Intel XE#2313]) +2 other tests skip
[207]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-rte.html
[208]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@kms_frontbuffer_tracking@fbcpsr-2p-rte.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-blt:
- shard-dg2-set2: [SKIP][209] ([Intel XE#653]) -> [SKIP][210] ([Intel XE#656]) +14 other tests skip
[209]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-blt.html
[210]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-render:
- shard-bmg: [SKIP][211] ([Intel XE#2313]) -> [SKIP][212] ([Intel XE#2312]) +6 other tests skip
[211]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-render.html
[212]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-msflip-blt:
- shard-dg2-set2: [SKIP][213] ([Intel XE#656]) -> [SKIP][214] ([Intel XE#653]) +12 other tests skip
[213]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-msflip-blt.html
[214]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-msflip-blt.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-dg2-set2: [ABORT][215] ([Intel XE#4540]) -> [ABORT][216] ([Intel XE#2705] / [Intel XE#4540])
[215]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-466/igt@kms_plane_scaling@intel-max-src-size.html
[216]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-6:
- shard-dg2-set2: [ABORT][217] ([Intel XE#4540]) -> [ABORT][218] ([Intel XE#4502] / [Intel XE#4540])
[217]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-466/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-6.html
[218]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-6.html
* igt@kms_tiled_display@basic-test-pattern-with-chamelium:
- shard-dg2-set2: [SKIP][219] ([Intel XE#362]) -> [SKIP][220] ([Intel XE#1500])
[219]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
[220]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-466/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
* igt@testdisplay:
- shard-dg2-set2: [ABORT][221] ([Intel XE#2705]) -> [ABORT][222] ([Intel XE#2705] / [Intel XE#4540])
[221]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-466/igt@testdisplay.html
[222]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-464/igt@testdisplay.html
* igt@xe_pm@s4-vm-bind-unbind-all:
- shard-adlp: [ABORT][223] ([Intel XE#4268]) -> [ABORT][224] ([Intel XE#2953] / [Intel XE#4268])
[223]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-adlp-2/igt@xe_pm@s4-vm-bind-unbind-all.html
[224]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-adlp-1/igt@xe_pm@s4-vm-bind-unbind-all.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[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#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
[Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
[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#1500]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1500
[Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2244]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2244
[Intel XE#2245]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2245
[Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
[Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
[Intel XE#2286]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2286
[Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
[Intel XE#2293]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2293
[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#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
[Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
[Intel XE#2321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2321
[Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
[Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
[Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
[Intel XE#2341]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2341
[Intel XE#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
[Intel XE#2374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2374
[Intel XE#2380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2380
[Intel XE#2387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2387
[Intel XE#2390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2390
[Intel XE#2393]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2393
[Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
[Intel XE#2457]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2457
[Intel XE#2459]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2459
[Intel XE#2504]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2504
[Intel XE#2571]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2571
[Intel XE#2596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2596
[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#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
[Intel XE#2833]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2833
[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#2882]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2882
[Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
[Intel XE#2905]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2905
[Intel XE#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907
[Intel XE#2927]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2927
[Intel XE#2934]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2934
[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#3012]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3012
[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#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
[Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
[Intel XE#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
[Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
[Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
[Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
[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#3701]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3701
[Intel XE#3718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3718
[Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
[Intel XE#3889]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3889
[Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#3908]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3908
[Intel XE#4130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4130
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4156]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4156
[Intel XE#4173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4173
[Intel XE#4268]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4268
[Intel XE#4273]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4273
[Intel XE#4302]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4302
[Intel XE#4328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4328
[Intel XE#4330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4330
[Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
[Intel XE#4418]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4418
[Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
[Intel XE#4440]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4440
[Intel XE#4494]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4494
[Intel XE#4497]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4497
[Intel XE#4502]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4502
[Intel XE#4540]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4540
[Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
[Intel XE#610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/610
[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#756]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/756
[Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
[Intel XE#827]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/827
[Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836
[Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
[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-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373 -> xe-pw-144440v5
IGT_8270: 49751c5c11723262ec66e564c76503f74a9fa831 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373: f8df428b3850ed87a1e2f3b12b6025328d8a6373
xe-pw-144440v5: 144440v5
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/index.html
[-- Attachment #2: Type: text/html, Size: 69685 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display
2025-03-11 18:04 ` Jani Nikula
@ 2025-03-13 13:10 ` Gustavo Sousa
0 siblings, 0 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-13 13:10 UTC (permalink / raw)
To: Jani Nikula, intel-gfx, intel-xe; +Cc: Matt Roper, Ville Syrjälä
Quoting Jani Nikula (2025-03-11 15:04:04-03:00)
>On Tue, 11 Mar 2025, Gustavo Sousa <gustavo.sousa@intel.com> wrote:
>> diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
>> index 048be287224774110d94fe2944daa580d8dc20a6..6f805af32926d3608929655de97699747d7a5798 100644
>> --- a/drivers/gpu/drm/i915/display/intel_bw.c
>> +++ b/drivers/gpu/drm/i915/display/intel_bw.c
>> @@ -39,14 +39,15 @@ struct intel_qgv_info {
>> u8 deinterleave;
>> };
>>
>> -static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> +static int dg1_mchbar_read_qgv_point_info(struct intel_display *display,
>> struct intel_qgv_point *sp,
>> int point)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>
>This is reviewed already, and I'm not requesting changes, but for future
>reference, I tend to keep the dev_priv name where it's already being
>used. We don't really benefit from dev_priv -> i915 conversions anymore
>in display, they'll all need to be removed eventually, but this causes
>extra churn where none is required.
Yep. Makes sense. I'll keep that in mind in eventual future conversions
that I work on.
Thanks.
--
Gustavo Sousa
>
>> u32 dclk_ratio, dclk_reference;
>> u32 val;
>>
>> - val = intel_uncore_read(&dev_priv->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
>> + val = intel_uncore_read(&i915->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
>
>Like above.
>
>
>BR,
>Jani.
>
>
>--
>Jani Nikula, Intel
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: ✗ Xe.CI.Full: failure for drm/i915/xe3lpd: Update bandwidth parameters (rev5)
2025-03-12 10:50 ` ✗ Xe.CI.Full: failure " Patchwork
@ 2025-03-13 14:02 ` Gustavo Sousa
0 siblings, 0 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-13 14:02 UTC (permalink / raw)
To: I915-ci-infra, intel-xe; +Cc: intel-xe
Quoting Patchwork (2025-03-12 07:50:06-03:00)
>== Series Details ==
>
>Series: drm/i915/xe3lpd: Update bandwidth parameters (rev5)
>URL : https://patchwork.freedesktop.org/series/144440/
>State : failure
>
>== Summary ==
>
>CI Bug Log - changes from xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373_full -> xe-pw-144440v5_full
>====================================================
>
>Summary
>-------
>
> **FAILURE**
>
> Serious unknown changes coming with xe-pw-144440v5_full absolutely need to be
> verified manually.
>
> If you think the reported changes have nothing to do with the changes
> introduced in xe-pw-144440v5_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
> to document this new failure mode, which will reduce false positives in CI.
>
>
>
>Participating hosts (4 -> 4)
>------------------------------
>
> No changes in participating hosts
>
>Possible new issues
>-------------------
>
> Here are the unknown changes that may have been introduced in xe-pw-144440v5_full:
>
>### IGT changes ###
>
>#### Possible regressions ####
>
> * igt@kms_hdr@static-toggle-suspend:
> - shard-dg2-set2: [PASS][1] -> [INCOMPLETE][2]
> [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-dg2-464/igt@kms_hdr@static-toggle-suspend.html
> [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_hdr@static-toggle-suspend.html
>
> * igt@kms_hdr@static-toggle-suspend@pipe-a-hdmi-a-2:
> - shard-dg2-set2: NOTRUN -> [INCOMPLETE][3]
> [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-dg2-432/igt@kms_hdr@static-toggle-suspend@pipe-a-hdmi-a-2.html
We do not seem to have much useful information from the logs for this
result. Furthermore, we have seen multiple INCOMPLETE results for tests
that exercise suspend in DG2.
This series, which only effectively changes behavior for Xe3_LPD, should
not be related to this failure.
>
> * igt@xe_oa@buffer-size:
> - shard-bmg: [PASS][4] -> [FAIL][5]
> [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-2795-f8df428b3850ed87a1e2f3b12b6025328d8a6373/shard-bmg-7/igt@xe_oa@buffer-size.html
> [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-144440v5/shard-bmg-8/igt@xe_oa@buffer-size.html
This maps to https://gitlab.freedesktop.org/drm/xe/kernel/issues/4541.
--
Gustavo Sousa
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
` (10 preceding siblings ...)
2025-03-12 10:50 ` ✗ Xe.CI.Full: failure " Patchwork
@ 2025-03-13 14:40 ` Gustavo Sousa
11 siblings, 0 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-13 14:40 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: Matt Roper, Ville Syrjälä, Jani Nikula
Quoting Gustavo Sousa (2025-03-11 14:04:49-03:00)
>Bandwidth parameters for Xe3_LPD have been updated with respect to
>previous display releases. Encode them into xe3lpd_sa_info and use that
>new struct.
>
>Since we are touching intel_bw.c, also take the opportunity convert it
>to intel_display.
>
>Changes in v2:
> - Fix typo in patch #2.
>
>Changes in v3:
>- Squash patches #1 and #2 into a single one and modify it to convert
> intel_bw.c internally to intel_display (new patch subject is
> "drm/i915/display: Convert intel_bw.c internally to intel_display").
>- Add a new patch #2 to convert intel_bw.c externally to intel_display.
>- Link to v2: https://lore.kernel.org/r/20250217153550.43909-1-gustavo.sousa@intel.com
>
>Changes in v4:
>- Prefer intel_uncore_read() for MCHBAR registers. (Ville)
>- Link to v3: https://lore.kernel.org/r/20250307-xe3lpd-bandwidth-update-v3-0-58bbe81f65bf@intel.com
>
>Changes in v5:
>- Do not include intel_de.h anymore. (Ville)
>- Link to v4: https://lore.kernel.org/r/20250310-xe3lpd-bandwidth-update-v4-0-4191964b034d@intel.com
Pushed to drm-intel-next. Thank you all for the reviews/feedback!
--
Gustavo Sousa
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display
2025-03-11 17:04 ` [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display Gustavo Sousa
2025-03-11 18:04 ` Jani Nikula
@ 2025-03-14 21:17 ` Matt Roper
2025-03-14 21:29 ` Gustavo Sousa
1 sibling, 1 reply; 18+ messages in thread
From: Matt Roper @ 2025-03-14 21:17 UTC (permalink / raw)
To: Gustavo Sousa; +Cc: intel-gfx, intel-xe, Ville Syrjälä, Jani Nikula
On Tue, Mar 11, 2025 at 02:04:50PM -0300, Gustavo Sousa wrote:
> Update intel_bw.c internally use intel_display. Conversion of the public
> interface will come as a follow-up.
>
> v2:
> - Prefer intel_uncore_read() for MCHBAR registers. (Ville)
> v3:
> - Remove the unnecessary inclusion of intel_de.h after changes from
> v2. (Ville)
>
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_bw.c | 416 +++++++++++++++++---------------
> 1 file changed, 217 insertions(+), 199 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
> index 048be287224774110d94fe2944daa580d8dc20a6..6f805af32926d3608929655de97699747d7a5798 100644
> --- a/drivers/gpu/drm/i915/display/intel_bw.c
> +++ b/drivers/gpu/drm/i915/display/intel_bw.c
> @@ -39,14 +39,15 @@ struct intel_qgv_info {
> u8 deinterleave;
> };
>
> -static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
> +static int dg1_mchbar_read_qgv_point_info(struct intel_display *display,
> struct intel_qgv_point *sp,
> int point)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> u32 dclk_ratio, dclk_reference;
> u32 val;
>
> - val = intel_uncore_read(&dev_priv->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
> + val = intel_uncore_read(&i915->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
> dclk_ratio = REG_FIELD_GET(DG1_QCLK_RATIO_MASK, val);
> if (val & DG1_QCLK_REFERENCE)
> dclk_reference = 6; /* 6 * 16.666 MHz = 100 MHz */
> @@ -54,18 +55,18 @@ static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
> dclk_reference = 8; /* 8 * 16.666 MHz = 133 MHz */
> sp->dclk = DIV_ROUND_UP((16667 * dclk_ratio * dclk_reference) + 500, 1000);
>
> - val = intel_uncore_read(&dev_priv->uncore, SKL_MC_BIOS_DATA_0_0_0_MCHBAR_PCU);
> + val = intel_uncore_read(&i915->uncore, SKL_MC_BIOS_DATA_0_0_0_MCHBAR_PCU);
> if (val & DG1_GEAR_TYPE)
> sp->dclk *= 2;
>
> if (sp->dclk == 0)
> return -EINVAL;
>
> - val = intel_uncore_read(&dev_priv->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR);
> + val = intel_uncore_read(&i915->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR);
> sp->t_rp = REG_FIELD_GET(DG1_DRAM_T_RP_MASK, val);
> sp->t_rdpre = REG_FIELD_GET(DG1_DRAM_T_RDPRE_MASK, val);
>
> - val = intel_uncore_read(&dev_priv->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR_HIGH);
> + val = intel_uncore_read(&i915->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR_HIGH);
> sp->t_rcd = REG_FIELD_GET(DG1_DRAM_T_RCD_MASK, val);
> sp->t_ras = REG_FIELD_GET(DG1_DRAM_T_RAS_MASK, val);
>
> @@ -74,22 +75,23 @@ static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
> return 0;
> }
>
> -static int icl_pcode_read_qgv_point_info(struct drm_i915_private *dev_priv,
> +static int icl_pcode_read_qgv_point_info(struct intel_display *display,
> struct intel_qgv_point *sp,
> int point)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> u32 val = 0, val2 = 0;
> u16 dclk;
> int ret;
>
> - ret = snb_pcode_read(&dev_priv->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
> + ret = snb_pcode_read(&i915->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
> ICL_PCODE_MEM_SS_READ_QGV_POINT_INFO(point),
> &val, &val2);
> if (ret)
> return ret;
>
> dclk = val & 0xffff;
> - sp->dclk = DIV_ROUND_UP((16667 * dclk) + (DISPLAY_VER(dev_priv) >= 12 ? 500 : 0),
> + sp->dclk = DIV_ROUND_UP((16667 * dclk) + (DISPLAY_VER(display) >= 12 ? 500 : 0),
> 1000);
> sp->t_rp = (val & 0xff0000) >> 16;
> sp->t_rcd = (val & 0xff000000) >> 24;
> @@ -102,14 +104,15 @@ static int icl_pcode_read_qgv_point_info(struct drm_i915_private *dev_priv,
> return 0;
> }
>
> -static int adls_pcode_read_psf_gv_point_info(struct drm_i915_private *dev_priv,
> - struct intel_psf_gv_point *points)
> +static int adls_pcode_read_psf_gv_point_info(struct intel_display *display,
> + struct intel_psf_gv_point *points)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> u32 val = 0;
> int ret;
> int i;
>
> - ret = snb_pcode_read(&dev_priv->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
> + ret = snb_pcode_read(&i915->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
> ADL_PCODE_MEM_SS_READ_PSF_GV_INFO, &val, NULL);
> if (ret)
> return ret;
> @@ -122,10 +125,10 @@ static int adls_pcode_read_psf_gv_point_info(struct drm_i915_private *dev_priv,
> return 0;
> }
>
> -static u16 icl_qgv_points_mask(struct drm_i915_private *i915)
> +static u16 icl_qgv_points_mask(struct intel_display *display)
> {
> - unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
> + unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
> u16 qgv_points = 0, psf_points = 0;
>
> /*
> @@ -142,18 +145,19 @@ static u16 icl_qgv_points_mask(struct drm_i915_private *i915)
> return ICL_PCODE_REQ_QGV_PT(qgv_points) | ADLS_PCODE_REQ_PSF_PT(psf_points);
> }
>
> -static bool is_sagv_enabled(struct drm_i915_private *i915, u16 points_mask)
> +static bool is_sagv_enabled(struct intel_display *display, u16 points_mask)
> {
> - return !is_power_of_2(~points_mask & icl_qgv_points_mask(i915) &
> + return !is_power_of_2(~points_mask & icl_qgv_points_mask(display) &
> ICL_PCODE_REQ_QGV_PT_MASK);
> }
>
> int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
> u32 points_mask)
> {
> + struct intel_display *display = &dev_priv->display;
> int ret;
>
> - if (DISPLAY_VER(dev_priv) >= 14)
> + if (DISPLAY_VER(display) >= 14)
> return 0;
>
> /* bspec says to keep retrying for at least 1 ms */
> @@ -164,27 +168,28 @@ int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
> 1);
>
> if (ret < 0) {
> - drm_err(&dev_priv->drm,
> + drm_err(display->drm,
> "Failed to disable qgv points (0x%x) points: 0x%x\n",
> ret, points_mask);
> return ret;
> }
>
> - dev_priv->display.sagv.status = is_sagv_enabled(dev_priv, points_mask) ?
> + display->sagv.status = is_sagv_enabled(display, points_mask) ?
> I915_SAGV_ENABLED : I915_SAGV_DISABLED;
>
> return 0;
> }
>
> -static int mtl_read_qgv_point_info(struct drm_i915_private *dev_priv,
> +static int mtl_read_qgv_point_info(struct intel_display *display,
> struct intel_qgv_point *sp, int point)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> u32 val, val2;
> u16 dclk;
>
> - val = intel_uncore_read(&dev_priv->uncore,
> + val = intel_uncore_read(&i915->uncore,
I know it was suggested not to convert the MCHBAR registers since those
ones aren't technically display registers, but was it intentional to
also keep these MTL ones on intel_uncore? These are part of the display
IP itself. If these were just overlooked, we might want to send a
follow-up patch for those.
Matt
> MTL_MEM_SS_INFO_QGV_POINT_LOW(point));
> - val2 = intel_uncore_read(&dev_priv->uncore,
> + val2 = intel_uncore_read(&i915->uncore,
> MTL_MEM_SS_INFO_QGV_POINT_HIGH(point));
> dclk = REG_FIELD_GET(MTL_DCLK_MASK, val);
> sp->dclk = DIV_ROUND_CLOSEST(16667 * dclk, 1000);
> @@ -200,29 +205,30 @@ static int mtl_read_qgv_point_info(struct drm_i915_private *dev_priv,
> }
>
> static int
> -intel_read_qgv_point_info(struct drm_i915_private *dev_priv,
> +intel_read_qgv_point_info(struct intel_display *display,
> struct intel_qgv_point *sp,
> int point)
> {
> - if (DISPLAY_VER(dev_priv) >= 14)
> - return mtl_read_qgv_point_info(dev_priv, sp, point);
> - else if (IS_DG1(dev_priv))
> - return dg1_mchbar_read_qgv_point_info(dev_priv, sp, point);
> + if (DISPLAY_VER(display) >= 14)
> + return mtl_read_qgv_point_info(display, sp, point);
> + else if (display->platform.dg1)
> + return dg1_mchbar_read_qgv_point_info(display, sp, point);
> else
> - return icl_pcode_read_qgv_point_info(dev_priv, sp, point);
> + return icl_pcode_read_qgv_point_info(display, sp, point);
> }
>
> -static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
> +static int icl_get_qgv_points(struct intel_display *display,
> struct intel_qgv_info *qi,
> bool is_y_tile)
> {
> - const struct dram_info *dram_info = &dev_priv->dram_info;
> + struct drm_i915_private *i915 = to_i915(display->drm);
> + const struct dram_info *dram_info = &i915->dram_info;
> int i, ret;
>
> qi->num_points = dram_info->num_qgv_points;
> qi->num_psf_points = dram_info->num_psf_gv_points;
>
> - if (DISPLAY_VER(dev_priv) >= 14) {
> + if (DISPLAY_VER(display) >= 14) {
> switch (dram_info->type) {
> case INTEL_DRAM_DDR4:
> qi->t_bl = 4;
> @@ -250,7 +256,7 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
> MISSING_CASE(dram_info->type);
> return -EINVAL;
> }
> - } else if (DISPLAY_VER(dev_priv) >= 12) {
> + } else if (DISPLAY_VER(display) >= 12) {
> switch (dram_info->type) {
> case INTEL_DRAM_DDR4:
> qi->t_bl = is_y_tile ? 8 : 4;
> @@ -265,7 +271,7 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
> qi->deinterleave = is_y_tile ? 1 : 2;
> break;
> case INTEL_DRAM_LPDDR4:
> - if (IS_ROCKETLAKE(dev_priv)) {
> + if (display->platform.rocketlake) {
> qi->t_bl = 8;
> qi->max_numchannels = 4;
> qi->channel_width = 32;
> @@ -284,39 +290,39 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
> qi->max_numchannels = 1;
> break;
> }
> - } else if (DISPLAY_VER(dev_priv) == 11) {
> - qi->t_bl = dev_priv->dram_info.type == INTEL_DRAM_DDR4 ? 4 : 8;
> + } else if (DISPLAY_VER(display) == 11) {
> + qi->t_bl = dram_info->type == INTEL_DRAM_DDR4 ? 4 : 8;
> qi->max_numchannels = 1;
> }
>
> - if (drm_WARN_ON(&dev_priv->drm,
> + if (drm_WARN_ON(display->drm,
> qi->num_points > ARRAY_SIZE(qi->points)))
> qi->num_points = ARRAY_SIZE(qi->points);
>
> for (i = 0; i < qi->num_points; i++) {
> struct intel_qgv_point *sp = &qi->points[i];
>
> - ret = intel_read_qgv_point_info(dev_priv, sp, i);
> + ret = intel_read_qgv_point_info(display, sp, i);
> if (ret) {
> - drm_dbg_kms(&dev_priv->drm, "Could not read QGV %d info\n", i);
> + drm_dbg_kms(display->drm, "Could not read QGV %d info\n", i);
> return ret;
> }
>
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "QGV %d: DCLK=%d tRP=%d tRDPRE=%d tRAS=%d tRCD=%d tRC=%d\n",
> i, sp->dclk, sp->t_rp, sp->t_rdpre, sp->t_ras,
> sp->t_rcd, sp->t_rc);
> }
>
> if (qi->num_psf_points > 0) {
> - ret = adls_pcode_read_psf_gv_point_info(dev_priv, qi->psf_points);
> + ret = adls_pcode_read_psf_gv_point_info(display, qi->psf_points);
> if (ret) {
> - drm_err(&dev_priv->drm, "Failed to read PSF point data; PSF points will not be considered in bandwidth calculations.\n");
> + drm_err(display->drm, "Failed to read PSF point data; PSF points will not be considered in bandwidth calculations.\n");
> qi->num_psf_points = 0;
> }
>
> for (i = 0; i < qi->num_psf_points; i++)
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "PSF GV %d: CLK=%d \n",
> i, qi->psf_points[i].clk);
> }
> @@ -398,20 +404,21 @@ static const struct intel_sa_info xe2_hpd_sa_info = {
> /* Other values not used by simplified algorithm */
> };
>
> -static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel_sa_info *sa)
> +static int icl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> struct intel_qgv_info qi = {};
> bool is_y_tile = true; /* assume y tile may be used */
> - int num_channels = max_t(u8, 1, dev_priv->dram_info.num_channels);
> + int num_channels = max_t(u8, 1, i915->dram_info.num_channels);
> int ipqdepth, ipqdepthpch = 16;
> int dclk_max;
> int maxdebw;
> - int num_groups = ARRAY_SIZE(dev_priv->display.bw.max);
> + int num_groups = ARRAY_SIZE(display->bw.max);
> int i, ret;
>
> - ret = icl_get_qgv_points(dev_priv, &qi, is_y_tile);
> + ret = icl_get_qgv_points(display, &qi, is_y_tile);
> if (ret) {
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "Failed to get memory subsystem information, ignoring bandwidth limits");
> return ret;
> }
> @@ -422,7 +429,7 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> qi.deinterleave = DIV_ROUND_UP(num_channels, is_y_tile ? 4 : 2);
>
> for (i = 0; i < num_groups; i++) {
> - struct intel_bw_info *bi = &dev_priv->display.bw.max[i];
> + struct intel_bw_info *bi = &display->bw.max[i];
> int clpchgroup;
> int j;
>
> @@ -449,7 +456,7 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> bi->deratedbw[j] = min(maxdebw,
> bw * (100 - sa->derating) / 100);
>
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "BW%d / QGV %d: num_planes=%d deratedbw=%u\n",
> i, j, bi->num_planes, bi->deratedbw[j]);
> }
> @@ -460,44 +467,45 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> * as it will fail and pointless anyway.
> */
> if (qi.num_points == 1)
> - dev_priv->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
> + display->sagv.status = I915_SAGV_NOT_CONTROLLED;
> else
> - dev_priv->display.sagv.status = I915_SAGV_ENABLED;
> + display->sagv.status = I915_SAGV_ENABLED;
>
> return 0;
> }
>
> -static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel_sa_info *sa)
> +static int tgl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> struct intel_qgv_info qi = {};
> - const struct dram_info *dram_info = &dev_priv->dram_info;
> + const struct dram_info *dram_info = &i915->dram_info;
> bool is_y_tile = true; /* assume y tile may be used */
> - int num_channels = max_t(u8, 1, dev_priv->dram_info.num_channels);
> + int num_channels = max_t(u8, 1, dram_info->num_channels);
> int ipqdepth, ipqdepthpch = 16;
> int dclk_max;
> int maxdebw, peakbw;
> int clperchgroup;
> - int num_groups = ARRAY_SIZE(dev_priv->display.bw.max);
> + int num_groups = ARRAY_SIZE(display->bw.max);
> int i, ret;
>
> - ret = icl_get_qgv_points(dev_priv, &qi, is_y_tile);
> + ret = icl_get_qgv_points(display, &qi, is_y_tile);
> if (ret) {
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "Failed to get memory subsystem information, ignoring bandwidth limits");
> return ret;
> }
>
> - if (DISPLAY_VER(dev_priv) < 14 &&
> + if (DISPLAY_VER(display) < 14 &&
> (dram_info->type == INTEL_DRAM_LPDDR4 || dram_info->type == INTEL_DRAM_LPDDR5))
> num_channels *= 2;
>
> qi.deinterleave = qi.deinterleave ? : DIV_ROUND_UP(num_channels, is_y_tile ? 4 : 2);
>
> - if (num_channels < qi.max_numchannels && DISPLAY_VER(dev_priv) >= 12)
> + if (num_channels < qi.max_numchannels && DISPLAY_VER(display) >= 12)
> qi.deinterleave = max(DIV_ROUND_UP(qi.deinterleave, 2), 1);
>
> - if (DISPLAY_VER(dev_priv) >= 12 && num_channels > qi.max_numchannels)
> - drm_warn(&dev_priv->drm, "Number of channels exceeds max number of channels.");
> + if (DISPLAY_VER(display) >= 12 && num_channels > qi.max_numchannels)
> + drm_warn(display->drm, "Number of channels exceeds max number of channels.");
> if (qi.max_numchannels != 0)
> num_channels = min_t(u8, num_channels, qi.max_numchannels);
>
> @@ -514,7 +522,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> clperchgroup = 4 * DIV_ROUND_UP(8, num_channels) * qi.deinterleave;
>
> for (i = 0; i < num_groups; i++) {
> - struct intel_bw_info *bi = &dev_priv->display.bw.max[i];
> + struct intel_bw_info *bi = &display->bw.max[i];
> struct intel_bw_info *bi_next;
> int clpchgroup;
> int j;
> @@ -522,7 +530,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> clpchgroup = (sa->deburst * qi.deinterleave / num_channels) << i;
>
> if (i < num_groups - 1) {
> - bi_next = &dev_priv->display.bw.max[i + 1];
> + bi_next = &display->bw.max[i + 1];
>
> if (clpchgroup < clperchgroup)
> bi_next->num_planes = (ipqdepth - clpchgroup) /
> @@ -554,7 +562,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> num_channels *
> qi.channel_width, 8);
>
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "BW%d / QGV %d: num_planes=%d deratedbw=%u peakbw: %u\n",
> i, j, bi->num_planes, bi->deratedbw[j],
> bi->peakbw[j]);
> @@ -565,7 +573,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>
> bi->psf_bw[j] = adl_calc_psf_bw(sp->clk);
>
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "BW%d / PSF GV %d: num_planes=%d bw=%u\n",
> i, j, bi->num_planes, bi->psf_bw[j]);
> }
> @@ -577,17 +585,17 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
> * as it will fail and pointless anyway.
> */
> if (qi.num_points == 1)
> - dev_priv->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
> + display->sagv.status = I915_SAGV_NOT_CONTROLLED;
> else
> - dev_priv->display.sagv.status = I915_SAGV_ENABLED;
> + display->sagv.status = I915_SAGV_ENABLED;
>
> return 0;
> }
>
> -static void dg2_get_bw_info(struct drm_i915_private *i915)
> +static void dg2_get_bw_info(struct intel_display *display)
> {
> - unsigned int deratedbw = IS_DG2_G11(i915) ? 38000 : 50000;
> - int num_groups = ARRAY_SIZE(i915->display.bw.max);
> + unsigned int deratedbw = display->platform.dg2_g11 ? 38000 : 50000;
> + int num_groups = ARRAY_SIZE(display->bw.max);
> int i;
>
> /*
> @@ -598,7 +606,7 @@ static void dg2_get_bw_info(struct drm_i915_private *i915)
> * whereas DG2-G11 platforms have 38 GB/s.
> */
> for (i = 0; i < num_groups; i++) {
> - struct intel_bw_info *bi = &i915->display.bw.max[i];
> + struct intel_bw_info *bi = &display->bw.max[i];
>
> bi->num_planes = 1;
> /* Need only one dummy QGV point per group */
> @@ -606,20 +614,21 @@ static void dg2_get_bw_info(struct drm_i915_private *i915)
> bi->deratedbw[0] = deratedbw;
> }
>
> - i915->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
> + display->sagv.status = I915_SAGV_NOT_CONTROLLED;
> }
>
> -static int xe2_hpd_get_bw_info(struct drm_i915_private *i915,
> +static int xe2_hpd_get_bw_info(struct intel_display *display,
> const struct intel_sa_info *sa)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> struct intel_qgv_info qi = {};
> int num_channels = i915->dram_info.num_channels;
> int peakbw, maxdebw;
> int ret, i;
>
> - ret = icl_get_qgv_points(i915, &qi, true);
> + ret = icl_get_qgv_points(display, &qi, true);
> if (ret) {
> - drm_dbg_kms(&i915->drm,
> + drm_dbg_kms(display->drm,
> "Failed to get memory subsystem information, ignoring bandwidth limits");
> return ret;
> }
> @@ -631,33 +640,33 @@ static int xe2_hpd_get_bw_info(struct drm_i915_private *i915,
> const struct intel_qgv_point *point = &qi.points[i];
> int bw = num_channels * (qi.channel_width / 8) * point->dclk;
>
> - i915->display.bw.max[0].deratedbw[i] =
> + display->bw.max[0].deratedbw[i] =
> min(maxdebw, (100 - sa->derating) * bw / 100);
> - i915->display.bw.max[0].peakbw[i] = bw;
> + display->bw.max[0].peakbw[i] = bw;
>
> - drm_dbg_kms(&i915->drm, "QGV %d: deratedbw=%u peakbw: %u\n",
> - i, i915->display.bw.max[0].deratedbw[i],
> - i915->display.bw.max[0].peakbw[i]);
> + drm_dbg_kms(display->drm, "QGV %d: deratedbw=%u peakbw: %u\n",
> + i, display->bw.max[0].deratedbw[i],
> + display->bw.max[0].peakbw[i]);
> }
>
> /* Bandwidth does not depend on # of planes; set all groups the same */
> - i915->display.bw.max[0].num_planes = 1;
> - i915->display.bw.max[0].num_qgv_points = qi.num_points;
> - for (i = 1; i < ARRAY_SIZE(i915->display.bw.max); i++)
> - memcpy(&i915->display.bw.max[i], &i915->display.bw.max[0],
> - sizeof(i915->display.bw.max[0]));
> + display->bw.max[0].num_planes = 1;
> + display->bw.max[0].num_qgv_points = qi.num_points;
> + for (i = 1; i < ARRAY_SIZE(display->bw.max); i++)
> + memcpy(&display->bw.max[i], &display->bw.max[0],
> + sizeof(display->bw.max[0]));
>
> /*
> * Xe2_HPD should always have exactly two QGV points representing
> * battery and plugged-in operation.
> */
> - drm_WARN_ON(&i915->drm, qi.num_points != 2);
> - i915->display.sagv.status = I915_SAGV_ENABLED;
> + drm_WARN_ON(display->drm, qi.num_points != 2);
> + display->sagv.status = I915_SAGV_ENABLED;
>
> return 0;
> }
>
> -static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
> +static unsigned int icl_max_bw_index(struct intel_display *display,
> int num_planes, int qgv_point)
> {
> int i;
> @@ -667,9 +676,9 @@ static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
> */
> num_planes = max(1, num_planes);
>
> - for (i = 0; i < ARRAY_SIZE(dev_priv->display.bw.max); i++) {
> + for (i = 0; i < ARRAY_SIZE(display->bw.max); i++) {
> const struct intel_bw_info *bi =
> - &dev_priv->display.bw.max[i];
> + &display->bw.max[i];
>
> /*
> * Pcode will not expose all QGV points when
> @@ -685,7 +694,7 @@ static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
> return UINT_MAX;
> }
>
> -static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
> +static unsigned int tgl_max_bw_index(struct intel_display *display,
> int num_planes, int qgv_point)
> {
> int i;
> @@ -695,9 +704,9 @@ static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
> */
> num_planes = max(1, num_planes);
>
> - for (i = ARRAY_SIZE(dev_priv->display.bw.max) - 1; i >= 0; i--) {
> + for (i = ARRAY_SIZE(display->bw.max) - 1; i >= 0; i--) {
> const struct intel_bw_info *bi =
> - &dev_priv->display.bw.max[i];
> + &display->bw.max[i];
>
> /*
> * Pcode will not expose all QGV points when
> @@ -713,52 +722,54 @@ static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
> return 0;
> }
>
> -static unsigned int adl_psf_bw(struct drm_i915_private *dev_priv,
> +static unsigned int adl_psf_bw(struct intel_display *display,
> int psf_gv_point)
> {
> const struct intel_bw_info *bi =
> - &dev_priv->display.bw.max[0];
> + &display->bw.max[0];
>
> return bi->psf_bw[psf_gv_point];
> }
>
> -static unsigned int icl_qgv_bw(struct drm_i915_private *i915,
> +static unsigned int icl_qgv_bw(struct intel_display *display,
> int num_active_planes, int qgv_point)
> {
> unsigned int idx;
>
> - if (DISPLAY_VER(i915) >= 12)
> - idx = tgl_max_bw_index(i915, num_active_planes, qgv_point);
> + if (DISPLAY_VER(display) >= 12)
> + idx = tgl_max_bw_index(display, num_active_planes, qgv_point);
> else
> - idx = icl_max_bw_index(i915, num_active_planes, qgv_point);
> + idx = icl_max_bw_index(display, num_active_planes, qgv_point);
>
> - if (idx >= ARRAY_SIZE(i915->display.bw.max))
> + if (idx >= ARRAY_SIZE(display->bw.max))
> return 0;
>
> - return i915->display.bw.max[idx].deratedbw[qgv_point];
> + return display->bw.max[idx].deratedbw[qgv_point];
> }
>
> void intel_bw_init_hw(struct drm_i915_private *dev_priv)
> {
> - if (!HAS_DISPLAY(dev_priv))
> + struct intel_display *display = &dev_priv->display;
> +
> + if (!HAS_DISPLAY(display))
> return;
>
> - if (DISPLAY_VERx100(dev_priv) >= 1401 && IS_DGFX(dev_priv))
> - xe2_hpd_get_bw_info(dev_priv, &xe2_hpd_sa_info);
> - else if (DISPLAY_VER(dev_priv) >= 14)
> - tgl_get_bw_info(dev_priv, &mtl_sa_info);
> - else if (IS_DG2(dev_priv))
> - dg2_get_bw_info(dev_priv);
> - else if (IS_ALDERLAKE_P(dev_priv))
> - tgl_get_bw_info(dev_priv, &adlp_sa_info);
> - else if (IS_ALDERLAKE_S(dev_priv))
> - tgl_get_bw_info(dev_priv, &adls_sa_info);
> - else if (IS_ROCKETLAKE(dev_priv))
> - tgl_get_bw_info(dev_priv, &rkl_sa_info);
> - else if (DISPLAY_VER(dev_priv) == 12)
> - tgl_get_bw_info(dev_priv, &tgl_sa_info);
> - else if (DISPLAY_VER(dev_priv) == 11)
> - icl_get_bw_info(dev_priv, &icl_sa_info);
> + if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
> + xe2_hpd_get_bw_info(display, &xe2_hpd_sa_info);
> + else if (DISPLAY_VER(display) >= 14)
> + tgl_get_bw_info(display, &mtl_sa_info);
> + else if (display->platform.dg2)
> + dg2_get_bw_info(display);
> + else if (display->platform.alderlake_p)
> + tgl_get_bw_info(display, &adlp_sa_info);
> + else if (display->platform.alderlake_s)
> + tgl_get_bw_info(display, &adls_sa_info);
> + else if (display->platform.rocketlake)
> + tgl_get_bw_info(display, &rkl_sa_info);
> + else if (DISPLAY_VER(display) == 12)
> + tgl_get_bw_info(display, &tgl_sa_info);
> + else if (DISPLAY_VER(display) == 11)
> + icl_get_bw_info(display, &icl_sa_info);
> }
>
> static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_state *crtc_state)
> @@ -772,8 +783,8 @@ static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_stat
>
> static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_state)
> {
> + struct intel_display *display = to_intel_display(crtc_state);
> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> unsigned int data_rate = 0;
> enum plane_id plane_id;
>
> @@ -787,7 +798,7 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_
>
> data_rate += crtc_state->data_rate[plane_id];
>
> - if (DISPLAY_VER(i915) < 11)
> + if (DISPLAY_VER(display) < 11)
> data_rate += crtc_state->data_rate_y[plane_id];
> }
>
> @@ -797,37 +808,37 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_
> /* "Maximum Pipe Read Bandwidth" */
> static int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state)
> {
> - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> + struct intel_display *display = to_intel_display(crtc_state);
>
> - if (DISPLAY_VER(i915) < 12)
> + if (DISPLAY_VER(display) < 12)
> return 0;
>
> return DIV_ROUND_UP_ULL(mul_u32_u32(intel_bw_crtc_data_rate(crtc_state), 10), 512);
> }
>
> -static unsigned int intel_bw_num_active_planes(struct drm_i915_private *dev_priv,
> +static unsigned int intel_bw_num_active_planes(struct intel_display *display,
> const struct intel_bw_state *bw_state)
> {
> unsigned int num_active_planes = 0;
> enum pipe pipe;
>
> - for_each_pipe(dev_priv, pipe)
> + for_each_pipe(display, pipe)
> num_active_planes += bw_state->num_active_planes[pipe];
>
> return num_active_planes;
> }
>
> -static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv,
> +static unsigned int intel_bw_data_rate(struct intel_display *display,
> const struct intel_bw_state *bw_state)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> unsigned int data_rate = 0;
> enum pipe pipe;
>
> - for_each_pipe(dev_priv, pipe)
> + for_each_pipe(display, pipe)
> data_rate += bw_state->data_rate[pipe];
>
> - if (DISPLAY_VER(dev_priv) >= 13 && i915_vtd_active(dev_priv))
> + if (DISPLAY_VER(display) >= 13 && i915_vtd_active(i915))
> data_rate = DIV_ROUND_UP(data_rate * 105, 100);
>
> return data_rate;
> @@ -836,10 +847,10 @@ static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv,
> struct intel_bw_state *
> intel_atomic_get_old_bw_state(struct intel_atomic_state *state)
> {
> - struct drm_i915_private *dev_priv = to_i915(state->base.dev);
> + struct intel_display *display = to_intel_display(state);
> struct intel_global_state *bw_state;
>
> - bw_state = intel_atomic_get_old_global_obj_state(state, &dev_priv->display.bw.obj);
> + bw_state = intel_atomic_get_old_global_obj_state(state, &display->bw.obj);
>
> return to_intel_bw_state(bw_state);
> }
> @@ -847,10 +858,10 @@ intel_atomic_get_old_bw_state(struct intel_atomic_state *state)
> struct intel_bw_state *
> intel_atomic_get_new_bw_state(struct intel_atomic_state *state)
> {
> - struct drm_i915_private *dev_priv = to_i915(state->base.dev);
> + struct intel_display *display = to_intel_display(state);
> struct intel_global_state *bw_state;
>
> - bw_state = intel_atomic_get_new_global_obj_state(state, &dev_priv->display.bw.obj);
> + bw_state = intel_atomic_get_new_global_obj_state(state, &display->bw.obj);
>
> return to_intel_bw_state(bw_state);
> }
> @@ -858,27 +869,27 @@ intel_atomic_get_new_bw_state(struct intel_atomic_state *state)
> struct intel_bw_state *
> intel_atomic_get_bw_state(struct intel_atomic_state *state)
> {
> - struct drm_i915_private *dev_priv = to_i915(state->base.dev);
> + struct intel_display *display = to_intel_display(state);
> struct intel_global_state *bw_state;
>
> - bw_state = intel_atomic_get_global_obj_state(state, &dev_priv->display.bw.obj);
> + bw_state = intel_atomic_get_global_obj_state(state, &display->bw.obj);
> if (IS_ERR(bw_state))
> return ERR_CAST(bw_state);
>
> return to_intel_bw_state(bw_state);
> }
>
> -static unsigned int icl_max_bw_qgv_point_mask(struct drm_i915_private *i915,
> +static unsigned int icl_max_bw_qgv_point_mask(struct intel_display *display,
> int num_active_planes)
> {
> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
> unsigned int max_bw_point = 0;
> unsigned int max_bw = 0;
> int i;
>
> for (i = 0; i < num_qgv_points; i++) {
> unsigned int max_data_rate =
> - icl_qgv_bw(i915, num_active_planes, i);
> + icl_qgv_bw(display, num_active_planes, i);
>
> /*
> * We need to know which qgv point gives us
> @@ -897,23 +908,23 @@ static unsigned int icl_max_bw_qgv_point_mask(struct drm_i915_private *i915,
> return max_bw_point;
> }
>
> -static u16 icl_prepare_qgv_points_mask(struct drm_i915_private *i915,
> +static u16 icl_prepare_qgv_points_mask(struct intel_display *display,
> unsigned int qgv_points,
> unsigned int psf_points)
> {
> return ~(ICL_PCODE_REQ_QGV_PT(qgv_points) |
> - ADLS_PCODE_REQ_PSF_PT(psf_points)) & icl_qgv_points_mask(i915);
> + ADLS_PCODE_REQ_PSF_PT(psf_points)) & icl_qgv_points_mask(display);
> }
>
> -static unsigned int icl_max_bw_psf_gv_point_mask(struct drm_i915_private *i915)
> +static unsigned int icl_max_bw_psf_gv_point_mask(struct intel_display *display)
> {
> - unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
> + unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
> unsigned int max_bw_point_mask = 0;
> unsigned int max_bw = 0;
> int i;
>
> for (i = 0; i < num_psf_gv_points; i++) {
> - unsigned int max_data_rate = adl_psf_bw(i915, i);
> + unsigned int max_data_rate = adl_psf_bw(display, i);
>
> if (max_data_rate > max_bw) {
> max_bw_point_mask = BIT(i);
> @@ -926,29 +937,31 @@ static unsigned int icl_max_bw_psf_gv_point_mask(struct drm_i915_private *i915)
> return max_bw_point_mask;
> }
>
> -static void icl_force_disable_sagv(struct drm_i915_private *i915,
> +static void icl_force_disable_sagv(struct intel_display *display,
> struct intel_bw_state *bw_state)
> {
> - unsigned int qgv_points = icl_max_bw_qgv_point_mask(i915, 0);
> - unsigned int psf_points = icl_max_bw_psf_gv_point_mask(i915);
> + struct drm_i915_private *i915 = to_i915(display->drm);
> + unsigned int qgv_points = icl_max_bw_qgv_point_mask(display, 0);
> + unsigned int psf_points = icl_max_bw_psf_gv_point_mask(display);
>
> - bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(i915,
> + bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(display,
> qgv_points,
> psf_points);
>
> - drm_dbg_kms(&i915->drm, "Forcing SAGV disable: mask 0x%x\n",
> + drm_dbg_kms(display->drm, "Forcing SAGV disable: mask 0x%x\n",
> bw_state->qgv_points_mask);
>
> icl_pcode_restrict_qgv_points(i915, bw_state->qgv_points_mask);
> }
>
> -static int mtl_find_qgv_points(struct drm_i915_private *i915,
> +static int mtl_find_qgv_points(struct intel_display *display,
> unsigned int data_rate,
> unsigned int num_active_planes,
> struct intel_bw_state *new_bw_state)
> {
> + struct drm_i915_private *i915 = to_i915(display->drm);
> unsigned int best_rate = UINT_MAX;
> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
> unsigned int qgv_peak_bw = 0;
> int i;
> int ret;
> @@ -964,7 +977,7 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
> */
> if (!intel_can_enable_sagv(i915, new_bw_state)) {
> new_bw_state->qgv_point_peakbw = U16_MAX;
> - drm_dbg_kms(&i915->drm, "No SAGV, use UINT_MAX as peak bw.");
> + drm_dbg_kms(display->drm, "No SAGV, use UINT_MAX as peak bw.");
> return 0;
> }
>
> @@ -974,27 +987,27 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
> */
> for (i = 0; i < num_qgv_points; i++) {
> unsigned int bw_index =
> - tgl_max_bw_index(i915, num_active_planes, i);
> + tgl_max_bw_index(display, num_active_planes, i);
> unsigned int max_data_rate;
>
> - if (bw_index >= ARRAY_SIZE(i915->display.bw.max))
> + if (bw_index >= ARRAY_SIZE(display->bw.max))
> continue;
>
> - max_data_rate = i915->display.bw.max[bw_index].deratedbw[i];
> + max_data_rate = display->bw.max[bw_index].deratedbw[i];
>
> if (max_data_rate < data_rate)
> continue;
>
> if (max_data_rate - data_rate < best_rate) {
> best_rate = max_data_rate - data_rate;
> - qgv_peak_bw = i915->display.bw.max[bw_index].peakbw[i];
> + qgv_peak_bw = display->bw.max[bw_index].peakbw[i];
> }
>
> - drm_dbg_kms(&i915->drm, "QGV point %d: max bw %d required %d qgv_peak_bw: %d\n",
> + drm_dbg_kms(display->drm, "QGV point %d: max bw %d required %d qgv_peak_bw: %d\n",
> i, max_data_rate, data_rate, qgv_peak_bw);
> }
>
> - drm_dbg_kms(&i915->drm, "Matching peaks QGV bw: %d for required data rate: %d\n",
> + drm_dbg_kms(display->drm, "Matching peaks QGV bw: %d for required data rate: %d\n",
> qgv_peak_bw, data_rate);
>
> /*
> @@ -1002,7 +1015,7 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
> * satisfying the required data rate is found
> */
> if (qgv_peak_bw == 0) {
> - drm_dbg_kms(&i915->drm, "No QGV points for bw %d for display configuration(%d active planes).\n",
> + drm_dbg_kms(display->drm, "No QGV points for bw %d for display configuration(%d active planes).\n",
> data_rate, num_active_planes);
> return -EINVAL;
> }
> @@ -1013,14 +1026,15 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
> return 0;
> }
>
> -static int icl_find_qgv_points(struct drm_i915_private *i915,
> +static int icl_find_qgv_points(struct intel_display *display,
> unsigned int data_rate,
> unsigned int num_active_planes,
> const struct intel_bw_state *old_bw_state,
> struct intel_bw_state *new_bw_state)
> {
> - unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
> + struct drm_i915_private *i915 = to_i915(display->drm);
> + unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
> u16 psf_points = 0;
> u16 qgv_points = 0;
> int i;
> @@ -1031,22 +1045,22 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
> return ret;
>
> for (i = 0; i < num_qgv_points; i++) {
> - unsigned int max_data_rate = icl_qgv_bw(i915,
> + unsigned int max_data_rate = icl_qgv_bw(display,
> num_active_planes, i);
> if (max_data_rate >= data_rate)
> qgv_points |= BIT(i);
>
> - drm_dbg_kms(&i915->drm, "QGV point %d: max bw %d required %d\n",
> + drm_dbg_kms(display->drm, "QGV point %d: max bw %d required %d\n",
> i, max_data_rate, data_rate);
> }
>
> for (i = 0; i < num_psf_gv_points; i++) {
> - unsigned int max_data_rate = adl_psf_bw(i915, i);
> + unsigned int max_data_rate = adl_psf_bw(display, i);
>
> if (max_data_rate >= data_rate)
> psf_points |= BIT(i);
>
> - drm_dbg_kms(&i915->drm, "PSF GV point %d: max bw %d"
> + drm_dbg_kms(display->drm, "PSF GV point %d: max bw %d"
> " required %d\n",
> i, max_data_rate, data_rate);
> }
> @@ -1057,14 +1071,14 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
> * reasons.
> */
> if (qgv_points == 0) {
> - drm_dbg_kms(&i915->drm, "No QGV points provide sufficient memory"
> + drm_dbg_kms(display->drm, "No QGV points provide sufficient memory"
> " bandwidth %d for display configuration(%d active planes).\n",
> data_rate, num_active_planes);
> return -EINVAL;
> }
>
> if (num_psf_gv_points > 0 && psf_points == 0) {
> - drm_dbg_kms(&i915->drm, "No PSF GV points provide sufficient memory"
> + drm_dbg_kms(display->drm, "No PSF GV points provide sufficient memory"
> " bandwidth %d for display configuration(%d active planes).\n",
> data_rate, num_active_planes);
> return -EINVAL;
> @@ -1076,8 +1090,8 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
> * cause.
> */
> if (!intel_can_enable_sagv(i915, new_bw_state)) {
> - qgv_points = icl_max_bw_qgv_point_mask(i915, num_active_planes);
> - drm_dbg_kms(&i915->drm, "No SAGV, using single QGV point mask 0x%x\n",
> + qgv_points = icl_max_bw_qgv_point_mask(display, num_active_planes);
> + drm_dbg_kms(display->drm, "No SAGV, using single QGV point mask 0x%x\n",
> qgv_points);
> }
>
> @@ -1085,7 +1099,7 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
> * We store the ones which need to be masked as that is what PCode
> * actually accepts as a parameter.
> */
> - new_bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(i915,
> + new_bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(display,
> qgv_points,
> psf_points);
> /*
> @@ -1101,38 +1115,38 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
> return 0;
> }
>
> -static int intel_bw_check_qgv_points(struct drm_i915_private *i915,
> +static int intel_bw_check_qgv_points(struct intel_display *display,
> const struct intel_bw_state *old_bw_state,
> struct intel_bw_state *new_bw_state)
> {
> - unsigned int data_rate = intel_bw_data_rate(i915, new_bw_state);
> + unsigned int data_rate = intel_bw_data_rate(display, new_bw_state);
> unsigned int num_active_planes =
> - intel_bw_num_active_planes(i915, new_bw_state);
> + intel_bw_num_active_planes(display, new_bw_state);
>
> data_rate = DIV_ROUND_UP(data_rate, 1000);
>
> - if (DISPLAY_VER(i915) >= 14)
> - return mtl_find_qgv_points(i915, data_rate, num_active_planes,
> + if (DISPLAY_VER(display) >= 14)
> + return mtl_find_qgv_points(display, data_rate, num_active_planes,
> new_bw_state);
> else
> - return icl_find_qgv_points(i915, data_rate, num_active_planes,
> + return icl_find_qgv_points(display, data_rate, num_active_planes,
> old_bw_state, new_bw_state);
> }
>
> -static bool intel_bw_state_changed(struct drm_i915_private *i915,
> +static bool intel_bw_state_changed(struct intel_display *display,
> const struct intel_bw_state *old_bw_state,
> const struct intel_bw_state *new_bw_state)
> {
> enum pipe pipe;
>
> - for_each_pipe(i915, pipe) {
> + for_each_pipe(display, pipe) {
> const struct intel_dbuf_bw *old_crtc_bw =
> &old_bw_state->dbuf_bw[pipe];
> const struct intel_dbuf_bw *new_crtc_bw =
> &new_bw_state->dbuf_bw[pipe];
> enum dbuf_slice slice;
>
> - for_each_dbuf_slice(i915, slice) {
> + for_each_dbuf_slice(display, slice) {
> if (old_crtc_bw->max_bw[slice] != new_crtc_bw->max_bw[slice] ||
> old_crtc_bw->active_planes[slice] != new_crtc_bw->active_planes[slice])
> return true;
> @@ -1151,7 +1165,8 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
> const struct skl_ddb_entry *ddb,
> unsigned int data_rate)
> {
> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> + struct intel_display *display = to_intel_display(crtc);
> + struct drm_i915_private *i915 = to_i915(display->drm);
> struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[crtc->pipe];
> unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(i915, ddb);
> enum dbuf_slice slice;
> @@ -1160,7 +1175,7 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
> * The arbiter can only really guarantee an
> * equal share of the total bw to each plane.
> */
> - for_each_dbuf_slice_in_mask(i915, slice, dbuf_mask) {
> + for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) {
> crtc_bw->max_bw[slice] = max(crtc_bw->max_bw[slice], data_rate);
> crtc_bw->active_planes[slice] |= BIT(plane_id);
> }
> @@ -1169,8 +1184,8 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
> static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
> const struct intel_crtc_state *crtc_state)
> {
> + struct intel_display *display = to_intel_display(crtc_state);
> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[crtc->pipe];
> enum plane_id plane_id;
>
> @@ -1191,7 +1206,7 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
> &crtc_state->wm.skl.plane_ddb[plane_id],
> crtc_state->data_rate[plane_id]);
>
> - if (DISPLAY_VER(i915) < 11)
> + if (DISPLAY_VER(display) < 11)
> skl_plane_calc_dbuf_bw(bw_state, crtc, plane_id,
> &crtc_state->wm.skl.plane_ddb_y[plane_id],
> crtc_state->data_rate[plane_id]);
> @@ -1200,13 +1215,13 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
>
> /* "Maximum Data Buffer Bandwidth" */
> static int
> -intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
> +intel_bw_dbuf_min_cdclk(struct intel_display *display,
> const struct intel_bw_state *bw_state)
> {
> unsigned int total_max_bw = 0;
> enum dbuf_slice slice;
>
> - for_each_dbuf_slice(i915, slice) {
> + for_each_dbuf_slice(display, slice) {
> int num_active_planes = 0;
> unsigned int max_bw = 0;
> enum pipe pipe;
> @@ -1215,7 +1230,7 @@ intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
> * The arbiter can only really guarantee an
> * equal share of the total bw to each plane.
> */
> - for_each_pipe(i915, pipe) {
> + for_each_pipe(display, pipe) {
> const struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[pipe];
>
> max_bw = max(crtc_bw->max_bw[slice], max_bw);
> @@ -1232,12 +1247,13 @@ intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
> int intel_bw_min_cdclk(struct drm_i915_private *i915,
> const struct intel_bw_state *bw_state)
> {
> + struct intel_display *display = &i915->display;
> enum pipe pipe;
> int min_cdclk;
>
> - min_cdclk = intel_bw_dbuf_min_cdclk(i915, bw_state);
> + min_cdclk = intel_bw_dbuf_min_cdclk(display, bw_state);
>
> - for_each_pipe(i915, pipe)
> + for_each_pipe(display, pipe)
> min_cdclk = max(min_cdclk, bw_state->min_cdclk[pipe]);
>
> return min_cdclk;
> @@ -1246,6 +1262,7 @@ int intel_bw_min_cdclk(struct drm_i915_private *i915,
> int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
> bool *need_cdclk_calc)
> {
> + struct intel_display *display = to_intel_display(state);
> struct drm_i915_private *dev_priv = to_i915(state->base.dev);
> struct intel_bw_state *new_bw_state = NULL;
> const struct intel_bw_state *old_bw_state = NULL;
> @@ -1255,7 +1272,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
> struct intel_crtc *crtc;
> int i;
>
> - if (DISPLAY_VER(dev_priv) < 9)
> + if (DISPLAY_VER(display) < 9)
> return 0;
>
> for_each_new_intel_crtc_in_state(state, crtc, crtc_state, i) {
> @@ -1274,7 +1291,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
> if (!old_bw_state)
> return 0;
>
> - if (intel_bw_state_changed(dev_priv, old_bw_state, new_bw_state)) {
> + if (intel_bw_state_changed(display, old_bw_state, new_bw_state)) {
> int ret = intel_atomic_lock_global_state(&new_bw_state->base);
> if (ret)
> return ret;
> @@ -1309,7 +1326,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
> if (new_min_cdclk <= cdclk_state->bw_min_cdclk)
> return 0;
>
> - drm_dbg_kms(&dev_priv->drm,
> + drm_dbg_kms(display->drm,
> "new bandwidth min cdclk (%d kHz) > old min cdclk (%d kHz)\n",
> new_min_cdclk, cdclk_state->bw_min_cdclk);
> *need_cdclk_calc = true;
> @@ -1319,7 +1336,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>
> static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *changed)
> {
> - struct drm_i915_private *i915 = to_i915(state->base.dev);
> + struct intel_display *display = to_intel_display(state);
> const struct intel_crtc_state *new_crtc_state, *old_crtc_state;
> struct intel_crtc *crtc;
> int i;
> @@ -1353,7 +1370,7 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan
>
> *changed = true;
>
> - drm_dbg_kms(&i915->drm,
> + drm_dbg_kms(display->drm,
> "[CRTC:%d:%s] data rate %u num active planes %u\n",
> crtc->base.base.id, crtc->base.name,
> new_bw_state->data_rate[crtc->pipe],
> @@ -1365,14 +1382,15 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan
>
> int intel_bw_atomic_check(struct intel_atomic_state *state)
> {
> + struct intel_display *display = to_intel_display(state);
> + struct drm_i915_private *i915 = to_i915(display->drm);
> bool changed = false;
> - struct drm_i915_private *i915 = to_i915(state->base.dev);
> struct intel_bw_state *new_bw_state;
> const struct intel_bw_state *old_bw_state;
> int ret;
>
> /* FIXME earlier gens need some checks too */
> - if (DISPLAY_VER(i915) < 11)
> + if (DISPLAY_VER(display) < 11)
> return 0;
>
> ret = intel_bw_check_data_rate(state, &changed);
> @@ -1395,7 +1413,7 @@ int intel_bw_atomic_check(struct intel_atomic_state *state)
> if (!changed)
> return 0;
>
> - ret = intel_bw_check_qgv_points(i915, old_bw_state, new_bw_state);
> + ret = intel_bw_check_qgv_points(display, old_bw_state, new_bw_state);
> if (ret)
> return ret;
>
> @@ -1407,8 +1425,8 @@ int intel_bw_atomic_check(struct intel_atomic_state *state)
> static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
> const struct intel_crtc_state *crtc_state)
> {
> + struct intel_display *display = to_intel_display(crtc_state);
> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
>
> bw_state->data_rate[crtc->pipe] =
> intel_bw_crtc_data_rate(crtc_state);
> @@ -1416,7 +1434,7 @@ static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
> intel_bw_crtc_num_active_planes(crtc_state);
> bw_state->force_check_qgv = true;
>
> - drm_dbg_kms(&i915->drm, "pipe %c data rate %u num active planes %u\n",
> + drm_dbg_kms(display->drm, "pipe %c data rate %u num active planes %u\n",
> pipe_name(crtc->pipe),
> bw_state->data_rate[crtc->pipe],
> bw_state->num_active_planes[crtc->pipe]);
> @@ -1499,8 +1517,8 @@ int intel_bw_init(struct drm_i915_private *i915)
> * Limit this only if we have SAGV. And for Display version 14 onwards
> * sagv is handled though pmdemand requests
> */
> - if (intel_has_sagv(i915) && IS_DISPLAY_VER(i915, 11, 13))
> - icl_force_disable_sagv(i915, state);
> + if (intel_has_sagv(i915) && IS_DISPLAY_VER(display, 11, 13))
> + icl_force_disable_sagv(display, state);
>
> return 0;
> }
>
> --
> 2.48.1
>
--
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display
2025-03-14 21:17 ` Matt Roper
@ 2025-03-14 21:29 ` Gustavo Sousa
0 siblings, 0 replies; 18+ messages in thread
From: Gustavo Sousa @ 2025-03-14 21:29 UTC (permalink / raw)
To: Matt Roper; +Cc: intel-gfx, intel-xe, Ville Syrjälä, Jani Nikula
Quoting Matt Roper (2025-03-14 18:17:37-03:00)
>On Tue, Mar 11, 2025 at 02:04:50PM -0300, Gustavo Sousa wrote:
>> Update intel_bw.c internally use intel_display. Conversion of the public
>> interface will come as a follow-up.
>>
>> v2:
>> - Prefer intel_uncore_read() for MCHBAR registers. (Ville)
>> v3:
>> - Remove the unnecessary inclusion of intel_de.h after changes from
>> v2. (Ville)
>>
>> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_bw.c | 416 +++++++++++++++++---------------
>> 1 file changed, 217 insertions(+), 199 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
>> index 048be287224774110d94fe2944daa580d8dc20a6..6f805af32926d3608929655de97699747d7a5798 100644
>> --- a/drivers/gpu/drm/i915/display/intel_bw.c
>> +++ b/drivers/gpu/drm/i915/display/intel_bw.c
>> @@ -39,14 +39,15 @@ struct intel_qgv_info {
>> u8 deinterleave;
>> };
>>
>> -static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> +static int dg1_mchbar_read_qgv_point_info(struct intel_display *display,
>> struct intel_qgv_point *sp,
>> int point)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> u32 dclk_ratio, dclk_reference;
>> u32 val;
>>
>> - val = intel_uncore_read(&dev_priv->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
>> + val = intel_uncore_read(&i915->uncore, SA_PERF_STATUS_0_0_0_MCHBAR_PC);
>> dclk_ratio = REG_FIELD_GET(DG1_QCLK_RATIO_MASK, val);
>> if (val & DG1_QCLK_REFERENCE)
>> dclk_reference = 6; /* 6 * 16.666 MHz = 100 MHz */
>> @@ -54,18 +55,18 @@ static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> dclk_reference = 8; /* 8 * 16.666 MHz = 133 MHz */
>> sp->dclk = DIV_ROUND_UP((16667 * dclk_ratio * dclk_reference) + 500, 1000);
>>
>> - val = intel_uncore_read(&dev_priv->uncore, SKL_MC_BIOS_DATA_0_0_0_MCHBAR_PCU);
>> + val = intel_uncore_read(&i915->uncore, SKL_MC_BIOS_DATA_0_0_0_MCHBAR_PCU);
>> if (val & DG1_GEAR_TYPE)
>> sp->dclk *= 2;
>>
>> if (sp->dclk == 0)
>> return -EINVAL;
>>
>> - val = intel_uncore_read(&dev_priv->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR);
>> + val = intel_uncore_read(&i915->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR);
>> sp->t_rp = REG_FIELD_GET(DG1_DRAM_T_RP_MASK, val);
>> sp->t_rdpre = REG_FIELD_GET(DG1_DRAM_T_RDPRE_MASK, val);
>>
>> - val = intel_uncore_read(&dev_priv->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR_HIGH);
>> + val = intel_uncore_read(&i915->uncore, MCHBAR_CH0_CR_TC_PRE_0_0_0_MCHBAR_HIGH);
>> sp->t_rcd = REG_FIELD_GET(DG1_DRAM_T_RCD_MASK, val);
>> sp->t_ras = REG_FIELD_GET(DG1_DRAM_T_RAS_MASK, val);
>>
>> @@ -74,22 +75,23 @@ static int dg1_mchbar_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> return 0;
>> }
>>
>> -static int icl_pcode_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> +static int icl_pcode_read_qgv_point_info(struct intel_display *display,
>> struct intel_qgv_point *sp,
>> int point)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> u32 val = 0, val2 = 0;
>> u16 dclk;
>> int ret;
>>
>> - ret = snb_pcode_read(&dev_priv->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
>> + ret = snb_pcode_read(&i915->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
>> ICL_PCODE_MEM_SS_READ_QGV_POINT_INFO(point),
>> &val, &val2);
>> if (ret)
>> return ret;
>>
>> dclk = val & 0xffff;
>> - sp->dclk = DIV_ROUND_UP((16667 * dclk) + (DISPLAY_VER(dev_priv) >= 12 ? 500 : 0),
>> + sp->dclk = DIV_ROUND_UP((16667 * dclk) + (DISPLAY_VER(display) >= 12 ? 500 : 0),
>> 1000);
>> sp->t_rp = (val & 0xff0000) >> 16;
>> sp->t_rcd = (val & 0xff000000) >> 24;
>> @@ -102,14 +104,15 @@ static int icl_pcode_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> return 0;
>> }
>>
>> -static int adls_pcode_read_psf_gv_point_info(struct drm_i915_private *dev_priv,
>> - struct intel_psf_gv_point *points)
>> +static int adls_pcode_read_psf_gv_point_info(struct intel_display *display,
>> + struct intel_psf_gv_point *points)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> u32 val = 0;
>> int ret;
>> int i;
>>
>> - ret = snb_pcode_read(&dev_priv->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
>> + ret = snb_pcode_read(&i915->uncore, ICL_PCODE_MEM_SUBSYSYSTEM_INFO |
>> ADL_PCODE_MEM_SS_READ_PSF_GV_INFO, &val, NULL);
>> if (ret)
>> return ret;
>> @@ -122,10 +125,10 @@ static int adls_pcode_read_psf_gv_point_info(struct drm_i915_private *dev_priv,
>> return 0;
>> }
>>
>> -static u16 icl_qgv_points_mask(struct drm_i915_private *i915)
>> +static u16 icl_qgv_points_mask(struct intel_display *display)
>> {
>> - unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
>> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
>> + unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
>> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
>> u16 qgv_points = 0, psf_points = 0;
>>
>> /*
>> @@ -142,18 +145,19 @@ static u16 icl_qgv_points_mask(struct drm_i915_private *i915)
>> return ICL_PCODE_REQ_QGV_PT(qgv_points) | ADLS_PCODE_REQ_PSF_PT(psf_points);
>> }
>>
>> -static bool is_sagv_enabled(struct drm_i915_private *i915, u16 points_mask)
>> +static bool is_sagv_enabled(struct intel_display *display, u16 points_mask)
>> {
>> - return !is_power_of_2(~points_mask & icl_qgv_points_mask(i915) &
>> + return !is_power_of_2(~points_mask & icl_qgv_points_mask(display) &
>> ICL_PCODE_REQ_QGV_PT_MASK);
>> }
>>
>> int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
>> u32 points_mask)
>> {
>> + struct intel_display *display = &dev_priv->display;
>> int ret;
>>
>> - if (DISPLAY_VER(dev_priv) >= 14)
>> + if (DISPLAY_VER(display) >= 14)
>> return 0;
>>
>> /* bspec says to keep retrying for at least 1 ms */
>> @@ -164,27 +168,28 @@ int icl_pcode_restrict_qgv_points(struct drm_i915_private *dev_priv,
>> 1);
>>
>> if (ret < 0) {
>> - drm_err(&dev_priv->drm,
>> + drm_err(display->drm,
>> "Failed to disable qgv points (0x%x) points: 0x%x\n",
>> ret, points_mask);
>> return ret;
>> }
>>
>> - dev_priv->display.sagv.status = is_sagv_enabled(dev_priv, points_mask) ?
>> + display->sagv.status = is_sagv_enabled(display, points_mask) ?
>> I915_SAGV_ENABLED : I915_SAGV_DISABLED;
>>
>> return 0;
>> }
>>
>> -static int mtl_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> +static int mtl_read_qgv_point_info(struct intel_display *display,
>> struct intel_qgv_point *sp, int point)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> u32 val, val2;
>> u16 dclk;
>>
>> - val = intel_uncore_read(&dev_priv->uncore,
>> + val = intel_uncore_read(&i915->uncore,
>
>I know it was suggested not to convert the MCHBAR registers since those
>ones aren't technically display registers, but was it intentional to
>also keep these MTL ones on intel_uncore? These are part of the display
>IP itself. If these were just overlooked, we might want to send a
>follow-up patch for those.
My bad on not verifying that those offsets belong to the display IP.
I'll prepare a patch. Thanks for catching this!
--
Gustavo Sousa
>
>
>Matt
>
>> MTL_MEM_SS_INFO_QGV_POINT_LOW(point));
>> - val2 = intel_uncore_read(&dev_priv->uncore,
>> + val2 = intel_uncore_read(&i915->uncore,
>> MTL_MEM_SS_INFO_QGV_POINT_HIGH(point));
>> dclk = REG_FIELD_GET(MTL_DCLK_MASK, val);
>> sp->dclk = DIV_ROUND_CLOSEST(16667 * dclk, 1000);
>> @@ -200,29 +205,30 @@ static int mtl_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> }
>>
>> static int
>> -intel_read_qgv_point_info(struct drm_i915_private *dev_priv,
>> +intel_read_qgv_point_info(struct intel_display *display,
>> struct intel_qgv_point *sp,
>> int point)
>> {
>> - if (DISPLAY_VER(dev_priv) >= 14)
>> - return mtl_read_qgv_point_info(dev_priv, sp, point);
>> - else if (IS_DG1(dev_priv))
>> - return dg1_mchbar_read_qgv_point_info(dev_priv, sp, point);
>> + if (DISPLAY_VER(display) >= 14)
>> + return mtl_read_qgv_point_info(display, sp, point);
>> + else if (display->platform.dg1)
>> + return dg1_mchbar_read_qgv_point_info(display, sp, point);
>> else
>> - return icl_pcode_read_qgv_point_info(dev_priv, sp, point);
>> + return icl_pcode_read_qgv_point_info(display, sp, point);
>> }
>>
>> -static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
>> +static int icl_get_qgv_points(struct intel_display *display,
>> struct intel_qgv_info *qi,
>> bool is_y_tile)
>> {
>> - const struct dram_info *dram_info = &dev_priv->dram_info;
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> + const struct dram_info *dram_info = &i915->dram_info;
>> int i, ret;
>>
>> qi->num_points = dram_info->num_qgv_points;
>> qi->num_psf_points = dram_info->num_psf_gv_points;
>>
>> - if (DISPLAY_VER(dev_priv) >= 14) {
>> + if (DISPLAY_VER(display) >= 14) {
>> switch (dram_info->type) {
>> case INTEL_DRAM_DDR4:
>> qi->t_bl = 4;
>> @@ -250,7 +256,7 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
>> MISSING_CASE(dram_info->type);
>> return -EINVAL;
>> }
>> - } else if (DISPLAY_VER(dev_priv) >= 12) {
>> + } else if (DISPLAY_VER(display) >= 12) {
>> switch (dram_info->type) {
>> case INTEL_DRAM_DDR4:
>> qi->t_bl = is_y_tile ? 8 : 4;
>> @@ -265,7 +271,7 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
>> qi->deinterleave = is_y_tile ? 1 : 2;
>> break;
>> case INTEL_DRAM_LPDDR4:
>> - if (IS_ROCKETLAKE(dev_priv)) {
>> + if (display->platform.rocketlake) {
>> qi->t_bl = 8;
>> qi->max_numchannels = 4;
>> qi->channel_width = 32;
>> @@ -284,39 +290,39 @@ static int icl_get_qgv_points(struct drm_i915_private *dev_priv,
>> qi->max_numchannels = 1;
>> break;
>> }
>> - } else if (DISPLAY_VER(dev_priv) == 11) {
>> - qi->t_bl = dev_priv->dram_info.type == INTEL_DRAM_DDR4 ? 4 : 8;
>> + } else if (DISPLAY_VER(display) == 11) {
>> + qi->t_bl = dram_info->type == INTEL_DRAM_DDR4 ? 4 : 8;
>> qi->max_numchannels = 1;
>> }
>>
>> - if (drm_WARN_ON(&dev_priv->drm,
>> + if (drm_WARN_ON(display->drm,
>> qi->num_points > ARRAY_SIZE(qi->points)))
>> qi->num_points = ARRAY_SIZE(qi->points);
>>
>> for (i = 0; i < qi->num_points; i++) {
>> struct intel_qgv_point *sp = &qi->points[i];
>>
>> - ret = intel_read_qgv_point_info(dev_priv, sp, i);
>> + ret = intel_read_qgv_point_info(display, sp, i);
>> if (ret) {
>> - drm_dbg_kms(&dev_priv->drm, "Could not read QGV %d info\n", i);
>> + drm_dbg_kms(display->drm, "Could not read QGV %d info\n", i);
>> return ret;
>> }
>>
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "QGV %d: DCLK=%d tRP=%d tRDPRE=%d tRAS=%d tRCD=%d tRC=%d\n",
>> i, sp->dclk, sp->t_rp, sp->t_rdpre, sp->t_ras,
>> sp->t_rcd, sp->t_rc);
>> }
>>
>> if (qi->num_psf_points > 0) {
>> - ret = adls_pcode_read_psf_gv_point_info(dev_priv, qi->psf_points);
>> + ret = adls_pcode_read_psf_gv_point_info(display, qi->psf_points);
>> if (ret) {
>> - drm_err(&dev_priv->drm, "Failed to read PSF point data; PSF points will not be considered in bandwidth calculations.\n");
>> + drm_err(display->drm, "Failed to read PSF point data; PSF points will not be considered in bandwidth calculations.\n");
>> qi->num_psf_points = 0;
>> }
>>
>> for (i = 0; i < qi->num_psf_points; i++)
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "PSF GV %d: CLK=%d \n",
>> i, qi->psf_points[i].clk);
>> }
>> @@ -398,20 +404,21 @@ static const struct intel_sa_info xe2_hpd_sa_info = {
>> /* Other values not used by simplified algorithm */
>> };
>>
>> -static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel_sa_info *sa)
>> +static int icl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> struct intel_qgv_info qi = {};
>> bool is_y_tile = true; /* assume y tile may be used */
>> - int num_channels = max_t(u8, 1, dev_priv->dram_info.num_channels);
>> + int num_channels = max_t(u8, 1, i915->dram_info.num_channels);
>> int ipqdepth, ipqdepthpch = 16;
>> int dclk_max;
>> int maxdebw;
>> - int num_groups = ARRAY_SIZE(dev_priv->display.bw.max);
>> + int num_groups = ARRAY_SIZE(display->bw.max);
>> int i, ret;
>>
>> - ret = icl_get_qgv_points(dev_priv, &qi, is_y_tile);
>> + ret = icl_get_qgv_points(display, &qi, is_y_tile);
>> if (ret) {
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "Failed to get memory subsystem information, ignoring bandwidth limits");
>> return ret;
>> }
>> @@ -422,7 +429,7 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> qi.deinterleave = DIV_ROUND_UP(num_channels, is_y_tile ? 4 : 2);
>>
>> for (i = 0; i < num_groups; i++) {
>> - struct intel_bw_info *bi = &dev_priv->display.bw.max[i];
>> + struct intel_bw_info *bi = &display->bw.max[i];
>> int clpchgroup;
>> int j;
>>
>> @@ -449,7 +456,7 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> bi->deratedbw[j] = min(maxdebw,
>> bw * (100 - sa->derating) / 100);
>>
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "BW%d / QGV %d: num_planes=%d deratedbw=%u\n",
>> i, j, bi->num_planes, bi->deratedbw[j]);
>> }
>> @@ -460,44 +467,45 @@ static int icl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> * as it will fail and pointless anyway.
>> */
>> if (qi.num_points == 1)
>> - dev_priv->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
>> + display->sagv.status = I915_SAGV_NOT_CONTROLLED;
>> else
>> - dev_priv->display.sagv.status = I915_SAGV_ENABLED;
>> + display->sagv.status = I915_SAGV_ENABLED;
>>
>> return 0;
>> }
>>
>> -static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel_sa_info *sa)
>> +static int tgl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> struct intel_qgv_info qi = {};
>> - const struct dram_info *dram_info = &dev_priv->dram_info;
>> + const struct dram_info *dram_info = &i915->dram_info;
>> bool is_y_tile = true; /* assume y tile may be used */
>> - int num_channels = max_t(u8, 1, dev_priv->dram_info.num_channels);
>> + int num_channels = max_t(u8, 1, dram_info->num_channels);
>> int ipqdepth, ipqdepthpch = 16;
>> int dclk_max;
>> int maxdebw, peakbw;
>> int clperchgroup;
>> - int num_groups = ARRAY_SIZE(dev_priv->display.bw.max);
>> + int num_groups = ARRAY_SIZE(display->bw.max);
>> int i, ret;
>>
>> - ret = icl_get_qgv_points(dev_priv, &qi, is_y_tile);
>> + ret = icl_get_qgv_points(display, &qi, is_y_tile);
>> if (ret) {
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "Failed to get memory subsystem information, ignoring bandwidth limits");
>> return ret;
>> }
>>
>> - if (DISPLAY_VER(dev_priv) < 14 &&
>> + if (DISPLAY_VER(display) < 14 &&
>> (dram_info->type == INTEL_DRAM_LPDDR4 || dram_info->type == INTEL_DRAM_LPDDR5))
>> num_channels *= 2;
>>
>> qi.deinterleave = qi.deinterleave ? : DIV_ROUND_UP(num_channels, is_y_tile ? 4 : 2);
>>
>> - if (num_channels < qi.max_numchannels && DISPLAY_VER(dev_priv) >= 12)
>> + if (num_channels < qi.max_numchannels && DISPLAY_VER(display) >= 12)
>> qi.deinterleave = max(DIV_ROUND_UP(qi.deinterleave, 2), 1);
>>
>> - if (DISPLAY_VER(dev_priv) >= 12 && num_channels > qi.max_numchannels)
>> - drm_warn(&dev_priv->drm, "Number of channels exceeds max number of channels.");
>> + if (DISPLAY_VER(display) >= 12 && num_channels > qi.max_numchannels)
>> + drm_warn(display->drm, "Number of channels exceeds max number of channels.");
>> if (qi.max_numchannels != 0)
>> num_channels = min_t(u8, num_channels, qi.max_numchannels);
>>
>> @@ -514,7 +522,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> clperchgroup = 4 * DIV_ROUND_UP(8, num_channels) * qi.deinterleave;
>>
>> for (i = 0; i < num_groups; i++) {
>> - struct intel_bw_info *bi = &dev_priv->display.bw.max[i];
>> + struct intel_bw_info *bi = &display->bw.max[i];
>> struct intel_bw_info *bi_next;
>> int clpchgroup;
>> int j;
>> @@ -522,7 +530,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> clpchgroup = (sa->deburst * qi.deinterleave / num_channels) << i;
>>
>> if (i < num_groups - 1) {
>> - bi_next = &dev_priv->display.bw.max[i + 1];
>> + bi_next = &display->bw.max[i + 1];
>>
>> if (clpchgroup < clperchgroup)
>> bi_next->num_planes = (ipqdepth - clpchgroup) /
>> @@ -554,7 +562,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> num_channels *
>> qi.channel_width, 8);
>>
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "BW%d / QGV %d: num_planes=%d deratedbw=%u peakbw: %u\n",
>> i, j, bi->num_planes, bi->deratedbw[j],
>> bi->peakbw[j]);
>> @@ -565,7 +573,7 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>>
>> bi->psf_bw[j] = adl_calc_psf_bw(sp->clk);
>>
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "BW%d / PSF GV %d: num_planes=%d bw=%u\n",
>> i, j, bi->num_planes, bi->psf_bw[j]);
>> }
>> @@ -577,17 +585,17 @@ static int tgl_get_bw_info(struct drm_i915_private *dev_priv, const struct intel
>> * as it will fail and pointless anyway.
>> */
>> if (qi.num_points == 1)
>> - dev_priv->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
>> + display->sagv.status = I915_SAGV_NOT_CONTROLLED;
>> else
>> - dev_priv->display.sagv.status = I915_SAGV_ENABLED;
>> + display->sagv.status = I915_SAGV_ENABLED;
>>
>> return 0;
>> }
>>
>> -static void dg2_get_bw_info(struct drm_i915_private *i915)
>> +static void dg2_get_bw_info(struct intel_display *display)
>> {
>> - unsigned int deratedbw = IS_DG2_G11(i915) ? 38000 : 50000;
>> - int num_groups = ARRAY_SIZE(i915->display.bw.max);
>> + unsigned int deratedbw = display->platform.dg2_g11 ? 38000 : 50000;
>> + int num_groups = ARRAY_SIZE(display->bw.max);
>> int i;
>>
>> /*
>> @@ -598,7 +606,7 @@ static void dg2_get_bw_info(struct drm_i915_private *i915)
>> * whereas DG2-G11 platforms have 38 GB/s.
>> */
>> for (i = 0; i < num_groups; i++) {
>> - struct intel_bw_info *bi = &i915->display.bw.max[i];
>> + struct intel_bw_info *bi = &display->bw.max[i];
>>
>> bi->num_planes = 1;
>> /* Need only one dummy QGV point per group */
>> @@ -606,20 +614,21 @@ static void dg2_get_bw_info(struct drm_i915_private *i915)
>> bi->deratedbw[0] = deratedbw;
>> }
>>
>> - i915->display.sagv.status = I915_SAGV_NOT_CONTROLLED;
>> + display->sagv.status = I915_SAGV_NOT_CONTROLLED;
>> }
>>
>> -static int xe2_hpd_get_bw_info(struct drm_i915_private *i915,
>> +static int xe2_hpd_get_bw_info(struct intel_display *display,
>> const struct intel_sa_info *sa)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> struct intel_qgv_info qi = {};
>> int num_channels = i915->dram_info.num_channels;
>> int peakbw, maxdebw;
>> int ret, i;
>>
>> - ret = icl_get_qgv_points(i915, &qi, true);
>> + ret = icl_get_qgv_points(display, &qi, true);
>> if (ret) {
>> - drm_dbg_kms(&i915->drm,
>> + drm_dbg_kms(display->drm,
>> "Failed to get memory subsystem information, ignoring bandwidth limits");
>> return ret;
>> }
>> @@ -631,33 +640,33 @@ static int xe2_hpd_get_bw_info(struct drm_i915_private *i915,
>> const struct intel_qgv_point *point = &qi.points[i];
>> int bw = num_channels * (qi.channel_width / 8) * point->dclk;
>>
>> - i915->display.bw.max[0].deratedbw[i] =
>> + display->bw.max[0].deratedbw[i] =
>> min(maxdebw, (100 - sa->derating) * bw / 100);
>> - i915->display.bw.max[0].peakbw[i] = bw;
>> + display->bw.max[0].peakbw[i] = bw;
>>
>> - drm_dbg_kms(&i915->drm, "QGV %d: deratedbw=%u peakbw: %u\n",
>> - i, i915->display.bw.max[0].deratedbw[i],
>> - i915->display.bw.max[0].peakbw[i]);
>> + drm_dbg_kms(display->drm, "QGV %d: deratedbw=%u peakbw: %u\n",
>> + i, display->bw.max[0].deratedbw[i],
>> + display->bw.max[0].peakbw[i]);
>> }
>>
>> /* Bandwidth does not depend on # of planes; set all groups the same */
>> - i915->display.bw.max[0].num_planes = 1;
>> - i915->display.bw.max[0].num_qgv_points = qi.num_points;
>> - for (i = 1; i < ARRAY_SIZE(i915->display.bw.max); i++)
>> - memcpy(&i915->display.bw.max[i], &i915->display.bw.max[0],
>> - sizeof(i915->display.bw.max[0]));
>> + display->bw.max[0].num_planes = 1;
>> + display->bw.max[0].num_qgv_points = qi.num_points;
>> + for (i = 1; i < ARRAY_SIZE(display->bw.max); i++)
>> + memcpy(&display->bw.max[i], &display->bw.max[0],
>> + sizeof(display->bw.max[0]));
>>
>> /*
>> * Xe2_HPD should always have exactly two QGV points representing
>> * battery and plugged-in operation.
>> */
>> - drm_WARN_ON(&i915->drm, qi.num_points != 2);
>> - i915->display.sagv.status = I915_SAGV_ENABLED;
>> + drm_WARN_ON(display->drm, qi.num_points != 2);
>> + display->sagv.status = I915_SAGV_ENABLED;
>>
>> return 0;
>> }
>>
>> -static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
>> +static unsigned int icl_max_bw_index(struct intel_display *display,
>> int num_planes, int qgv_point)
>> {
>> int i;
>> @@ -667,9 +676,9 @@ static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
>> */
>> num_planes = max(1, num_planes);
>>
>> - for (i = 0; i < ARRAY_SIZE(dev_priv->display.bw.max); i++) {
>> + for (i = 0; i < ARRAY_SIZE(display->bw.max); i++) {
>> const struct intel_bw_info *bi =
>> - &dev_priv->display.bw.max[i];
>> + &display->bw.max[i];
>>
>> /*
>> * Pcode will not expose all QGV points when
>> @@ -685,7 +694,7 @@ static unsigned int icl_max_bw_index(struct drm_i915_private *dev_priv,
>> return UINT_MAX;
>> }
>>
>> -static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
>> +static unsigned int tgl_max_bw_index(struct intel_display *display,
>> int num_planes, int qgv_point)
>> {
>> int i;
>> @@ -695,9 +704,9 @@ static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
>> */
>> num_planes = max(1, num_planes);
>>
>> - for (i = ARRAY_SIZE(dev_priv->display.bw.max) - 1; i >= 0; i--) {
>> + for (i = ARRAY_SIZE(display->bw.max) - 1; i >= 0; i--) {
>> const struct intel_bw_info *bi =
>> - &dev_priv->display.bw.max[i];
>> + &display->bw.max[i];
>>
>> /*
>> * Pcode will not expose all QGV points when
>> @@ -713,52 +722,54 @@ static unsigned int tgl_max_bw_index(struct drm_i915_private *dev_priv,
>> return 0;
>> }
>>
>> -static unsigned int adl_psf_bw(struct drm_i915_private *dev_priv,
>> +static unsigned int adl_psf_bw(struct intel_display *display,
>> int psf_gv_point)
>> {
>> const struct intel_bw_info *bi =
>> - &dev_priv->display.bw.max[0];
>> + &display->bw.max[0];
>>
>> return bi->psf_bw[psf_gv_point];
>> }
>>
>> -static unsigned int icl_qgv_bw(struct drm_i915_private *i915,
>> +static unsigned int icl_qgv_bw(struct intel_display *display,
>> int num_active_planes, int qgv_point)
>> {
>> unsigned int idx;
>>
>> - if (DISPLAY_VER(i915) >= 12)
>> - idx = tgl_max_bw_index(i915, num_active_planes, qgv_point);
>> + if (DISPLAY_VER(display) >= 12)
>> + idx = tgl_max_bw_index(display, num_active_planes, qgv_point);
>> else
>> - idx = icl_max_bw_index(i915, num_active_planes, qgv_point);
>> + idx = icl_max_bw_index(display, num_active_planes, qgv_point);
>>
>> - if (idx >= ARRAY_SIZE(i915->display.bw.max))
>> + if (idx >= ARRAY_SIZE(display->bw.max))
>> return 0;
>>
>> - return i915->display.bw.max[idx].deratedbw[qgv_point];
>> + return display->bw.max[idx].deratedbw[qgv_point];
>> }
>>
>> void intel_bw_init_hw(struct drm_i915_private *dev_priv)
>> {
>> - if (!HAS_DISPLAY(dev_priv))
>> + struct intel_display *display = &dev_priv->display;
>> +
>> + if (!HAS_DISPLAY(display))
>> return;
>>
>> - if (DISPLAY_VERx100(dev_priv) >= 1401 && IS_DGFX(dev_priv))
>> - xe2_hpd_get_bw_info(dev_priv, &xe2_hpd_sa_info);
>> - else if (DISPLAY_VER(dev_priv) >= 14)
>> - tgl_get_bw_info(dev_priv, &mtl_sa_info);
>> - else if (IS_DG2(dev_priv))
>> - dg2_get_bw_info(dev_priv);
>> - else if (IS_ALDERLAKE_P(dev_priv))
>> - tgl_get_bw_info(dev_priv, &adlp_sa_info);
>> - else if (IS_ALDERLAKE_S(dev_priv))
>> - tgl_get_bw_info(dev_priv, &adls_sa_info);
>> - else if (IS_ROCKETLAKE(dev_priv))
>> - tgl_get_bw_info(dev_priv, &rkl_sa_info);
>> - else if (DISPLAY_VER(dev_priv) == 12)
>> - tgl_get_bw_info(dev_priv, &tgl_sa_info);
>> - else if (DISPLAY_VER(dev_priv) == 11)
>> - icl_get_bw_info(dev_priv, &icl_sa_info);
>> + if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
>> + xe2_hpd_get_bw_info(display, &xe2_hpd_sa_info);
>> + else if (DISPLAY_VER(display) >= 14)
>> + tgl_get_bw_info(display, &mtl_sa_info);
>> + else if (display->platform.dg2)
>> + dg2_get_bw_info(display);
>> + else if (display->platform.alderlake_p)
>> + tgl_get_bw_info(display, &adlp_sa_info);
>> + else if (display->platform.alderlake_s)
>> + tgl_get_bw_info(display, &adls_sa_info);
>> + else if (display->platform.rocketlake)
>> + tgl_get_bw_info(display, &rkl_sa_info);
>> + else if (DISPLAY_VER(display) == 12)
>> + tgl_get_bw_info(display, &tgl_sa_info);
>> + else if (DISPLAY_VER(display) == 11)
>> + icl_get_bw_info(display, &icl_sa_info);
>> }
>>
>> static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_state *crtc_state)
>> @@ -772,8 +783,8 @@ static unsigned int intel_bw_crtc_num_active_planes(const struct intel_crtc_stat
>>
>> static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_state)
>> {
>> + struct intel_display *display = to_intel_display(crtc_state);
>> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
>> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
>> unsigned int data_rate = 0;
>> enum plane_id plane_id;
>>
>> @@ -787,7 +798,7 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_
>>
>> data_rate += crtc_state->data_rate[plane_id];
>>
>> - if (DISPLAY_VER(i915) < 11)
>> + if (DISPLAY_VER(display) < 11)
>> data_rate += crtc_state->data_rate_y[plane_id];
>> }
>>
>> @@ -797,37 +808,37 @@ static unsigned int intel_bw_crtc_data_rate(const struct intel_crtc_state *crtc_
>> /* "Maximum Pipe Read Bandwidth" */
>> static int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state)
>> {
>> - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
>> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
>> + struct intel_display *display = to_intel_display(crtc_state);
>>
>> - if (DISPLAY_VER(i915) < 12)
>> + if (DISPLAY_VER(display) < 12)
>> return 0;
>>
>> return DIV_ROUND_UP_ULL(mul_u32_u32(intel_bw_crtc_data_rate(crtc_state), 10), 512);
>> }
>>
>> -static unsigned int intel_bw_num_active_planes(struct drm_i915_private *dev_priv,
>> +static unsigned int intel_bw_num_active_planes(struct intel_display *display,
>> const struct intel_bw_state *bw_state)
>> {
>> unsigned int num_active_planes = 0;
>> enum pipe pipe;
>>
>> - for_each_pipe(dev_priv, pipe)
>> + for_each_pipe(display, pipe)
>> num_active_planes += bw_state->num_active_planes[pipe];
>>
>> return num_active_planes;
>> }
>>
>> -static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv,
>> +static unsigned int intel_bw_data_rate(struct intel_display *display,
>> const struct intel_bw_state *bw_state)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> unsigned int data_rate = 0;
>> enum pipe pipe;
>>
>> - for_each_pipe(dev_priv, pipe)
>> + for_each_pipe(display, pipe)
>> data_rate += bw_state->data_rate[pipe];
>>
>> - if (DISPLAY_VER(dev_priv) >= 13 && i915_vtd_active(dev_priv))
>> + if (DISPLAY_VER(display) >= 13 && i915_vtd_active(i915))
>> data_rate = DIV_ROUND_UP(data_rate * 105, 100);
>>
>> return data_rate;
>> @@ -836,10 +847,10 @@ static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv,
>> struct intel_bw_state *
>> intel_atomic_get_old_bw_state(struct intel_atomic_state *state)
>> {
>> - struct drm_i915_private *dev_priv = to_i915(state->base.dev);
>> + struct intel_display *display = to_intel_display(state);
>> struct intel_global_state *bw_state;
>>
>> - bw_state = intel_atomic_get_old_global_obj_state(state, &dev_priv->display.bw.obj);
>> + bw_state = intel_atomic_get_old_global_obj_state(state, &display->bw.obj);
>>
>> return to_intel_bw_state(bw_state);
>> }
>> @@ -847,10 +858,10 @@ intel_atomic_get_old_bw_state(struct intel_atomic_state *state)
>> struct intel_bw_state *
>> intel_atomic_get_new_bw_state(struct intel_atomic_state *state)
>> {
>> - struct drm_i915_private *dev_priv = to_i915(state->base.dev);
>> + struct intel_display *display = to_intel_display(state);
>> struct intel_global_state *bw_state;
>>
>> - bw_state = intel_atomic_get_new_global_obj_state(state, &dev_priv->display.bw.obj);
>> + bw_state = intel_atomic_get_new_global_obj_state(state, &display->bw.obj);
>>
>> return to_intel_bw_state(bw_state);
>> }
>> @@ -858,27 +869,27 @@ intel_atomic_get_new_bw_state(struct intel_atomic_state *state)
>> struct intel_bw_state *
>> intel_atomic_get_bw_state(struct intel_atomic_state *state)
>> {
>> - struct drm_i915_private *dev_priv = to_i915(state->base.dev);
>> + struct intel_display *display = to_intel_display(state);
>> struct intel_global_state *bw_state;
>>
>> - bw_state = intel_atomic_get_global_obj_state(state, &dev_priv->display.bw.obj);
>> + bw_state = intel_atomic_get_global_obj_state(state, &display->bw.obj);
>> if (IS_ERR(bw_state))
>> return ERR_CAST(bw_state);
>>
>> return to_intel_bw_state(bw_state);
>> }
>>
>> -static unsigned int icl_max_bw_qgv_point_mask(struct drm_i915_private *i915,
>> +static unsigned int icl_max_bw_qgv_point_mask(struct intel_display *display,
>> int num_active_planes)
>> {
>> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
>> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
>> unsigned int max_bw_point = 0;
>> unsigned int max_bw = 0;
>> int i;
>>
>> for (i = 0; i < num_qgv_points; i++) {
>> unsigned int max_data_rate =
>> - icl_qgv_bw(i915, num_active_planes, i);
>> + icl_qgv_bw(display, num_active_planes, i);
>>
>> /*
>> * We need to know which qgv point gives us
>> @@ -897,23 +908,23 @@ static unsigned int icl_max_bw_qgv_point_mask(struct drm_i915_private *i915,
>> return max_bw_point;
>> }
>>
>> -static u16 icl_prepare_qgv_points_mask(struct drm_i915_private *i915,
>> +static u16 icl_prepare_qgv_points_mask(struct intel_display *display,
>> unsigned int qgv_points,
>> unsigned int psf_points)
>> {
>> return ~(ICL_PCODE_REQ_QGV_PT(qgv_points) |
>> - ADLS_PCODE_REQ_PSF_PT(psf_points)) & icl_qgv_points_mask(i915);
>> + ADLS_PCODE_REQ_PSF_PT(psf_points)) & icl_qgv_points_mask(display);
>> }
>>
>> -static unsigned int icl_max_bw_psf_gv_point_mask(struct drm_i915_private *i915)
>> +static unsigned int icl_max_bw_psf_gv_point_mask(struct intel_display *display)
>> {
>> - unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
>> + unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
>> unsigned int max_bw_point_mask = 0;
>> unsigned int max_bw = 0;
>> int i;
>>
>> for (i = 0; i < num_psf_gv_points; i++) {
>> - unsigned int max_data_rate = adl_psf_bw(i915, i);
>> + unsigned int max_data_rate = adl_psf_bw(display, i);
>>
>> if (max_data_rate > max_bw) {
>> max_bw_point_mask = BIT(i);
>> @@ -926,29 +937,31 @@ static unsigned int icl_max_bw_psf_gv_point_mask(struct drm_i915_private *i915)
>> return max_bw_point_mask;
>> }
>>
>> -static void icl_force_disable_sagv(struct drm_i915_private *i915,
>> +static void icl_force_disable_sagv(struct intel_display *display,
>> struct intel_bw_state *bw_state)
>> {
>> - unsigned int qgv_points = icl_max_bw_qgv_point_mask(i915, 0);
>> - unsigned int psf_points = icl_max_bw_psf_gv_point_mask(i915);
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> + unsigned int qgv_points = icl_max_bw_qgv_point_mask(display, 0);
>> + unsigned int psf_points = icl_max_bw_psf_gv_point_mask(display);
>>
>> - bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(i915,
>> + bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(display,
>> qgv_points,
>> psf_points);
>>
>> - drm_dbg_kms(&i915->drm, "Forcing SAGV disable: mask 0x%x\n",
>> + drm_dbg_kms(display->drm, "Forcing SAGV disable: mask 0x%x\n",
>> bw_state->qgv_points_mask);
>>
>> icl_pcode_restrict_qgv_points(i915, bw_state->qgv_points_mask);
>> }
>>
>> -static int mtl_find_qgv_points(struct drm_i915_private *i915,
>> +static int mtl_find_qgv_points(struct intel_display *display,
>> unsigned int data_rate,
>> unsigned int num_active_planes,
>> struct intel_bw_state *new_bw_state)
>> {
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> unsigned int best_rate = UINT_MAX;
>> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
>> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
>> unsigned int qgv_peak_bw = 0;
>> int i;
>> int ret;
>> @@ -964,7 +977,7 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
>> */
>> if (!intel_can_enable_sagv(i915, new_bw_state)) {
>> new_bw_state->qgv_point_peakbw = U16_MAX;
>> - drm_dbg_kms(&i915->drm, "No SAGV, use UINT_MAX as peak bw.");
>> + drm_dbg_kms(display->drm, "No SAGV, use UINT_MAX as peak bw.");
>> return 0;
>> }
>>
>> @@ -974,27 +987,27 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
>> */
>> for (i = 0; i < num_qgv_points; i++) {
>> unsigned int bw_index =
>> - tgl_max_bw_index(i915, num_active_planes, i);
>> + tgl_max_bw_index(display, num_active_planes, i);
>> unsigned int max_data_rate;
>>
>> - if (bw_index >= ARRAY_SIZE(i915->display.bw.max))
>> + if (bw_index >= ARRAY_SIZE(display->bw.max))
>> continue;
>>
>> - max_data_rate = i915->display.bw.max[bw_index].deratedbw[i];
>> + max_data_rate = display->bw.max[bw_index].deratedbw[i];
>>
>> if (max_data_rate < data_rate)
>> continue;
>>
>> if (max_data_rate - data_rate < best_rate) {
>> best_rate = max_data_rate - data_rate;
>> - qgv_peak_bw = i915->display.bw.max[bw_index].peakbw[i];
>> + qgv_peak_bw = display->bw.max[bw_index].peakbw[i];
>> }
>>
>> - drm_dbg_kms(&i915->drm, "QGV point %d: max bw %d required %d qgv_peak_bw: %d\n",
>> + drm_dbg_kms(display->drm, "QGV point %d: max bw %d required %d qgv_peak_bw: %d\n",
>> i, max_data_rate, data_rate, qgv_peak_bw);
>> }
>>
>> - drm_dbg_kms(&i915->drm, "Matching peaks QGV bw: %d for required data rate: %d\n",
>> + drm_dbg_kms(display->drm, "Matching peaks QGV bw: %d for required data rate: %d\n",
>> qgv_peak_bw, data_rate);
>>
>> /*
>> @@ -1002,7 +1015,7 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
>> * satisfying the required data rate is found
>> */
>> if (qgv_peak_bw == 0) {
>> - drm_dbg_kms(&i915->drm, "No QGV points for bw %d for display configuration(%d active planes).\n",
>> + drm_dbg_kms(display->drm, "No QGV points for bw %d for display configuration(%d active planes).\n",
>> data_rate, num_active_planes);
>> return -EINVAL;
>> }
>> @@ -1013,14 +1026,15 @@ static int mtl_find_qgv_points(struct drm_i915_private *i915,
>> return 0;
>> }
>>
>> -static int icl_find_qgv_points(struct drm_i915_private *i915,
>> +static int icl_find_qgv_points(struct intel_display *display,
>> unsigned int data_rate,
>> unsigned int num_active_planes,
>> const struct intel_bw_state *old_bw_state,
>> struct intel_bw_state *new_bw_state)
>> {
>> - unsigned int num_psf_gv_points = i915->display.bw.max[0].num_psf_gv_points;
>> - unsigned int num_qgv_points = i915->display.bw.max[0].num_qgv_points;
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> + unsigned int num_psf_gv_points = display->bw.max[0].num_psf_gv_points;
>> + unsigned int num_qgv_points = display->bw.max[0].num_qgv_points;
>> u16 psf_points = 0;
>> u16 qgv_points = 0;
>> int i;
>> @@ -1031,22 +1045,22 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
>> return ret;
>>
>> for (i = 0; i < num_qgv_points; i++) {
>> - unsigned int max_data_rate = icl_qgv_bw(i915,
>> + unsigned int max_data_rate = icl_qgv_bw(display,
>> num_active_planes, i);
>> if (max_data_rate >= data_rate)
>> qgv_points |= BIT(i);
>>
>> - drm_dbg_kms(&i915->drm, "QGV point %d: max bw %d required %d\n",
>> + drm_dbg_kms(display->drm, "QGV point %d: max bw %d required %d\n",
>> i, max_data_rate, data_rate);
>> }
>>
>> for (i = 0; i < num_psf_gv_points; i++) {
>> - unsigned int max_data_rate = adl_psf_bw(i915, i);
>> + unsigned int max_data_rate = adl_psf_bw(display, i);
>>
>> if (max_data_rate >= data_rate)
>> psf_points |= BIT(i);
>>
>> - drm_dbg_kms(&i915->drm, "PSF GV point %d: max bw %d"
>> + drm_dbg_kms(display->drm, "PSF GV point %d: max bw %d"
>> " required %d\n",
>> i, max_data_rate, data_rate);
>> }
>> @@ -1057,14 +1071,14 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
>> * reasons.
>> */
>> if (qgv_points == 0) {
>> - drm_dbg_kms(&i915->drm, "No QGV points provide sufficient memory"
>> + drm_dbg_kms(display->drm, "No QGV points provide sufficient memory"
>> " bandwidth %d for display configuration(%d active planes).\n",
>> data_rate, num_active_planes);
>> return -EINVAL;
>> }
>>
>> if (num_psf_gv_points > 0 && psf_points == 0) {
>> - drm_dbg_kms(&i915->drm, "No PSF GV points provide sufficient memory"
>> + drm_dbg_kms(display->drm, "No PSF GV points provide sufficient memory"
>> " bandwidth %d for display configuration(%d active planes).\n",
>> data_rate, num_active_planes);
>> return -EINVAL;
>> @@ -1076,8 +1090,8 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
>> * cause.
>> */
>> if (!intel_can_enable_sagv(i915, new_bw_state)) {
>> - qgv_points = icl_max_bw_qgv_point_mask(i915, num_active_planes);
>> - drm_dbg_kms(&i915->drm, "No SAGV, using single QGV point mask 0x%x\n",
>> + qgv_points = icl_max_bw_qgv_point_mask(display, num_active_planes);
>> + drm_dbg_kms(display->drm, "No SAGV, using single QGV point mask 0x%x\n",
>> qgv_points);
>> }
>>
>> @@ -1085,7 +1099,7 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
>> * We store the ones which need to be masked as that is what PCode
>> * actually accepts as a parameter.
>> */
>> - new_bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(i915,
>> + new_bw_state->qgv_points_mask = icl_prepare_qgv_points_mask(display,
>> qgv_points,
>> psf_points);
>> /*
>> @@ -1101,38 +1115,38 @@ static int icl_find_qgv_points(struct drm_i915_private *i915,
>> return 0;
>> }
>>
>> -static int intel_bw_check_qgv_points(struct drm_i915_private *i915,
>> +static int intel_bw_check_qgv_points(struct intel_display *display,
>> const struct intel_bw_state *old_bw_state,
>> struct intel_bw_state *new_bw_state)
>> {
>> - unsigned int data_rate = intel_bw_data_rate(i915, new_bw_state);
>> + unsigned int data_rate = intel_bw_data_rate(display, new_bw_state);
>> unsigned int num_active_planes =
>> - intel_bw_num_active_planes(i915, new_bw_state);
>> + intel_bw_num_active_planes(display, new_bw_state);
>>
>> data_rate = DIV_ROUND_UP(data_rate, 1000);
>>
>> - if (DISPLAY_VER(i915) >= 14)
>> - return mtl_find_qgv_points(i915, data_rate, num_active_planes,
>> + if (DISPLAY_VER(display) >= 14)
>> + return mtl_find_qgv_points(display, data_rate, num_active_planes,
>> new_bw_state);
>> else
>> - return icl_find_qgv_points(i915, data_rate, num_active_planes,
>> + return icl_find_qgv_points(display, data_rate, num_active_planes,
>> old_bw_state, new_bw_state);
>> }
>>
>> -static bool intel_bw_state_changed(struct drm_i915_private *i915,
>> +static bool intel_bw_state_changed(struct intel_display *display,
>> const struct intel_bw_state *old_bw_state,
>> const struct intel_bw_state *new_bw_state)
>> {
>> enum pipe pipe;
>>
>> - for_each_pipe(i915, pipe) {
>> + for_each_pipe(display, pipe) {
>> const struct intel_dbuf_bw *old_crtc_bw =
>> &old_bw_state->dbuf_bw[pipe];
>> const struct intel_dbuf_bw *new_crtc_bw =
>> &new_bw_state->dbuf_bw[pipe];
>> enum dbuf_slice slice;
>>
>> - for_each_dbuf_slice(i915, slice) {
>> + for_each_dbuf_slice(display, slice) {
>> if (old_crtc_bw->max_bw[slice] != new_crtc_bw->max_bw[slice] ||
>> old_crtc_bw->active_planes[slice] != new_crtc_bw->active_planes[slice])
>> return true;
>> @@ -1151,7 +1165,8 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
>> const struct skl_ddb_entry *ddb,
>> unsigned int data_rate)
>> {
>> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
>> + struct intel_display *display = to_intel_display(crtc);
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[crtc->pipe];
>> unsigned int dbuf_mask = skl_ddb_dbuf_slice_mask(i915, ddb);
>> enum dbuf_slice slice;
>> @@ -1160,7 +1175,7 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
>> * The arbiter can only really guarantee an
>> * equal share of the total bw to each plane.
>> */
>> - for_each_dbuf_slice_in_mask(i915, slice, dbuf_mask) {
>> + for_each_dbuf_slice_in_mask(display, slice, dbuf_mask) {
>> crtc_bw->max_bw[slice] = max(crtc_bw->max_bw[slice], data_rate);
>> crtc_bw->active_planes[slice] |= BIT(plane_id);
>> }
>> @@ -1169,8 +1184,8 @@ static void skl_plane_calc_dbuf_bw(struct intel_bw_state *bw_state,
>> static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
>> const struct intel_crtc_state *crtc_state)
>> {
>> + struct intel_display *display = to_intel_display(crtc_state);
>> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
>> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
>> struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[crtc->pipe];
>> enum plane_id plane_id;
>>
>> @@ -1191,7 +1206,7 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
>> &crtc_state->wm.skl.plane_ddb[plane_id],
>> crtc_state->data_rate[plane_id]);
>>
>> - if (DISPLAY_VER(i915) < 11)
>> + if (DISPLAY_VER(display) < 11)
>> skl_plane_calc_dbuf_bw(bw_state, crtc, plane_id,
>> &crtc_state->wm.skl.plane_ddb_y[plane_id],
>> crtc_state->data_rate[plane_id]);
>> @@ -1200,13 +1215,13 @@ static void skl_crtc_calc_dbuf_bw(struct intel_bw_state *bw_state,
>>
>> /* "Maximum Data Buffer Bandwidth" */
>> static int
>> -intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
>> +intel_bw_dbuf_min_cdclk(struct intel_display *display,
>> const struct intel_bw_state *bw_state)
>> {
>> unsigned int total_max_bw = 0;
>> enum dbuf_slice slice;
>>
>> - for_each_dbuf_slice(i915, slice) {
>> + for_each_dbuf_slice(display, slice) {
>> int num_active_planes = 0;
>> unsigned int max_bw = 0;
>> enum pipe pipe;
>> @@ -1215,7 +1230,7 @@ intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
>> * The arbiter can only really guarantee an
>> * equal share of the total bw to each plane.
>> */
>> - for_each_pipe(i915, pipe) {
>> + for_each_pipe(display, pipe) {
>> const struct intel_dbuf_bw *crtc_bw = &bw_state->dbuf_bw[pipe];
>>
>> max_bw = max(crtc_bw->max_bw[slice], max_bw);
>> @@ -1232,12 +1247,13 @@ intel_bw_dbuf_min_cdclk(struct drm_i915_private *i915,
>> int intel_bw_min_cdclk(struct drm_i915_private *i915,
>> const struct intel_bw_state *bw_state)
>> {
>> + struct intel_display *display = &i915->display;
>> enum pipe pipe;
>> int min_cdclk;
>>
>> - min_cdclk = intel_bw_dbuf_min_cdclk(i915, bw_state);
>> + min_cdclk = intel_bw_dbuf_min_cdclk(display, bw_state);
>>
>> - for_each_pipe(i915, pipe)
>> + for_each_pipe(display, pipe)
>> min_cdclk = max(min_cdclk, bw_state->min_cdclk[pipe]);
>>
>> return min_cdclk;
>> @@ -1246,6 +1262,7 @@ int intel_bw_min_cdclk(struct drm_i915_private *i915,
>> int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>> bool *need_cdclk_calc)
>> {
>> + struct intel_display *display = to_intel_display(state);
>> struct drm_i915_private *dev_priv = to_i915(state->base.dev);
>> struct intel_bw_state *new_bw_state = NULL;
>> const struct intel_bw_state *old_bw_state = NULL;
>> @@ -1255,7 +1272,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>> struct intel_crtc *crtc;
>> int i;
>>
>> - if (DISPLAY_VER(dev_priv) < 9)
>> + if (DISPLAY_VER(display) < 9)
>> return 0;
>>
>> for_each_new_intel_crtc_in_state(state, crtc, crtc_state, i) {
>> @@ -1274,7 +1291,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>> if (!old_bw_state)
>> return 0;
>>
>> - if (intel_bw_state_changed(dev_priv, old_bw_state, new_bw_state)) {
>> + if (intel_bw_state_changed(display, old_bw_state, new_bw_state)) {
>> int ret = intel_atomic_lock_global_state(&new_bw_state->base);
>> if (ret)
>> return ret;
>> @@ -1309,7 +1326,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>> if (new_min_cdclk <= cdclk_state->bw_min_cdclk)
>> return 0;
>>
>> - drm_dbg_kms(&dev_priv->drm,
>> + drm_dbg_kms(display->drm,
>> "new bandwidth min cdclk (%d kHz) > old min cdclk (%d kHz)\n",
>> new_min_cdclk, cdclk_state->bw_min_cdclk);
>> *need_cdclk_calc = true;
>> @@ -1319,7 +1336,7 @@ int intel_bw_calc_min_cdclk(struct intel_atomic_state *state,
>>
>> static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *changed)
>> {
>> - struct drm_i915_private *i915 = to_i915(state->base.dev);
>> + struct intel_display *display = to_intel_display(state);
>> const struct intel_crtc_state *new_crtc_state, *old_crtc_state;
>> struct intel_crtc *crtc;
>> int i;
>> @@ -1353,7 +1370,7 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan
>>
>> *changed = true;
>>
>> - drm_dbg_kms(&i915->drm,
>> + drm_dbg_kms(display->drm,
>> "[CRTC:%d:%s] data rate %u num active planes %u\n",
>> crtc->base.base.id, crtc->base.name,
>> new_bw_state->data_rate[crtc->pipe],
>> @@ -1365,14 +1382,15 @@ static int intel_bw_check_data_rate(struct intel_atomic_state *state, bool *chan
>>
>> int intel_bw_atomic_check(struct intel_atomic_state *state)
>> {
>> + struct intel_display *display = to_intel_display(state);
>> + struct drm_i915_private *i915 = to_i915(display->drm);
>> bool changed = false;
>> - struct drm_i915_private *i915 = to_i915(state->base.dev);
>> struct intel_bw_state *new_bw_state;
>> const struct intel_bw_state *old_bw_state;
>> int ret;
>>
>> /* FIXME earlier gens need some checks too */
>> - if (DISPLAY_VER(i915) < 11)
>> + if (DISPLAY_VER(display) < 11)
>> return 0;
>>
>> ret = intel_bw_check_data_rate(state, &changed);
>> @@ -1395,7 +1413,7 @@ int intel_bw_atomic_check(struct intel_atomic_state *state)
>> if (!changed)
>> return 0;
>>
>> - ret = intel_bw_check_qgv_points(i915, old_bw_state, new_bw_state);
>> + ret = intel_bw_check_qgv_points(display, old_bw_state, new_bw_state);
>> if (ret)
>> return ret;
>>
>> @@ -1407,8 +1425,8 @@ int intel_bw_atomic_check(struct intel_atomic_state *state)
>> static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
>> const struct intel_crtc_state *crtc_state)
>> {
>> + struct intel_display *display = to_intel_display(crtc_state);
>> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
>> - struct drm_i915_private *i915 = to_i915(crtc->base.dev);
>>
>> bw_state->data_rate[crtc->pipe] =
>> intel_bw_crtc_data_rate(crtc_state);
>> @@ -1416,7 +1434,7 @@ static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
>> intel_bw_crtc_num_active_planes(crtc_state);
>> bw_state->force_check_qgv = true;
>>
>> - drm_dbg_kms(&i915->drm, "pipe %c data rate %u num active planes %u\n",
>> + drm_dbg_kms(display->drm, "pipe %c data rate %u num active planes %u\n",
>> pipe_name(crtc->pipe),
>> bw_state->data_rate[crtc->pipe],
>> bw_state->num_active_planes[crtc->pipe]);
>> @@ -1499,8 +1517,8 @@ int intel_bw_init(struct drm_i915_private *i915)
>> * Limit this only if we have SAGV. And for Display version 14 onwards
>> * sagv is handled though pmdemand requests
>> */
>> - if (intel_has_sagv(i915) && IS_DISPLAY_VER(i915, 11, 13))
>> - icl_force_disable_sagv(i915, state);
>> + if (intel_has_sagv(i915) && IS_DISPLAY_VER(display, 11, 13))
>> + icl_force_disable_sagv(display, state);
>>
>> return 0;
>> }
>>
>> --
>> 2.48.1
>>
>
>--
>Matt Roper
>Graphics Software Engineer
>Linux GPU Platform Enablement
>Intel Corporation
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2025-03-14 21:31 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-11 17:04 [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 1/3] drm/i915/display: Convert intel_bw.c internally to intel_display Gustavo Sousa
2025-03-11 18:04 ` Jani Nikula
2025-03-13 13:10 ` Gustavo Sousa
2025-03-14 21:17 ` Matt Roper
2025-03-14 21:29 ` Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 2/3] drm/i915/display: Convert intel_bw.c externally " Gustavo Sousa
2025-03-11 17:04 ` [PATCH v5 3/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
2025-03-11 18:38 ` ✓ CI.Patch_applied: success for drm/i915/xe3lpd: Update bandwidth parameters (rev5) Patchwork
2025-03-11 18:39 ` ✓ CI.checkpatch: " Patchwork
2025-03-11 18:40 ` ✓ CI.KUnit: " Patchwork
2025-03-11 18:57 ` ✓ CI.Build: " Patchwork
2025-03-11 18:59 ` ✓ CI.Hooks: " Patchwork
2025-03-11 19:01 ` ✗ CI.checksparse: warning " Patchwork
2025-03-11 19:22 ` ✓ Xe.CI.BAT: success " Patchwork
2025-03-12 10:50 ` ✗ Xe.CI.Full: failure " Patchwork
2025-03-13 14:02 ` Gustavo Sousa
2025-03-13 14:40 ` [PATCH v5 0/3] drm/i915/xe3lpd: Update bandwidth parameters Gustavo Sousa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox