[Intel-gfx] [PATCH 5/7] drm/i915: Make sprite updates atomic

Jesse Barnes jbarnes at virtuousgeek.org
Thu Dec 12 22:09:13 CET 2013


On Thu, 17 Oct 2013 22:53:17 +0300
ville.syrjala at linux.intel.com wrote:

> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> Add a mechanism by which we can evade the leading edge of vblank. This
> guarantees that no two sprite register writes will straddle on either
> side of the vblank start, and that means all the writes will be latched
> together in one atomic operation.
> 
> We do the vblank evade by checking the scanline counter, and if it's too
> close to the start of vblank (too close has been hardcoded to 100usec
> for now), we will wait for the vblank start to pass. In order to
> eliminate random delayes from the rest of the system, we operate with
> interrupts disabled, except when waiting for the vblank obviously.

Oh and like I mentioned on irc, we need to remove the blocking vblank
wait from the fb switch case.  We've had patches for that almost since
the sprite bits went in, but for some reason they've never been
merged.  They're need to make the sprite stuff more usable by e.g.
Weston.

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list