> > *William, * > > *Have you seen this.... when I enable the PRU with a device tree overlay, I get this if I type top: (something to do with the interrupts taking up tons of CPU)*
No I haven't, since I have not been looking. Perhaps the interrupts can be disabled ? I'll have to look into it, but I do not really have any code / binaries built to use both PRUs. What are you doing exactly ? On Tue, Nov 24, 2015 at 2:23 PM, Erik Stauber <[email protected]> wrote: > William, > > Have you seen this.... when I enable the PRU with a device tree overlay, I > get this if I type *top*: (something to do with the interrupts taking up > tons of CPU) > > > > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > 678 root 20 0 72872 21368 6372 S 11.2 4.2 0:03.56 node > 687 root 20 0 11324 2252 1552 R 6.2 0.4 0:00.43 > systemd-udevd > 691 root 20 0 11324 1644 948 R 6.2 0.3 0:00.42 > systemd-udevd > 692 root 20 0 11324 1644 948 R 6.2 0.3 0:00.41 > systemd-udevd > 685 root 20 0 11324 2312 1612 R 5.9 0.5 0:00.43 > systemd-udevd > 686 root 20 0 11324 2252 1552 R 5.9 0.4 0:00.43 > systemd-udevd > 689 root 20 0 11324 2188 1488 R 5.9 0.4 0:00.43 > systemd-udevd > 690 root 20 0 11324 2188 1488 R 5.9 0.4 0:00.42 > systemd-udevd > 693 root 20 0 11324 1644 948 R 5.9 0.3 0:00.41 > systemd-udevd > 680 root 20 0 8076 3524 3040 S 3.6 0.7 0:00.23 laserlux > 3 root 20 0 0 0 0 R 2.6 0.0 0:00.37 > ksoftirqd/0 > 103 root 20 0 0 0 0 S 0.3 0.0 0:00.04 > usb-storage > 696 root 20 0 2980 1644 1288 R 0.3 0.3 0:00.06 top > 1 root 20 0 21836 3204 2120 S 0.0 0.6 0:06.05 systemd > 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd > 4 root 20 0 0 0 0 S 0.0 0.0 0:00.02 > kworker/0:0 > 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 > kworker/0:0H > 6 root 20 0 0 0 0 S 0.0 0.0 0:00.33 > kworker/u2:0 > 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 > watchdog/0 > 8 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 khelper > 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 > kdevtmpfs > 10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns > 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kswork > 12 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 perf > 13 root 20 0 0 0 0 S 0.0 0.0 0:00.04 > kworker/0:1 > 14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 > khungtaskd > 15 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 > writeback > 16 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd > 17 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 crypto > 18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 > kintegrityd > 19 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 bioset > 20 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd > > > Then after a couple minutes, those processes disappear and this appears in > /var/log/syslog > > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [679] > /devices/platform/ocp/4a300000.pruss/uio/uio0 timeout; kill it > Nov 24 13:15:15 beaglebone rsyslogd-2007: action 'action 17' suspended, > next retry is Tue Nov 24 13:15:45 2015 [try http://www.rsyslog.com/e/2007 > ] > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2030 > '/devices/platform/ocp/4a300000.pruss/uio/uio0' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [680] > /devices/platform/ocp/4a300000.pruss/uio/uio1 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2036 > '/devices/platform/ocp/4a300000.pruss/uio/uio1' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [681] > /devices/platform/ocp/4a300000.pruss/uio/uio2 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2037 > '/devices/platform/ocp/4a300000.pruss/uio/uio2' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [683] > /devices/platform/ocp/4a300000.pruss/uio/uio3 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2038 > '/devices/platform/ocp/4a300000.pruss/uio/uio3' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [684] > /devices/platform/ocp/4a300000.pruss/uio/uio4 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2039 > '/devices/platform/ocp/4a300000.pruss/uio/uio4' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [685] > /devices/platform/ocp/4a300000.pruss/uio/uio5 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2040 > '/devices/platform/ocp/4a300000.pruss/uio/uio5' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [686] > /devices/platform/ocp/4a300000.pruss/uio/uio6 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2041 > '/devices/platform/ocp/4a300000.pruss/uio/uio6' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [687] > /devices/platform/ocp/4a300000.pruss/uio/uio7 timeout; kill it > Nov 24 13:15:15 beaglebone systemd-udevd[172]: seq 2042 > '/devices/platform/ocp/4a300000.pruss/uio/uio7' killed > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [681] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [683] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [679] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [680] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [684] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [685] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [686] terminated by > signal 9 (Killed) > Nov 24 13:15:15 beaglebone systemd-udevd[172]: worker [687] terminated by > signal 9 (Killed) > Nov 24 13:16:10 beaglebone systemd-timesyncd[209]: > interval/delta/delay/jitter/drift 256s/-0.005s/0.075s/0.261s/-34ppm > Nov 24 13:16:10 beaglebone rsyslogd-2007: action 'action 17' suspended, > next retry is Tue Nov 24 13:16:40 2015 [try http://www.rsyslog.com/e/2007 > ] > Nov 24 13:16:56 beaglebone rsyslogd-2007: action 'action 17' suspended, > next retry is Tue Nov 24 13:17:26 2015 [try http://www.rsyslog.com/e/2007 > ] > Nov 24 13:17:01 beaglebone CRON[1650]: (root) CMD ( cd / && run-parts > --report /etc/cron.hourly) > > > What's odd is my program continues to operate normally, and is using both > PRU0 and PRU1 interrupts.. > > Erik > > > > > > On Monday, November 23, 2015 at 12:03:04 PM UTC-8, William Hermans wrote: >> >> Micka, >> >> TI 4.x kernels will not work with "traditional" PRU stuff. TI kernels >> have remoteproc enabled. . . which takes over the PRU in a different way. >> >> On Mon, Nov 23, 2015 at 9:41 AM, Micka <[email protected]> wrote: >> >>> Hi, did you managed to make this kernel working with the PRU ? Because I >>> got that : >>> >>> >>> https://www.mail-archive.com/[email protected]/msg32826.html >>> >>> >>> Micka, >>> >>> Le lun. 23 nov. 2015 17:38, Erik Stauber <[email protected]> a écrit : >>> >>>> William, >>>> >>>> I installed the 4.1.13-bone-rt-r16 kernel, and the /dev/uioX entires >>>> showed up. I guess I'll try using this one. Thanks for the help! >>>> >>>> Erik >>>> >>>> >>>> On Saturday, November 21, 2015 at 9:44:14 PM UTC-8, William Hermans >>>> wrote: >>>> >>>>> By the way, I had to make my own device tree overlay for the PRU. It's >>>>> pretty simple. . . . >>>>> >>>>> /dts-v1/; >>>>> /plugin/; >>>>> >>>>> / { >>>>> compatible = "ti,beaglebone", "ti,beaglebone-black"; >>>>> >>>>> /* identification */ >>>>> part-number = "pru_enable"; >>>>> version = "00A0"; >>>>> >>>>> fragment@0 { >>>>> target = <&pruss>; >>>>> __overlay__ { >>>>> status = "okay"; >>>>> >>>>> }; >>>>> }; >>>>> >>>>> }; >>>>> >>>>> $ dtc -O dtb -o pru_enable-00A0.dtbo -b 0 -@ pru_enable-00A0.dts >>>>> $ sudo cp pru_enable-00A0.dtbo /lib/firmware/ >>>>> $ sudo sh -c "echo 'pru_enable' > >>>>> /sys/devices/platform/bone_capemgr/slots" >>>>> $ dmesg | grep pru_enable >>>>> [ 886.921624] bone_capemgr bone_capemgr: part_number 'pru_enable', >>>>> version 'N/A' >>>>> [ 886.941686] bone_capemgr bone_capemgr: slot #6: 'Override Board >>>>> Name,00A0,Override Manuf,pru_enable' >>>>> [ 886.981959] bone_capemgr bone_capemgr: slot #6: dtbo >>>>> 'pru_enable-00A0.dtbo' loaded; overlay id #0 >>>>> >>>>> On Sat, Nov 21, 2015 at 10:36 PM, William Hermans <[email protected]> >>>>> wrote: >>>>> >>>> bone-rt has real time enhancements. I do not know all the differences, >>>>>> but the kernel latency seems to be reduced. >>>>>> >>>>>> Anyway, you do not see what ? >>>>>> >>>>> >>>>>> On Sat, Nov 21, 2015 at 7:08 PM, Erik Stauber <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> hmmm, i don't see that on 4.1.13-bone16. Maybe I need to use >>>>>>> 4.1.13-bone-rt-r16? What is the difference between the bone and >>>>>>> bone-rt? >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Friday, November 20, 2015 at 2:26:38 PM UTC-8, William Hermans >>>>>>> wrote: >>>>>>> >>>>>>>> The kernel I'm using by the way . . . >>>>>>>> >>>>>>>> $ uname -a >>>>>>>> Linux beaglebone 4.1.9-bone-rt-r16 #1 Thu Oct 1 06:19:41 UTC 2015 >>>>>>>> armv7l GNU/Linux >>>>>>>> >>>>>>>> $ ls /dev/ |grep uio >>>>>>>> uio >>>>>>>> uio0 >>>>>>>> uio1 >>>>>>>> uio2 >>>>>>>> uio3 >>>>>>>> uio4 >>>>>>>> uio5 >>>>>>>> uio6 >>>>>>>> uio7 >>>>>>>> >>>>>>>> $ ./lsuio >>>>>>>> uio7: name=pruss_evt7, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio6: name=pruss_evt6, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio5: name=pruss_evt5, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio4: name=pruss_evt4, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio3: name=pruss_evt3, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio2: name=pruss_evt2, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio1: name=pruss_evt1, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> uio0: name=pruss_evt0, version=1.0, events=0 >>>>>>>> map[0]: addr=0x4A300000, size=524288 >>>>>>>> map[1]: addr=0x9E880000, size=262144 >>>>>>>> >>>>>>>> >>>>>>>> On Fri, Nov 20, 2015 at 2:59 PM, William Hermans <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> The TI kernels have remoteproc enabled in the kernel, which will >>>>>>>>> interfere with uio_pruss. You need to switch to a *bone* kernel. >>>>>>>>> >>>>>>>>> On Fri, Nov 20, 2015 at 9:59 AM, Erik Stauber <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> I'm trying to migrate to 4.1 from 3.8, and it seems as if the PRU >>>>>>>>>> is up and running on the latest 4.1 kernel. However, a difference >>>>>>>>>> is the >>>>>>>>>> I'm not getting the 8 uioX (x=0-8) entries in the /dev directory, and >>>>>>>>>> therefore the prussdrv library errors out when it can't find those >>>>>>>>>> files. >>>>>>>>>> >>>>>>>>>> The prussdrv is looking for this: >>>>>>>>>> sprintf(name, "/dev/uio%d", host_interrupt); >>>>>>>>>> >>>>>>>>>> The dmesg output on 4.1.13-ti-r33 reports that it is skipping >>>>>>>>>> intr mapping... >>>>>>>>>> >>>>>>>>>> *[ 20.830764] pru-rproc 4a334000.pru0: version 0 >>>>>>>>>> event_chnl_map_size 1 event_chnl_map 0000039c* >>>>>>>>>> *[ 20.830799] pru-rproc 4a334000.pru0: sysevt-to-ch[60] -> 0* >>>>>>>>>> *[ 20.830812] pru-rproc 4a334000.pru0: chnl-to-host[0] -> 0* >>>>>>>>>> *[ 20.830823] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 1* >>>>>>>>>> *[ 20.830833] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 2* >>>>>>>>>> *[ 20.830844] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 3* >>>>>>>>>> *[ 20.830854] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 4* >>>>>>>>>> *[ 20.830864] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 5* >>>>>>>>>> *[ 20.830875] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 6* >>>>>>>>>> *[ 20.830885] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 7* >>>>>>>>>> *[ 20.830896] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 8* >>>>>>>>>> *[ 20.830906] pru-rproc 4a334000.pru0: skip intr mapping for >>>>>>>>>> chnl 9* >>>>>>>>>> >>>>>>>>>> Does anyone know how to not skip that? Or a way for me to map >>>>>>>>>> them manually? >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Erik >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> For more options, visit http://beagleboard.org/discuss >>>>>>>>>> --- >>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>> Google Groups "BeagleBoard" group. >>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>>> send an email to [email protected]. >>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> -- >>>>>>> For more options, visit http://beagleboard.org/discuss >>>>>>> --- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "BeagleBoard" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to [email protected]. >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>> >>>>>> -- >>>> For more options, visit http://beagleboard.org/discuss >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "BeagleBoard" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> -- >>> For more options, visit http://beagleboard.org/discuss >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "BeagleBoard" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- > For more options, visit http://beagleboard.org/discuss > --- > You received this message because you are subscribed to the Google Groups > "BeagleBoard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
