On Wed, May 20, 2015 at 07:12:15PM -0700, Matt Roper wrote: > We never removed the sprite watermark updates from our low-level > foo_update_plane() functions; since our hardware updates happen under > vblank evasion, we're not supposed to be calling potentially sleeping > functions there (since interrupts are disabled). Ensure that we > properly set the atomic.update_sprite_watermarks flag so that these > updates will happen outside vblank evasion and we can drop the direct > calls from the plane programming code. Another note is that on SKL/BXT, WM and DDB registers are: - double buffered, armed by PLANE_SURF - the double buffer update mechanism can additionally be disabled/enabled at will ("Go bit") On top of that, the WM/DDB configuration update with several pipes is a bit tricky as the DDB is a shared resource between pipes and careful ordering of pipe updates is needed to avoid planes from different pipes sharing overlapping DDB allocations. -- Damien _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx