]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/psr: Do not disable Panel Replay in case VRR is enabled
authorJouni Högander <jouni.hogander@intel.com>
Mon, 26 May 2025 12:05:12 +0000 (15:05 +0300)
committerJouni Högander <jouni.hogander@intel.com>
Thu, 29 May 2025 05:13:45 +0000 (08:13 +0300)
Allow Panel Replay with VRR. All VRR modes are supposed to work with
Panel Replay.

Bspec: 68920, 68925
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Link: https://lore.kernel.org/r/20250526120512.1702815-13-jouni.hogander@intel.com
drivers/gpu/drm/i915/display/intel_psr.c

index 38535e0d2496543db6a914bc33f719a24aabd6bb..db7111374293c7d5445f42f4108322b006f48ebf 100644 (file)
@@ -1579,6 +1579,12 @@ static bool _psr_compute_config(struct intel_dp *intel_dp,
        if (!CAN_PSR(intel_dp))
                return false;
 
+       /*
+        * Currently PSR doesn't work reliably with VRR enabled.
+        */
+       if (crtc_state->vrr.enable)
+               return false;
+
        entry_setup_frames = intel_psr_entry_setup_frames(intel_dp, adjusted_mode);
 
        if (entry_setup_frames >= 0) {
@@ -1696,12 +1702,6 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
                return;
        }
 
-       /*
-        * Currently PSR/PR doesn't work reliably with VRR enabled.
-        */
-       if (crtc_state->vrr.enable)
-               return;
-
        crtc_state->has_panel_replay = _panel_replay_compute_config(intel_dp,
                                                                    crtc_state,
                                                                    conn_state);