PowerVR integration with Qt problems

Hi, All

We followed “OMAP35x Graphics SDK Getting Started Guide” to get
PowerVR works on beagle board.
We started loading powerVR modules successfully,

Target #/etc/init.d/rc.pvr start
And we could run any of its demo examples, like eglinfo,
sgx_blit_test, sgx_flip_test, ovg_unit_test
Target $ ./gles1test1 –t
Target $ ./gles2test1 –t
Target $ ./ovg_unit_test –t

so we builded qt with arguments as below, in order to use PowerVR feature of Qt:
-plugin-gfx-powervr
-opengl es1

The PowerVR driver also needs to be told which WSEGL library to use.
This is done by creating/modifying /etc/powervr.ini:

[default]
WindowSystem=libpvrQWSWSEGL.so

When we start a Qt/Embedded application, we modify the QWS_DISPLAY
environment variable to use the "powervr" driver instead of "LinuxFb".

QWS_DISPLAY=”powervr:size=480x640:depth=32”

To test the OpenGL ES integration, we use the hellogl_es example in Qt
and run it on the device, and we got the errors pasted following.

Target:/opt/qte4.5.1/examples/opengl/hellogl_es# ./hellogl_es -qws
Could not create the temporary E<4>: OSCpuVToPageList: get_user_pages
failed (-14), trying something else<4>: OSCpuVToPageList:
get_user_pages failed (-14), trying something elseGL surface
QEglContext::createSurface(): Unable to create EGL surface, error = 0x3001
Could not re-create the temporary EGL surface
blit_16(): Image format 0 not supported!

I want to know how to solve this problem? What is the error about?
Any help is highly appreciated!

Thanks

Could it be that you’re trying to run in 32bpp and the driver only supports 16bpp ? (AFAIK)

Hi.

   I compiled omap3-sgx-module and libgles-omap3 in OE, and I modified
the the board setting for omapzoom ( I wanna it compiled PowerVR for
omapzoom board).
the building is very well going. then, I installed omap3-sgx-moudules
and libgles-omap3 binaries.
  when I insert the modules into kernel, I got the errors:

  target# /etc/init.d/pvr-init

ERROR: Module omaplfb does not exist in /proc/modules
<4>omaplfb: Unknown symbol omap_dispc_unregister_isr
omaplfb: Unknown symbol omap_dispc_unregister_isr
<4>omaplfb: Unknown symbol omap_dispc_register_isr
omaplfb: Unknown symbol omap_dispc_register_isr
FATAL: Error inserting omaplfb (/lib/modules/2.6.29-omap1/kernel/drivers/gpu/pvr
/omaplfb.ko): Unknown symbol in module, or unknown parameter (see dmesg)
/etc/rc5.d/S30pvr-init: line 23: devmem2: not found

I used kernel 2.6.29 which is from OE specially building for
omapzoom, also the rootfs.

"ERROR: Module omaplfb does not exist in /proc/modules ", I think,
this is becuase I don't have inserted the omapfb module before when it
removing from kernel.

"Unknown symbol :omap_dispc_unregister_isr", but, I don't know this
error, I found this symbol is definded in kernel source
(drivers/video/omap2/dss/dispc.c)
     EXPORT_SYMBOL(omap_dispc_register_isr)

I am stopped by this error, can't get my process going on, any help is welcome.

thanks

I guess your kernel is not built with DSS2 support.

Regards,
Pratheesh