]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/fbc: update the panel_replay dependency in fbc wa's
authorVinod Govindapillai <vinod.govindapillai@intel.com>
Fri, 21 Mar 2025 09:45:29 +0000 (11:45 +0200)
committerVinod Govindapillai <vinod.govindapillai@intel.com>
Mon, 24 Mar 2025 12:55:45 +0000 (14:55 +0200)
There are two panel_replay scenarios fbc wa need to be aware of,
panel replay with and without selective update capability.
Panel replay without selective update don't have any fbc wa.
So keep the fbc psr1 wa as it is.

The current fbc psr2 wa is mainly about selective fetch and we
need to apply the fbc wa if selective fetch is on - irrespective
of panel replay. Hence we can't exclude panel replay from the
fbc psr2 wa.

v1: keep panel_replay exclusion in PSR1 case (Jouni)
    Patch description updated

Bspec: 66624, 50442
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250321094529.197397-3-vinod.govindapillai@intel.com
drivers/gpu/drm/i915/display/intel_fbc.c

index d75e3c7eaa44d1768245d8dd0b19439b6b3c2a5a..ea3123874cbf5f87745349e2f966749591ab78e6 100644 (file)
@@ -1472,9 +1472,8 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state,
         * disabling PSR2, keep FBC disabled in case of selective update is on
         * until the selection logic is implemented.
         */
-       if (DISPLAY_VER(display) >= 12 && crtc_state->has_sel_update &&
-           !crtc_state->has_panel_replay) {
-               plane_state->no_fbc_reason = "PSR2 enabled";
+       if (DISPLAY_VER(display) >= 12 && crtc_state->has_sel_update) {
+               plane_state->no_fbc_reason = "Selective update enabled";
                return 0;
        }