[PATCH v2 0/8] drm/i915/vrr: Fix DSB+VRR usage for PTL+

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

Apparently PTL (or I suppose it could have already happened
in either MTL or LNL, didn't have either one to check) changes
the way the VRR hardwre works by ending the safe window as
soon as the push send is triggered. Reorder our DSB programming
sequence to account for that, and try to make sure we catch any
vblank evasion fails that could cause problems with the new
order.

v2: Fix up the issues with wiating for the vblank delay
    so we can make do with a single check of the push bit.
    Also do the check for the mmio path.
    Avoid legacy cursor updates making a mess of things.
    Decode the DSB errors.

Ville Syrjälä (8):
  drm/i915/dsb: Move the +1 usec adjustment into dsb_wait_usec()
  drm/i915/vrr: Don't send push for legacy cursor updates
  drm/i915/vrr: Account for TRANS_PUSH delay
  drm/i915/dsb: Compute use_dsb earlier
  drm/i915/dsb: Introduce intel_dsb_poll()
  drm/i915/vrr: Reorder the DSB "wait for safe window" vs. TRANS_PUSH
  drm/i915/vrr: Check that the push send bit is clear after delayed
    vblank
  drm/i915/dsb: Decode DSB error interrupts

 drivers/gpu/drm/i915/display/intel_color.c   |  9 +++-
 drivers/gpu/drm/i915/display/intel_crtc.c    |  3 +-
 drivers/gpu/drm/i915/display/intel_display.c | 31 +++++++------
 drivers/gpu/drm/i915/display/intel_dsb.c     | 47 +++++++++++++++++---
 drivers/gpu/drm/i915/display/intel_dsb.h     |  3 ++
 drivers/gpu/drm/i915/display/intel_vrr.c     | 31 +++++++++++++
 drivers/gpu/drm/i915/display/intel_vrr.h     |  2 +
 7 files changed, 101 insertions(+), 25 deletions(-)

-- 
2.45.3




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux