[Letux-kernel] SGX working on BeagleBone...
H. Nikolaus Schaller
hns at goldelico.com
Mon Oct 14 17:00:11 CEST 2019
> Am 14.10.2019 um 10:12 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
>
>
>> Am 14.10.2019 um 08:33 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
>> root at letux:~# pvrsrvctl --start --no-module
>> [ 4466.006683] PVR_K: UM DDK-(3699939) and KM DDK-(3699939) match. [ OK ]
>> root at letux:~# cat /proc/pvr/version
>> Version SGX_DDK sgxddk MAIN at 3699939 (release) omap_sgx
>> System Version String: SGX revision = 125
>> root at letux:~# uname -a
>> Linux letux 5.4.0-rc2-letux+ #1198 SMP PREEMPT Sat Oct 12 18:20:32 CEST 2019 armv7l GNU/Linux
>> root at letux:~# cat /sys/devices/soc0/machine
>> OMAP3630/DM3730
>> root at letux:~# gles
>> gles1test1 gles2test1
>> root at letux:~# gles1test1
>> [ 4478.031799] PVR_K:(Error): DoMapToUser: Error - vmf_insert_mixed failed (100)
>> PVR:(Error): PVRPMapKMem: mmap(2) failed: Mapping handle=0xf: Tܿ7p% [0, ]
>> PVR:(Error): WSEGL_InitialiseDisplay: Failed to open primary device: No such file or directory [0, ]
>> 'eglInitialize' returned egl error 'EGL_NOT_INITIALIZED' (0x3001)
>> root at letux:~#
after adding "coherent_pool=1M" to the kernel boot command line it works on BeagleBone Black:
https://youtu.be/jFCPR_EvtjY
a) BeagleBone AM335x
root at letux:~# pvrsrvctl --start --no-module
[ 230.461605] PVR_K: UM DDK-(3699939) and KM DDK-(3699939) match. [ OK ]
root at letux:~# gles1test1
[ 235.203138] PVR_K:(Error): DoMapToUser: Error - vmf_insert_mixed failed (100)
PVR:(Error): PVRPMapKMem: mmap(2) failed: Mapping handle=0xf: Tl6p [0, ]
root at letux:~# gles1test1 100
[ 238.824162] PVR_K:(Error): DoMapToUser: Error - vmf_insert_mixed failed (100)
PVR:(Error): PVRPMapKMem: mmap(2) failed: Mapping handle=0xf: Tög,pξ [0, ]
root at letux:~# gles1test1 100
[ 302.296776] PVR_K:(Error): DoMapToUser: Error - vmf_insert_mixed failed (100)
PVR:(Error): PVRPMapKMem: mmap(2) failed: Mapping handle=0xf: TpŜ [0, ]
root at letux:~# gles1test1 300
[ 324.881798] PVR_K:(Error): DoMapToUser: Error - vmf_insert_mixed failed (100)
PVR:(Error): PVRPMapKMem: mmap(2) failed: Mapping handle=0xf: TpѾ [0, ]
root at letux:~#
There is still one mapping error but that one is apparently ignored.
It also appears as if it has a printk("...T%s") for a dangling pointer.
b) GTA04 DM3730
root at letux:~# gles1test1
[ 110.028076] PVR_K:(Error): DoMapToUser: Error - vmf_insert_mixed failed (100)
PVR:(Error): PVRPMapKMem: mmap(2) failed: Mapping handle=0xf: T<ȶ\0; [0, ]
PVR:(Error): WSEGL_InitialiseDisplay: Failed to open primary device: No such file or directory [0, ]
'eglInitialize' returned egl error 'EGL_NOT_INITIALIZED' (0x3001)
root at letux:~#
So the DoMapToUser error is the same, but more harmful on OMAP3 than AM335x.
>>
>> Anyways, this is a good indication that we can run the 1.14 PVR also on OMAP3 even
>> if not officially supported. Maybe the driver needs some hack to help with vmf_insert_mixed.
>
> Quick test: this variant does not run on OMAP5. Complains that it does not know OMAP5432,
> about bad number of cores and mismatch of config options.
>
> So there are multiple different user-space variants around, not only for different
> SGX versions but older and newer.
>
> Most likely we need to clone a different branch from git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git
>
> BR,
> Nikolaus
>
>
> _______________________________________________
> http://projects.goldelico.com/p/gta04-kernel/
> Letux-kernel mailing list
> Letux-kernel at openphoenux.org
> http://lists.goldelico.com/mailman/listinfo.cgi/letux-kernel
More information about the Letux-kernel
mailing list