Commit 5d1e4cfa authored by Jouni Högander's avatar Jouni Högander

drm/i915/psr: Do not update phy power state in case of non-eDP panel replay

Currently panel replay is supporting only main link on mode -> Do not
update phy power state for non-eDP panel replay.

Bspec: 53370

v2: use intel_dp_is_edp to differentiate
Signed-off-by: default avatarJouni Högander <jouni.hogander@intel.com>
Reviewed-by: default avatarAnimesh Manna <animesh.manna@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240405113602.992714-5-jouni.hogander@intel.com
parent 72c22283
...@@ -1930,13 +1930,16 @@ static void intel_psr_enable_locked(struct intel_dp *intel_dp, ...@@ -1930,13 +1930,16 @@ static void intel_psr_enable_locked(struct intel_dp *intel_dp,
if (!psr_interrupt_error_check(intel_dp)) if (!psr_interrupt_error_check(intel_dp))
return; return;
if (intel_dp->psr.panel_replay_enabled) if (intel_dp->psr.panel_replay_enabled) {
drm_dbg_kms(&dev_priv->drm, "Enabling Panel Replay\n"); drm_dbg_kms(&dev_priv->drm, "Enabling Panel Replay\n");
else } else {
drm_dbg_kms(&dev_priv->drm, "Enabling PSR%s\n", drm_dbg_kms(&dev_priv->drm, "Enabling PSR%s\n",
intel_dp->psr.psr2_enabled ? "2" : "1"); intel_dp->psr.psr2_enabled ? "2" : "1");
}
if (intel_dp_is_edp(intel_dp))
intel_snps_phy_update_psr_power_state(&dig_port->base, true);
intel_snps_phy_update_psr_power_state(&dig_port->base, true);
intel_psr_enable_sink(intel_dp); intel_psr_enable_sink(intel_dp);
intel_psr_enable_source(intel_dp, crtc_state); intel_psr_enable_source(intel_dp, crtc_state);
intel_dp->psr.enabled = true; intel_dp->psr.enabled = true;
...@@ -2041,7 +2044,8 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp) ...@@ -2041,7 +2044,8 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
CLKGATE_DIS_MISC_DMASC_GATING_DIS, 0); CLKGATE_DIS_MISC_DMASC_GATING_DIS, 0);
} }
intel_snps_phy_update_psr_power_state(&dp_to_dig_port(intel_dp)->base, false); if (intel_dp_is_edp(intel_dp))
intel_snps_phy_update_psr_power_state(&dp_to_dig_port(intel_dp)->base, false);
/* Panel Replay on eDP is always using ALPM aux less. */ /* Panel Replay on eDP is always using ALPM aux less. */
if (intel_dp->psr.panel_replay_enabled && intel_dp_is_edp(intel_dp)) { if (intel_dp->psr.panel_replay_enabled && intel_dp_is_edp(intel_dp)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment