[meta-freescale] Any hope of vblank-synchronized rendering (from vivante) on i.MX6 soon?

Carlos Rafael Giani dv at pseudoterminal.org
Tue Sep 23 13:09:34 PDT 2014


While this is correct for output that is drawn directly to the 
framebuffer (with damage regions etc.), it isn't for compositor-based 
output, such as what Weston does. There, it is not uncommon to repaint  
the entire screen. If it uses GLES as the backend, this is the only way 
to do it, unless some extension for swapping buffer subregions exists. 
Perhaps by using a compositor in X buffer flipping would be viable.

On 2014-09-23 20:46, Eric Nelson wrote:
> Hi Carlos,
>
> On 09/23/2014 10:52 AM, Carlos Rafael Giani wrote:
>> I wonder why it is single buffered. is it because of the memory
>> consumption for a second buffer? The buffers could be flipped,
>> eliminating any need for blits, so the memory bandwidth should not be an
>> issue.
>>
> There is a memory bandwidth implication.
>
> Assuming frame buffers A and B in a double-buffered system,
> rendering will occur into B while A is displayed, then the
> two will be swapped, such that B is displayed and A is the
> new rendering output.
>
> In order for apps to only update parts of their windows, any
> "dirty" blocks need to be copied from B to A in the process
> of the flip.
>
>> On 2014-09-23 18:48, Prabhu S wrote:
>>> i.MX6 X11 EGL is single buffered and there is no support for VSYNC.
>>> The tearing with X11 is a known issue. We did investigate to fix this,
>>> but the solution becomes too hacky and cannot be used in production
>>> systems.
>>>
>>> We are adding VSYNC support in Wayland. eglSwapInterval will be
>>> supported for FBDEV and Wayland backends in the upcoming release(in
>>> january). So Ozone-wayland can take advantage of this.
>>>
> ?? This is already supported in Wayland, though it is controlled
> by an environment variable.
>
> You can see it in action by watching /sys/class/graphics/fb0/pan.
>
> Regards,
>
>
> Eric



More information about the meta-freescale mailing list