Hi all, I spent some time to work on the PVR/SGX driver and with 4.15-rc4 there is now something available for further study.
What works: * integration with SoC drivers for OMP3630 and AM335x in drivers/gpu/pvr/omap* * fixes for kernel driver to compile and work against 4.15 API * a gpu-demo script that installs the (closed) firmware and drivers, then starts the µKernel on the SGX and finally tries to run a demo - tested on GTA04 and Letux Cortex 8
Well, we do yet not see anything on the display :(
There is one missing piece: the interface of the SGX to the framebuffer base address.
Unfortunately neither the omaplfb nor the omapdrm backends of the kernel driver work (although they can be compiled).
If you want to try, SGX is not configured into the latest 4.15-rc4 but it is easy to enable:
1. download sources of 4.15-rc4 (http://projects.goldelico.com/p/gta04-kernel/) 2. edit letux_defconfig to set CONFIG_SGX=y CONFIG_SGX_OMAP=m optionally CONFIG_SGX_DRM=y 3. build & boot 4. run /root/gpu-demo script
For AM33xx (BeagleBone/PocketBone/LC8) there is one more change: edit drivers/gpu/pvr/omap3/Makefile for SOC=ti335x.
There is still a lot of things to do: * fix the framebuffer access issue * make a variant for omap3430 (OpenPandora 600MHz) this needs a different flavour of the user-space package * make variants for OMAP4 and OMAP5 (driver code is already included in source tree) * for AM33xx there is some tiny bit missing to fully automatically enable all clocks. Currently there is a devmem2 hack in the gpu-demo script * I have some ideas to streamline the driver so that a single driver binary could support *all* OMAP variants and generations but that is a big project which needs funding
Please test and report your experiences.
It would be great if we could provide a full set of tested and maintained (as good as possible) drivers for *all* omap boards.
And an (optional) 3D acceleration for Replicant.
BR, Nikolaus