diff -ruN a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c --- a/drivers/gpu/drm/i915/display/intel_alpm.c 2026-04-06 22:15:28.734440462 -0700 +++ b/drivers/gpu/drm/i915/display/intel_alpm.c 2026-04-06 22:16:30.831931436 -0700 @@ -317,7 +317,7 @@ ALPM_CTL_AUX_LESS_SLEEP_HOLD_TIME_50_SYMBOLS | ALPM_CTL_AUX_LESS_WAKE_TIME(crtc_state->alpm_state.aux_less_wake_lines); - if (intel_dp->as_sdp_supported) { + if (intel_dp->as_sdp_supported && crtc_state->has_panel_replay) { u32 pr_alpm_ctl = PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_T1; if (intel_dp->pr_dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_CAPABILITY)] & @@ -432,8 +432,8 @@ val = DP_ALPM_ENABLE | DP_ALPM_LOCK_ERROR_IRQ_HPD_ENABLE; - if (crtc_state->has_panel_replay || (crtc_state->has_lobf && - intel_alpm_aux_less_wake_supported(intel_dp))) + if (intel_psr_needs_alpm_aux_less(intel_dp, crtc_state) || + (crtc_state->has_lobf && intel_alpm_aux_less_wake_supported(intel_dp))) val |= DP_ALPM_MODE_AUX_LESS; drm_dp_dpcd_writeb(&intel_dp->aux, DP_RECEIVER_ALPM_CONFIG, val); diff -ruN a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c --- a/drivers/gpu/drm/i915/display/intel_psr.c 2026-04-06 22:15:28.733325868 -0700 +++ b/drivers/gpu/drm/i915/display/intel_psr.c 2026-04-06 23:05:46.639364241 -0700 @@ -498,7 +498,8 @@ { u8 su_capability = 0; - if (intel_dp->psr.sink_panel_replay_su_support) { + if (intel_dp->psr.sink_panel_replay_su_support && + panel_replay_global_enabled(intel_dp)) { if (drm_dp_dpcd_read_byte(&intel_dp->aux, DP_PANEL_REPLAY_CAP_CAPABILITY, &su_capability) < 0) @@ -513,7 +514,8 @@ static unsigned int intel_dp_get_su_x_granularity_offset(struct intel_dp *intel_dp) { - return intel_dp->psr.sink_panel_replay_su_support ? + return (intel_dp->psr.sink_panel_replay_su_support && + panel_replay_global_enabled(intel_dp)) ? DP_PANEL_REPLAY_CAP_X_GRANULARITY : DP_PSR2_SU_X_GRANULARITY; } @@ -521,7 +523,8 @@ static unsigned int intel_dp_get_su_y_granularity_offset(struct intel_dp *intel_dp) { - return intel_dp->psr.sink_panel_replay_su_support ? + return (intel_dp->psr.sink_panel_replay_su_support && + panel_replay_global_enabled(intel_dp)) ? DP_PANEL_REPLAY_CAP_Y_GRANULARITY : DP_PSR2_SU_Y_GRANULARITY; }