Hi,

I'm trying to get the OpenGL ES2 acceleration on CM-T35 board based on OMAP3530 using PowerVR SGX drivers. On many forums I've seen people getting exactly the same errors as I do but unfortunatelly none of them were really solved. So I'm trying one more time hoping for some more luck

What I have done successfully so far is:
  • Cross-compiled Qt Embedded 4.6.1 with following ./configure parameters:
    -embedded arm -xplatform qws/linux-omap3530-g++ -platform qws/linux-x86-g++
    -no-accessibility -no-qt3support -no-javascript-jit -no-script -no-scripttools -no-webkit
    -qt-kbd-linuxinput -qt-mouse-linuxinput -qt-mouse-tslib
    -depths 16,24,32
    -opengl es2 -qt-gfx-linuxfb -plugin-gfx-powervr
    -fast
  • Cross-compiled and installed TI Graphics drivers (1.6.16.3977 drivers from Graphics_SDK_4_03_00_02) which are working as expected.
  • Running Qt demos without OpenGL ES acceleration


But when trying to employ OpenGL ES rendering in hellogl_es2 example (with QT_DEBUG_PLUGINS=1)

QT_INSTALL_DIR/examples/opengl/hellogl_es2/hellogl_es2 -qws -display powervr

I get the following errors:
QFactoryLoader::QFactoryLoader() looking at "/usr/local/Trolltech/QtEmbedded-4.6.1-arm/plugins/gfxdrivers/libqgfxpvregl.so" keys ("powervr")

QEglContext::createSurface(): Unable to create EGL surface, error = 0x300b
QGLContext::makeCurrent(): Cannot make invalid context current
QEglContext::createSurface(): Unable to create EGL surface, error = 0x300b

QFactoryLoader::QFactoryLoader() looking at "/usr/local/Trolltech/QtEmbedded-4.6.1-arm/plugins/iconengines/libqsvgicon.so" keys ("svg", "svgz", "svg.gz")

To not be confused, I have set the right WindowSystem in powervr.ini file (libpvrQWSWSEGL.so) and SGX drivers are loaded successfully (can be checked with lsmod).

Interestingly enough, executing the provided eglinfo utility (from TI Graphics SDK), which is also creating EGL surfaces, contexts as hellogl_es2 demo does, runs without any errors!

I believe this is some kind of a bug in QWSWSEGL layer. Please can you provide some advices regarding this problem.

Thank you,

Adi