PowerVR kernel drivers available for testing

Hi,

Nokia was so kind to release the GPL'ed sources for the SGX kernel drivers[1], which I integrated into the 2.6.27 kernel in OE. You can get a kernel + modules set from [2] to try it out.
There is a catch: you need some userspace tools to init the drivers (which you need to get from TI[3] or imgtec) and userspace libraries for EGL and GLES (again, TI or imgtec).

regards,

Koen

[1] http://repository.maemo.org/pool/maemo5.0/free/k/kernel/
[2] http://dominion.thruhere.net/koen/OE/pvr/
[3] http://focus.ti.com/general/docs/wtbu/wtbugencontent.tsp?templateId=6123&navigationId=12700&contentId=27458

Hi,
Please explain what user space tools need to be there to init the
drivers.
Have you tried it,does it work fine.
Rgds,
Vandana

Hi,

Nokiaset from [2] to try it out.

There is a catch: you need some userspace tools to init the drivers
(which you need to get from TI[3] or imgtec) and userspace libraries
for EGL and GLES (again, TI or imgtec). gds was so kind to release the
GPL'ed sources for the SGX kernel

Hi Koen,

It took a little while but I've now got access to the TI extranet and
hence the PowerVR SDK - hooray!

Thanks very much for this post - really looking forward to being able
to play with OGLES and (eventually) Clutter on the BeagleBoard.
Unfortunately, I'm having trouble trying out your patched kernel and
modules. Sorry if I've missed something obvious...

The steps I went through:

1. Did OE build and install as described in http://elinux.org/BeagleBoardAndOpenEmbeddedGit
    - was able to boot BeagleBoard successfully
2. Downloaded "OpenGL ES v2.0 SDK for OMAP3430 Zoom MDK Board" from
WTBU OMAP Mobile Gaming site
    - not sure if I should use this or "OpenGL ES v2.0 SDK for
OMAP3430 SDP Board" but have tried both to no avail
    - ran installer to install PowerVR kernel modules, libs and test
apps on MMC (had to hack install.sh to use /lib/modules/2.6.27-omap1/
kernel)
3. Replaced uImage with http://dominion.thruhere.net/koen/OE/pvr/uImage-2.6.27-r3-beagleboard.bin
4. Extracted http://dominion.thruhere.net/koen/OE/pvr/modules-2.6.27-r3-beagleboard.tgz
to root filesystem, replacing existing modules etc.
5. insmod /lib/modules/2.6.27-omap1/kernel/drivers/gpu/pvr/pvrsrvkm.ko
    - module loads ok
6. modprobe -f bc_example
    - get "FATAL: Error inserting bc_example (/lib/modules/2.6.27-
omap1/kernel/drivers/gpu/pvr/bc_example.ko): Invalid module format"
7. modprobe -f omaplfb
    - get "FATAL: Error inserting omaplfb (/lib/modules/2.6.27-omap1/
kernel/drivers/gpu/pvr/omaplfb.ko): Invalid module format"
com/group/beagleboard/browse_thread/thread/9bc70d1c1a66164a/
21e0d0a67aa95190?lnk=gst&q=PowerVR#21e0d0a67aa95190

It seems like the modules and kernel image are out-of-sync but if it
works for you then I'm obviously doing something wrong...

Any ideas?

Thanks,

James

James

It seems like the modules and kernel image are out-of-sync but if it
works for you then I'm obviously doing something wrong...

TI haven't released PVR libs for 2.6.27 yet - the 2.6.24 releases on the mobile gaming extranet are intended for use with their (old) distro that ships with the EVM. They did briefly post a beagleboard release to the extranet a couple of weeks ago but that was also built against 2.6.24 and was quickly removed. I got some of the test binaries working (with the open kernel modules) but had issues with EGL and put it aside after TI advised they are working on bringing it up to date.

If anyone got further than this with the current release then I'd love to know how. These libraries are critical for my project. Otherwise, I think we'll have to wait a month or two.

Regards

Rob

James

It seems like the modules and kernel image are out-of-sync but if it
works for you then I'm obviously doing something wrong...

TI haven't released PVR libs for 2.6.27 yet - the 2.6.24 releases on
the
mobile gaming extranet are intended for use with their (old) distro
that
ships with the EVM. They did briefly post a beagleboard release to
the
extranet a couple of weeks ago but that was also built against
2.6.24 and
was quickly removed. I got some of the test binaries working (with
the open
kernel modules) but had issues with EGL and put it aside after TI
advised
they are working on bringing it up to date.

If anyone got further than this with the current release then I'd
love to
know how. These libraries are critical for my project. Otherwise,
I think
we'll have to wait a month or two.

The current problem, as I understand it, isn't that the drivers
released are for a particular kernel (though that is true), but that
the versions of the user-space don't match the version of the kernel-
space being used. I'm not sure why Imagination Tech broke
compatibility between their releases, but my understanding is that is
what has happened.

It *might* be possible to get the current drives working via
integrating the kernel-space code included with the driver, rather
than the 2.6.27 version that has a different set of kernel patches
applied that work with a different version of the user-space. There
have been a couple of attempts that have failed, but upgrading both
the kernel and user-space to the latest versions has been shown to
work. I'm pushing hard for a new release of the 3D graphics drivers
and it is probably a couple weeks away.

I'm very sorry for the delays and I will notify the list as soon as TI
has made a public release with the ImgTech version 1.3.x drivers.

Jason and Rob,

Thanks for the explanations - much appreciated. I'll keep on trying
with what I've got now and will be sure to post if I have any success.
Please do keep us in the loop with your efforts in getting updated
drivers, Jason.

Cheers,

James