:: [maemo-leste] Somewhat usable sgx d…
Top Page
Delete this message
Reply to this message
Author: Tony Lindgren
Date:  
To: OpenPVRSGX Linux Driver Group
CC: maemo-leste, Ivaylo Dimitrov, Merlijn Wajer, ruleh
Subject: [maemo-leste] Somewhat usable sgx ddk 1.9 based patches for droid4
Hi all,

I've pushed out a set of patches against letux-pvrsrvkm-v5.6.0-rc2 for
the old ddk 1.9.2253347 to [4][5]. This is probably only needed for
omap4 until ddk 1.17 branch is usable, maybe with Xorg apps via wlroots
or something. It might make sense to merge these changes into the
linux_openpvrsgx as 1.9.2253347 now compiles, and I've left ouf the
invasive omapdrm hacks from letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347.

With extra patches for the omapdrm to pvr ioctl proxying, I can start
apps like stellarium on droid4 :) These extra patches in [2][3] are
best left out of linux_openpvrsgx as they add back things to omapdrm
that will never be needed again otherwise.

Some more droid4 specific instructions below.

Regards,

Tony

8< ---------------
1. Build a patched kernel

The kernel needs to use current droid4-pending-v5.6 [0][1], and
current letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347-omapdrm-hacks [2][3],
and have the custom options in omap2plus_defconfig enabled.

$ git checkout -b droid4-pending-v5.6 pvr-wip
$ git merge letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347-omapdrm-hacks
$ export ARCH=arm CROSS_COMPILE=...
$ make omap2plus_defconfig # and maybe add your custom kernel options
$ make zImage modules dtbs

2. Configure xf86-video-omap

Please someobdy document this :)

3. Boot and test

$ sudo modprobe pvrsrvkm_omap4_sgx540_120

Initialize pvr-omap4.git userspace blobs with:

pvr=${HOME}/pvr-wip/pvr-omap4
LD_PRELOAD=\
${pvr}/usr/lib/libsrv_init.so:\
${pvr}/usr/lib/libsrv_um.so:\
${pvr}/usr/lib/libusc.so:\
${pvr}/usr/lib/libIMGegl.so:\
${pvr}/usr/lib/libpvr2d.so:\
${pvr}/usr/lib/libpvrws_OMAPDRI2.so:\
${pvr}/usr/lib/libGLESv2.so:\
${pvr}/usr/lib/libglslcompiler.so:\
${pvr}/usr/lib/libEGL.so \
${pvr}/usr/bin/pvrsrvinit $*

$ startx

Run stellarium with:

pvr=${HOME}/pvr-wip/pvr-omap4
LD_PRELOAD=\
${pvr}/usr/lib/libsrv_init.so:\
${pvr}/usr/lib/libsrv_um.so:\
${pvr}/usr/lib/libusc.so:\
${pvr}/usr/lib/libIMGegl.so:\
${pvr}/usr/lib/libpvr2d.so:\
${pvr}/usr/lib/libpvrws_OMAPDRI2.so:\
${pvr}/usr/lib/libGLESv2.so:\
${pvr}/usr/lib/libglslcompiler.so:\
${pvr}/usr/lib/libEGL.so \
/usr/bin/stellarium $*


droid4-pending-v5.6
[0] git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git droid4-pending-v5.6
[1] https://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git/log/?h=droid4-pending-v5.6

letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347-omapdrm-hacks
[2] git://github.com/tmlind/linux_openpvrsgx letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347-omapdrm-hacks
[3] https://github.com/tmlind/linux_openpvrsgx/tree/letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347-omapdrm-hacks

linux_openpvrsgx base branch (contained in letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347-omapdrm-hacks)
[4] git://github.com/tmlind/linux_openpvrsgx letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347
[5] https://github.com/tmlind/linux_openpvrsgx/tree/letux-pvrsrvkm-v5.6.0-rc2-ddk-1.9.2253347