aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/display/intel_psr.c
diff options
context:
space:
mode:
authorJouni Högander <jouni.hogander@intel.com>2024-06-19 09:21:24 +0300
committerJouni Högander <jouni.hogander@intel.com>2024-06-25 08:25:36 +0300
commit5d9993f88378a68458af101bfda82754d80fb33f (patch)
tree0a8beb66c828fec36b3748c3f0e977e085fef44c /drivers/gpu/drm/i915/display/intel_psr.c
parent67cf05473704e926d2b5302a68433a6aefde6fc5 (diff)
drm/i915/psr: Check panel Early Transport capability for eDP PR
Our HW doesn't support panel replay without Early Transport on eDP. Bspec: 68920 Signed-off-by: Jouni Högander <jouni.hogander@intel.com> Reviewed-by: Animesh Manna <animesh.manna@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240619062131.4021196-5-jouni.hogander@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_psr.c')
-rw-r--r--drivers/gpu/drm/i915/display/intel_psr.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 253888c7ea1d..8e367a4f4da3 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -571,11 +571,18 @@ static void _panel_replay_init_dpcd(struct intel_dp *intel_dp)
{
struct drm_i915_private *i915 = dp_to_i915(intel_dp);
- if (intel_dp_is_edp(intel_dp) &&
- !intel_alpm_aux_less_wake_supported(intel_dp)) {
- drm_dbg_kms(&i915->drm,
- "Panel doesn't support AUX-less ALPM, eDP Panel Replay not possible\n");
- return;
+ if (intel_dp_is_edp(intel_dp)) {
+ if (!intel_alpm_aux_less_wake_supported(intel_dp)) {
+ drm_dbg_kms(&i915->drm,
+ "Panel doesn't support AUX-less ALPM, eDP Panel Replay not possible\n");
+ return;
+ }
+
+ if (!(intel_dp->pr_dpcd & DP_PANEL_REPLAY_EARLY_TRANSPORT_SUPPORT)) {
+ drm_dbg_kms(&i915->drm,
+ "Panel doesn't support early transport, eDP Panel Replay not possible\n");
+ return;
+ }
}
intel_dp->psr.sink_panel_replay_support = true;