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

--
_______________________________________________
meta-freescale mailing list
meta-freescale@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-freescale

Reply via email to