[PATCH] drm/i915/psr: Check transcoder Selective Update support for PR as well
Manna, Animesh
animesh.manna at intel.com
Fri Mar 21 09:19:41 UTC 2025
> -----Original Message-----
> From: Intel-xe <intel-xe-bounces at lists.freedesktop.org> On Behalf Of Jouni
> Högander
> Sent: Friday, March 7, 2025 5:31 PM
> To: intel-gfx at lists.freedesktop.org; intel-xe at lists.freedesktop.org
> Cc: Hogander, Jouni <jouni.hogander at intel.com>
> Subject: [PATCH] drm/i915/psr: Check transcoder Selective Update support
> for PR as well
>
> We need to ensure transcoder is supporting Selective Update in case of Panel
> Replay as well.
>
> Signed-off-by: Jouni Högander <jouni.hogander at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_psr.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> b/drivers/gpu/drm/i915/display/intel_psr.c
> index 74aa7ba34fda..84e4d6f1f3a8 100644
> --- a/drivers/gpu/drm/i915/display/intel_psr.c
> +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> @@ -1491,13 +1491,6 @@ static bool intel_psr2_config_valid(struct intel_dp
> *intel_dp,
> return false;
> }
>
> - if (!transcoder_has_psr2(display, crtc_state->cpu_transcoder)) {
> - drm_dbg_kms(display->drm,
> - "PSR2 not supported in transcoder %s\n",
> - transcoder_name(crtc_state->cpu_transcoder));
> - return false;
> - }
> -
> /*
> * DSC and PSR2 cannot be enabled simultaneously. If a requested
> * resolution requires DSC to be enabled, priority is given to DSC @@
> -1579,6 +1572,13 @@ static bool intel_sel_update_config_valid(struct
> intel_dp *intel_dp,
> goto unsupported;
> }
>
> + if (!transcoder_has_psr2(display, crtc_state->cpu_transcoder)) {
> + drm_dbg_kms(display->drm,
> + "Selective update not supported in transcoder
> %s\n",
> + transcoder_name(crtc_state->cpu_transcoder));
> + goto unsupported;
> + }
> +
Panel replay for EDP is fine with the above change but panel replay for DP can be supported by all DP2.0 transcoder and for that maybe only transcoder_has_psr2() is not covering for DP. Additional check for DP2.0 can be added for DP like - transcoder_has_psr2 || HAS_DP20. Please correct me if I am missing something.
Regards,
Animesh
> if (!crtc_state->has_panel_replay &&
> !intel_psr2_config_valid(intel_dp, crtc_state))
> goto unsupported;
>
> --
> 2.43.0
More information about the Intel-xe
mailing list