* PVR/SGX DDK 1.17 on JZ4780/CI20
@ 2020-03-29 14:58 H. Nikolaus Schaller
0 siblings, 0 replies; 2+ messages in thread
From: H. Nikolaus Schaller @ 2020-03-29 14:58 UTC (permalink / raw)
To: OpenPVRSGX Linux Driver Group
Cc: Discussions about the Letux Kernel,
MIPS Creator CI20 Development, linux-omap
Hi,
I have managed to fix some minor issues of the DDK 1.17 source tree provided by
Texas Instruments (thanks!) which still contains sgx_jz4780 kernel module code.
Attached are first results which show that the driver module can now be successfully
built and loaded on the CI20 board.
Next complexity is that there is no MIPS build of the DDK 1.17 user-space libs and tools.
So I have installed the ti443x version which seems to support SGX540.
I have started to experiment with "qemu-arm-static pvrsrvctl" but it reports missing
ARM libraries which is of course to be expected on a MIPS setup...
But if we can make that work somehow it opens a new way to support other SoC as
well: A83, Poulsbo etc. by forward-porting their SoC specific drivers we have in some
1.14 trees to 1.17. Or alternatively by developing a really generic pvrsrvkm that becomes
SoC-independent.
Code hasn't been pushed to the project git repo since it is does not have a linear
history. I plan to push a new rebased release (including these fixes) with v5.7-rc1.
BR,
Nikolaus
root@letux:~# cat /etc/debian_version
9.12
root@letux:~# uname -a
Linux letux 5.6.0-rc7-letux-l400+ #2356 SMP PREEMPT Sun Mar 29 14:43:33 CEST 2020 mips GNU/Linux
root@letux:~# modprobe pvrsrvkm_jz4780_sgx540_120
[ 1485.329869] pvrsrvkm 13040000.gpu: Enabling quirks 00000000
[ 1485.353477] [drm] Initialized pvr 1.17.4948957 20110701 for 13040000.gpu on minor 1
root@letux:~# lsmod
Module Size Used by
pvrsrvkm_jz4780_sgx540_120 338691 0
g_ether 5373 0
usb_f_rndis 17648 1 g_ether
u_ether 13532 2 g_ether,usb_f_rndis
libcomposite 48008 2 g_ether,usb_f_rndis
configfs 32565 3 usb_f_rndis,libcomposite
dw_hdmi_jz4780 2103 0
ingenic_drm 9582 0
dw_hdmi 27893 1 dw_hdmi_jz4780
drm_kms_helper 195676 3 ingenic_drm,dw_hdmi
syscopyarea 2754 1 drm_kms_helper
sysfillrect 3338 1 drm_kms_helper
sysimgblt 2140 1 drm_kms_helper
fb_sys_fops 1803 1 drm_kms_helper
drm 485544 5 ingenic_drm,pvrsrvkm_jz4780_sgx540_120,dw_hdmi,drm_kms_helper
gpio_ir_recv 2798 0
gpio_keys 9881 0
dm9000 18156 0
rtc_pcf8563 7287 1
nvmem_jz4780_efuse 3248 0
mii 7162 1 dm9000
drm_panel_orientation_quirks 942 1 drm
ipv6 410154 24
autofs4 26479 9
root@letux:~# ls -l /proc/pvr/
total 0
-r--r--r-- 1 root root 0 Mar 29 14:17 nodes
-r--r--r-- 1 root root 0 Mar 29 14:17 queue
-r--r--r-- 1 root root 0 Mar 29 14:17 version
root@letux:~# cat /proc/pvr/*
Registered nodes
Addr Type Class Index Ref pvDev Size Res
e4186696 ?7 3D 0 1 da3ed53d 0 4ea4f1a1
Command Queues
Queue CmdPtr Pid Command Size DevInd DSC SSC #Data ...
Version SGX_DDK sgxddk 1.17@4948957 (release) omap_sgx
System Version String: None
root@letux:~# ls -l /dev/dri
total 0
crw-rw---- 1 root video 226, 0 Nov 3 2016 card0
crw-rw---- 1 root video 226, 1 Mar 29 14:15 card1
crw-rw---- 1 root video 226, 128 Mar 29 14:15 renderD128
root@letux:~# cat /proc/cpuinfo
system type : JZ4780
machine : img,ci20
processor : 0
cpu model : Ingenic XBurst V4.15 FPU V0.0
BogoMIPS : 1196.85
wait instruction : yes
microsecond timers : no
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 1, address/irw mask: [0x0fff]
isa : mips1 mips2 mips32r1 mips32r2
ASEs implemented :
shadow register sets : 1
kscratch registers : 0
package : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
processor : 1
cpu model : Ingenic XBurst V4.15 FPU V0.0
BogoMIPS : 1202.58
wait instruction : yes
microsecond timers : no
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 1, address/irw mask: [0x0fff]
isa : mips1 mips2 mips32r1 mips32r2
ASEs implemented :
shadow register sets : 1
kscratch registers : 0
package : 0
core : 1
VCED exceptions : not available
VCEI exceptions : not available
root@letux:~# qemu-arm-static /usr/bin/pvrsrvctl --start --no-module
/lib/ld-linux-armhf.so.3: No such file or directory
root@letux:~#
^ permalink raw reply [flat|nested] 2+ messages in thread
* PVR/SGX DDK 1.17 on JZ4780/CI20
@ 2020-03-29 14:35 H. Nikolaus Schaller
0 siblings, 0 replies; 2+ messages in thread
From: H. Nikolaus Schaller @ 2020-03-29 14:35 UTC (permalink / raw)
To: OpenPVRSGX Linux Driver Group
Cc: Discussions about the Letux Kernel,
MIPS Creator CI20 Development, linux-omap
Hi,
I have managed to fix some minor issues of the DDK 1.17 source tree provided by
Texas Instruments (thanks!) which still contains sgx_jz4780 kernel module code.
Attached are first results which show that the driver module can now be successfully
built and loaded on the CI20 board.
Next complexity is that there is no MIPS build of the DDK 1.17 user-space libs and tools.
So I have installed the ti443x version which seems to support SGX540.
I have started to experiment with "qemu-arm-static pvrsrvctl" but it reports missing
ARM libraries which is of course to be expected on a MIPS setup...
But if we can make that work somehow it opens a new way to support other SoC as
well: A83, Poulsbo etc. by forward-porting their SoC specific drivers we have in some
1.14 trees to 1.17. Or alternatively by developing a really generic pvrsrvkm that becomes
SoC-independent.
Code hasn't been pushed to the project git repo since it is does not have a linear
history. I plan to push a new rebased release (including these fixes) with v5.7-rc1.
BR,
Nikolaus
root@letux:~# cat /etc/debian_version
9.12
root@letux:~# uname -a
Linux letux 5.6.0-rc7-letux-l400+ #2356 SMP PREEMPT Sun Mar 29 14:43:33 CEST 2020 mips GNU/Linux
root@letux:~# modprobe pvrsrvkm_jz4780_sgx540_120
[ 1485.329869] pvrsrvkm 13040000.gpu: Enabling quirks 00000000
[ 1485.353477] [drm] Initialized pvr 1.17.4948957 20110701 for 13040000.gpu on minor 1
root@letux:~# lsmod
Module Size Used by
pvrsrvkm_jz4780_sgx540_120 338691 0
g_ether 5373 0
usb_f_rndis 17648 1 g_ether
u_ether 13532 2 g_ether,usb_f_rndis
libcomposite 48008 2 g_ether,usb_f_rndis
configfs 32565 3 usb_f_rndis,libcomposite
dw_hdmi_jz4780 2103 0
ingenic_drm 9582 0
dw_hdmi 27893 1 dw_hdmi_jz4780
drm_kms_helper 195676 3 ingenic_drm,dw_hdmi
syscopyarea 2754 1 drm_kms_helper
sysfillrect 3338 1 drm_kms_helper
sysimgblt 2140 1 drm_kms_helper
fb_sys_fops 1803 1 drm_kms_helper
drm 485544 5 ingenic_drm,pvrsrvkm_jz4780_sgx540_120,dw_hdmi,drm_kms_helper
gpio_ir_recv 2798 0
gpio_keys 9881 0
dm9000 18156 0
rtc_pcf8563 7287 1
nvmem_jz4780_efuse 3248 0
mii 7162 1 dm9000
drm_panel_orientation_quirks 942 1 drm
ipv6 410154 24
autofs4 26479 9
root@letux:~# ls -l /proc/pvr/
total 0
-r--r--r-- 1 root root 0 Mar 29 14:17 nodes
-r--r--r-- 1 root root 0 Mar 29 14:17 queue
-r--r--r-- 1 root root 0 Mar 29 14:17 version
root@letux:~# cat /proc/pvr/*
Registered nodes
Addr Type Class Index Ref pvDev Size Res
e4186696 ?7 3D 0 1 da3ed53d 0 4ea4f1a1
Command Queues
Queue CmdPtr Pid Command Size DevInd DSC SSC #Data ...
Version SGX_DDK sgxddk 1.17@4948957 (release) omap_sgx
System Version String: None
root@letux:~# ls -l /dev/dri
total 0
crw-rw---- 1 root video 226, 0 Nov 3 2016 card0
crw-rw---- 1 root video 226, 1 Mar 29 14:15 card1
crw-rw---- 1 root video 226, 128 Mar 29 14:15 renderD128
root@letux:~# cat /proc/cpuinfo
system type : JZ4780
machine : img,ci20
processor : 0
cpu model : Ingenic XBurst V4.15 FPU V0.0
BogoMIPS : 1196.85
wait instruction : yes
microsecond timers : no
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 1, address/irw mask: [0x0fff]
isa : mips1 mips2 mips32r1 mips32r2
ASEs implemented :
shadow register sets : 1
kscratch registers : 0
package : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
processor : 1
cpu model : Ingenic XBurst V4.15 FPU V0.0
BogoMIPS : 1202.58
wait instruction : yes
microsecond timers : no
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 1, address/irw mask: [0x0fff]
isa : mips1 mips2 mips32r1 mips32r2
ASEs implemented :
shadow register sets : 1
kscratch registers : 0
package : 0
core : 1
VCED exceptions : not available
VCEI exceptions : not available
root@letux:~# qemu-arm-static /usr/bin/pvrsrvctl --start --no-module
/lib/ld-linux-armhf.so.3: No such file or directory
root@letux:~#
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-03-29 15:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-29 14:58 PVR/SGX DDK 1.17 on JZ4780/CI20 H. Nikolaus Schaller
-- strict thread matches above, loose matches on Subject: below --
2020-03-29 14:35 H. Nikolaus Schaller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).