[Intel-gfx] [PATCH 0/3] drm/i915: IVB MI_DISPLAY_FLIP cacheline trick

ville.syrjala at linux.intel.com ville.syrjala at linux.intel.com
Tue Feb 11 14:55:47 CET 2014


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

BSpec tells us that the entire MI_DISPLAY_FLIP packet must be contained
within a single cacheline on IVB. This series achieves that.

Changes since my original patch [1]:
* Move the logic into a new intel_ring_begin_cacheline_safe() function
  (as suggested by Daniel).
* Actually handle the case when the ring would wrap due to the extra
  dwords. With the original patch, the MI_DISPLAY_FLIP packet might still
  end up straddling two cachelines in this case.

[1] https://bugs.freedesktop.org/show_bug.cgi?id=74053#c8

Ville Syrjälä (3):
  drm/i915: Rework ring wrap detection
  drm/i915: Introduce intel_ring_begin_cacheline_safe()
  drm/i915: Prevent MI_DISPLAY_FLIP straddling two cachelines on IVB

 drivers/gpu/drm/i915/intel_display.c    | 12 +++--
 drivers/gpu/drm/i915/intel_ringbuffer.c | 88 ++++++++++++++++++++++++++++++---
 drivers/gpu/drm/i915/intel_ringbuffer.h |  5 ++
 3 files changed, 96 insertions(+), 9 deletions(-)

-- 
1.8.3.2




More information about the Intel-gfx mailing list