From: Jouni Högander Date: Wed, 27 Aug 2025 06:08:09 +0000 (+0300) Subject: drm/i915/psr: Panel Replay SU cap dpcd read return value X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=90d8aad11f613e13e1eddc35c0225cce9e54ba94;p=users%2Fhch%2Fmisc.git drm/i915/psr: Panel Replay SU cap dpcd read return value Currently return value of drm_dpcd_readb is not checked when reading sink Panel Replay Selective Update capabilities. Fix this and switch to drm_dpcd_read_byte. Signed-off-by: Jouni Högander Reviewed-by: Mika Kahola Reviewed-by: Michał Grzelak Link: https://lore.kernel.org/r/20250827060809.2461725-1-jouni.hogander@intel.com --- diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c index 1aa4a127afaf..01bf304c705f 100644 --- a/drivers/gpu/drm/i915/display/intel_psr.c +++ b/drivers/gpu/drm/i915/display/intel_psr.c @@ -495,12 +495,14 @@ static u8 intel_dp_get_su_capability(struct intel_dp *intel_dp) { u8 su_capability = 0; - if (intel_dp->psr.sink_panel_replay_su_support) - drm_dp_dpcd_readb(&intel_dp->aux, - DP_PANEL_REPLAY_CAP_CAPABILITY, - &su_capability); - else + if (intel_dp->psr.sink_panel_replay_su_support) { + if (drm_dp_dpcd_read_byte(&intel_dp->aux, + DP_PANEL_REPLAY_CAP_CAPABILITY, + &su_capability) < 0) + return 0; + } else { su_capability = intel_dp->psr_dpcd[1]; + } return su_capability; }