Commit aeafa46e authored by Jouni Högander's avatar Jouni Högander

drm/i915/psr: Take into account SU SDP scanline indication in vblank check

SU SDP scanline indication should be taken into account when checking
vblank length. In Bspec we have:

PSR2_CTL[ SU SDP scanline indication ] = 0: (TRANS_VBLANK Vertical Blank
End- TRANS_VBLANK Vertical Blank Start) > PSR2_CTL Block Count Number value
in lines

PSR2_CTL[ SU SDP scanline indication ] = 1: (TRANS_VBLANK Vertical Blank
End- TRANS_VBLANK Vertical Blank Start- 1) > PSR2_CTL Block Count Number
value in lines

Bspec: 49274
Signed-off-by: default avatarJouni Högander <jouni.hogander@intel.com>
Reviewed-by: default avatarAnimesh Manna <animesh.manna@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240607134917.1327574-12-jouni.hogander@intel.com
parent 2e8938a1
...@@ -1250,6 +1250,9 @@ static bool wake_lines_fit_into_vblank(struct intel_dp *intel_dp, ...@@ -1250,6 +1250,9 @@ static bool wake_lines_fit_into_vblank(struct intel_dp *intel_dp,
crtc_state->hw.adjusted_mode.crtc_vblank_start; crtc_state->hw.adjusted_mode.crtc_vblank_start;
int wake_lines = psr2_block_count_lines(intel_dp); int wake_lines = psr2_block_count_lines(intel_dp);
if (crtc_state->req_psr2_sdp_prior_scanline)
vblank -= 1;
/* Vblank >= PSR2_CTL Block Count Number maximum line count */ /* Vblank >= PSR2_CTL Block Count Number maximum line count */
if (vblank < wake_lines) if (vblank < wake_lines)
return false; return false;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment