This probably doesn't work with pyra yet anyway, but I did run into a problem where make clean doesn't work properly :
CLEAN drivers/gpu/pvr rm: cannot remove 'drivers/gpu/pvr/omap3/': Is a directory rm: cannot remove 'drivers/gpu/pvr/omap5/': Is a directory scripts/Makefile.clean:72: recipe for target '__clean' failed make[3]: *** [__clean] Error 1 scripts/Makefile.clean:89: recipe for target 'drivers/gpu/pvr' failed
We did have working gpu drivers on pyra on an earlier kernel (more the uevm, never tried it on a real pyra, kernel was too old to have dtbs for the current prototypes) , but they couldn't be run at the same time as tiler.
This has some info on that, which you should already have. https://dev.pyra-handheld.com/snippets/1
This is also what our current omap5-sgx-ddk-um-linux package is based on. So it's probably a few versions behind more recent drivers.
On 12/18/2017 02:32 PM, H. Nikolaus Schaller wrote:
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:
- download sources of 4.15-rc4 (http://projects.goldelico.com/p/gta04-kernel/)
- edit letux_defconfig to set CONFIG_SGX=y CONFIG_SGX_OMAP=m optionally CONFIG_SGX_DRM=y
- build & boot
- 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
Kernel mailing list Kernel@pyra-handheld.com http://pyra-handheld.com/cgi-bin/mailman/listinfo/kernel