GPU acceleration on Freescale Ubuntu

Published on July 2, 2013

Archived Notice

This article has been archived and may contain broken links, photos and out-of-date information. If you have any questions, please Contact Us.

After publishing the Freescale Ubuntu post there was some question about whether it has GPU acceleration. We had originally stated that it did because we didn't look closely enough at /var/log/Xorg.0.log. We hadn't tested any OpenGL ES programs and it turns out they didn't work. Looking into it we found that there is no acceleration for X and X applications only fbdev. This seems to be a known problem with no known solution. You can find out more about it on the meta-freescale and yocto mailing lists.

We also found that the GPU libraries in the Oneiric image differed from both the LTIB tarball and the .deb file as shown by the following sha1sum hashes (last 6 digits shown):

FilenameLTIB tarball
and .deb package
Oneiric image
dri/vivante_dri.soa11bf9cc3238
libGLSLC.so9703a9ae9f4d
libVDK.sobd5372287983
libCLC.so866e636916c7
libGL.so.1.2fb7234cf2010
libGLESv1_CL.so.1.1.0b2ea11d2cbac
libOpenVG_355.so5ba4438fb7ff
libOpenVG_3D.soe70d45074c87
libOpenCL.so31562935612a
libGLES_CL.so7b86a7654b29
libGLES_CM.so94196d815f7d
libGLESv2.so.2.0.0b28cc7c8093c
libGLESv1_CM.so.1.1.0c3cce8491d1f
These files weren't present in the Oneiric image at all:

  • libgc_wayland_protocol.so.0.0.0
  • libEGL-fb.so
  • directfb-1.4-0/gfxdrivers/libdirectfb_gal.so
  • libEGL-x11.so
  • libGAL-fb.so
  • libEGL-wl.so
  • libEGL-dfb.so
  • libVIVANTE-dfb.so
  • libGAL-x11.so
  • libVIVANTE-x11.so
  • libGAL-dfb.so
  • libVIVANTE-wl.so
  • libwayland-viv.so.0.0.0
  • libGAL-wl.so
  • libVIVANTE-fb.so

Finally, the file /usr/lib/libOpenVG.so is a symlink to libOpenVG_3D.so in the Oneiric image, but a file (copy of libOpenVG_3D.so) in the Debian package and LTIB tar-ball.

If we extracted the LTIB tarball over the rootfs or installed the DEB file the examples worked. The examples we used to test are included in the tarball in /opt/viv_samples and we also tested the samples in the GPU SDK. We've updated the Ubuntu image with the working libraries so you don't have to go through this process.