From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Handle the DSB's DEwake shenanigans more elegantly by chaining two DSBs together. Ville Syrjälä (14): drm/i915: Calculate vblank delay more accurately drm/i915: Make vrr_{enabling,disabling}() usable outside intel_display.c drm/i915/dsb: Hook up DSB error interrupts drm/i915/dsb: Convert dewake_scanline to a hw scanline number earlier drm/i915/dsb: Shuffle code around drm/i915/dsb: Fix dewake scanline drm/i915/dsb: Account for VRR properly in DSB scanline stuff drm/i915/dsb: Precompute DSB_CHICKEN drm/i915/dsb: Introduce intel_dsb_wait_scanline_{in,out}() drm/i915/dsb: Introduce intel_dsb_chain() drm/i915/dsb: Allow intel_dsb_chain() to use DSB_WAIT_FOR_VBLANK drm/i915/dsb: Clear DSB_ENABLE_DEWAKE once the DSB is done drm/i915/dsb: s/dsb/dsb_color_vblank/ drm/i915/dsb: Use chained DSBs for LUT programming drivers/gpu/drm/i915/display/intel_atomic.c | 6 +- drivers/gpu/drm/i915/display/intel_color.c | 56 ++- drivers/gpu/drm/i915/display/intel_display.c | 29 +- drivers/gpu/drm/i915/display/intel_display.h | 3 + .../gpu/drm/i915/display/intel_display_irq.c | 17 + .../drm/i915/display/intel_display_types.h | 4 +- drivers/gpu/drm/i915/display/intel_dsb.c | 327 ++++++++++++++++-- drivers/gpu/drm/i915/display/intel_dsb.h | 16 + drivers/gpu/drm/i915/display/intel_vblank.c | 14 +- drivers/gpu/drm/i915/display/intel_vblank.h | 2 +- drivers/gpu/drm/i915/i915_reg.h | 4 + 11 files changed, 401 insertions(+), 77 deletions(-) -- 2.44.2