Hi,
* Philipp Rossak embed3d@gmail.com [190212 22:25]:
I'm looking now into that PVR SGX driver since a while. I already reworked that old "opensource" driver to work with a quite new kernel (4.16 or 4.17) [But that code got lost]. For the sunxi devices this was only a short coding session to get that running. For OMAP this might be easier/faster since the general linux situation is better.
So a git repo that works for omaps and sunxi would be a good start then :)
I'm not sure if we are able to provide a generic driver since there are different userspace versions that are only compatible with their own kernel driver. Not all compile flags for the kernel driver work with all userspace lib versions, at least on sunxi. Be aware that there are also different versions of those GPU ip cores and all have different features and bug fixes.
No doubt it's a mess.. I'm only suggesting a generic driver that manages standard Linux resources like regulators, clocks and interrupts and provides 2d acceleration for sgx540 based on what we already have at drivers/gpu/drm/gma500/accel_2d.c. The idea being that it might then also make dealing with the rest of the sgx blobs a bit easier hopefully.
If you reach a good state with that driver, I can try to port that to sunxi. Is there any good/cheap OMAP4/5 Devboard you can recommend?
Hmm so the n900 folks have the sgx blobs working with recent mainline kernels for sgx530 I believe, and Nikolaus is close to having the sgx blobs working for sgx540. I may not be aware of the current status though.
For a devboard with sgx540, you should be able to find one for few tens of units for a used pandaboard-es for example or somebody here might even have an old one to donate. If you feel like playing with a phone, droid 4 xt894 is somewhat usable with mainline kernels with pending patches for LCD and modem, no idea what the sgx540 status on it might be. Pyra handheld is not yet available except for prototypes. And then on beagleboard-x15 there's sgx544, and beaglebone has sgx530 FYI so that might not help if you need sgx540.
Don't expect any support from TI or IMG. TI can't support a project like this, since they don't own the code and IMG is not willing to support.
Yeah that we've seen already over past 10 or so years :)
An other big issue is the leaked SGX source code [1]. So I think it would be better to start a clean room reverse engineering project. I'm already working on that.
OK so we're discussing at least three projects then:
1. A git repo that allows sgx blobs to work for various SoCs with current mainline kernels
2. A generic 2d sgx540 driver based on existing mainline kernel drivers/gpu/drm/gma500/accel_2d.c
3. Your reverse engineering project that might help with figuring out how things are supposed to work
Regards,
Tony