[Openpvrsgx-devgroup] Reverse engineering SGX 540 userspace driver

H. Nikolaus Schaller hns at goldelico.com
Fri Nov 12 10:41:09 CET 2021


That is interesting that there are even more intermediate DDK relases...

I think the format is
1.$RELEASE.$VERSION

where $VERSION is just a sequential number of their version management system. I.e. it increments only and independently of $RELEASE.
$RELEASE seems to be sort of milestone when they have tagged a specific $VERSION as some significant change.
 
But that said I have never seen source code for 1.14.544606452. And that may even break my assumption of sequential $VERSION numbers...
Maybe this has the scheme:
1.$RELEASE.$PATCH$VERSION i.e.

RELEASE=14
VERSION=4606452
PATCH=54

Then, the VERSION would fall between the OMAP 1.14.3699939 and the 1.17.4948957

> Am 11.11.2021 um 23:26 schrieb Lucas Fryzek <lucas.fryzek at hazeco.xyz>:
> 
> Hello Nikolaus,
> 
>> It *could* work but was never tested. We have the matching DDK release version in the tree. Just choose CONFIG_PVRSGX_1_14_3759903=y
>> It may be that the branch is missing some fixes that have been applied to the versions CONFIG_PVRSGX_1_14_3699939 and CONFIG_PVRSGX_1_17_4948957 which are more or less well running on OMAP3/4/5.
>> Do you have the user space for 1.14.3759903? I am not sure but it may be stored in the factory flash image.
>>> I'm trying to get a setup right now where I can compile a kernel mode driver and make modifications to get a better idea on how the GPU is being controlled. If I can use a more modern kernel and linux userland that would be very nice.
>> Just get the letux tree: https://github.com/goldelico/letux-kernel/tree/letux-5.15
>> It includes everything incl. HDMI driver for the CI20 (use letux_defconfig) and compiles the SGX driver that is configured. But the default is CONFIG_PVRSGX_1_17_4948957=y so there may be surprises when switching to CONFIG_PVRSGX_1_14_3759903 we can discuss how to fix.
> I believe my board is currently flashed with the `Debian 8 2015-09-09` image from this webpage https://elinux.org/CI20_Distros.
> I took a look through the filesystem and I cannot find the DDK as a zip package, but all of the PVR libraries seem to be versioned as `1.14.544606452`. The reason I referred to `1.14.3759903` before was this is the version listed on this web page https://elinux.org/CI20-SGX_kernel_module.
> 
> 
> I'm not sure what the latest available kernel module + userland is for the CI20. I did find this git repo https://github.com/MIPS/CI20_PVR-prebuilts, that seems to have userland libraries for version `1.15.4568187`. But I'm not if there is a matching open source kernel driver for this repo.
> 
> 
> I am currently trying to get a setup where I can build the open PVR kernel module and have it work with the userspace. I've been working. Building my own kernel with the old debian images seems to break DRM, so I suspect there is so version mismatching going on. I'll take a look at the kernel in the letux project instead as this looks like a more productive use of my time. I'll also take a look at some of the older debian images for the CI20 to see if the `1.14.3759903` to attempt to use with the letux kernel.
> 
> Thanks for the help on first steps!
> 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups "MIPS Creator CI20 Development" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to mips-creator-ci20-dev+unsubscribe at googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/mips-creator-ci20-dev/CCIF2R.T1CSDFANBVL12%40hazeco.xyz.



More information about the openpvrsgx-devgroup mailing list