[Openchrome-devel] Is EXA composite working?

Daniel Drake dsd at laptop.org
Thu Aug 15 10:23:33 PDT 2013


On Mon, Jun 3, 2013 at 2:52 PM, Daniel Drake <dsd at laptop.org> wrote:
> Just gave the latest git driver a quick spin on OLPC XO-1.5 (VX855)
> now that EXA has been enabled again.
>
> However, composite doesn't seem to be working. viaExaCheckComposite_H6
> is called a lot, and returns TRUE in most cases, but the
> PrepareComposite and Composite functions are never called (tested by
> inserting ErrorF statements, nothing gets printed).
>
> Looking a little deeper, I see that exaTryDriverComposite calls
> exaGetOffscreenPixmap() on the pixmap it is working with, which calls
> down into exaPixmapHasGpuCopy_classic(), which returns:
>
>         ret = (pExaPixmap->use_gpu_copy && pExaPixmap->fb_ptr);
>
> In this case, use_gpu_copy and fb_ptr always seem to be FALSE and NULL.

I dug further. This is because VIAPreInit() forces the greedy
migration heuristic, which effectively disables composite and anything
involving offscreen pixmaps.

That still doesn't fix composite on XO-1.5 though.
Now we get failures in PrepareComposite because viaExaIsOffscreen()
always returns FALSE.

I see that viaExaIsOffscreen() calls into libdrm, it never used to. Is
that expected to work on setups where there is no DRM/DRI kernel stuff
running?

Thanks
Daniel


More information about the Openchrome-devel mailing list