3D rendering by PVR SGX on BeagleBone

photo (1)

Texas Instruments recently (Nov 18 2013) released the alpha version of the SDK 5 for the SGX530 3D engine that is built in to the BeagleBone (black). The 3D engine interface is special since it is one of the few parts (only part?) that is closed source and so the community is dependent on TI to provide the binaries.

The PowerVR SGX530 boasts a 200MHz OpenGL ES 2 compatible engine from Imagination Technologies. As of this writing there is are no drivers for any window system, neither X nor Wayland, but there is always the option of using the framebuffer directly. People from Texas Instruments have promised that they will be focusing on getting DRM dupport for this working in the near future, so hopefully there will be both full DRM support (needed by Wayland) as well as X drivers.

SGX SDK 5-alpha for BeagleBoard kernel

The SGX SDK is linked to the TI-kernel which is similar to the BeagleBoard kernel but not the same. It was quite a lot of work getting the SGX SDK compiling with the BeagleBoard kernel, but if anyone is interested, the package is hosted in the Thing printer package feed: http://feeds.thing-printer.com/feeds/v2013.06/ipk/eglibc/beaglebone/ This also requires upgrading the Kernel to 3.12. A suitable kernel is also present in that feed.

I’ve also written some notes on how to compile and upload the package manually: http://wiki.thing-printer.com/index.php?title=SGX_SDK_5_Alpha

There is a patch set needed for building the SDK against the BB kernel. It’s included in the BB-sgx repository.

Note: This is an experimental build with quite a few quirks. Make sure you have an sd-card available for unborking it.

Here is the 3D package and release notes from TI:

http://software-dl.ti.com/dsps/dsps_public_sw/gfxsdk/5_00_00_01/index_FDS.html

Here is a getting started guide from TI:

http://processors.wiki.ti.com/index.php/AM35x-OMAP35x_Graphics_SDK_Getting_Started_Guide

6 Responses to “3D rendering by PVR SGX on BeagleBone”

  1. Thanks for the great info – I’ve followed the steps from the wiki to update to Kernel 3.12 – but it seems that cape support is still broken. Do you know if there is any fix on that?

    • Roberto, yes from what I’ve seen there has been a lot of refactoring of the cape code, so capes need to be re-written. I’ve been meaning to do that for may own cape at least, but I’m not sure about the status of the other capes.

Trackbacks/Pingbacks

  1. Writing Clutter apps on BeagleBone Black using Python | Thing-Printer.comThing-Printer.com - January 2, 2014

    […] the kernel to 3.12 (which is still fairly unstable) and installing a custom version of the SGX SDK. I’ve tried to upload most of the work that has been done to different repositories, in case […]

  2. Converting Device tree overlays to Kernel 3.12 | Thing-Printer.comThing-Printer.com - January 14, 2014

    […] going on and there are some advantages to upgrading to a newer kernel, for instance due to the SGX support. However, there has been a few changes to the device tree of the BB, so device tree overlays […]

  3. Continue reading about BeagleBone Black | Hipstercircuits - January 22, 2014

    […] http://www.thing-printer.com/3d-rendering-pvr-sgx-beaglebone/ […]

Leave a Reply

Google+