]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/psr: Enable Panel Replay on sink always when it's supported
authorJouni Högander <jouni.hogander@intel.com>
Thu, 9 Jan 2025 10:35:30 +0000 (12:35 +0200)
committerJouni Högander <jouni.hogander@intel.com>
Tue, 21 Jan 2025 09:55:34 +0000 (11:55 +0200)
Currently we are configuring Panel Replay on sink when it get's
enabled. This means we need to do full modeset when enabling Panel
Replay. This is required as DP specification is saying sink Panel Replay
needs to be configured before link training. Avoid full modeset by enabling
Panel Replay on sink always when it's supported by the sink and the
source.

Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250109103532.2093356-3-jouni.hogander@intel.com
drivers/gpu/drm/i915/display/intel_ddi.c

index acb986bc1f33a2e8489a0ad45cfd93f1ab5e24b8..3693b36b9336a45f36d2066111fb84703ef27f3b 100644 (file)
@@ -2927,8 +2927,7 @@ static void intel_ddi_pre_enable_dp(struct intel_atomic_state *state,
                                            crtc_state);
 
        /* Panel replay has to be enabled in sink dpcd before link training. */
-       if (crtc_state->has_panel_replay)
-               intel_psr_enable_sink(enc_to_intel_dp(encoder), crtc_state);
+       intel_psr_panel_replay_enable_sink(enc_to_intel_dp(encoder));
 
        if (DISPLAY_VER(display) >= 14)
                mtl_ddi_pre_enable_dp(state, encoder, crtc_state, conn_state);