[PATCH 11/13] drm/i915/psr: Take into account SU SDP scanline indication in vblank check
Jouni Högander
jouni.hogander at intel.com
Fri Jun 7 13:49:15 UTC 2024
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: Jouni Högander <jouni.hogander at intel.com>
Reviewed-by: Animesh Manna <animesh.manna at intel.com>
---
drivers/gpu/drm/i915/display/intel_psr.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 98b0018704f3..8ff0729df6a2 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1250,6 +1250,9 @@ static bool wake_lines_fit_into_vblank(struct intel_dp *intel_dp,
crtc_state->hw.adjusted_mode.crtc_vblank_start;
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 */
if (vblank < wake_lines)
return false;
--
2.34.1
More information about the Intel-gfx
mailing list