From: Ville Syrjälä <[email protected]> Currently we calculate crtc_state->use_dsb by simply assuming that DSB is available, and then falling back to MMIO when the actual DSB buffer allocation fails.
This is somewhat confusing, and doesn't match how the flip queue counterpart (use_flipq) is calculated. Check whether DSB is available ahead of time, just like we in the flip queue case. Signed-off-by: Ville Syrjälä <[email protected]> --- drivers/gpu/drm/i915/display/intel_display.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 9c6d3ecdb589..3081dc8d86da 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -7283,6 +7283,7 @@ static void intel_atomic_dsb_prepare(struct intel_atomic_state *state, !intel_crtc_needs_color_update(new_crtc_state); new_crtc_state->use_dsb = + intel_dsb_supported(display) && !new_crtc_state->use_flipq && !new_crtc_state->do_async_flip && (DISPLAY_VER(display) >= 20 || !new_crtc_state->has_psr) && -- 2.51.2
