Hello,

I have been developping something for a while now. I started on a BBB rev 
A, migrated to rev C and have now switched to BBG (no need for HDMI.

For the OS, I have migrated from angstrom to Debian 7, to 8, kernel 3.X to 
4.4. Now I need advice on choosing a version.

I am running a bunch of code (mostly python) in user-space, some web 
services, external SPI, I2C and CANBus peripherals and also running code on 
PRU0. When I started all this, UIO_PRUSS looked like the most popular way 
of doing things out there byt remote-proc looked like the future so I chose 
it.

Everything was all when and good until I switch my base image from 
2016-04-21 to the latest 2016-11-06 IOT image. I am trying to get the 
latest @stable@ and @standard@ version before releasing my project. (Am I 
justified in doing this?) Now it appears that remote proc is not enabled by 
default. 
I had to follow the steps from Greg here: https://github.com/Greg-R/pruadc1 
(ref 
taken from this thread: 
https://groups.google.com/forum/#!topic/beagleboard/tQW4ZLcncF8 )to 
reenable-it. Even then, my /dev/rpmsg_pru30 device file just will not be 
created!

here is my boot dmesg:
[    4.785011]  remoteproc1: 4a334000.pru0 is available
[    4.785035]  remoteproc1: Note: remoteproc is still under development 
and considered experimental.
[    4.785045]  remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and 
backward compatibility isn't yet guaranteed.
[    4.785341]  remoteproc1: Direct firmware load for am335x-pru0-fw failed 
with error -2
[    4.785360]  remoteproc1: failed to load am335x-pru0-fw
[    4.824044] pru-rproc 4a334000.pru0: booting the PRU core manually
[    4.824075]  remoteproc1: powering up 4a334000.pru0
[    4.824182]  remoteproc1: Direct firmware load for am335x-pru0-fw failed 
with error -2
[    4.824199]  remoteproc1: request_firmware failed: -2
[    4.829423] pru-rproc 4a334000.pru0: rproc_boot failed
[    4.928466]  remoteproc1: releasing 4a334000.pru0
[    4.928634] pru-rproc: probe of 4a334000.pru0 failed with error -2
[    4.929025]  remoteproc1: 4a338000.pru1 is available
[    4.929038]  remoteproc1: Note: remoteproc is still under development 
and considered experimental.
[    4.929047]  remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and 
backward compatibility isn't yet guaranteed.
[    4.929318]  remoteproc1: Direct firmware load for am335x-pru1-fw failed 
with error -2
[    4.929337]  remoteproc1: failed to load am335x-pru1-fw
[    4.939607] pru-rproc 4a338000.pru1: booting the PRU core manually
[    4.939637]  remoteproc1: powering up 4a338000.pru1
[    4.939736]  remoteproc1: Direct firmware load for am335x-pru1-fw failed 
with error -2
[    4.939750]  remoteproc1: request_firmware failed: -2
[    4.944962] pru-rproc 4a338000.pru1: rproc_boot failed
[    5.052392]  remoteproc1: releasing 4a338000.pru1
[    5.052550] pru-rproc: probe of 4a338000.pru1 failed with error -2

lsmod after boot:
Module                  Size  Used by
spidev                  8860  0 
c_can_platform          7581  0 
c_can                  12220  1 c_can_platform
can_dev                14358  1 c_can
spi_omap2_mcspi        12952  0 
pwm_tiehrpwm            5883  0 
pwm_tiecap              4571  0 
tieqep                  9981  0 
omap_aes_driver        23889  0 
omap_sham              26513  0 
omap_rng                5544  0 
rng_core                9066  1 omap_rng
evdev                  13511  1 
uio_pdrv_genirq         3923  0 
uio                    10524  1 uio_pdrv_genirq
8021q                  22979  0 
garp                    7049  1 8021q
mrp                     8903  1 8021q
stp                     2430  1 garp
llc                     5903  2 stp,garp
usb_f_acm               8361  1 
u_serial               13753  3 usb_f_acm
usb_f_rndis            25865  1 
g_multi                 6010  0 
usb_f_mass_storage     49849  2 g_multi
u_ether                14413  2 usb_f_rndis,g_multi
libcomposite           53554  4 
usb_f_acm,usb_f_rndis,g_multi,usb_f_mass_storage
pru_rproc              15431  0 
pruss_intc              8603  1 pru_rproc
pruss                  12026  1 pru_rproc


I manually load the rpmsg module with modprobe rpmsg_pru. I then see 2 new 
modules loaded:
rpmsg_pru               5543  0 
virtio_rpmsg_bus       16076  1 rpmsg_pru

I then bind the PRU:
echo "4a334000.pru0" > /sys/bus/platform/drivers/pru-rproc/bind

dmesg shows the following:
[  312.954382]  remoteproc1: 4a334000.pru0 is available
[  312.954444]  remoteproc1: Note: remoteproc is still under development 
and considered experimental.
[  312.954471]  remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and 
backward compatibility isn't yet guaranteed.
[  312.971682]  remoteproc1: powering up 4a334000.pru0
[  312.971775]  remoteproc1: Booting fw image am335x-pru0-fw, size 86724
[  312.972162] ti-pruss 4a300000.pruss: configured system_events = 
0x1000000000000000 intr_channels = 0x00000001 host_intr = 0x00000001
[  312.981283]  remoteproc1: remote processor 4a334000.pru0 is now up
[  312.981944] virtio_rpmsg_bus virtio0: rpmsg host is online
[  312.982123]  remoteproc1: registered virtio0 (type 7)
[  312.982339] pru-rproc 4a334000.pru0: PRU rproc node 
/ocp/pruss@4a300000/pru0@4a334000 probed successfully

but still no device file!

Surely someone had that functionnality working! please share!

-- 
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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/010016cc-8338-4727-b36d-ff9441ea1570%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to