mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
drm/i915/psr: Move vblank length check to separate function
We are about to add more complexity to vblank length check. It makes sense to move it to separate function for sake of clarity. v2: change name to wake_lines_fit_into_vblank Signed-off-by: Jouni Högander <jouni.hogander@intel.com> Reviewed-by: Animesh Manna <animesh.manna@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240607134917.1327574-11-jouni.hogander@intel.com
This commit is contained in:
parent
51ee1f29a9
commit
2e8938a1c5
@ -1243,6 +1243,20 @@ static int intel_psr_entry_setup_frames(struct intel_dp *intel_dp,
|
||||
return entry_setup_frames;
|
||||
}
|
||||
|
||||
static bool wake_lines_fit_into_vblank(struct intel_dp *intel_dp,
|
||||
const struct intel_crtc_state *crtc_state)
|
||||
{
|
||||
int vblank = crtc_state->hw.adjusted_mode.crtc_vblank_end -
|
||||
crtc_state->hw.adjusted_mode.crtc_vblank_start;
|
||||
int wake_lines = psr2_block_count_lines(intel_dp);
|
||||
|
||||
/* Vblank >= PSR2_CTL Block Count Number maximum line count */
|
||||
if (vblank < wake_lines)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
|
||||
struct intel_crtc_state *crtc_state)
|
||||
{
|
||||
@ -1333,9 +1347,7 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
|
||||
}
|
||||
|
||||
/* Vblank >= PSR2_CTL Block Count Number maximum line count */
|
||||
if (crtc_state->hw.adjusted_mode.crtc_vblank_end -
|
||||
crtc_state->hw.adjusted_mode.crtc_vblank_start <
|
||||
psr2_block_count_lines(intel_dp)) {
|
||||
if (!wake_lines_fit_into_vblank(intel_dp, crtc_state)) {
|
||||
drm_dbg_kms(&dev_priv->drm,
|
||||
"PSR2 not enabled, too short vblank time\n");
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user