summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJouni Högander <jouni.hogander@intel.com>2024-10-23 20:38:04 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-11-08 16:31:03 +0100
commit35b8dc55234a96da25adf37e7ab776dc6054d1ac (patch)
tree303a1d8cdfcb4bcc70792850339de01bf9860ef9
parenta8c732b2492296ca868fcd05a36279b95e172d0b (diff)
downloadlinux-35b8dc55234a96da25adf37e7ab776dc6054d1ac.tar.gz
linux-35b8dc55234a96da25adf37e7ab776dc6054d1ac.tar.bz2
linux-35b8dc55234a96da25adf37e7ab776dc6054d1ac.zip
drm/i915/psr: Prevent Panel Replay if CRC calculation is enabled
commit a8efd8ce280996fe29f2564f705e96e18da3fa62 upstream. Similarly as for PSR2 CRC calculation seems to timeout when Panel Replay is enabled. Fix this by falling back to PSR if CRC calculation is enabled. Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/2266 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/20240819092549.1298233-1-jouni.hogander@intel.com Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpu/drm/i915/display/intel_psr.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index da242ba19ed9..0876fe53a6f9 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1605,6 +1605,12 @@ _panel_replay_compute_config(struct intel_dp *intel_dp,
if (!alpm_config_valid(intel_dp, crtc_state, true))
return false;
+ if (crtc_state->crc_enabled) {
+ drm_dbg_kms(&i915->drm,
+ "Panel Replay not enabled because it would inhibit pipe CRC calculation\n");
+ return false;
+ }
+
return true;
}