* [PATCH v7 00/11] Panel replay selective update support
@ 2024-04-19 12:11 Jouni Högander
2024-04-19 12:11 ` [PATCH v7 01/11] drm/i915/psr: Rename has_psr2 as has_sel_update Jouni Högander
` (17 more replies)
0 siblings, 18 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
This patch set is implementing panel replay selective update support
for Intel hardware.
v7:
- use always vsc revision 0x6 for Panel Replay
v6:
- fixes split to separate patch set
v5:
- do not use PSR2_STATUS for PSR1
v4:
- do not rename intel_psr_enabled
- do not add sel_update_et_enabled into struct intel_psr
v3:
- do not disable panel replay by default
- set has_psr for panel replay as well
- enable sink before link training
- do not apply all PSR workarounds for panel replay
- do not write/read registers/bits not applicable for panel replay
- use psr bit definitions in granularity configuration as well
- goto unsupported instead of return when global enabled check fails
- update module parameter descriptions.
v2:
- make psr pause/resume to work for panel replay as well
Jouni Högander (11):
drm/i915/psr: Rename has_psr2 as has_sel_update
drm/i915/dp: Use always vsc revision 0x6 for Panel Replay
drm/i915/psr: Rename psr2_enabled as sel_update_enabled
drm/panelreplay: dpcd register definition for panelreplay SU
drm/i915/psr: Detect panel replay selective update support
drm/i915/psr: Modify intel_dp_get_su_granularity to support panel
replay
drm/i915/psr: Panel replay uses SRD_STATUS to track it's status
drm/i915/psr: Do not apply workarounds in case of panel replay
drm/i915/psr: Update PSR module parameter descriptions
drm/i915/psr: Split intel_psr2_config_valid for panel replay
drm/i915/psr: Add panel replay sel update support to debugfs interface
.../drm/i915/display/intel_crtc_state_dump.c | 10 +-
drivers/gpu/drm/i915/display/intel_display.c | 2 +-
.../drm/i915/display/intel_display_params.c | 5 +-
.../drm/i915/display/intel_display_types.h | 5 +-
drivers/gpu/drm/i915/display/intel_dp.c | 17 +-
drivers/gpu/drm/i915/display/intel_fbc.c | 5 +-
drivers/gpu/drm/i915/display/intel_hdmi.c | 3 +-
drivers/gpu/drm/i915/display/intel_psr.c | 227 ++++++++++++------
include/drm/display/drm_dp.h | 6 +
9 files changed, 185 insertions(+), 95 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 24+ messages in thread
* [PATCH v7 01/11] drm/i915/psr: Rename has_psr2 as has_sel_update
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 02/11] drm/i915/dp: Use always vsc revision 0x6 for Panel Replay Jouni Högander
` (16 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
We are going to reuse has_psr2 for panel_replay as well. Rename it
as has_sel_update to avoid confusion.
v2: Rebase
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
---
drivers/gpu/drm/i915/display/intel_crtc_state_dump.c | 10 +++++-----
drivers/gpu/drm/i915/display/intel_display.c | 2 +-
drivers/gpu/drm/i915/display/intel_display_types.h | 2 +-
drivers/gpu/drm/i915/display/intel_dp.c | 2 +-
drivers/gpu/drm/i915/display/intel_fbc.c | 2 +-
drivers/gpu/drm/i915/display/intel_psr.c | 10 +++++-----
6 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
index ccaa4cb2809b..2c391714f28e 100644
--- a/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
+++ b/drivers/gpu/drm/i915/display/intel_crtc_state_dump.c
@@ -251,11 +251,11 @@ void intel_crtc_state_dump(const struct intel_crtc_state *pipe_config,
drm_printf(&p, "sdp split: %s\n",
str_enabled_disabled(pipe_config->sdp_split_enable));
- drm_printf(&p, "psr: %s, psr2: %s, panel replay: %s, selective fetch: %s\n",
- str_enabled_disabled(pipe_config->has_psr),
- str_enabled_disabled(pipe_config->has_psr2),
- str_enabled_disabled(pipe_config->has_panel_replay),
- str_enabled_disabled(pipe_config->enable_psr2_sel_fetch));
+ drm_printf(&p, "psr: %s, selective update: %s, panel replay: %s, selective fetch: %s\n",
+ str_enabled_disabled(pipe_config->has_psr),
+ str_enabled_disabled(pipe_config->has_sel_update),
+ str_enabled_disabled(pipe_config->has_panel_replay),
+ str_enabled_disabled(pipe_config->enable_psr2_sel_fetch));
}
drm_printf(&p, "framestart delay: %d, MSA timing delay: %d\n",
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 96ed1490fec7..bd633522d645 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -5320,7 +5320,7 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
*/
if (current_config->has_panel_replay || pipe_config->has_panel_replay) {
PIPE_CONF_CHECK_BOOL(has_psr);
- PIPE_CONF_CHECK_BOOL(has_psr2);
+ PIPE_CONF_CHECK_BOOL(has_sel_update);
PIPE_CONF_CHECK_BOOL(enable_psr2_sel_fetch);
PIPE_CONF_CHECK_BOOL(enable_psr2_su_region_et);
PIPE_CONF_CHECK_BOOL(has_panel_replay);
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 62f7a30c37dc..6747c10da298 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1189,7 +1189,7 @@ struct intel_crtc_state {
/* PSR is supported but might not be enabled due the lack of enabled planes */
bool has_psr;
- bool has_psr2;
+ bool has_sel_update;
bool enable_psr2_sel_fetch;
bool enable_psr2_su_region_et;
bool req_psr2_sdp_prior_scanline;
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 163da48bc406..cdb4ad23b94a 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -2664,7 +2664,7 @@ static void intel_dp_compute_vsc_sdp(struct intel_dp *intel_dp,
if (intel_dp_needs_vsc_sdp(crtc_state, conn_state)) {
intel_dp_compute_vsc_colorimetry(crtc_state, conn_state,
vsc);
- } else if (crtc_state->has_psr2) {
+ } else if (crtc_state->has_psr && crtc_state->has_sel_update) {
/*
* [PSR2 without colorimetry]
* Prepare VSC Header for SU as per eDP 1.4 spec, Table 6-11
diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
index 7c4d2b2bf20b..5bfce36fb892 100644
--- a/drivers/gpu/drm/i915/display/intel_fbc.c
+++ b/drivers/gpu/drm/i915/display/intel_fbc.c
@@ -1250,7 +1250,7 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state,
* Recommendation is to keep this combination disabled
* Bspec: 50422 HSD: 14010260002
*/
- if (IS_DISPLAY_VER(i915, 12, 14) && crtc_state->has_psr2) {
+ if (IS_DISPLAY_VER(i915, 12, 14) && crtc_state->has_sel_update) {
plane_state->no_fbc_reason = "PSR2 enabled";
return 0;
}
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index f5b33335a9ae..a2f7d998d342 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -651,7 +651,7 @@ void intel_psr_enable_sink(struct intel_dp *intel_dp,
struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u8 dpcd_val = DP_PSR_ENABLE;
- if (crtc_state->has_psr2) {
+ if (crtc_state->has_sel_update) {
/* Enable ALPM at sink for psr2 */
if (!crtc_state->has_panel_replay) {
drm_dp_dpcd_writeb(&intel_dp->aux,
@@ -1639,7 +1639,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
if (!crtc_state->has_psr)
return;
- crtc_state->has_psr2 = intel_psr2_config_valid(intel_dp, crtc_state);
+ crtc_state->has_sel_update = intel_psr2_config_valid(intel_dp, crtc_state);
}
void intel_psr_get_config(struct intel_encoder *encoder,
@@ -1672,7 +1672,7 @@ void intel_psr_get_config(struct intel_encoder *encoder,
pipe_config->has_psr = true;
}
- pipe_config->has_psr2 = intel_dp->psr.psr2_enabled;
+ pipe_config->has_sel_update = intel_dp->psr.psr2_enabled;
pipe_config->infoframes.enable |= intel_hdmi_infoframe_enable(DP_SDP_VSC);
if (!intel_dp->psr.psr2_enabled)
@@ -1960,7 +1960,7 @@ static void intel_psr_enable_locked(struct intel_dp *intel_dp,
drm_WARN_ON(&dev_priv->drm, intel_dp->psr.enabled);
- intel_dp->psr.psr2_enabled = crtc_state->has_psr2;
+ intel_dp->psr.psr2_enabled = crtc_state->has_sel_update;
intel_dp->psr.panel_replay_enabled = crtc_state->has_panel_replay;
intel_dp->psr.busy_frontbuffer_bits = 0;
intel_dp->psr.pipe = to_intel_crtc(crtc_state->uapi.crtc)->pipe;
@@ -2688,7 +2688,7 @@ void intel_psr_pre_plane_update(struct intel_atomic_state *state,
needs_to_disable |= intel_crtc_needs_modeset(new_crtc_state);
needs_to_disable |= !new_crtc_state->has_psr;
needs_to_disable |= !new_crtc_state->active_planes;
- needs_to_disable |= new_crtc_state->has_psr2 != psr->psr2_enabled;
+ needs_to_disable |= new_crtc_state->has_sel_update != psr->psr2_enabled;
needs_to_disable |= DISPLAY_VER(i915) < 11 &&
new_crtc_state->wm_level_disabled;
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 02/11] drm/i915/dp: Use always vsc revision 0x6 for Panel Replay
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
2024-04-19 12:11 ` [PATCH v7 01/11] drm/i915/psr: Rename has_psr2 as has_sel_update Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 03/11] drm/i915/psr: Rename psr2_enabled as sel_update_enabled Jouni Högander
` (15 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
We are about to enable Panel Replay Selective update mode. Vsc revision 0x6
for Panel Replay no matter if it is selective update or full frame update
mode. Take this into account when preparing VSC SDP package.
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index cdb4ad23b94a..3dd5e6238ca2 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -2664,14 +2664,6 @@ static void intel_dp_compute_vsc_sdp(struct intel_dp *intel_dp,
if (intel_dp_needs_vsc_sdp(crtc_state, conn_state)) {
intel_dp_compute_vsc_colorimetry(crtc_state, conn_state,
vsc);
- } else if (crtc_state->has_psr && crtc_state->has_sel_update) {
- /*
- * [PSR2 without colorimetry]
- * Prepare VSC Header for SU as per eDP 1.4 spec, Table 6-11
- * 3D stereo + PSR/PSR2 + Y-coordinate.
- */
- vsc->revision = 0x4;
- vsc->length = 0xe;
} else if (crtc_state->has_panel_replay) {
/*
* [Panel Replay without colorimetry info]
@@ -2680,6 +2672,14 @@ static void intel_dp_compute_vsc_sdp(struct intel_dp *intel_dp,
*/
vsc->revision = 0x6;
vsc->length = 0x10;
+ } else if (crtc_state->has_psr && crtc_state->has_sel_update) {
+ /*
+ * [PSR2 without colorimetry]
+ * Prepare VSC Header for SU as per eDP 1.4 spec, Table 6-11
+ * 3D stereo + PSR/PSR2 + Y-coordinate.
+ */
+ vsc->revision = 0x4;
+ vsc->length = 0xe;
} else {
/*
* [PSR1]
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 03/11] drm/i915/psr: Rename psr2_enabled as sel_update_enabled
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
2024-04-19 12:11 ` [PATCH v7 01/11] drm/i915/psr: Rename has_psr2 as has_sel_update Jouni Högander
2024-04-19 12:11 ` [PATCH v7 02/11] drm/i915/dp: Use always vsc revision 0x6 for Panel Replay Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 04/11] drm/panelreplay: dpcd register definition for panelreplay SU Jouni Högander
` (14 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
We are about to reuse psr2_enabled for panel replay as well. Rename
it as sel_update_enabled to avoid confusion.
v3: Rebase
v2: Rebase
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
---
.../drm/i915/display/intel_display_types.h | 2 +-
drivers/gpu/drm/i915/display/intel_psr.c | 52 +++++++++----------
2 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 6747c10da298..150e6c8e0320 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1695,7 +1695,7 @@ struct intel_psr {
unsigned int busy_frontbuffer_bits;
bool sink_psr2_support;
bool link_standby;
- bool psr2_enabled;
+ bool sel_update_enabled;
bool psr2_sel_fetch_enabled;
bool psr2_sel_fetch_cff_enabled;
bool req_psr2_sdp_prior_scanline;
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index a2f7d998d342..af18728460c9 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -356,12 +356,12 @@ static void psr_irq_control(struct intel_dp *intel_dp)
}
static void psr_event_print(struct drm_i915_private *i915,
- u32 val, bool psr2_enabled)
+ u32 val, bool sel_update_enabled)
{
drm_dbg_kms(&i915->drm, "PSR exit events: 0x%x\n", val);
if (val & PSR_EVENT_PSR2_WD_TIMER_EXPIRE)
drm_dbg_kms(&i915->drm, "\tPSR2 watchdog timer expired\n");
- if ((val & PSR_EVENT_PSR2_DISABLED) && psr2_enabled)
+ if ((val & PSR_EVENT_PSR2_DISABLED) && sel_update_enabled)
drm_dbg_kms(&i915->drm, "\tPSR2 disabled\n");
if (val & PSR_EVENT_SU_DIRTY_FIFO_UNDERRUN)
drm_dbg_kms(&i915->drm, "\tSU dirty FIFO underrun\n");
@@ -389,7 +389,7 @@ static void psr_event_print(struct drm_i915_private *i915,
drm_dbg_kms(&i915->drm, "\tVBI enabled\n");
if (val & PSR_EVENT_LPSP_MODE_EXIT)
drm_dbg_kms(&i915->drm, "\tLPSP mode exited\n");
- if ((val & PSR_EVENT_PSR_DISABLE) && !psr2_enabled)
+ if ((val & PSR_EVENT_PSR_DISABLE) && !sel_update_enabled)
drm_dbg_kms(&i915->drm, "\tPSR disabled\n");
}
@@ -417,7 +417,7 @@ void intel_psr_irq_handler(struct intel_dp *intel_dp, u32 psr_iir)
val = intel_de_rmw(dev_priv, PSR_EVENT(cpu_transcoder), 0, 0);
- psr_event_print(dev_priv, val, intel_dp->psr.psr2_enabled);
+ psr_event_print(dev_priv, val, intel_dp->psr.sel_update_enabled);
}
}
@@ -1672,10 +1672,10 @@ void intel_psr_get_config(struct intel_encoder *encoder,
pipe_config->has_psr = true;
}
- pipe_config->has_sel_update = intel_dp->psr.psr2_enabled;
+ pipe_config->has_sel_update = intel_dp->psr.sel_update_enabled;
pipe_config->infoframes.enable |= intel_hdmi_infoframe_enable(DP_SDP_VSC);
- if (!intel_dp->psr.psr2_enabled)
+ if (!intel_dp->psr.sel_update_enabled)
goto unlock;
if (HAS_PSR2_SEL_FETCH(dev_priv)) {
@@ -1711,7 +1711,7 @@ static void intel_psr_activate(struct intel_dp *intel_dp)
/* psr1, psr2 and panel-replay are mutually exclusive.*/
if (intel_dp->psr.panel_replay_enabled)
dg2_activate_panel_replay(intel_dp);
- else if (intel_dp->psr.psr2_enabled)
+ else if (intel_dp->psr.sel_update_enabled)
hsw_activate_psr2(intel_dp);
else
hsw_activate_psr1(intel_dp);
@@ -1770,7 +1770,7 @@ static void lnl_alpm_configure(struct intel_dp *intel_dp)
struct intel_psr *psr = &intel_dp->psr;
u32 alpm_ctl;
- if (DISPLAY_VER(dev_priv) < 20 || (!intel_dp->psr.psr2_enabled &&
+ if (DISPLAY_VER(dev_priv) < 20 || (!intel_dp->psr.sel_update_enabled &&
!intel_dp_is_edp(intel_dp)))
return;
@@ -1894,7 +1894,7 @@ static void intel_psr_enable_source(struct intel_dp *intel_dp,
*/
wm_optimization_wa(intel_dp, crtc_state);
- if (intel_dp->psr.psr2_enabled) {
+ if (intel_dp->psr.sel_update_enabled) {
if (DISPLAY_VER(dev_priv) == 9)
intel_de_rmw(dev_priv, CHICKEN_TRANS(cpu_transcoder), 0,
PSR2_VSC_ENABLE_PROG_HEADER |
@@ -1960,7 +1960,7 @@ static void intel_psr_enable_locked(struct intel_dp *intel_dp,
drm_WARN_ON(&dev_priv->drm, intel_dp->psr.enabled);
- intel_dp->psr.psr2_enabled = crtc_state->has_sel_update;
+ intel_dp->psr.sel_update_enabled = crtc_state->has_sel_update;
intel_dp->psr.panel_replay_enabled = crtc_state->has_panel_replay;
intel_dp->psr.busy_frontbuffer_bits = 0;
intel_dp->psr.pipe = to_intel_crtc(crtc_state->uapi.crtc)->pipe;
@@ -1981,7 +1981,7 @@ static void intel_psr_enable_locked(struct intel_dp *intel_dp,
drm_dbg_kms(&dev_priv->drm, "Enabling Panel Replay\n");
} else {
drm_dbg_kms(&dev_priv->drm, "Enabling PSR%s\n",
- intel_dp->psr.psr2_enabled ? "2" : "1");
+ intel_dp->psr.sel_update_enabled ? "2" : "1");
/*
* Panel replay has to be enabled before link training: doing it
@@ -2021,7 +2021,7 @@ static void intel_psr_exit(struct intel_dp *intel_dp)
if (intel_dp->psr.panel_replay_enabled) {
intel_de_rmw(dev_priv, TRANS_DP2_CTL(intel_dp->psr.transcoder),
TRANS_DP2_PANEL_REPLAY_ENABLE, 0);
- } else if (intel_dp->psr.psr2_enabled) {
+ } else if (intel_dp->psr.sel_update_enabled) {
tgl_disallow_dc3co_on_psr2_exit(intel_dp);
val = intel_de_rmw(dev_priv, EDP_PSR2_CTL(cpu_transcoder),
@@ -2044,7 +2044,7 @@ static void intel_psr_wait_exit_locked(struct intel_dp *intel_dp)
i915_reg_t psr_status;
u32 psr_status_mask;
- if (intel_dp->psr.psr2_enabled) {
+ if (intel_dp->psr.sel_update_enabled) {
psr_status = EDP_PSR2_STATUS(cpu_transcoder);
psr_status_mask = EDP_PSR2_STATUS_STATE_MASK;
} else {
@@ -2072,7 +2072,7 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
drm_dbg_kms(&dev_priv->drm, "Disabling Panel Replay\n");
else
drm_dbg_kms(&dev_priv->drm, "Disabling PSR%s\n",
- intel_dp->psr.psr2_enabled ? "2" : "1");
+ intel_dp->psr.sel_update_enabled ? "2" : "1");
intel_psr_exit(intel_dp);
intel_psr_wait_exit_locked(intel_dp);
@@ -2085,7 +2085,7 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
intel_de_rmw(dev_priv, GEN8_CHICKEN_DCPR_1,
wa_16013835468_bit_get(intel_dp), 0);
- if (intel_dp->psr.psr2_enabled) {
+ if (intel_dp->psr.sel_update_enabled) {
/* Wa_16012604467:adlp,mtl[a0,b0] */
if (IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0))
intel_de_rmw(dev_priv,
@@ -2114,12 +2114,12 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
intel_psr_get_enable_sink_offset(intel_dp), 0);
if (!intel_dp->psr.panel_replay_enabled &&
- intel_dp->psr.psr2_enabled)
+ intel_dp->psr.sel_update_enabled)
drm_dp_dpcd_writeb(&intel_dp->aux, DP_RECEIVER_ALPM_CONFIG, 0);
intel_dp->psr.enabled = false;
intel_dp->psr.panel_replay_enabled = false;
- intel_dp->psr.psr2_enabled = false;
+ intel_dp->psr.sel_update_enabled = false;
intel_dp->psr.psr2_sel_fetch_enabled = false;
intel_dp->psr.psr2_sel_fetch_cff_enabled = false;
}
@@ -2688,7 +2688,7 @@ void intel_psr_pre_plane_update(struct intel_atomic_state *state,
needs_to_disable |= intel_crtc_needs_modeset(new_crtc_state);
needs_to_disable |= !new_crtc_state->has_psr;
needs_to_disable |= !new_crtc_state->active_planes;
- needs_to_disable |= new_crtc_state->has_sel_update != psr->psr2_enabled;
+ needs_to_disable |= new_crtc_state->has_sel_update != psr->sel_update_enabled;
needs_to_disable |= DISPLAY_VER(i915) < 11 &&
new_crtc_state->wm_level_disabled;
@@ -2806,7 +2806,7 @@ void intel_psr_wait_for_idle_locked(const struct intel_crtc_state *new_crtc_stat
if (!intel_dp->psr.enabled)
continue;
- if (intel_dp->psr.psr2_enabled)
+ if (intel_dp->psr.sel_update_enabled)
ret = _psr2_ready_for_pipe_update_locked(intel_dp);
else
ret = _psr1_ready_for_pipe_update_locked(intel_dp);
@@ -2827,7 +2827,7 @@ static bool __psr_wait_for_idle_locked(struct intel_dp *intel_dp)
if (!intel_dp->psr.enabled)
return false;
- if (intel_dp->psr.psr2_enabled) {
+ if (intel_dp->psr.sel_update_enabled) {
reg = EDP_PSR2_STATUS(cpu_transcoder);
mask = EDP_PSR2_STATUS_STATE_MASK;
} else {
@@ -3068,7 +3068,7 @@ tgl_dc3co_flush_locked(struct intel_dp *intel_dp, unsigned int frontbuffer_bits,
{
struct drm_i915_private *i915 = dp_to_i915(intel_dp);
- if (!intel_dp->psr.dc3co_exitline || !intel_dp->psr.psr2_enabled ||
+ if (!intel_dp->psr.dc3co_exitline || !intel_dp->psr.sel_update_enabled ||
!intel_dp->psr.active)
return;
@@ -3266,7 +3266,7 @@ static void psr_alpm_check(struct intel_dp *intel_dp)
u8 val;
int r;
- if (!psr->psr2_enabled)
+ if (!psr->sel_update_enabled)
return;
r = drm_dp_dpcd_readb(aux, DP_RECEIVER_ALPM_STATUS, &val);
@@ -3446,7 +3446,7 @@ psr_source_status(struct intel_dp *intel_dp, struct seq_file *m)
const char *status = "unknown";
u32 val, status_val;
- if (intel_dp->psr.psr2_enabled) {
+ if (intel_dp->psr.sel_update_enabled) {
static const char * const live_status[] = {
"IDLE",
"CAPTURE",
@@ -3510,7 +3510,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
if (psr->panel_replay_enabled)
status = "Panel Replay Enabled";
else if (psr->enabled)
- status = psr->psr2_enabled ? "PSR2 enabled" : "PSR1 enabled";
+ status = psr->sel_update_enabled ? "PSR2 enabled" : "PSR1 enabled";
else
status = "disabled";
seq_printf(m, "PSR mode: %s\n", status);
@@ -3525,7 +3525,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
if (psr->panel_replay_enabled) {
val = intel_de_read(dev_priv, TRANS_DP2_CTL(cpu_transcoder));
enabled = val & TRANS_DP2_PANEL_REPLAY_ENABLE;
- } else if (psr->psr2_enabled) {
+ } else if (psr->sel_update_enabled) {
val = intel_de_read(dev_priv, EDP_PSR2_CTL(cpu_transcoder));
enabled = val & EDP_PSR2_ENABLE;
} else {
@@ -3551,7 +3551,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
seq_printf(m, "Last exit at: %lld\n", psr->last_exit);
}
- if (psr->psr2_enabled) {
+ if (psr->sel_update_enabled) {
u32 su_frames_val[3];
int frame;
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 04/11] drm/panelreplay: dpcd register definition for panelreplay SU
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (2 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 03/11] drm/i915/psr: Rename psr2_enabled as sel_update_enabled Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 05/11] drm/i915/psr: Detect panel replay selective update support Jouni Högander
` (13 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
Add definitions for panel replay selective update
v2: Remove unnecessary Cc from commit message
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
---
include/drm/display/drm_dp.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/include/drm/display/drm_dp.h b/include/drm/display/drm_dp.h
index 0b032faa8cf2..906949ca3cee 100644
--- a/include/drm/display/drm_dp.h
+++ b/include/drm/display/drm_dp.h
@@ -548,6 +548,12 @@
# define DP_PANEL_REPLAY_SUPPORT (1 << 0)
# define DP_PANEL_REPLAY_SU_SUPPORT (1 << 1)
+#define DP_PANEL_PANEL_REPLAY_CAPABILITY 0xb1
+# define DP_PANEL_PANEL_REPLAY_SU_GRANULARITY_REQUIRED (1 << 5)
+
+#define DP_PANEL_PANEL_REPLAY_X_GRANULARITY 0xb2
+#define DP_PANEL_PANEL_REPLAY_Y_GRANULARITY 0xb4
+
/* Link Configuration */
#define DP_LINK_BW_SET 0x100
# define DP_LINK_RATE_TABLE 0x00 /* eDP 1.4 */
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 05/11] drm/i915/psr: Detect panel replay selective update support
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (3 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 04/11] drm/panelreplay: dpcd register definition for panelreplay SU Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay Jouni Högander
` (12 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
Add new boolean to store panel replay selective update support of sink into
intel_psr struct. Detect panel replay selective update support and store
it into this new boolean.
v3: Clear sink_panel_replay_su_support in intel_dp_detect
v2: Merge adding new boolean into this patch
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
drivers/gpu/drm/i915/display/intel_display_types.h | 1 +
drivers/gpu/drm/i915/display/intel_dp.c | 1 +
drivers/gpu/drm/i915/display/intel_psr.c | 10 ++++++++--
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 150e6c8e0320..a693728f8344 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1719,6 +1719,7 @@ struct intel_psr {
u16 su_y_granularity;
bool source_panel_replay_support;
bool sink_panel_replay_support;
+ bool sink_panel_replay_su_support;
bool panel_replay_enabled;
u32 dc3co_exitline;
u32 dc3co_exit_delay;
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 3dd5e6238ca2..7e97a92509d1 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -5862,6 +5862,7 @@ intel_dp_detect(struct drm_connector *connector,
memset(&intel_dp->compliance, 0, sizeof(intel_dp->compliance));
memset(intel_connector->dp.dsc_dpcd, 0, sizeof(intel_connector->dp.dsc_dpcd));
intel_dp->psr.sink_panel_replay_support = false;
+ intel_dp->psr.sink_panel_replay_su_support = false;
intel_dp_mst_disconnect(intel_dp);
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index af18728460c9..b94f8e33ed1f 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -520,9 +520,15 @@ static void _panel_replay_init_dpcd(struct intel_dp *intel_dp)
return;
}
- drm_dbg_kms(&i915->drm,
- "Panel replay is supported by panel\n");
intel_dp->psr.sink_panel_replay_support = true;
+
+ if (pr_dpcd & DP_PANEL_REPLAY_SU_SUPPORT)
+ intel_dp->psr.sink_panel_replay_su_support = true;
+
+ drm_dbg_kms(&i915->drm,
+ "Panel replay %sis supported by panel\n",
+ intel_dp->psr.sink_panel_replay_su_support ?
+ "selective_update " : "");
}
static void _psr_init_dpcd(struct intel_dp *intel_dp)
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (4 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 05/11] drm/i915/psr: Detect panel replay selective update support Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-29 11:02 ` Manna, Animesh
2024-04-19 12:11 ` [PATCH v7 07/11] drm/i915/psr: Panel replay uses SRD_STATUS to track it's status Jouni Högander
` (11 subsequent siblings)
17 siblings, 1 reply; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
Currently intel_dp_get_su_granularity doesn't support panel replay.
This fix modifies it to support panel replay as well.
v2: rely on PSR definitions on common bits
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
---
drivers/gpu/drm/i915/display/intel_psr.c | 62 +++++++++++++++++++++---
1 file changed, 55 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index b94f8e33ed1f..29400fac13c2 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -466,6 +466,40 @@ static u8 intel_dp_get_sink_sync_latency(struct intel_dp *intel_dp)
return val;
}
+static u8 intel_dp_get_su_capability(struct intel_dp *intel_dp)
+{
+ u8 su_capability;
+
+ if (intel_dp->psr.sink_panel_replay_su_support)
+ drm_dp_dpcd_read(&intel_dp->aux,
+ DP_PANEL_PANEL_REPLAY_X_GRANULARITY,
+ &su_capability, 1);
+ else
+ su_capability = intel_dp->psr_dpcd[1];
+
+ return su_capability;
+}
+
+static unsigned int
+intel_dp_get_su_x_granularity_offset(struct intel_dp *intel_dp)
+{
+ return intel_dp->psr.sink_panel_replay_su_support ?
+ DP_PANEL_PANEL_REPLAY_X_GRANULARITY :
+ DP_PSR2_SU_X_GRANULARITY;
+}
+
+static unsigned int
+intel_dp_get_su_y_granularity_offset(struct intel_dp *intel_dp)
+{
+ return intel_dp->psr.sink_panel_replay_su_support ?
+ DP_PANEL_PANEL_REPLAY_Y_GRANULARITY :
+ DP_PSR2_SU_Y_GRANULARITY;
+}
+
+/*
+ * Note: Bits related to granularity are same in panel replay and psr
+ * registers. Rely on PSR definitions on these "common" bits.
+ */
static void intel_dp_get_su_granularity(struct intel_dp *intel_dp)
{
struct drm_i915_private *i915 = dp_to_i915(intel_dp);
@@ -473,18 +507,29 @@ static void intel_dp_get_su_granularity(struct intel_dp *intel_dp)
u16 w;
u8 y;
- /* If sink don't have specific granularity requirements set legacy ones */
- if (!(intel_dp->psr_dpcd[1] & DP_PSR2_SU_GRANULARITY_REQUIRED)) {
+ /*
+ * TODO: Do we need to take into account panel supporting both PSR and
+ * Panel replay?
+ */
+
+ /*
+ * If sink don't have specific granularity requirements set legacy
+ * ones.
+ */
+ if (!(intel_dp_get_su_capability(intel_dp) &
+ DP_PSR2_SU_GRANULARITY_REQUIRED)) {
/* As PSR2 HW sends full lines, we do not care about x granularity */
w = 4;
y = 4;
goto exit;
}
- r = drm_dp_dpcd_read(&intel_dp->aux, DP_PSR2_SU_X_GRANULARITY, &w, 2);
+ r = drm_dp_dpcd_read(&intel_dp->aux,
+ intel_dp_get_su_x_granularity_offset(intel_dp),
+ &w, 2);
if (r != 2)
drm_dbg_kms(&i915->drm,
- "Unable to read DP_PSR2_SU_X_GRANULARITY\n");
+ "Unable to read selective update x granularity\n");
/*
* Spec says that if the value read is 0 the default granularity should
* be used instead.
@@ -492,10 +537,12 @@ static void intel_dp_get_su_granularity(struct intel_dp *intel_dp)
if (r != 2 || w == 0)
w = 4;
- r = drm_dp_dpcd_read(&intel_dp->aux, DP_PSR2_SU_Y_GRANULARITY, &y, 1);
+ r = drm_dp_dpcd_read(&intel_dp->aux,
+ intel_dp_get_su_y_granularity_offset(intel_dp),
+ &y, 1);
if (r != 1) {
drm_dbg_kms(&i915->drm,
- "Unable to read DP_PSR2_SU_Y_GRANULARITY\n");
+ "Unable to read selective update y granularity\n");
y = 4;
}
if (y == 0)
@@ -588,7 +635,8 @@ void intel_psr_init_dpcd(struct intel_dp *intel_dp)
if (intel_dp->psr_dpcd[0])
_psr_init_dpcd(intel_dp);
- if (intel_dp->psr.sink_psr2_support)
+ if (intel_dp->psr.sink_psr2_support ||
+ intel_dp->psr.sink_panel_replay_su_support)
intel_dp_get_su_granularity(intel_dp);
}
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 07/11] drm/i915/psr: Panel replay uses SRD_STATUS to track it's status
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (5 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 08/11] drm/i915/psr: Do not apply workarounds in case of panel replay Jouni Högander
` (10 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
DP Panel replay uses SRD_STATUS to track it's status despite selective
update mode.
Bspec: 53370, 68920
v3:
- do not use PSR2_STATUS for PSR1
v2:
- use intel_dp_is_edp to differentiate
- modify debugfs status as well
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
drivers/gpu/drm/i915/display/intel_psr.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 29400fac13c2..7631aad5ee7a 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -2860,7 +2860,8 @@ void intel_psr_wait_for_idle_locked(const struct intel_crtc_state *new_crtc_stat
if (!intel_dp->psr.enabled)
continue;
- if (intel_dp->psr.sel_update_enabled)
+ if (intel_dp_is_edp(intel_dp) &&
+ intel_dp->psr.sel_update_enabled)
ret = _psr2_ready_for_pipe_update_locked(intel_dp);
else
ret = _psr1_ready_for_pipe_update_locked(intel_dp);
@@ -2881,7 +2882,8 @@ static bool __psr_wait_for_idle_locked(struct intel_dp *intel_dp)
if (!intel_dp->psr.enabled)
return false;
- if (intel_dp->psr.sel_update_enabled) {
+ if (!intel_dp->psr.panel_replay_enabled &&
+ intel_dp->psr.sel_update_enabled) {
reg = EDP_PSR2_STATUS(cpu_transcoder);
mask = EDP_PSR2_STATUS_STATE_MASK;
} else {
@@ -3500,7 +3502,7 @@ psr_source_status(struct intel_dp *intel_dp, struct seq_file *m)
const char *status = "unknown";
u32 val, status_val;
- if (intel_dp->psr.sel_update_enabled) {
+ if (intel_dp_is_edp(intel_dp) && intel_dp->psr.sel_update_enabled) {
static const char * const live_status[] = {
"IDLE",
"CAPTURE",
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 08/11] drm/i915/psr: Do not apply workarounds in case of panel replay
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (6 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 07/11] drm/i915/psr: Panel replay uses SRD_STATUS to track it's status Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 09/11] drm/i915/psr: Update PSR module parameter descriptions Jouni Högander
` (9 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
There are some workarounds that are not applicable for panel replay. Do not
apply these if panel replay is used.
Bspec: 66624, 50422
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbc.c | 5 +++--
drivers/gpu/drm/i915/display/intel_hdmi.c | 3 ++-
drivers/gpu/drm/i915/display/intel_psr.c | 16 ++++++++++------
3 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
index 5bfce36fb892..555058c0a1dc 100644
--- a/drivers/gpu/drm/i915/display/intel_fbc.c
+++ b/drivers/gpu/drm/i915/display/intel_fbc.c
@@ -1250,7 +1250,8 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state,
* Recommendation is to keep this combination disabled
* Bspec: 50422 HSD: 14010260002
*/
- if (IS_DISPLAY_VER(i915, 12, 14) && crtc_state->has_sel_update) {
+ if (IS_DISPLAY_VER(i915, 12, 14) && crtc_state->has_sel_update &&
+ !crtc_state->has_panel_replay) {
plane_state->no_fbc_reason = "PSR2 enabled";
return 0;
}
@@ -1258,7 +1259,7 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state,
/* Wa_14016291713 */
if ((IS_DISPLAY_VER(i915, 12, 13) ||
IS_DISPLAY_IP_STEP(i915, IP_VER(14, 0), STEP_A0, STEP_C0)) &&
- crtc_state->has_psr) {
+ crtc_state->has_psr && !crtc_state->has_panel_replay) {
plane_state->no_fbc_reason = "PSR1 enabled (Wa_14016291713)";
return 0;
}
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 5f6deceaf8ba..0faf2afa1c09 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -532,7 +532,8 @@ void hsw_write_infoframe(struct intel_encoder *encoder,
0);
/* Wa_14013475917 */
- if (!(IS_DISPLAY_VER(dev_priv, 13, 14) && crtc_state->has_psr && type == DP_SDP_VSC))
+ if (!(IS_DISPLAY_VER(dev_priv, 13, 14) && crtc_state->has_psr &&
+ !crtc_state->has_panel_replay && type == DP_SDP_VSC))
val |= hsw_infoframe_enable(type);
if (type == DP_SDP_VSC)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 7631aad5ee7a..bfdef79010c5 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1959,13 +1959,15 @@ static void intel_psr_enable_source(struct intel_dp *intel_dp,
* All supported adlp panels have 1-based X granularity, this may
* cause issues if non-supported panels are used.
*/
- if (IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0) ||
- IS_ALDERLAKE_P(dev_priv))
+ if (!intel_dp->psr.panel_replay_enabled &&
+ (IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0) ||
+ IS_ALDERLAKE_P(dev_priv)))
intel_de_rmw(dev_priv, hsw_chicken_trans_reg(dev_priv, cpu_transcoder),
0, ADLP_1_BASED_X_GRANULARITY);
/* Wa_16012604467:adlp,mtl[a0,b0] */
- if (IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0))
+ if (!intel_dp->psr.panel_replay_enabled &&
+ IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0))
intel_de_rmw(dev_priv,
MTL_CLKGATE_DIS_TRANS(cpu_transcoder), 0,
MTL_CLKGATE_DIS_TRANS_DMASC_GATING_DIS);
@@ -2141,7 +2143,8 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
if (intel_dp->psr.sel_update_enabled) {
/* Wa_16012604467:adlp,mtl[a0,b0] */
- if (IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0))
+ if (!intel_dp->psr.panel_replay_enabled &&
+ IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0))
intel_de_rmw(dev_priv,
MTL_CLKGATE_DIS_TRANS(cpu_transcoder),
MTL_CLKGATE_DIS_TRANS_DMASC_GATING_DIS, 0);
@@ -2627,8 +2630,9 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
goto skip_sel_fetch_set_loop;
/* Wa_14014971492 */
- if ((IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0) ||
- IS_ALDERLAKE_P(dev_priv) || IS_TIGERLAKE(dev_priv)) &&
+ if (!crtc_state->has_panel_replay &&
+ ((IS_DISPLAY_IP_STEP(dev_priv, IP_VER(14, 0), STEP_A0, STEP_B0) ||
+ IS_ALDERLAKE_P(dev_priv) || IS_TIGERLAKE(dev_priv))) &&
crtc_state->splitter.enable)
crtc_state->psr2_su_area.y1 = 0;
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 09/11] drm/i915/psr: Update PSR module parameter descriptions
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (7 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 08/11] drm/i915/psr: Do not apply workarounds in case of panel replay Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 10/11] drm/i915/psr: Split intel_psr2_config_valid for panel replay Jouni Högander
` (8 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
We are re-using PSR module parameters for panel replay. Update module
parameter descriptions with panel replay information:
enable_psr:
-1 (default) == follow what is in VBT
0 == disable PSR/PR
1 == Allow PSR1 and PR full frame update
2 == allow PSR1/PSR2 and PR Selective Update
enable_psr2_sel_fetch
0 == disable selective fetch for PSR and PR
1 (default) == allow selective fetch for PSR PR
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
---
drivers/gpu/drm/i915/display/intel_display_params.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display_params.c b/drivers/gpu/drm/i915/display/intel_display_params.c
index f40b223cc8a1..2c96656dc4c9 100644
--- a/drivers/gpu/drm/i915/display/intel_display_params.c
+++ b/drivers/gpu/drm/i915/display/intel_display_params.c
@@ -102,7 +102,8 @@ intel_display_param_named_unsafe(enable_fbc, int, 0400,
intel_display_param_named_unsafe(enable_psr, int, 0400,
"Enable PSR "
- "(0=disabled, 1=enable up to PSR1, 2=enable up to PSR2) "
+ "(0=disabled, 1=enable up to PSR1 and Panel Replay full frame update, "
+ "2=enable up to PSR2 and Panel Replay Selective Update) "
"Default: -1 (use per-chip default)");
intel_display_param_named(psr_safest_params, bool, 0400,
@@ -112,7 +113,7 @@ intel_display_param_named(psr_safest_params, bool, 0400,
"Default: 0");
intel_display_param_named_unsafe(enable_psr2_sel_fetch, bool, 0400,
- "Enable PSR2 selective fetch "
+ "Enable PSR2 and Panel Replay selective fetch "
"(0=disabled, 1=enabled) "
"Default: 1");
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 10/11] drm/i915/psr: Split intel_psr2_config_valid for panel replay
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (8 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 09/11] drm/i915/psr: Update PSR module parameter descriptions Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:11 ` [PATCH v7 11/11] drm/i915/psr: Add panel replay sel update support to debugfs interface Jouni Högander
` (7 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander
Part of intel_psr2_config_valid is valid for panel replay. rename it as
intel_sel_update_config_valid. Split psr2 specific part and name it as
intel_psr2_config_valid.
v3:
- move early transport check to psr2 specific check
- check intel_psr2_config_valid only for non-Panel Replay case
v2:
- use psr2_global_enabled for panel replay as well
- goto unsupported instead of return when global enabled check fails
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
drivers/gpu/drm/i915/display/intel_psr.c | 76 ++++++++++++++----------
1 file changed, 46 insertions(+), 30 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index bfdef79010c5..cfeacce27544 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1142,9 +1142,6 @@ static bool intel_psr2_sel_fetch_config_valid(struct intel_dp *intel_dp,
return false;
}
- if (psr2_su_region_et_valid(intel_dp))
- crtc_state->enable_psr2_su_region_et = true;
-
return crtc_state->enable_psr2_sel_fetch = true;
}
@@ -1515,11 +1512,6 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
return false;
}
- if (!psr2_global_enabled(intel_dp)) {
- drm_dbg_kms(&dev_priv->drm, "PSR2 disabled by flag\n");
- return false;
- }
-
/*
* DSC and PSR2 cannot be enabled simultaneously. If a requested
* resolution requires DSC to be enabled, priority is given to DSC
@@ -1532,12 +1524,6 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
return false;
}
- if (crtc_state->crc_enabled) {
- drm_dbg_kms(&dev_priv->drm,
- "PSR2 not enabled because it would inhibit pipe CRC calculation\n");
- return false;
- }
-
if (DISPLAY_VER(dev_priv) >= 12) {
psr_max_h = 5120;
psr_max_v = 3200;
@@ -1588,30 +1574,60 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
return false;
}
- if (HAS_PSR2_SEL_FETCH(dev_priv)) {
- if (!intel_psr2_sel_fetch_config_valid(intel_dp, crtc_state) &&
- !HAS_PSR_HW_TRACKING(dev_priv)) {
- drm_dbg_kms(&dev_priv->drm,
- "PSR2 not enabled, selective fetch not valid and no HW tracking available\n");
- return false;
- }
- }
-
- if (!psr2_granularity_check(intel_dp, crtc_state)) {
- drm_dbg_kms(&dev_priv->drm, "PSR2 not enabled, SU granularity not compatible\n");
- goto unsupported;
- }
-
if (!crtc_state->enable_psr2_sel_fetch &&
(crtc_hdisplay > psr_max_h || crtc_vdisplay > psr_max_v)) {
drm_dbg_kms(&dev_priv->drm,
"PSR2 not enabled, resolution %dx%d > max supported %dx%d\n",
crtc_hdisplay, crtc_vdisplay,
psr_max_h, psr_max_v);
- goto unsupported;
+ return false;
}
tgl_dc3co_exitline_compute_config(intel_dp, crtc_state);
+
+ if (psr2_su_region_et_valid(intel_dp))
+ crtc_state->enable_psr2_su_region_et = true;
+
+ return true;
+}
+
+static bool intel_sel_update_config_valid(struct intel_dp *intel_dp,
+ struct intel_crtc_state *crtc_state)
+{
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
+
+ if (HAS_PSR2_SEL_FETCH(dev_priv) &&
+ !intel_psr2_sel_fetch_config_valid(intel_dp, crtc_state) &&
+ !HAS_PSR_HW_TRACKING(dev_priv)) {
+ drm_dbg_kms(&dev_priv->drm,
+ "Selective update not enabled, selective fetch not valid and no HW tracking available\n");
+ goto unsupported;
+ }
+
+ if (!psr2_global_enabled(intel_dp)) {
+ drm_dbg_kms(&dev_priv->drm, "Selective update disabled by flag\n");
+ goto unsupported;
+ }
+
+ if (!crtc_state->has_panel_replay && !intel_psr2_config_valid(intel_dp, crtc_state))
+ goto unsupported;
+
+ if (crtc_state->has_panel_replay && (DISPLAY_VER(dev_priv) < 14 ||
+ !intel_dp->psr.sink_panel_replay_su_support))
+ goto unsupported;
+
+ if (crtc_state->crc_enabled) {
+ drm_dbg_kms(&dev_priv->drm,
+ "Selective update not enabled because it would inhibit pipe CRC calculation\n");
+ goto unsupported;
+ }
+
+ if (!psr2_granularity_check(intel_dp, crtc_state)) {
+ drm_dbg_kms(&dev_priv->drm,
+ "Selective update not enabled, SU granularity not compatible\n");
+ goto unsupported;
+ }
+
return true;
unsupported:
@@ -1693,7 +1709,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
if (!crtc_state->has_psr)
return;
- crtc_state->has_sel_update = intel_psr2_config_valid(intel_dp, crtc_state);
+ crtc_state->has_sel_update = intel_sel_update_config_valid(intel_dp, crtc_state);
}
void intel_psr_get_config(struct intel_encoder *encoder,
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v7 11/11] drm/i915/psr: Add panel replay sel update support to debugfs interface
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (9 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 10/11] drm/i915/psr: Split intel_psr2_config_valid for panel replay Jouni Högander
@ 2024-04-19 12:11 ` Jouni Högander
2024-04-19 12:36 ` ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev7) Patchwork
` (6 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Jouni Högander @ 2024-04-19 12:11 UTC (permalink / raw)
To: intel-gfx; +Cc: Animesh Manna, Jouni Högander, Kunal Joshi
Add panel replay selective update support to debugfs status interface. In
case of sink supporting panel replay we will print out:
Sink support: PSR = no, Panel Replay = yes, Panel Replay Selective Update = yes
and PSR mode will look like this if printing out enabled panel replay
selective update:
PSR mode: Panel Replay Selective Update Enabled
Current PSR and panel replay printouts remain same.
Cc: Kunal Joshi <kunal1.joshi@intel.com>
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
drivers/gpu/drm/i915/display/intel_psr.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index cfeacce27544..dab8ba0fc762 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -3575,7 +3575,9 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
if (psr->sink_support)
seq_printf(m, " [0x%02x]", intel_dp->psr_dpcd[0]);
- seq_printf(m, ", Panel Replay = %s\n", str_yes_no(psr->sink_panel_replay_support));
+ seq_printf(m, ", Panel Replay = %s", str_yes_no(psr->sink_panel_replay_support));
+ seq_printf(m, ", Panel Replay Selective Update = %s\n",
+ str_yes_no(psr->sink_panel_replay_su_support));
if (!(psr->sink_support || psr->sink_panel_replay_support))
return 0;
@@ -3584,9 +3586,10 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
mutex_lock(&psr->lock);
if (psr->panel_replay_enabled)
- status = "Panel Replay Enabled";
+ status = psr->sel_update_enabled ? "Panel Replay Selective Update Enabled" :
+ "Panel Replay Enabled";
else if (psr->enabled)
- status = psr->sel_update_enabled ? "PSR2 enabled" : "PSR1 enabled";
+ status = psr->sel_update_enabled ? "PSR2" : "PSR1";
else
status = "disabled";
seq_printf(m, "PSR mode: %s\n", status);
--
2.34.1
^ permalink raw reply related [flat|nested] 24+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev7)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (10 preceding siblings ...)
2024-04-19 12:11 ` [PATCH v7 11/11] drm/i915/psr: Add panel replay sel update support to debugfs interface Jouni Högander
@ 2024-04-19 12:36 ` Patchwork
2024-04-19 12:36 ` ✗ Fi.CI.SPARSE: " Patchwork
` (5 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-19 12:36 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
== Series Details ==
Series: Panel replay selective update support (rev7)
URL : https://patchwork.freedesktop.org/series/128193/
State : warning
== Summary ==
Error: dim checkpatch failed
3122e5718521 drm/i915/psr: Rename has_psr2 as has_sel_update
-:31: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#31: FILE: drivers/gpu/drm/i915/display/intel_crtc_state_dump.c:255:
+ drm_printf(&p, "psr: %s, selective update: %s, panel replay: %s, selective fetch: %s\n",
+ str_enabled_disabled(pipe_config->has_psr),
total: 0 errors, 0 warnings, 1 checks, 88 lines checked
53a7594c3aea drm/i915/dp: Use always vsc revision 0x6 for Panel Replay
ad9fbcbf8cff drm/i915/psr: Rename psr2_enabled as sel_update_enabled
83b0a46be2f6 drm/panelreplay: dpcd register definition for panelreplay SU
534a60ff10e2 drm/i915/psr: Detect panel replay selective update support
0a86229bdb3a drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
c656c7225488 drm/i915/psr: Panel replay uses SRD_STATUS to track it's status
15ad371a67b1 drm/i915/psr: Do not apply workarounds in case of panel replay
80c002964bd2 drm/i915/psr: Update PSR module parameter descriptions
a5d39e6e4591 drm/i915/psr: Split intel_psr2_config_valid for panel replay
009954d1bc66 drm/i915/psr: Add panel replay sel update support to debugfs interface
-:13: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#13:
Sink support: PSR = no, Panel Replay = yes, Panel Replay Selective Update = yes
total: 0 errors, 1 warnings, 0 checks, 22 lines checked
^ permalink raw reply [flat|nested] 24+ messages in thread
* ✗ Fi.CI.SPARSE: warning for Panel replay selective update support (rev7)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (11 preceding siblings ...)
2024-04-19 12:36 ` ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev7) Patchwork
@ 2024-04-19 12:36 ` Patchwork
2024-04-19 12:43 ` ✗ Fi.CI.BAT: failure " Patchwork
` (4 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-19 12:36 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
== Series Details ==
Series: Panel replay selective update support (rev7)
URL : https://patchwork.freedesktop.org/series/128193/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
^ permalink raw reply [flat|nested] 24+ messages in thread
* ✗ Fi.CI.BAT: failure for Panel replay selective update support (rev7)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (12 preceding siblings ...)
2024-04-19 12:36 ` ✗ Fi.CI.SPARSE: " Patchwork
@ 2024-04-19 12:43 ` Patchwork
2024-04-22 6:33 ` ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev8) Patchwork
` (3 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-19 12:43 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 7859 bytes --]
== Series Details ==
Series: Panel replay selective update support (rev7)
URL : https://patchwork.freedesktop.org/series/128193/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_14612 -> Patchwork_128193v7
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_128193v7 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_128193v7, 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.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/index.html
Participating hosts (37 -> 36)
------------------------------
Additional (1): bat-adlp-9
Missing (2): fi-kbl-8809g bat-arls-3
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_128193v7:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-7567u: [PASS][1] -> [DMESG-WARN][2] +31 other tests dmesg-warn
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14612/fi-kbl-7567u/igt@i915_selftest@live@gt_heartbeat.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/fi-kbl-7567u/igt@i915_selftest@live@gt_heartbeat.html
Known issues
------------
Here are the changes found in Patchwork_128193v7 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@debugfs_test@basic-hwmon:
- bat-adlp-9: NOTRUN -> [SKIP][3] ([i915#9318])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@debugfs_test@basic-hwmon.html
* igt@gem_lmem_swapping@basic:
- bat-adlp-9: NOTRUN -> [SKIP][4] ([i915#4613]) +3 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@gem_lmem_swapping@basic.html
* igt@gem_tiled_pread_basic:
- bat-adlp-9: NOTRUN -> [SKIP][5] ([i915#3282])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@gem_tiled_pread_basic.html
* igt@i915_pm_rps@basic-api:
- bat-adlp-9: NOTRUN -> [SKIP][6] ([i915#6621])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@i915_pm_rps@basic-api.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- bat-adlp-9: NOTRUN -> [SKIP][7] ([i915#4103]) +1 other test skip
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_dsc@dsc-basic:
- bat-adlp-9: NOTRUN -> [SKIP][8] ([i915#3555] / [i915#3840])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@kms_dsc@dsc-basic.html
* igt@kms_flip@basic-flip-vs-dpms@a-dp1:
- fi-kbl-7567u: [PASS][9] -> [DMESG-WARN][10] ([i915#10875] / [i915#8585]) +3 other tests dmesg-warn
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14612/fi-kbl-7567u/igt@kms_flip@basic-flip-vs-dpms@a-dp1.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/fi-kbl-7567u/igt@kms_flip@basic-flip-vs-dpms@a-dp1.html
* igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1:
- fi-kbl-7567u: [PASS][11] -> [DMESG-WARN][12] ([i915#1982] / [i915#8585])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14612/fi-kbl-7567u/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/fi-kbl-7567u/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
* igt@kms_force_connector_basic@force-load-detect:
- bat-adlp-9: NOTRUN -> [SKIP][13]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_pm_backlight@basic-brightness:
- bat-adlp-9: NOTRUN -> [SKIP][14] ([i915#9812])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@kms_pm_backlight@basic-brightness.html
* igt@kms_pm_rpm@basic-pci-d3-state:
- fi-kbl-7567u: [PASS][15] -> [DMESG-WARN][16] ([i915#8585]) +78 other tests dmesg-warn
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14612/fi-kbl-7567u/igt@kms_pm_rpm@basic-pci-d3-state.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/fi-kbl-7567u/igt@kms_pm_rpm@basic-pci-d3-state.html
* igt@kms_psr@psr-sprite-plane-onoff:
- bat-adlp-9: NOTRUN -> [SKIP][17] ([i915#1072] / [i915#9673] / [i915#9732]) +3 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@kms_psr@psr-sprite-plane-onoff.html
* igt@kms_setmode@basic-clone-single-crtc:
- bat-adlp-9: NOTRUN -> [SKIP][18] ([i915#3555])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-fence-read:
- bat-adlp-9: NOTRUN -> [SKIP][19] ([i915#3291] / [i915#3708]) +2 other tests skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-adlp-9/igt@prime_vgem@basic-fence-read.html
#### Possible fixes ####
* igt@gem_lmem_swapping@basic@lmem0:
- bat-dg2-9: [FAIL][20] ([i915#10378]) -> [PASS][21]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14612/bat-dg2-9/igt@gem_lmem_swapping@basic@lmem0.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-dg2-9/igt@gem_lmem_swapping@basic@lmem0.html
* igt@kms_flip@basic-flip-vs-dpms@a-dp6:
- {bat-mtlp-9}: [DMESG-WARN][22] ([i915#10435]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14612/bat-mtlp-9/igt@kms_flip@basic-flip-vs-dpms@a-dp6.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/bat-mtlp-9/igt@kms_flip@basic-flip-vs-dpms@a-dp6.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#10378]: https://gitlab.freedesktop.org/drm/intel/issues/10378
[i915#10435]: https://gitlab.freedesktop.org/drm/intel/issues/10435
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#10875]: https://gitlab.freedesktop.org/drm/intel/issues/10875
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#8585]: https://gitlab.freedesktop.org/drm/intel/issues/8585
[i915#9318]: https://gitlab.freedesktop.org/drm/intel/issues/9318
[i915#9673]: https://gitlab.freedesktop.org/drm/intel/issues/9673
[i915#9732]: https://gitlab.freedesktop.org/drm/intel/issues/9732
[i915#9812]: https://gitlab.freedesktop.org/drm/intel/issues/9812
Build changes
-------------
* Linux: CI_DRM_14612 -> Patchwork_128193v7
CI-20190529: 20190529
CI_DRM_14612: a6272ececd0c019dbb4b9e20dfd2026b7e299724 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7814: 7814
Patchwork_128193v7: a6272ececd0c019dbb4b9e20dfd2026b7e299724 @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v7/index.html
[-- Attachment #2: Type: text/html, Size: 9099 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev8)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (13 preceding siblings ...)
2024-04-19 12:43 ` ✗ Fi.CI.BAT: failure " Patchwork
@ 2024-04-22 6:33 ` Patchwork
2024-04-22 6:33 ` ✗ Fi.CI.SPARSE: " Patchwork
` (2 subsequent siblings)
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-22 6:33 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
== Series Details ==
Series: Panel replay selective update support (rev8)
URL : https://patchwork.freedesktop.org/series/128193/
State : warning
== Summary ==
Error: dim checkpatch failed
593e3471f223 drm/i915/psr: Rename has_psr2 as has_sel_update
-:31: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#31: FILE: drivers/gpu/drm/i915/display/intel_crtc_state_dump.c:255:
+ drm_printf(&p, "psr: %s, selective update: %s, panel replay: %s, selective fetch: %s\n",
+ str_enabled_disabled(pipe_config->has_psr),
total: 0 errors, 0 warnings, 1 checks, 88 lines checked
ad1c0ded57dc drm/i915/dp: Use always vsc revision 0x6 for Panel Replay
5ce7a783007b drm/i915/psr: Rename psr2_enabled as sel_update_enabled
6d8c3df3b150 drm/panelreplay: dpcd register definition for panelreplay SU
c7c18554468a drm/i915/psr: Detect panel replay selective update support
c8e19db9dbc4 drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
d56a947fcc05 drm/i915/psr: Panel replay uses SRD_STATUS to track it's status
15052cd1b25b drm/i915/psr: Do not apply workarounds in case of panel replay
e9f9df441ffc drm/i915/psr: Update PSR module parameter descriptions
5e9e2e0040aa drm/i915/psr: Split intel_psr2_config_valid for panel replay
f4abdac9eae1 drm/i915/psr: Add panel replay sel update support to debugfs interface
-:13: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#13:
Sink support: PSR = no, Panel Replay = yes, Panel Replay Selective Update = yes
total: 0 errors, 1 warnings, 0 checks, 22 lines checked
^ permalink raw reply [flat|nested] 24+ messages in thread
* ✗ Fi.CI.SPARSE: warning for Panel replay selective update support (rev8)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (14 preceding siblings ...)
2024-04-22 6:33 ` ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev8) Patchwork
@ 2024-04-22 6:33 ` Patchwork
2024-04-22 6:41 ` ✓ Fi.CI.BAT: success " Patchwork
2024-04-22 8:37 ` ✗ Fi.CI.IGT: failure " Patchwork
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-22 6:33 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
== Series Details ==
Series: Panel replay selective update support (rev8)
URL : https://patchwork.freedesktop.org/series/128193/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
^ permalink raw reply [flat|nested] 24+ messages in thread
* ✓ Fi.CI.BAT: success for Panel replay selective update support (rev8)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (15 preceding siblings ...)
2024-04-22 6:33 ` ✗ Fi.CI.SPARSE: " Patchwork
@ 2024-04-22 6:41 ` Patchwork
2024-04-22 8:37 ` ✗ Fi.CI.IGT: failure " Patchwork
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-22 6:41 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 8437 bytes --]
== Series Details ==
Series: Panel replay selective update support (rev8)
URL : https://patchwork.freedesktop.org/series/128193/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_14621 -> Patchwork_128193v8
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/index.html
Participating hosts (35 -> 34)
------------------------------
Additional (1): bat-mtlp-6
Missing (2): bat-jsl-1 fi-apl-guc
Known issues
------------
Here are the changes found in Patchwork_128193v8 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@debugfs_test@basic-hwmon:
- bat-mtlp-6: NOTRUN -> [SKIP][1] ([i915#9318])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@debugfs_test@basic-hwmon.html
* igt@fbdev@info:
- bat-mtlp-6: NOTRUN -> [SKIP][2] ([i915#1849] / [i915#2582])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@fbdev@info.html
* igt@fbdev@write:
- bat-mtlp-6: NOTRUN -> [SKIP][3] ([i915#2582]) +3 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@fbdev@write.html
* igt@gem_lmem_swapping@verify-random:
- bat-mtlp-6: NOTRUN -> [SKIP][4] ([i915#4613]) +3 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@gem_lmem_swapping@verify-random.html
* igt@gem_mmap@basic:
- bat-mtlp-6: NOTRUN -> [SKIP][5] ([i915#4083])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@gem_mmap@basic.html
* igt@gem_tiled_blits@basic:
- bat-mtlp-6: NOTRUN -> [SKIP][6] ([i915#4077]) +2 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@gem_tiled_blits@basic.html
* igt@gem_tiled_pread_basic:
- bat-mtlp-6: NOTRUN -> [SKIP][7] ([i915#4079]) +1 other test skip
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@gem_tiled_pread_basic.html
* igt@i915_pm_rps@basic-api:
- bat-mtlp-6: NOTRUN -> [SKIP][8] ([i915#6621])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@i915_pm_rps@basic-api.html
* igt@kms_addfb_basic@addfb25-x-tiled-legacy:
- bat-mtlp-6: NOTRUN -> [SKIP][9] ([i915#4212] / [i915#9792]) +8 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_addfb_basic@addfb25-x-tiled-legacy.html
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-mtlp-6: NOTRUN -> [SKIP][10] ([i915#5190] / [i915#9792])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_cursor_legacy@basic-flip-after-cursor-legacy:
- bat-mtlp-6: NOTRUN -> [SKIP][11] ([i915#9792]) +17 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html
* igt@kms_flip@basic-flip-vs-dpms:
- bat-mtlp-6: NOTRUN -> [SKIP][12] ([i915#3637] / [i915#9792]) +3 other tests skip
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_flip@basic-flip-vs-dpms.html
* igt@kms_force_connector_basic@prune-stale-modes:
- bat-mtlp-6: NOTRUN -> [SKIP][13] ([i915#5274] / [i915#9792])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_force_connector_basic@prune-stale-modes.html
* igt@kms_frontbuffer_tracking@basic:
- bat-mtlp-6: NOTRUN -> [SKIP][14] ([i915#4342] / [i915#5354] / [i915#9792])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_frontbuffer_tracking@basic.html
* igt@kms_pm_backlight@basic-brightness:
- bat-mtlp-6: NOTRUN -> [SKIP][15] ([i915#5354] / [i915#9792])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_pm_backlight@basic-brightness.html
* igt@kms_psr@psr-cursor-plane-move:
- bat-mtlp-6: NOTRUN -> [SKIP][16] ([i915#1072] / [i915#9673] / [i915#9732] / [i915#9792]) +3 other tests skip
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_psr@psr-cursor-plane-move.html
* igt@kms_setmode@basic-clone-single-crtc:
- bat-mtlp-6: NOTRUN -> [SKIP][17] ([i915#3555] / [i915#8809] / [i915#9792])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-fence-flip:
- bat-mtlp-6: NOTRUN -> [SKIP][18] ([i915#3708] / [i915#9792])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@prime_vgem@basic-fence-flip.html
* igt@prime_vgem@basic-fence-mmap:
- bat-mtlp-6: NOTRUN -> [SKIP][19] ([i915#3708] / [i915#4077]) +1 other test skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@prime_vgem@basic-fence-mmap.html
* igt@prime_vgem@basic-read:
- bat-mtlp-6: NOTRUN -> [SKIP][20] ([i915#3708]) +1 other test skip
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@prime_vgem@basic-read.html
* igt@prime_vgem@basic-write:
- bat-mtlp-6: NOTRUN -> [SKIP][21] ([i915#10216] / [i915#3708])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-mtlp-6/igt@prime_vgem@basic-write.html
#### Possible fixes ####
* igt@i915_selftest@live@dmabuf:
- bat-arls-1: [ABORT][22] ([i915#9618]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/bat-arls-1/igt@i915_selftest@live@dmabuf.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/bat-arls-1/igt@i915_selftest@live@dmabuf.html
* igt@i915_selftest@live@execlists:
- fi-bsw-nick: [ABORT][24] ([i915#10594]) -> [PASS][25]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/fi-bsw-nick/igt@i915_selftest@live@execlists.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/fi-bsw-nick/igt@i915_selftest@live@execlists.html
[i915#10216]: https://gitlab.freedesktop.org/drm/intel/issues/10216
[i915#10594]: https://gitlab.freedesktop.org/drm/intel/issues/10594
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4342]: https://gitlab.freedesktop.org/drm/intel/issues/4342
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
[i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
[i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#8809]: https://gitlab.freedesktop.org/drm/intel/issues/8809
[i915#9318]: https://gitlab.freedesktop.org/drm/intel/issues/9318
[i915#9618]: https://gitlab.freedesktop.org/drm/intel/issues/9618
[i915#9673]: https://gitlab.freedesktop.org/drm/intel/issues/9673
[i915#9732]: https://gitlab.freedesktop.org/drm/intel/issues/9732
[i915#9792]: https://gitlab.freedesktop.org/drm/intel/issues/9792
Build changes
-------------
* Linux: CI_DRM_14621 -> Patchwork_128193v8
CI-20190529: 20190529
CI_DRM_14621: 681321239497f9587fb66325b431a2b65d0bd772 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7814: 7814
Patchwork_128193v8: 681321239497f9587fb66325b431a2b65d0bd772 @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/index.html
[-- Attachment #2: Type: text/html, Size: 10599 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* ✗ Fi.CI.IGT: failure for Panel replay selective update support (rev8)
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
` (16 preceding siblings ...)
2024-04-22 6:41 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2024-04-22 8:37 ` Patchwork
17 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2024-04-22 8:37 UTC (permalink / raw)
To: Jouni Högander; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 66785 bytes --]
== Series Details ==
Series: Panel replay selective update support (rev8)
URL : https://patchwork.freedesktop.org/series/128193/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_14621_full -> Patchwork_128193v8_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_128193v8_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_128193v8_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.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/index.html
Participating hosts (9 -> 9)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_128193v8_full:
### IGT changes ###
#### Possible regressions ####
* igt@drm_read@short-buffer-wakeup:
- shard-glk: NOTRUN -> [INCOMPLETE][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-glk2/igt@drm_read@short-buffer-wakeup.html
- shard-dg2: [PASS][2] -> [INCOMPLETE][3]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-7/igt@drm_read@short-buffer-wakeup.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@drm_read@short-buffer-wakeup.html
Known issues
------------
Here are the changes found in Patchwork_128193v8_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@object-reloc-keep-cache:
- shard-dg1: NOTRUN -> [SKIP][4] ([i915#8411])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@api_intel_bb@object-reloc-keep-cache.html
* igt@drm_fdinfo@busy-check-all@bcs0:
- shard-dg1: NOTRUN -> [SKIP][5] ([i915#8414]) +9 other tests skip
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@drm_fdinfo@busy-check-all@bcs0.html
* igt@drm_fdinfo@busy-check-all@vecs1:
- shard-dg2: NOTRUN -> [SKIP][6] ([i915#8414]) +6 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@drm_fdinfo@busy-check-all@vecs1.html
* igt@drm_fdinfo@virtual-idle:
- shard-rkl: [PASS][7] -> [FAIL][8] ([i915#7742])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-5/igt@drm_fdinfo@virtual-idle.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-1/igt@drm_fdinfo@virtual-idle.html
* igt@gem_bad_reloc@negative-reloc-lut:
- shard-rkl: NOTRUN -> [SKIP][9] ([i915#3281]) +8 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_bad_reloc@negative-reloc-lut.html
* igt@gem_basic@multigpu-create-close:
- shard-rkl: NOTRUN -> [SKIP][10] ([i915#7697])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@gem_basic@multigpu-create-close.html
* igt@gem_ccs@block-copy-compressed:
- shard-dg1: NOTRUN -> [SKIP][11] ([i915#3555] / [i915#9323])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_ccs@block-copy-compressed.html
* igt@gem_ccs@suspend-resume:
- shard-rkl: NOTRUN -> [SKIP][12] ([i915#9323])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@gem_ccs@suspend-resume.html
* igt@gem_create@create-ext-cpu-access-big:
- shard-rkl: NOTRUN -> [SKIP][13] ([i915#6335])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@gem_create@create-ext-cpu-access-big.html
* igt@gem_ctx_freq@sysfs@gt0:
- shard-dg2: [PASS][14] -> [FAIL][15] ([i915#9561])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-2/igt@gem_ctx_freq@sysfs@gt0.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-6/igt@gem_ctx_freq@sysfs@gt0.html
* igt@gem_ctx_sseu@engines:
- shard-rkl: NOTRUN -> [SKIP][16] ([i915#280])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_ctx_sseu@engines.html
* igt@gem_ctx_sseu@mmap-args:
- shard-dg2: NOTRUN -> [SKIP][17] ([i915#280])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_ctx_sseu@mmap-args.html
* igt@gem_eio@kms:
- shard-tglu: [PASS][18] -> [INCOMPLETE][19] ([i915#10513])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-7/igt@gem_eio@kms.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-4/igt@gem_eio@kms.html
* igt@gem_eio@reset-stress:
- shard-dg1: NOTRUN -> [FAIL][20] ([i915#5784])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_eio@reset-stress.html
* igt@gem_exec_balancer@bonded-pair:
- shard-dg1: NOTRUN -> [SKIP][21] ([i915#4771])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@gem_exec_balancer@bonded-pair.html
* igt@gem_exec_balancer@parallel-keep-submit-fence:
- shard-rkl: NOTRUN -> [SKIP][22] ([i915#4525])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@gem_exec_balancer@parallel-keep-submit-fence.html
* igt@gem_exec_capture@many-4k-incremental:
- shard-glk: NOTRUN -> [FAIL][23] ([i915#9606]) +1 other test fail
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-glk2/igt@gem_exec_capture@many-4k-incremental.html
* igt@gem_exec_fair@basic-none-rrul:
- shard-dg1: NOTRUN -> [SKIP][24] ([i915#3539] / [i915#4852]) +4 other tests skip
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_exec_fair@basic-none-rrul.html
* igt@gem_exec_fair@basic-none@vcs0:
- shard-rkl: [PASS][25] -> [FAIL][26] ([i915#2842])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-4/igt@gem_exec_fair@basic-none@vcs0.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-4/igt@gem_exec_fair@basic-none@vcs0.html
* igt@gem_exec_fair@basic-pace:
- shard-dg1: NOTRUN -> [SKIP][27] ([i915#3539]) +1 other test skip
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-13/igt@gem_exec_fair@basic-pace.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-tglu: [PASS][28] -> [FAIL][29] ([i915#2842])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-2/igt@gem_exec_fair@basic-pace-share@rcs0.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-6/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_fair@basic-pace@vecs0:
- shard-rkl: NOTRUN -> [FAIL][30] ([i915#2842]) +2 other tests fail
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_exec_fair@basic-pace@vecs0.html
* igt@gem_exec_fence@submit3:
- shard-dg1: NOTRUN -> [SKIP][31] ([i915#4812]) +1 other test skip
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@gem_exec_fence@submit3.html
* igt@gem_exec_flush@basic-uc-set-default:
- shard-dg2: NOTRUN -> [SKIP][32] ([i915#3539])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_exec_flush@basic-uc-set-default.html
* igt@gem_exec_flush@basic-wb-set-default:
- shard-dg2: NOTRUN -> [SKIP][33] ([i915#3539] / [i915#4852]) +1 other test skip
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_exec_flush@basic-wb-set-default.html
* igt@gem_exec_reloc@basic-cpu-gtt-noreloc:
- shard-dg2: NOTRUN -> [SKIP][34] ([i915#3281]) +5 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html
* igt@gem_exec_reloc@basic-wc-gtt-noreloc:
- shard-dg1: NOTRUN -> [SKIP][35] ([i915#3281]) +8 other tests skip
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_exec_reloc@basic-wc-gtt-noreloc.html
* igt@gem_exec_schedule@semaphore-power:
- shard-rkl: NOTRUN -> [SKIP][36] ([i915#7276])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@gem_exec_schedule@semaphore-power.html
* igt@gem_fenced_exec_thrash@no-spare-fences:
- shard-dg1: NOTRUN -> [SKIP][37] ([i915#4860]) +1 other test skip
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_fenced_exec_thrash@no-spare-fences.html
- shard-dg2: NOTRUN -> [SKIP][38] ([i915#4860])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_fenced_exec_thrash@no-spare-fences.html
* igt@gem_lmem_swapping@heavy-verify-multi-ccs@lmem0:
- shard-dg2: [PASS][39] -> [FAIL][40] ([i915#10378])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-6/igt@gem_lmem_swapping@heavy-verify-multi-ccs@lmem0.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-10/igt@gem_lmem_swapping@heavy-verify-multi-ccs@lmem0.html
* igt@gem_lmem_swapping@heavy-verify-random@lmem0:
- shard-dg1: NOTRUN -> [FAIL][41] ([i915#10378])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_lmem_swapping@heavy-verify-random@lmem0.html
* igt@gem_lmem_swapping@parallel-random-verify:
- shard-glk: NOTRUN -> [SKIP][42] ([i915#4613]) +1 other test skip
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-glk3/igt@gem_lmem_swapping@parallel-random-verify.html
* igt@gem_lmem_swapping@verify-random:
- shard-rkl: NOTRUN -> [SKIP][43] ([i915#4613]) +3 other tests skip
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@gem_lmem_swapping@verify-random.html
* igt@gem_lmem_swapping@verify-random-ccs@lmem0:
- shard-dg1: NOTRUN -> [SKIP][44] ([i915#4565])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@gem_lmem_swapping@verify-random-ccs@lmem0.html
* igt@gem_media_vme:
- shard-rkl: NOTRUN -> [SKIP][45] ([i915#284])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_media_vme.html
* igt@gem_mmap@bad-object:
- shard-dg1: NOTRUN -> [SKIP][46] ([i915#4083]) +5 other tests skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_mmap@bad-object.html
* igt@gem_mmap_gtt@big-copy-xy:
- shard-dg2: NOTRUN -> [SKIP][47] ([i915#4077]) +4 other tests skip
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_mmap_gtt@big-copy-xy.html
* igt@gem_mmap_gtt@fault-concurrent:
- shard-dg1: NOTRUN -> [SKIP][48] ([i915#4077]) +6 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@gem_mmap_gtt@fault-concurrent.html
* igt@gem_mmap_wc@write-wc-read-gtt:
- shard-dg2: NOTRUN -> [SKIP][49] ([i915#4083]) +2 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_mmap_wc@write-wc-read-gtt.html
* igt@gem_partial_pwrite_pread@reads-uncached:
- shard-dg2: NOTRUN -> [SKIP][50] ([i915#3282]) +1 other test skip
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_partial_pwrite_pread@reads-uncached.html
- shard-dg1: NOTRUN -> [SKIP][51] ([i915#3282]) +2 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_partial_pwrite_pread@reads-uncached.html
* igt@gem_partial_pwrite_pread@write:
- shard-rkl: NOTRUN -> [SKIP][52] ([i915#3282]) +3 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@gem_partial_pwrite_pread@write.html
* igt@gem_pwrite@basic-exhaustion:
- shard-glk: NOTRUN -> [WARN][53] ([i915#2658])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-glk3/igt@gem_pwrite@basic-exhaustion.html
* igt@gem_pxp@create-protected-buffer:
- shard-rkl: NOTRUN -> [SKIP][54] ([i915#4270]) +2 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_pxp@create-protected-buffer.html
* igt@gem_pxp@reject-modify-context-protection-off-3:
- shard-dg2: NOTRUN -> [SKIP][55] ([i915#4270]) +1 other test skip
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_pxp@reject-modify-context-protection-off-3.html
* igt@gem_pxp@verify-pxp-stale-ctx-execution:
- shard-dg1: NOTRUN -> [SKIP][56] ([i915#4270]) +2 other tests skip
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_pxp@verify-pxp-stale-ctx-execution.html
* igt@gem_render_copy@y-tiled:
- shard-dg2: NOTRUN -> [SKIP][57] ([i915#5190] / [i915#8428]) +2 other tests skip
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_render_copy@y-tiled.html
* igt@gem_set_tiling_vs_blt@tiled-to-tiled:
- shard-rkl: NOTRUN -> [SKIP][58] ([i915#8411]) +2 other tests skip
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_set_tiling_vs_blt@tiled-to-tiled.html
* igt@gem_set_tiling_vs_blt@tiled-to-untiled:
- shard-dg1: NOTRUN -> [SKIP][59] ([i915#4079])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
* igt@gem_set_tiling_vs_gtt:
- shard-dg2: NOTRUN -> [SKIP][60] ([i915#4079])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_set_tiling_vs_gtt.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-rkl: NOTRUN -> [SKIP][61] ([i915#3323])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gem_userptr_blits@map-fixed-invalidate:
- shard-dg2: NOTRUN -> [SKIP][62] ([i915#3297] / [i915#4880])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gem_userptr_blits@map-fixed-invalidate.html
- shard-dg1: NOTRUN -> [SKIP][63] ([i915#3297] / [i915#4880])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gem_userptr_blits@map-fixed-invalidate.html
* igt@gem_userptr_blits@unsync-unmap-after-close:
- shard-rkl: NOTRUN -> [SKIP][64] ([i915#3297]) +1 other test skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gem_userptr_blits@unsync-unmap-after-close.html
* igt@gem_userptr_blits@unsync-unmap-cycles:
- shard-dg1: NOTRUN -> [SKIP][65] ([i915#3297]) +1 other test skip
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@gem_userptr_blits@unsync-unmap-cycles.html
* igt@gen9_exec_parse@batch-invalid-length:
- shard-dg1: NOTRUN -> [SKIP][66] ([i915#2527]) +3 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@gen9_exec_parse@batch-invalid-length.html
- shard-dg2: NOTRUN -> [SKIP][67] ([i915#2856])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@gen9_exec_parse@batch-invalid-length.html
* igt@gen9_exec_parse@bb-chained:
- shard-rkl: NOTRUN -> [SKIP][68] ([i915#2527]) +3 other tests skip
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@gen9_exec_parse@bb-chained.html
* igt@i915_fb_tiling:
- shard-dg2: NOTRUN -> [SKIP][69] ([i915#4881])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@i915_fb_tiling.html
* igt@i915_module_load@load:
- shard-dg1: NOTRUN -> [SKIP][70] ([i915#6227])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@i915_module_load@load.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-rkl: NOTRUN -> [ABORT][71] ([i915#9820])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@i915_module_load@reload-with-fault-injection.html
- shard-snb: [PASS][72] -> [INCOMPLETE][73] ([i915#9849])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-snb5/igt@i915_module_load@reload-with-fault-injection.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-snb7/igt@i915_module_load@reload-with-fault-injection.html
- shard-mtlp: [PASS][74] -> [INCOMPLETE][75] ([i915#10887] / [i915#9849])
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-mtlp-1/igt@i915_module_load@reload-with-fault-injection.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-mtlp-8/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_pm_freq_api@freq-reset-multiple:
- shard-rkl: NOTRUN -> [SKIP][76] ([i915#8399]) +1 other test skip
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@i915_pm_freq_api@freq-reset-multiple.html
* igt@i915_pm_rps@thresholds@gt0:
- shard-dg1: NOTRUN -> [SKIP][77] ([i915#8925])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@i915_pm_rps@thresholds@gt0.html
* igt@i915_pm_sseu@full-enable:
- shard-dg2: NOTRUN -> [SKIP][78] ([i915#4387])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@i915_pm_sseu@full-enable.html
- shard-dg1: NOTRUN -> [SKIP][79] ([i915#4387])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@i915_pm_sseu@full-enable.html
* igt@i915_query@test-query-geometry-subslices:
- shard-dg1: NOTRUN -> [SKIP][80] ([i915#5723])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@i915_query@test-query-geometry-subslices.html
* igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- shard-dg2: NOTRUN -> [SKIP][81] ([i915#4212]) +2 other tests skip
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy.html
- shard-dg1: NOTRUN -> [SKIP][82] ([i915#4212])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-4-y-rc-ccs:
- shard-dg1: NOTRUN -> [SKIP][83] ([i915#8709]) +7 other tests skip
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-4-y-rc-ccs.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-1-4-mc-ccs:
- shard-dg2: NOTRUN -> [SKIP][84] ([i915#8709]) +11 other tests skip
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-10/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-1-4-mc-ccs.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
- shard-rkl: NOTRUN -> [SKIP][85] ([i915#1769] / [i915#3555])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-rkl: NOTRUN -> [SKIP][86] ([i915#5286]) +6 other tests skip
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-dg1: NOTRUN -> [SKIP][87] ([i915#4538] / [i915#5286]) +3 other tests skip
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@x-tiled-32bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][88] ([i915#3638]) +3 other tests skip
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
- shard-tglu: [PASS][89] -> [FAIL][90] ([i915#3743]) +2 other tests fail
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-8/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-6/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@y-tiled-64bpp-rotate-270:
- shard-dg1: NOTRUN -> [SKIP][91] ([i915#3638]) +2 other tests skip
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-dg2: NOTRUN -> [SKIP][92] ([i915#4538] / [i915#5190]) +5 other tests skip
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
- shard-dg1: NOTRUN -> [SKIP][93] ([i915#4538]) +3 other tests skip
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html
* igt@kms_big_joiner@basic:
- shard-rkl: NOTRUN -> [SKIP][94] ([i915#10656]) +1 other test skip
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_big_joiner@basic.html
* igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][95] ([i915#10307] / [i915#10434] / [i915#6095]) +6 other tests skip
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-10/igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][96] ([i915#6095]) +75 other tests skip
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html
* igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][97] ([i915#10307] / [i915#6095]) +176 other tests skip
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-6/igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-3.html
* igt@kms_ccs@crc-primary-basic-4-tiled-xe2-ccs:
- shard-dg1: NOTRUN -> [SKIP][98] ([i915#10278])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_ccs@crc-primary-basic-4-tiled-xe2-ccs.html
* igt@kms_ccs@random-ccs-data-yf-tiled-ccs@pipe-a-hdmi-a-3:
- shard-dg1: NOTRUN -> [SKIP][99] ([i915#6095]) +59 other tests skip
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-13/igt@kms_ccs@random-ccs-data-yf-tiled-ccs@pipe-a-hdmi-a-3.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-dg1: NOTRUN -> [SKIP][100] ([i915#3742]) +1 other test skip
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_cdclk@mode-transition-all-outputs.html
- shard-dg2: NOTRUN -> [SKIP][101] ([i915#7213])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][102] ([i915#4087]) +3 other tests skip
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-1.html
* igt@kms_chamelium_frames@hdmi-frame-dump:
- shard-rkl: NOTRUN -> [SKIP][103] ([i915#7828]) +7 other tests skip
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_chamelium_frames@hdmi-frame-dump.html
* igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode:
- shard-dg2: NOTRUN -> [SKIP][104] ([i915#7828]) +3 other tests skip
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode.html
* igt@kms_chamelium_hpd@hdmi-hpd-fast:
- shard-dg1: NOTRUN -> [SKIP][105] ([i915#7828]) +6 other tests skip
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_chamelium_hpd@hdmi-hpd-fast.html
* igt@kms_content_protection@atomic:
- shard-dg2: NOTRUN -> [SKIP][106] ([i915#7118] / [i915#9424])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-5/igt@kms_content_protection@atomic.html
* igt@kms_content_protection@atomic-dpms:
- shard-dg1: NOTRUN -> [SKIP][107] ([i915#7116] / [i915#9424])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@lic-type-1:
- shard-dg1: NOTRUN -> [SKIP][108] ([i915#9424])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_content_protection@lic-type-1.html
* igt@kms_content_protection@type1:
- shard-rkl: NOTRUN -> [SKIP][109] ([i915#7118] / [i915#9424]) +1 other test skip
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-offscreen-32x32:
- shard-dg1: NOTRUN -> [SKIP][110] ([i915#3555]) +4 other tests skip
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_cursor_crc@cursor-offscreen-32x32.html
* igt@kms_cursor_crc@cursor-onscreen-32x32:
- shard-rkl: NOTRUN -> [SKIP][111] ([i915#3555]) +4 other tests skip
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_cursor_crc@cursor-onscreen-32x32.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-rkl: NOTRUN -> [SKIP][112] ([i915#3359]) +3 other tests skip
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-random-512x512:
- shard-dg2: NOTRUN -> [SKIP][113] ([i915#3359]) +2 other tests skip
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_cursor_crc@cursor-random-512x512.html
* igt@kms_cursor_crc@cursor-sliding-512x170:
- shard-dg1: NOTRUN -> [SKIP][114] ([i915#3359]) +2 other tests skip
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_cursor_crc@cursor-sliding-512x170.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-dg1: NOTRUN -> [SKIP][115] ([i915#4103] / [i915#4213])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
- shard-dg2: NOTRUN -> [SKIP][116] ([i915#9067])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
- shard-rkl: NOTRUN -> [SKIP][117] ([i915#4103]) +1 other test skip
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
* igt@kms_dirtyfb@fbc-dirtyfb-ioctl@a-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][118] ([i915#9723])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_dirtyfb@fbc-dirtyfb-ioctl@a-hdmi-a-1.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][119] ([i915#3804])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html
* igt@kms_dp_aux_dev:
- shard-dg1: NOTRUN -> [SKIP][120] ([i915#1257])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_dp_aux_dev.html
* igt@kms_dsc@dsc-basic:
- shard-rkl: NOTRUN -> [SKIP][121] ([i915#3555] / [i915#3840])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_dsc@dsc-basic.html
* igt@kms_dsc@dsc-fractional-bpp:
- shard-rkl: NOTRUN -> [SKIP][122] ([i915#3840])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_dsc@dsc-fractional-bpp.html
* igt@kms_dsc@dsc-fractional-bpp-with-bpc:
- shard-dg2: NOTRUN -> [SKIP][123] ([i915#3840])
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
* igt@kms_dsc@dsc-with-output-formats:
- shard-dg2: NOTRUN -> [SKIP][124] ([i915#3555] / [i915#3840])
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_dsc@dsc-with-output-formats.html
- shard-dg1: NOTRUN -> [SKIP][125] ([i915#3555] / [i915#3840])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_dsc@dsc-with-output-formats.html
* igt@kms_fbcon_fbt@psr:
- shard-rkl: NOTRUN -> [SKIP][126] ([i915#3955])
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_fbcon_fbt@psr.html
* igt@kms_feature_discovery@display-4x:
- shard-rkl: NOTRUN -> [SKIP][127] ([i915#1839]) +1 other test skip
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_feature_discovery@display-4x.html
* igt@kms_feature_discovery@psr1:
- shard-dg1: NOTRUN -> [SKIP][128] ([i915#658])
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible:
- shard-dg1: NOTRUN -> [SKIP][129] ([i915#9934]) +2 other tests skip
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-hdmi-a1:
- shard-rkl: NOTRUN -> [FAIL][130] ([i915#2122]) +1 other test fail
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-upscaling@pipe-a-valid-mode:
- shard-rkl: NOTRUN -> [SKIP][131] ([i915#2672]) +5 other tests skip
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode:
- shard-dg2: NOTRUN -> [SKIP][132] ([i915#2672]) +1 other test skip
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode:
- shard-dg1: NOTRUN -> [SKIP][133] ([i915#2587] / [i915#2672]) +2 other tests skip
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen:
- shard-dg1: NOTRUN -> [SKIP][134] +34 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen.html
* igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][135] ([i915#8708]) +11 other tests skip
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite:
- shard-dg2: [PASS][136] -> [FAIL][137] ([i915#6880])
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-2/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render:
- shard-dg2: NOTRUN -> [SKIP][138] ([i915#3458]) +5 other tests skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt:
- shard-rkl: NOTRUN -> [SKIP][139] ([i915#1825]) +38 other tests skip
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-blt:
- shard-dg1: NOTRUN -> [SKIP][140] ([i915#3458]) +10 other tests skip
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-1p-pri-indfb-multidraw:
- shard-glk: NOTRUN -> [SKIP][141] +98 other tests skip
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-glk2/igt@kms_frontbuffer_tracking@psr-1p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc:
- shard-dg1: NOTRUN -> [SKIP][142] ([i915#8708]) +11 other tests skip
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt:
- shard-rkl: NOTRUN -> [SKIP][143] ([i915#3023]) +26 other tests skip
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-cpu:
- shard-dg2: NOTRUN -> [SKIP][144] ([i915#5354]) +14 other tests skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_hdr@bpc-switch-dpms:
- shard-dg1: NOTRUN -> [SKIP][145] ([i915#3555] / [i915#8228]) +1 other test skip
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_hdr@bpc-switch-dpms.html
* igt@kms_hdr@static-toggle-suspend:
- shard-dg2: NOTRUN -> [SKIP][146] ([i915#3555] / [i915#8228]) +4 other tests skip
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-5/igt@kms_hdr@static-toggle-suspend.html
- shard-rkl: NOTRUN -> [SKIP][147] ([i915#3555] / [i915#8228])
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-dg2: NOTRUN -> [SKIP][148] ([i915#4816])
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
- shard-dg1: NOTRUN -> [SKIP][149] ([i915#1839])
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-rkl: NOTRUN -> [SKIP][150] ([i915#6301])
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_pipe_b_c_ivb@disable-pipe-b-enable-pipe-c:
- shard-dg2: NOTRUN -> [SKIP][151] +8 other tests skip
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_pipe_b_c_ivb@disable-pipe-b-enable-pipe-c.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-dg2: NOTRUN -> [SKIP][152] ([i915#6953] / [i915#9423])
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-6/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [FAIL][153] ([i915#8292])
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-2.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][154] ([i915#9423]) +5 other tests skip
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-b-hdmi-a-2.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-b-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][155] ([i915#9423]) +3 other tests skip
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-b-hdmi-a-4.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-c-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][156] ([i915#9423]) +3 other tests skip
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-10/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-c-hdmi-a-1.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-hdmi-a-3:
- shard-dg1: NOTRUN -> [SKIP][157] ([i915#5176] / [i915#9423]) +3 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-13/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-hdmi-a-3.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][158] ([i915#5176] / [i915#9423]) +1 other test skip
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b-hdmi-a-2.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][159] ([i915#5235]) +9 other tests skip
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-1/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-b-hdmi-a-2.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][160] ([i915#5235] / [i915#9423]) +7 other tests skip
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-d-hdmi-a-1.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-d-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][161] ([i915#5235]) +3 other tests skip
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-d-hdmi-a-4.html
* igt@kms_pm_backlight@bad-brightness:
- shard-rkl: NOTRUN -> [SKIP][162] ([i915#5354])
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_pm_backlight@bad-brightness.html
* igt@kms_pm_dc@dc3co-vpb-simulation:
- shard-dg2: NOTRUN -> [SKIP][163] ([i915#9685])
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_pm_dc@dc3co-vpb-simulation.html
- shard-dg1: NOTRUN -> [SKIP][164] ([i915#9685])
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_pm_dc@dc3co-vpb-simulation.html
* igt@kms_pm_dc@dc6-dpms:
- shard-rkl: NOTRUN -> [SKIP][165] ([i915#3361])
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_dc@dc6-psr:
- shard-rkl: NOTRUN -> [SKIP][166] ([i915#9685]) +1 other test skip
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_pm_dc@dc6-psr.html
* igt@kms_pm_lpsp@screens-disabled:
- shard-rkl: NOTRUN -> [SKIP][167] ([i915#8430])
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_pm_lpsp@screens-disabled.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-dg1: NOTRUN -> [SKIP][168] ([i915#9519])
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-dg2: NOTRUN -> [SKIP][169] ([i915#9519])
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-rkl: [PASS][170] -> [SKIP][171] ([i915#9519]) +1 other test skip
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-5/igt@kms_pm_rpm@modeset-lpsp.html
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-1/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress:
- shard-dg2: [PASS][172] -> [SKIP][173] ([i915#9519]) +3 other tests skip
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-5/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-10/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait:
- shard-rkl: NOTRUN -> [SKIP][174] ([i915#9519])
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
* igt@kms_prime@d3hot:
- shard-rkl: NOTRUN -> [SKIP][175] ([i915#6524]) +1 other test skip
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_prime@d3hot.html
* igt@kms_psr@fbc-psr2-sprite-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][176] ([i915#1072] / [i915#9732]) +15 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_psr@fbc-psr2-sprite-mmap-gtt.html
* igt@kms_psr@psr-cursor-render:
- shard-dg2: NOTRUN -> [SKIP][177] ([i915#1072] / [i915#9732]) +9 other tests skip
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_psr@psr-cursor-render.html
* igt@kms_psr@psr2-suspend:
- shard-rkl: NOTRUN -> [SKIP][178] ([i915#1072] / [i915#9732]) +26 other tests skip
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_psr@psr2-suspend.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270:
- shard-dg2: NOTRUN -> [SKIP][179] ([i915#4235] / [i915#5190])
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html
- shard-dg1: NOTRUN -> [SKIP][180] ([i915#5289])
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html
* igt@kms_tiled_display@basic-test-pattern-with-chamelium:
- shard-rkl: NOTRUN -> [SKIP][181] ([i915#8623]) +1 other test skip
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
* igt@kms_universal_plane@cursor-fb-leak@pipe-b-hdmi-a-1:
- shard-snb: [PASS][182] -> [FAIL][183] ([i915#9196])
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-snb5/igt@kms_universal_plane@cursor-fb-leak@pipe-b-hdmi-a-1.html
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-snb7/igt@kms_universal_plane@cursor-fb-leak@pipe-b-hdmi-a-1.html
* igt@kms_vrr@max-min:
- shard-rkl: NOTRUN -> [SKIP][184] ([i915#9906])
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@kms_vrr@max-min.html
* igt@kms_writeback@writeback-check-output:
- shard-rkl: NOTRUN -> [SKIP][185] ([i915#2437])
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_writeback@writeback-check-output.html
* igt@kms_writeback@writeback-fb-id-xrgb2101010:
- shard-dg2: NOTRUN -> [SKIP][186] ([i915#2437] / [i915#9412]) +1 other test skip
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@kms_writeback@writeback-fb-id-xrgb2101010.html
* igt@kms_writeback@writeback-pixel-formats:
- shard-dg1: NOTRUN -> [SKIP][187] ([i915#2437] / [i915#9412])
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@kms_writeback@writeback-pixel-formats.html
* igt@perf@per-context-mode-unprivileged:
- shard-rkl: NOTRUN -> [SKIP][188] ([i915#2435])
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@perf@per-context-mode-unprivileged.html
* igt@perf_pmu@busy-check-all@vcs1:
- shard-dg1: NOTRUN -> [FAIL][189] ([i915#4349]) +3 other tests fail
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-17/igt@perf_pmu@busy-check-all@vcs1.html
* igt@perf_pmu@busy-double-start@rcs0:
- shard-mtlp: [PASS][190] -> [FAIL][191] ([i915#4349])
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-mtlp-1/igt@perf_pmu@busy-double-start@rcs0.html
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-mtlp-2/igt@perf_pmu@busy-double-start@rcs0.html
* igt@perf_pmu@rc6-all-gts:
- shard-rkl: NOTRUN -> [SKIP][192] ([i915#8516])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-3/igt@perf_pmu@rc6-all-gts.html
* igt@perf_pmu@rc6@other-idle-gt0:
- shard-dg2: NOTRUN -> [SKIP][193] ([i915#8516])
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@perf_pmu@rc6@other-idle-gt0.html
* igt@prime_vgem@basic-read:
- shard-dg1: NOTRUN -> [SKIP][194] ([i915#3708])
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@prime_vgem@basic-read.html
* igt@sriov_basic@bind-unbind-vf:
- shard-dg2: NOTRUN -> [SKIP][195] ([i915#9917])
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@sriov_basic@bind-unbind-vf.html
* igt@tools_test@sysfs_l3_parity:
- shard-rkl: NOTRUN -> [SKIP][196] +50 other tests skip
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-6/igt@tools_test@sysfs_l3_parity.html
* igt@v3d/v3d_submit_cl@job-perfmon:
- shard-dg1: NOTRUN -> [SKIP][197] ([i915#2575]) +5 other tests skip
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@v3d/v3d_submit_cl@job-perfmon.html
* igt@v3d/v3d_submit_csd@bad-flag:
- shard-dg2: NOTRUN -> [SKIP][198] ([i915#2575]) +4 other tests skip
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@v3d/v3d_submit_csd@bad-flag.html
* igt@vc4/vc4_perfmon@create-two-perfmon:
- shard-rkl: NOTRUN -> [SKIP][199] ([i915#7711]) +10 other tests skip
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@vc4/vc4_perfmon@create-two-perfmon.html
* igt@vc4/vc4_perfmon@destroy-invalid-perfmon:
- shard-dg1: NOTRUN -> [SKIP][200] ([i915#7711]) +7 other tests skip
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@vc4/vc4_perfmon@destroy-invalid-perfmon.html
* igt@vc4/vc4_wait_bo@bad-bo:
- shard-dg2: NOTRUN -> [SKIP][201] ([i915#7711]) +4 other tests skip
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-8/igt@vc4/vc4_wait_bo@bad-bo.html
#### Possible fixes ####
* igt@drm_fdinfo@idle@rcs0:
- shard-rkl: [FAIL][202] ([i915#7742]) -> [PASS][203] +1 other test pass
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-4/igt@drm_fdinfo@idle@rcs0.html
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@drm_fdinfo@idle@rcs0.html
* igt@gem_exec_fair@basic-none-share@rcs0:
- shard-tglu: [FAIL][204] ([i915#2842]) -> [PASS][205]
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-8/igt@gem_exec_fair@basic-none-share@rcs0.html
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-6/igt@gem_exec_fair@basic-none-share@rcs0.html
* igt@gem_exec_fair@basic-none@vecs0:
- shard-rkl: [FAIL][206] ([i915#2842]) -> [PASS][207] +1 other test pass
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-4/igt@gem_exec_fair@basic-none@vecs0.html
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-4/igt@gem_exec_fair@basic-none@vecs0.html
* igt@gem_lmem_swapping@basic@lmem0:
- shard-dg2: [FAIL][208] ([i915#10378]) -> [PASS][209]
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-10/igt@gem_lmem_swapping@basic@lmem0.html
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-3/igt@gem_lmem_swapping@basic@lmem0.html
* igt@gem_lmem_swapping@heavy-multi@lmem0:
- shard-dg1: [FAIL][210] ([i915#10378]) -> [PASS][211]
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg1-17/igt@gem_lmem_swapping@heavy-multi@lmem0.html
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-15/igt@gem_lmem_swapping@heavy-multi@lmem0.html
* igt@i915_suspend@basic-s3-without-i915:
- shard-rkl: [INCOMPLETE][212] ([i915#4817]) -> [PASS][213]
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-3/igt@i915_suspend@basic-s3-without-i915.html
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@i915_suspend@basic-s3-without-i915.html
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-tglu: [FAIL][214] ([i915#3743]) -> [PASS][215]
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-7/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-4/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_cursor_legacy@torture-move@pipe-a:
- shard-tglu: [DMESG-WARN][216] ([i915#10166] / [i915#1982]) -> [PASS][217]
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-2/igt@kms_cursor_legacy@torture-move@pipe-a.html
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-2/igt@kms_cursor_legacy@torture-move@pipe-a.html
* igt@kms_flip@flip-vs-suspend@a-hdmi-a4:
- shard-dg1: [FAIL][218] -> [PASS][219]
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg1-17/igt@kms_flip@flip-vs-suspend@a-hdmi-a4.html
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_flip@flip-vs-suspend@a-hdmi-a4.html
* igt@kms_flip@flip-vs-suspend@b-hdmi-a4:
- shard-dg1: [FAIL][220] ([i915#10545]) -> [PASS][221] +2 other tests pass
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg1-17/igt@kms_flip@flip-vs-suspend@b-hdmi-a4.html
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@kms_flip@flip-vs-suspend@b-hdmi-a4.html
* igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
- shard-dg2: [FAIL][222] ([i915#6880]) -> [PASS][223]
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-dg2: [SKIP][224] ([i915#9519]) -> [PASS][225]
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-6/igt@kms_pm_rpm@dpms-lpsp.html
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-10/igt@kms_pm_rpm@dpms-lpsp.html
#### Warnings ####
* igt@gem_exec_fair@basic-pace@rcs0:
- shard-tglu: [FAIL][226] ([i915#2842]) -> [FAIL][227] ([i915#2876])
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-tglu-6/igt@gem_exec_fair@basic-pace@rcs0.html
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-tglu-3/igt@gem_exec_fair@basic-pace@rcs0.html
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg1: [TIMEOUT][228] ([i915#5493]) -> [DMESG-WARN][229] ([i915#4936] / [i915#5493])
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg1-17/igt@gem_lmem_swapping@smem-oom@lmem0.html
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-18/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@kms_content_protection@mei-interface:
- shard-dg1: [SKIP][230] ([i915#9433]) -> [SKIP][231] ([i915#9424])
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg1-13/igt@kms_content_protection@mei-interface.html
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg1-16/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@type1:
- shard-dg2: [SKIP][232] ([i915#7118] / [i915#7162] / [i915#9424]) -> [SKIP][233] ([i915#7118] / [i915#9424])
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-11/igt@kms_content_protection@type1.html
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-5/igt@kms_content_protection@type1.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu:
- shard-dg2: [SKIP][234] ([i915#3458]) -> [SKIP][235] ([i915#10433] / [i915#3458]) +1 other test skip
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-5/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu.html
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-cpu:
- shard-dg2: [SKIP][236] ([i915#10433] / [i915#3458]) -> [SKIP][237] ([i915#3458])
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-4/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-cpu.html
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-2/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-cpu.html
* igt@kms_pm_dc@dc9-dpms:
- shard-rkl: [SKIP][238] ([i915#3361]) -> [SKIP][239] ([i915#4281])
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-rkl-3/igt@kms_pm_dc@dc9-dpms.html
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-rkl-5/igt@kms_pm_dc@dc9-dpms.html
* igt@kms_psr@psr2-primary-mmap-gtt:
- shard-dg2: [SKIP][240] ([i915#1072] / [i915#9673] / [i915#9732]) -> [SKIP][241] ([i915#1072] / [i915#9732]) +9 other tests skip
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14621/shard-dg2-11/igt@kms_psr@psr2-primary-mmap-gtt.html
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/shard-dg2-5/igt@kms_psr@psr2-primary-mmap-gtt.html
[i915#10166]: https://gitlab.freedesktop.org/drm/intel/issues/10166
[i915#10278]: https://gitlab.freedesktop.org/drm/intel/issues/10278
[i915#10307]: https://gitlab.freedesktop.org/drm/intel/issues/10307
[i915#10378]: https://gitlab.freedesktop.org/drm/intel/issues/10378
[i915#10433]: https://gitlab.freedesktop.org/drm/intel/issues/10433
[i915#10434]: https://gitlab.freedesktop.org/drm/intel/issues/10434
[i915#10513]: https://gitlab.freedesktop.org/drm/intel/issues/10513
[i915#10545]: https://gitlab.freedesktop.org/drm/intel/issues/10545
[i915#10656]: https://gitlab.freedesktop.org/drm/intel/issues/10656
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#10887]: https://gitlab.freedesktop.org/drm/intel/issues/10887
[i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257
[i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
[i915#2435]: https://gitlab.freedesktop.org/drm/intel/issues/2435
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2876]: https://gitlab.freedesktop.org/drm/intel/issues/2876
[i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
[i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4087]: https://gitlab.freedesktop.org/drm/intel/issues/4087
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#4235]: https://gitlab.freedesktop.org/drm/intel/issues/4235
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
[i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4816]: https://gitlab.freedesktop.org/drm/intel/issues/4816
[i915#4817]: https://gitlab.freedesktop.org/drm/intel/issues/4817
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
[i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
[i915#4936]: https://gitlab.freedesktop.org/drm/intel/issues/4936
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
[i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
[i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
[i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
[i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
[i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
[i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#6880]: https://gitlab.freedesktop.org/drm/intel/issues/6880
[i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
[i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
[i915#7162]: https://gitlab.freedesktop.org/drm/intel/issues/7162
[i915#7213]: https://gitlab.freedesktop.org/drm/intel/issues/7213
[i915#7276]: https://gitlab.freedesktop.org/drm/intel/issues/7276
[i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
[i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
[i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#8228]: https://gitlab.freedesktop.org/drm/intel/issues/8228
[i915#8292]: https://gitlab.freedesktop.org/drm/intel/issues/8292
[i915#8399]: https://gitlab.freedesktop.org/drm/intel/issues/8399
[i915#8411]: https://gitlab.freedesktop.org/drm/intel/issues/8411
[i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414
[i915#8428]: https://gitlab.freedesktop.org/drm/intel/issues/8428
[i915#8430]: https://gitlab.freedesktop.org/drm/intel/issues/8430
[i915#8516]: https://gitlab.freedesktop.org/drm/intel/issues/8516
[i915#8623]: https://gitlab.freedesktop.org/drm/intel/issues/8623
[i915#8708]: https://gitlab.freedesktop.org/drm/intel/issues/8708
[i915#8709]: https://gitlab.freedesktop.org/drm/intel/issues/8709
[i915#8925]: https://gitlab.freedesktop.org/drm/intel/issues/8925
[i915#9067]: https://gitlab.freedesktop.org/drm/intel/issues/9067
[i915#9196]: https://gitlab.freedesktop.org/drm/intel/issues/9196
[i915#9323]: https://gitlab.freedesktop.org/drm/intel/issues/9323
[i915#9412]: https://gitlab.freedesktop.org/drm/intel/issues/9412
[i915#9423]: https://gitlab.freedesktop.org/drm/intel/issues/9423
[i915#9424]: https://gitlab.freedesktop.org/drm/intel/issues/9424
[i915#9433]: https://gitlab.freedesktop.org/drm/intel/issues/9433
[i915#9519]: https://gitlab.freedesktop.org/drm/intel/issues/9519
[i915#9561]: https://gitlab.freedesktop.org/drm/intel/issues/9561
[i915#9606]: https://gitlab.freedesktop.org/drm/intel/issues/9606
[i915#9673]: https://gitlab.freedesktop.org/drm/intel/issues/9673
[i915#9685]: https://gitlab.freedesktop.org/drm/intel/issues/9685
[i915#9723]: https://gitlab.freedesktop.org/drm/intel/issues/9723
[i915#9732]: https://gitlab.freedesktop.org/drm/intel/issues/9732
[i915#9820]: https://gitlab.freedesktop.org/drm/intel/issues/9820
[i915#9849]: https://gitlab.freedesktop.org/drm/intel/issues/9849
[i915#9906]: https://gitlab.freedesktop.org/drm/intel/issues/9906
[i915#9917]: https://gitlab.freedesktop.org/drm/intel/issues/9917
[i915#9934]: https://gitlab.freedesktop.org/drm/intel/issues/9934
Build changes
-------------
* Linux: CI_DRM_14621 -> Patchwork_128193v8
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_14621: 681321239497f9587fb66325b431a2b65d0bd772 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7814: 7814
Patchwork_128193v8: 681321239497f9587fb66325b431a2b65d0bd772 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_128193v8/index.html
[-- Attachment #2: Type: text/html, Size: 80307 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* RE: [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
2024-04-19 12:11 ` [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay Jouni Högander
@ 2024-04-29 11:02 ` Manna, Animesh
2024-04-29 11:16 ` Hogander, Jouni
0 siblings, 1 reply; 24+ messages in thread
From: Manna, Animesh @ 2024-04-29 11:02 UTC (permalink / raw)
To: Hogander, Jouni, intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Hogander, Jouni <jouni.hogander@intel.com>
> Sent: Friday, April 19, 2024 5:42 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: Manna, Animesh <animesh.manna@intel.com>; Hogander, Jouni
> <jouni.hogander@intel.com>
> Subject: [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity
> to support panel replay
>
> Currently intel_dp_get_su_granularity doesn't support panel replay.
> This fix modifies it to support panel replay as well.
>
> v2: rely on PSR definitions on common bits
>
> Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_psr.c | 62 +++++++++++++++++++++---
> 1 file changed, 55 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> b/drivers/gpu/drm/i915/display/intel_psr.c
> index b94f8e33ed1f..29400fac13c2 100644
> --- a/drivers/gpu/drm/i915/display/intel_psr.c
> +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> @@ -466,6 +466,40 @@ static u8 intel_dp_get_sink_sync_latency(struct
> intel_dp *intel_dp)
> return val;
> }
>
> +static u8 intel_dp_get_su_capability(struct intel_dp *intel_dp) {
> + u8 su_capability;
> +
> + if (intel_dp->psr.sink_panel_replay_su_support)
While relooking found that good to add a check for DP_PANEL_PANEL_REPLAY_SU_GRANULARITY_REQUIRED (6th bit of dpcd 0xb1). What if it is zero means granularity not needed but will continue to use x-granularity and y-granularity.
Regards,
Animesh
> + drm_dp_dpcd_read(&intel_dp->aux,
> + DP_PANEL_PANEL_REPLAY_X_GRANULARITY,
> + &su_capability, 1);
> + else
> + su_capability = intel_dp->psr_dpcd[1];
> +
> + return su_capability;
> +}
> +
> +static unsigned int
> +intel_dp_get_su_x_granularity_offset(struct intel_dp *intel_dp) {
> + return intel_dp->psr.sink_panel_replay_su_support ?
> + DP_PANEL_PANEL_REPLAY_X_GRANULARITY :
> + DP_PSR2_SU_X_GRANULARITY;
> +}
> +
> +static unsigned int
> +intel_dp_get_su_y_granularity_offset(struct intel_dp *intel_dp) {
> + return intel_dp->psr.sink_panel_replay_su_support ?
> + DP_PANEL_PANEL_REPLAY_Y_GRANULARITY :
> + DP_PSR2_SU_Y_GRANULARITY;
> +}
> +
> +/*
> + * Note: Bits related to granularity are same in panel replay and psr
> + * registers. Rely on PSR definitions on these "common" bits.
> + */
> static void intel_dp_get_su_granularity(struct intel_dp *intel_dp) {
> struct drm_i915_private *i915 = dp_to_i915(intel_dp); @@ -473,18
> +507,29 @@ static void intel_dp_get_su_granularity(struct intel_dp
> *intel_dp)
> u16 w;
> u8 y;
>
> - /* If sink don't have specific granularity requirements set legacy ones
> */
> - if (!(intel_dp->psr_dpcd[1] &
> DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> + /*
> + * TODO: Do we need to take into account panel supporting both PSR
> and
> + * Panel replay?
> + */
> +
> + /*
> + * If sink don't have specific granularity requirements set legacy
> + * ones.
> + */
> + if (!(intel_dp_get_su_capability(intel_dp) &
> + DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> /* As PSR2 HW sends full lines, we do not care about x
> granularity */
> w = 4;
> y = 4;
> goto exit;
> }
>
> - r = drm_dp_dpcd_read(&intel_dp->aux,
> DP_PSR2_SU_X_GRANULARITY, &w, 2);
> + r = drm_dp_dpcd_read(&intel_dp->aux,
> + intel_dp_get_su_x_granularity_offset(intel_dp),
> + &w, 2);
> if (r != 2)
> drm_dbg_kms(&i915->drm,
> - "Unable to read
> DP_PSR2_SU_X_GRANULARITY\n");
> + "Unable to read selective update x granularity\n");
> /*
> * Spec says that if the value read is 0 the default granularity should
> * be used instead.
> @@ -492,10 +537,12 @@ static void intel_dp_get_su_granularity(struct
> intel_dp *intel_dp)
> if (r != 2 || w == 0)
> w = 4;
>
> - r = drm_dp_dpcd_read(&intel_dp->aux,
> DP_PSR2_SU_Y_GRANULARITY, &y, 1);
> + r = drm_dp_dpcd_read(&intel_dp->aux,
> + intel_dp_get_su_y_granularity_offset(intel_dp),
> + &y, 1);
> if (r != 1) {
> drm_dbg_kms(&i915->drm,
> - "Unable to read
> DP_PSR2_SU_Y_GRANULARITY\n");
> + "Unable to read selective update y granularity\n");
> y = 4;
> }
> if (y == 0)
> @@ -588,7 +635,8 @@ void intel_psr_init_dpcd(struct intel_dp *intel_dp)
> if (intel_dp->psr_dpcd[0])
> _psr_init_dpcd(intel_dp);
>
> - if (intel_dp->psr.sink_psr2_support)
> + if (intel_dp->psr.sink_psr2_support ||
> + intel_dp->psr.sink_panel_replay_su_support)
> intel_dp_get_su_granularity(intel_dp);
> }
>
> --
> 2.34.1
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
2024-04-29 11:02 ` Manna, Animesh
@ 2024-04-29 11:16 ` Hogander, Jouni
2024-04-29 11:34 ` Manna, Animesh
0 siblings, 1 reply; 24+ messages in thread
From: Hogander, Jouni @ 2024-04-29 11:16 UTC (permalink / raw)
To: Manna, Animesh, intel-gfx@lists.freedesktop.org
On Mon, 2024-04-29 at 11:02 +0000, Manna, Animesh wrote:
>
>
> > -----Original Message-----
> > From: Hogander, Jouni <jouni.hogander@intel.com>
> > Sent: Friday, April 19, 2024 5:42 PM
> > To: intel-gfx@lists.freedesktop.org
> > Cc: Manna, Animesh <animesh.manna@intel.com>; Hogander, Jouni
> > <jouni.hogander@intel.com>
> > Subject: [PATCH v7 06/11] drm/i915/psr: Modify
> > intel_dp_get_su_granularity
> > to support panel replay
> >
> > Currently intel_dp_get_su_granularity doesn't support panel replay.
> > This fix modifies it to support panel replay as well.
> >
> > v2: rely on PSR definitions on common bits
> >
> > Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> > Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> > ---
> > drivers/gpu/drm/i915/display/intel_psr.c | 62
> > +++++++++++++++++++++---
> > 1 file changed, 55 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> > b/drivers/gpu/drm/i915/display/intel_psr.c
> > index b94f8e33ed1f..29400fac13c2 100644
> > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > @@ -466,6 +466,40 @@ static u8
> > intel_dp_get_sink_sync_latency(struct
> > intel_dp *intel_dp)
> > return val;
> > }
> >
> > +static u8 intel_dp_get_su_capability(struct intel_dp *intel_dp) {
> > + u8 su_capability;
> > +
> > + if (intel_dp->psr.sink_panel_replay_su_support)
>
> While relooking found that good to add a check for
> DP_PANEL_PANEL_REPLAY_SU_GRANULARITY_REQUIRED (6th bit of dpcd 0xb1).
> What if it is zero means granularity not needed but will continue to
> use x-granularity and y-granularity.
Please note it is 5th bit in 0xb1. See my further comment below...
> Regards,
> Animesh
>
> > + drm_dp_dpcd_read(&intel_dp->aux,
> > +
> > DP_PANEL_PANEL_REPLAY_X_GRANULARITY,
> > + &su_capability, 1);
> > + else
> > + su_capability = intel_dp->psr_dpcd[1];
> > +
> > + return su_capability;
> > +}
> > +
> > +static unsigned int
> > +intel_dp_get_su_x_granularity_offset(struct intel_dp *intel_dp) {
> > + return intel_dp->psr.sink_panel_replay_su_support ?
> > + DP_PANEL_PANEL_REPLAY_X_GRANULARITY :
> > + DP_PSR2_SU_X_GRANULARITY;
> > +}
> > +
> > +static unsigned int
> > +intel_dp_get_su_y_granularity_offset(struct intel_dp *intel_dp) {
> > + return intel_dp->psr.sink_panel_replay_su_support ?
> > + DP_PANEL_PANEL_REPLAY_Y_GRANULARITY :
> > + DP_PSR2_SU_Y_GRANULARITY;
> > +}
> > +
> > +/*
> > + * Note: Bits related to granularity are same in panel replay and
> > psr
> > + * registers. Rely on PSR definitions on these "common" bits.
> > + */
Check this comment. See my further comment below...
> > static void intel_dp_get_su_granularity(struct intel_dp
> > *intel_dp) {
> > struct drm_i915_private *i915 = dp_to_i915(intel_dp); @@ -
> > 473,18
> > +507,29 @@ static void intel_dp_get_su_granularity(struct intel_dp
> > *intel_dp)
> > u16 w;
> > u8 y;
> >
> > - /* If sink don't have specific granularity requirements set
> > legacy ones
> > */
> > - if (!(intel_dp->psr_dpcd[1] &
> > DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > + /*
> > + * TODO: Do we need to take into account panel supporting
> > both PSR
> > and
> > + * Panel replay?
> > + */
> > +
> > + /*
> > + * If sink don't have specific granularity requirements set
> > legacy
> > + * ones.
> > + */
> > + if (!(intel_dp_get_su_capability(intel_dp) &
> > + DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > /* As PSR2 HW sends full lines, we do not care
> > about x
> > granularity */
> > w = 4;
> > y = 4;
> > goto exit;
> > }
This block is taking care of checking bit 5 in 0xb1 and using legacy
ones if no requirements.
BR,
Jouni Högander
> >
> > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > DP_PSR2_SU_X_GRANULARITY, &w, 2);
> > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > +
> > intel_dp_get_su_x_granularity_offset(intel_dp),
> > + &w, 2);
> > if (r != 2)
> > drm_dbg_kms(&i915->drm,
> > - "Unable to read
> > DP_PSR2_SU_X_GRANULARITY\n");
> > + "Unable to read selective update x
> > granularity\n");
> > /*
> > * Spec says that if the value read is 0 the default
> > granularity should
> > * be used instead.
> > @@ -492,10 +537,12 @@ static void
> > intel_dp_get_su_granularity(struct
> > intel_dp *intel_dp)
> > if (r != 2 || w == 0)
> > w = 4;
> >
> > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > DP_PSR2_SU_Y_GRANULARITY, &y, 1);
> > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > +
> > intel_dp_get_su_y_granularity_offset(intel_dp),
> > + &y, 1);
> > if (r != 1) {
> > drm_dbg_kms(&i915->drm,
> > - "Unable to read
> > DP_PSR2_SU_Y_GRANULARITY\n");
> > + "Unable to read selective update y
> > granularity\n");
> > y = 4;
> > }
> > if (y == 0)
> > @@ -588,7 +635,8 @@ void intel_psr_init_dpcd(struct intel_dp
> > *intel_dp)
> > if (intel_dp->psr_dpcd[0])
> > _psr_init_dpcd(intel_dp);
> >
> > - if (intel_dp->psr.sink_psr2_support)
> > + if (intel_dp->psr.sink_psr2_support ||
> > + intel_dp->psr.sink_panel_replay_su_support)
> > intel_dp_get_su_granularity(intel_dp);
> > }
> >
> > --
> > 2.34.1
>
^ permalink raw reply [flat|nested] 24+ messages in thread
* RE: [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
2024-04-29 11:16 ` Hogander, Jouni
@ 2024-04-29 11:34 ` Manna, Animesh
2024-04-29 11:45 ` Manna, Animesh
0 siblings, 1 reply; 24+ messages in thread
From: Manna, Animesh @ 2024-04-29 11:34 UTC (permalink / raw)
To: Hogander, Jouni, intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Hogander, Jouni <jouni.hogander@intel.com>
> Sent: Monday, April 29, 2024 4:46 PM
> To: Manna, Animesh <animesh.manna@intel.com>; intel-
> gfx@lists.freedesktop.org
> Subject: Re: [PATCH v7 06/11] drm/i915/psr: Modify
> intel_dp_get_su_granularity to support panel replay
>
> On Mon, 2024-04-29 at 11:02 +0000, Manna, Animesh wrote:
> >
> >
> > > -----Original Message-----
> > > From: Hogander, Jouni <jouni.hogander@intel.com>
> > > Sent: Friday, April 19, 2024 5:42 PM
> > > To: intel-gfx@lists.freedesktop.org
> > > Cc: Manna, Animesh <animesh.manna@intel.com>; Hogander, Jouni
> > > <jouni.hogander@intel.com>
> > > Subject: [PATCH v7 06/11] drm/i915/psr: Modify
> > > intel_dp_get_su_granularity
> > > to support panel replay
> > >
> > > Currently intel_dp_get_su_granularity doesn't support panel replay.
> > > This fix modifies it to support panel replay as well.
> > >
> > > v2: rely on PSR definitions on common bits
> > >
> > > Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> > > Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> > > ---
> > > drivers/gpu/drm/i915/display/intel_psr.c | 62
> > > +++++++++++++++++++++---
> > > 1 file changed, 55 insertions(+), 7 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> > > b/drivers/gpu/drm/i915/display/intel_psr.c
> > > index b94f8e33ed1f..29400fac13c2 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > > @@ -466,6 +466,40 @@ static u8
> > > intel_dp_get_sink_sync_latency(struct
> > > intel_dp *intel_dp)
> > > return val;
> > > }
> > >
> > > +static u8 intel_dp_get_su_capability(struct intel_dp *intel_dp) {
> > > + u8 su_capability;
> > > +
> > > + if (intel_dp->psr.sink_panel_replay_su_support)
> >
> > While relooking found that good to add a check for
> > DP_PANEL_PANEL_REPLAY_SU_GRANULARITY_REQUIRED (6th bit of dpcd
> 0xb1).
> > What if it is zero means granularity not needed but will continue to
> > use x-granularity and y-granularity.
>
> Please note it is 5th bit in 0xb1. See my further comment below...
Same I was referring, 6th bit index 5 as it starts from 0.
>
> > Regards,
> > Animesh
> >
> > > + drm_dp_dpcd_read(&intel_dp->aux,
> > > +
> > > DP_PANEL_PANEL_REPLAY_X_GRANULARITY,
> > > + &su_capability, 1);
> > > + else
> > > + su_capability = intel_dp->psr_dpcd[1];
> > > +
> > > + return su_capability;
> > > +}
> > > +
> > > +static unsigned int
> > > +intel_dp_get_su_x_granularity_offset(struct intel_dp *intel_dp) {
> > > + return intel_dp->psr.sink_panel_replay_su_support ?
> > > + DP_PANEL_PANEL_REPLAY_X_GRANULARITY :
> > > + DP_PSR2_SU_X_GRANULARITY;
> > > +}
> > > +
> > > +static unsigned int
> > > +intel_dp_get_su_y_granularity_offset(struct intel_dp *intel_dp) {
> > > + return intel_dp->psr.sink_panel_replay_su_support ?
> > > + DP_PANEL_PANEL_REPLAY_Y_GRANULARITY :
> > > + DP_PSR2_SU_Y_GRANULARITY;
> > > +}
> > > +
> > > +/*
> > > + * Note: Bits related to granularity are same in panel replay and
> > > psr
> > > + * registers. Rely on PSR definitions on these "common" bits.
> > > + */
>
> Check this comment. See my further comment below...
Agree bit position is same.
>
> > > static void intel_dp_get_su_granularity(struct intel_dp
> > > *intel_dp) {
> > > struct drm_i915_private *i915 = dp_to_i915(intel_dp); @@ -
> > > 473,18
> > > +507,29 @@ static void intel_dp_get_su_granularity(struct intel_dp
> > > *intel_dp)
> > > u16 w;
> > > u8 y;
> > >
> > > - /* If sink don't have specific granularity requirements set
> > > legacy ones
> > > */
> > > - if (!(intel_dp->psr_dpcd[1] &
> > > DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > > + /*
> > > + * TODO: Do we need to take into account panel supporting
> > > both PSR
> > > and
> > > + * Panel replay?
> > > + */
> > > +
> > > + /*
> > > + * If sink don't have specific granularity requirements set
> > > legacy
> > > + * ones.
> > > + */
> > > + if (!(intel_dp_get_su_capability(intel_dp) &
> > > + DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > > /* As PSR2 HW sends full lines, we do not care
> > > about x
> > > granularity */
> > > w = 4;
> > > y = 4;
> > > goto exit;
> > > }
>
> This block is taking care of checking bit 5 in 0xb1 and using legacy
> ones if no requirements.
intel_dp_get_su_capability is reading from DP_PANEL_PANEL_REPLAY_X_GRANULARITY which Is dpcd 0xb2. Am I missing something?
Regards,
Animesh
>
> BR,
>
> Jouni Högander
>
> > >
> > > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > > DP_PSR2_SU_X_GRANULARITY, &w, 2);
> > > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > > +
> > > intel_dp_get_su_x_granularity_offset(intel_dp),
> > > + &w, 2);
> > > if (r != 2)
> > > drm_dbg_kms(&i915->drm,
> > > - "Unable to read
> > > DP_PSR2_SU_X_GRANULARITY\n");
> > > + "Unable to read selective update x
> > > granularity\n");
> > > /*
> > > * Spec says that if the value read is 0 the default
> > > granularity should
> > > * be used instead.
> > > @@ -492,10 +537,12 @@ static void
> > > intel_dp_get_su_granularity(struct
> > > intel_dp *intel_dp)
> > > if (r != 2 || w == 0)
> > > w = 4;
> > >
> > > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > > DP_PSR2_SU_Y_GRANULARITY, &y, 1);
> > > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > > +
> > > intel_dp_get_su_y_granularity_offset(intel_dp),
> > > + &y, 1);
> > > if (r != 1) {
> > > drm_dbg_kms(&i915->drm,
> > > - "Unable to read
> > > DP_PSR2_SU_Y_GRANULARITY\n");
> > > + "Unable to read selective update y
> > > granularity\n");
> > > y = 4;
> > > }
> > > if (y == 0)
> > > @@ -588,7 +635,8 @@ void intel_psr_init_dpcd(struct intel_dp
> > > *intel_dp)
> > > if (intel_dp->psr_dpcd[0])
> > > _psr_init_dpcd(intel_dp);
> > >
> > > - if (intel_dp->psr.sink_psr2_support)
> > > + if (intel_dp->psr.sink_psr2_support ||
> > > + intel_dp->psr.sink_panel_replay_su_support)
> > > intel_dp_get_su_granularity(intel_dp);
> > > }
> > >
> > > --
> > > 2.34.1
> >
^ permalink raw reply [flat|nested] 24+ messages in thread
* RE: [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
2024-04-29 11:34 ` Manna, Animesh
@ 2024-04-29 11:45 ` Manna, Animesh
2024-04-29 11:46 ` Hogander, Jouni
0 siblings, 1 reply; 24+ messages in thread
From: Manna, Animesh @ 2024-04-29 11:45 UTC (permalink / raw)
To: Hogander, Jouni, intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Manna, Animesh
> Sent: Monday, April 29, 2024 5:04 PM
> To: Hogander, Jouni <jouni.hogander@intel.com>; intel-
> gfx@lists.freedesktop.org
> Subject: RE: [PATCH v7 06/11] drm/i915/psr: Modify
> intel_dp_get_su_granularity to support panel replay
>
>
>
> > -----Original Message-----
> > From: Hogander, Jouni <jouni.hogander@intel.com>
> > Sent: Monday, April 29, 2024 4:46 PM
> > To: Manna, Animesh <animesh.manna@intel.com>; intel-
> > gfx@lists.freedesktop.org
> > Subject: Re: [PATCH v7 06/11] drm/i915/psr: Modify
> > intel_dp_get_su_granularity to support panel replay
> >
> > On Mon, 2024-04-29 at 11:02 +0000, Manna, Animesh wrote:
> > >
> > >
> > > > -----Original Message-----
> > > > From: Hogander, Jouni <jouni.hogander@intel.com>
> > > > Sent: Friday, April 19, 2024 5:42 PM
> > > > To: intel-gfx@lists.freedesktop.org
> > > > Cc: Manna, Animesh <animesh.manna@intel.com>; Hogander, Jouni
> > > > <jouni.hogander@intel.com>
> > > > Subject: [PATCH v7 06/11] drm/i915/psr: Modify
> > > > intel_dp_get_su_granularity to support panel replay
> > > >
> > > > Currently intel_dp_get_su_granularity doesn't support panel replay.
> > > > This fix modifies it to support panel replay as well.
> > > >
> > > > v2: rely on PSR definitions on common bits
> > > >
> > > > Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> > > > Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> > > > ---
> > > > drivers/gpu/drm/i915/display/intel_psr.c | 62
> > > > +++++++++++++++++++++---
> > > > 1 file changed, 55 insertions(+), 7 deletions(-)
> > > >
> > > > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> > > > b/drivers/gpu/drm/i915/display/intel_psr.c
> > > > index b94f8e33ed1f..29400fac13c2 100644
> > > > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > > > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > > > @@ -466,6 +466,40 @@ static u8
> > > > intel_dp_get_sink_sync_latency(struct
> > > > intel_dp *intel_dp)
> > > > return val;
> > > > }
> > > >
> > > > +static u8 intel_dp_get_su_capability(struct intel_dp *intel_dp) {
> > > > + u8 su_capability;
> > > > +
> > > > + if (intel_dp->psr.sink_panel_replay_su_support)
> > >
> > > While relooking found that good to add a check for
> > > DP_PANEL_PANEL_REPLAY_SU_GRANULARITY_REQUIRED (6th bit of dpcd
> > 0xb1).
> > > What if it is zero means granularity not needed but will continue to
> > > use x-granularity and y-granularity.
> >
> > Please note it is 5th bit in 0xb1. See my further comment below...
>
> Same I was referring, 6th bit index 5 as it starts from 0.
>
> >
> > > Regards,
> > > Animesh
> > >
> > > > + drm_dp_dpcd_read(&intel_dp->aux,
> > > > +
> > > > DP_PANEL_PANEL_REPLAY_X_GRANULARITY,
> > > > + &su_capability, 1);
I think instead of DP_PANEL_PANEL_REPLAY_X_GRANULARITY it should be DP_PANEL_PANEL_REPLAY_CAPABILITY, everything else will be fine.
Regards,
Animesh
> > > > + else
> > > > + su_capability = intel_dp->psr_dpcd[1];
> > > > +
> > > > + return su_capability;
> > > > +}
> > > > +
> > > > +static unsigned int
> > > > +intel_dp_get_su_x_granularity_offset(struct intel_dp *intel_dp) {
> > > > + return intel_dp->psr.sink_panel_replay_su_support ?
> > > > + DP_PANEL_PANEL_REPLAY_X_GRANULARITY :
> > > > + DP_PSR2_SU_X_GRANULARITY; }
> > > > +
> > > > +static unsigned int
> > > > +intel_dp_get_su_y_granularity_offset(struct intel_dp *intel_dp) {
> > > > + return intel_dp->psr.sink_panel_replay_su_support ?
> > > > + DP_PANEL_PANEL_REPLAY_Y_GRANULARITY :
> > > > + DP_PSR2_SU_Y_GRANULARITY; }
> > > > +
> > > > +/*
> > > > + * Note: Bits related to granularity are same in panel replay and
> > > > psr
> > > > + * registers. Rely on PSR definitions on these "common" bits.
> > > > + */
> >
> > Check this comment. See my further comment below...
>
> Agree bit position is same.
>
> >
> > > > static void intel_dp_get_su_granularity(struct intel_dp
> > > > *intel_dp) {
> > > > struct drm_i915_private *i915 = dp_to_i915(intel_dp); @@ -
> > > > 473,18
> > > > +507,29 @@ static void intel_dp_get_su_granularity(struct intel_dp
> > > > *intel_dp)
> > > > u16 w;
> > > > u8 y;
> > > >
> > > > - /* If sink don't have specific granularity requirements
> > > > set legacy ones */
> > > > - if (!(intel_dp->psr_dpcd[1] &
> > > > DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > > > + /*
> > > > + * TODO: Do we need to take into account panel supporting
> > > > both PSR
> > > > and
> > > > + * Panel replay?
> > > > + */
> > > > +
> > > > + /*
> > > > + * If sink don't have specific granularity requirements
> > > > +set
> > > > legacy
> > > > + * ones.
> > > > + */
> > > > + if (!(intel_dp_get_su_capability(intel_dp) &
> > > > + DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > > > /* As PSR2 HW sends full lines, we do not care
> > > > about x granularity */
> > > > w = 4;
> > > > y = 4;
> > > > goto exit;
> > > > }
> >
> > This block is taking care of checking bit 5 in 0xb1 and using legacy
> > ones if no requirements.
>
> intel_dp_get_su_capability is reading from
> DP_PANEL_PANEL_REPLAY_X_GRANULARITY which Is dpcd 0xb2. Am I
> missing something?
>
> Regards,
> Animesh
>
> >
> > BR,
> >
> > Jouni Högander
> >
> > > >
> > > > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > DP_PSR2_SU_X_GRANULARITY, &w, 2);
> > > > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > +
> > > > intel_dp_get_su_x_granularity_offset(intel_dp),
> > > > + &w, 2);
> > > > if (r != 2)
> > > > drm_dbg_kms(&i915->drm,
> > > > - "Unable to read
> > > > DP_PSR2_SU_X_GRANULARITY\n");
> > > > + "Unable to read selective update x
> > > > granularity\n");
> > > > /*
> > > > * Spec says that if the value read is 0 the default
> > > > granularity should
> > > > * be used instead.
> > > > @@ -492,10 +537,12 @@ static void
> > > > intel_dp_get_su_granularity(struct
> > > > intel_dp *intel_dp)
> > > > if (r != 2 || w == 0)
> > > > w = 4;
> > > >
> > > > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > DP_PSR2_SU_Y_GRANULARITY, &y, 1);
> > > > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > +
> > > > intel_dp_get_su_y_granularity_offset(intel_dp),
> > > > + &y, 1);
> > > > if (r != 1) {
> > > > drm_dbg_kms(&i915->drm,
> > > > - "Unable to read
> > > > DP_PSR2_SU_Y_GRANULARITY\n");
> > > > + "Unable to read selective update y
> > > > granularity\n");
> > > > y = 4;
> > > > }
> > > > if (y == 0)
> > > > @@ -588,7 +635,8 @@ void intel_psr_init_dpcd(struct intel_dp
> > > > *intel_dp)
> > > > if (intel_dp->psr_dpcd[0])
> > > > _psr_init_dpcd(intel_dp);
> > > >
> > > > - if (intel_dp->psr.sink_psr2_support)
> > > > + if (intel_dp->psr.sink_psr2_support ||
> > > > + intel_dp->psr.sink_panel_replay_su_support)
> > > > intel_dp_get_su_granularity(intel_dp);
> > > > }
> > > >
> > > > --
> > > > 2.34.1
> > >
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay
2024-04-29 11:45 ` Manna, Animesh
@ 2024-04-29 11:46 ` Hogander, Jouni
0 siblings, 0 replies; 24+ messages in thread
From: Hogander, Jouni @ 2024-04-29 11:46 UTC (permalink / raw)
To: Manna, Animesh, intel-gfx@lists.freedesktop.org
On Mon, 2024-04-29 at 11:45 +0000, Manna, Animesh wrote:
>
>
> > -----Original Message-----
> > From: Manna, Animesh
> > Sent: Monday, April 29, 2024 5:04 PM
> > To: Hogander, Jouni <jouni.hogander@intel.com>; intel-
> > gfx@lists.freedesktop.org
> > Subject: RE: [PATCH v7 06/11] drm/i915/psr: Modify
> > intel_dp_get_su_granularity to support panel replay
> >
> >
> >
> > > -----Original Message-----
> > > From: Hogander, Jouni <jouni.hogander@intel.com>
> > > Sent: Monday, April 29, 2024 4:46 PM
> > > To: Manna, Animesh <animesh.manna@intel.com>; intel-
> > > gfx@lists.freedesktop.org
> > > Subject: Re: [PATCH v7 06/11] drm/i915/psr: Modify
> > > intel_dp_get_su_granularity to support panel replay
> > >
> > > On Mon, 2024-04-29 at 11:02 +0000, Manna, Animesh wrote:
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Hogander, Jouni <jouni.hogander@intel.com>
> > > > > Sent: Friday, April 19, 2024 5:42 PM
> > > > > To: intel-gfx@lists.freedesktop.org
> > > > > Cc: Manna, Animesh <animesh.manna@intel.com>; Hogander, Jouni
> > > > > <jouni.hogander@intel.com>
> > > > > Subject: [PATCH v7 06/11] drm/i915/psr: Modify
> > > > > intel_dp_get_su_granularity to support panel replay
> > > > >
> > > > > Currently intel_dp_get_su_granularity doesn't support panel
> > > > > replay.
> > > > > This fix modifies it to support panel replay as well.
> > > > >
> > > > > v2: rely on PSR definitions on common bits
> > > > >
> > > > > Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> > > > > Reviewed-by: Animesh Manna <animesh.manna@intel.com>
> > > > > ---
> > > > > drivers/gpu/drm/i915/display/intel_psr.c | 62
> > > > > +++++++++++++++++++++---
> > > > > 1 file changed, 55 insertions(+), 7 deletions(-)
> > > > >
> > > > > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> > > > > b/drivers/gpu/drm/i915/display/intel_psr.c
> > > > > index b94f8e33ed1f..29400fac13c2 100644
> > > > > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > > > > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > > > > @@ -466,6 +466,40 @@ static u8
> > > > > intel_dp_get_sink_sync_latency(struct
> > > > > intel_dp *intel_dp)
> > > > > return val;
> > > > > }
> > > > >
> > > > > +static u8 intel_dp_get_su_capability(struct intel_dp
> > > > > *intel_dp) {
> > > > > + u8 su_capability;
> > > > > +
> > > > > + if (intel_dp->psr.sink_panel_replay_su_support)
> > > >
> > > > While relooking found that good to add a check for
> > > > DP_PANEL_PANEL_REPLAY_SU_GRANULARITY_REQUIRED (6th bit of dpcd
> > > 0xb1).
> > > > What if it is zero means granularity not needed but will
> > > > continue to
> > > > use x-granularity and y-granularity.
> > >
> > > Please note it is 5th bit in 0xb1. See my further comment
> > > below...
> >
> > Same I was referring, 6th bit index 5 as it starts from 0.
> >
> > >
> > > > Regards,
> > > > Animesh
> > > >
> > > > > + drm_dp_dpcd_read(&intel_dp->aux,
> > > > > +
> > > > > DP_PANEL_PANEL_REPLAY_X_GRANULARITY,
> > > > > + &su_capability, 1);
>
> I think instead of DP_PANEL_PANEL_REPLAY_X_GRANULARITY it should be
> DP_PANEL_PANEL_REPLAY_CAPABILITY, everything else will be fine.
Yes. Just noticed that as well. Good catch here. I will update my set.
BR,
Jouni Högander
>
> Regards,
> Animesh
> > > > > + else
> > > > > + su_capability = intel_dp->psr_dpcd[1];
> > > > > +
> > > > > + return su_capability;
> > > > > +}
> > > > > +
> > > > > +static unsigned int
> > > > > +intel_dp_get_su_x_granularity_offset(struct intel_dp
> > > > > *intel_dp) {
> > > > > + return intel_dp->psr.sink_panel_replay_su_support ?
> > > > > + DP_PANEL_PANEL_REPLAY_X_GRANULARITY :
> > > > > + DP_PSR2_SU_X_GRANULARITY; }
> > > > > +
> > > > > +static unsigned int
> > > > > +intel_dp_get_su_y_granularity_offset(struct intel_dp
> > > > > *intel_dp) {
> > > > > + return intel_dp->psr.sink_panel_replay_su_support ?
> > > > > + DP_PANEL_PANEL_REPLAY_Y_GRANULARITY :
> > > > > + DP_PSR2_SU_Y_GRANULARITY; }
> > > > > +
> > > > > +/*
> > > > > + * Note: Bits related to granularity are same in panel
> > > > > replay and
> > > > > psr
> > > > > + * registers. Rely on PSR definitions on these "common"
> > > > > bits.
> > > > > + */
> > >
> > > Check this comment. See my further comment below...
> >
> > Agree bit position is same.
> >
> > >
> > > > > static void intel_dp_get_su_granularity(struct intel_dp
> > > > > *intel_dp) {
> > > > > struct drm_i915_private *i915 = dp_to_i915(intel_dp);
> > > > > @@ -
> > > > > 473,18
> > > > > +507,29 @@ static void intel_dp_get_su_granularity(struct
> > > > > intel_dp
> > > > > *intel_dp)
> > > > > u16 w;
> > > > > u8 y;
> > > > >
> > > > > - /* If sink don't have specific granularity
> > > > > requirements
> > > > > set legacy ones */
> > > > > - if (!(intel_dp->psr_dpcd[1] &
> > > > > DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > > > > + /*
> > > > > + * TODO: Do we need to take into account panel
> > > > > supporting
> > > > > both PSR
> > > > > and
> > > > > + * Panel replay?
> > > > > + */
> > > > > +
> > > > > + /*
> > > > > + * If sink don't have specific granularity
> > > > > requirements
> > > > > +set
> > > > > legacy
> > > > > + * ones.
> > > > > + */
> > > > > + if (!(intel_dp_get_su_capability(intel_dp) &
> > > > > + DP_PSR2_SU_GRANULARITY_REQUIRED)) {
> > > > > /* As PSR2 HW sends full lines, we do not
> > > > > care
> > > > > about x granularity */
> > > > > w = 4;
> > > > > y = 4;
> > > > > goto exit;
> > > > > }
> > >
> > > This block is taking care of checking bit 5 in 0xb1 and using
> > > legacy
> > > ones if no requirements.
> >
> > intel_dp_get_su_capability is reading from
> > DP_PANEL_PANEL_REPLAY_X_GRANULARITY which Is dpcd 0xb2. Am I
> > missing something?
> >
> > Regards,
> > Animesh
> >
> > >
> > > BR,
> > >
> > > Jouni Högander
> > >
> > > > >
> > > > > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > > DP_PSR2_SU_X_GRANULARITY, &w, 2);
> > > > > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > > +
> > > > > intel_dp_get_su_x_granularity_offset(intel_dp),
> > > > > + &w, 2);
> > > > > if (r != 2)
> > > > > drm_dbg_kms(&i915->drm,
> > > > > - "Unable to read
> > > > > DP_PSR2_SU_X_GRANULARITY\n");
> > > > > + "Unable to read selective update
> > > > > x
> > > > > granularity\n");
> > > > > /*
> > > > > * Spec says that if the value read is 0 the default
> > > > > granularity should
> > > > > * be used instead.
> > > > > @@ -492,10 +537,12 @@ static void
> > > > > intel_dp_get_su_granularity(struct
> > > > > intel_dp *intel_dp)
> > > > > if (r != 2 || w == 0)
> > > > > w = 4;
> > > > >
> > > > > - r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > > DP_PSR2_SU_Y_GRANULARITY, &y, 1);
> > > > > + r = drm_dp_dpcd_read(&intel_dp->aux,
> > > > > +
> > > > > intel_dp_get_su_y_granularity_offset(intel_dp),
> > > > > + &y, 1);
> > > > > if (r != 1) {
> > > > > drm_dbg_kms(&i915->drm,
> > > > > - "Unable to read
> > > > > DP_PSR2_SU_Y_GRANULARITY\n");
> > > > > + "Unable to read selective update
> > > > > y
> > > > > granularity\n");
> > > > > y = 4;
> > > > > }
> > > > > if (y == 0)
> > > > > @@ -588,7 +635,8 @@ void intel_psr_init_dpcd(struct intel_dp
> > > > > *intel_dp)
> > > > > if (intel_dp->psr_dpcd[0])
> > > > > _psr_init_dpcd(intel_dp);
> > > > >
> > > > > - if (intel_dp->psr.sink_psr2_support)
> > > > > + if (intel_dp->psr.sink_psr2_support ||
> > > > > + intel_dp->psr.sink_panel_replay_su_support)
> > > > > intel_dp_get_su_granularity(intel_dp);
> > > > > }
> > > > >
> > > > > --
> > > > > 2.34.1
> > > >
>
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2024-04-29 11:46 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-19 12:11 [PATCH v7 00/11] Panel replay selective update support Jouni Högander
2024-04-19 12:11 ` [PATCH v7 01/11] drm/i915/psr: Rename has_psr2 as has_sel_update Jouni Högander
2024-04-19 12:11 ` [PATCH v7 02/11] drm/i915/dp: Use always vsc revision 0x6 for Panel Replay Jouni Högander
2024-04-19 12:11 ` [PATCH v7 03/11] drm/i915/psr: Rename psr2_enabled as sel_update_enabled Jouni Högander
2024-04-19 12:11 ` [PATCH v7 04/11] drm/panelreplay: dpcd register definition for panelreplay SU Jouni Högander
2024-04-19 12:11 ` [PATCH v7 05/11] drm/i915/psr: Detect panel replay selective update support Jouni Högander
2024-04-19 12:11 ` [PATCH v7 06/11] drm/i915/psr: Modify intel_dp_get_su_granularity to support panel replay Jouni Högander
2024-04-29 11:02 ` Manna, Animesh
2024-04-29 11:16 ` Hogander, Jouni
2024-04-29 11:34 ` Manna, Animesh
2024-04-29 11:45 ` Manna, Animesh
2024-04-29 11:46 ` Hogander, Jouni
2024-04-19 12:11 ` [PATCH v7 07/11] drm/i915/psr: Panel replay uses SRD_STATUS to track it's status Jouni Högander
2024-04-19 12:11 ` [PATCH v7 08/11] drm/i915/psr: Do not apply workarounds in case of panel replay Jouni Högander
2024-04-19 12:11 ` [PATCH v7 09/11] drm/i915/psr: Update PSR module parameter descriptions Jouni Högander
2024-04-19 12:11 ` [PATCH v7 10/11] drm/i915/psr: Split intel_psr2_config_valid for panel replay Jouni Högander
2024-04-19 12:11 ` [PATCH v7 11/11] drm/i915/psr: Add panel replay sel update support to debugfs interface Jouni Högander
2024-04-19 12:36 ` ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev7) Patchwork
2024-04-19 12:36 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-04-19 12:43 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-04-22 6:33 ` ✗ Fi.CI.CHECKPATCH: warning for Panel replay selective update support (rev8) Patchwork
2024-04-22 6:33 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-04-22 6:41 ` ✓ Fi.CI.BAT: success " Patchwork
2024-04-22 8:37 ` ✗ Fi.CI.IGT: failure " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox