This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/BEAGLEBK: PRU RPMsg issue

Part Number: BEAGLEBK

Tool/software: Code Composer Studio

Hi all,

i'm following Lab 5 from PRU Training and still have no success in communicating with the PRU.

Initial setup:

Linux beaglebone 4.4.54-ti-r93 #1 SMP Fri Mar 17 13:08:22 UTC 2017 armv7l GNU/Linux

dtb=am335x-boneblack-overlay.dtb

debian@beaglebone:~$ lsmod | grep pru
pru_rproc 15431 0
pruss_intc 8603 1 pru_rproc
pruss 12026 1 pru_rproc

am335x-pru0-fw = PRU_Halt.out (in \lib\firmware)

am335x-pru1-fw = PRU_RPMsg_Echo_Interrupt1.out (in \lib\firmware)

In the source file PRU_RPMsg_Echo_Interrupt1.c I have the following lines:

#define CHAN_NAME "rpmsg-pru"
#define CHAN_DESC "Channel 31"
#define CHAN_PORT 31

Then I reload module pru_rproc with:

sudo rmmod -f pru_rproc
sudo modprobe pru_rproc

Then dmesg shows me:

[ 1455.315192] pru-rproc 4a334000.pru0: booting the PRU core manually
[ 1455.315255] remoteproc1: powering up 4a334000.pru0
[ 1455.315698] remoteproc1: Booting fw image am335x-pru0-fw, size 27224
[ 1455.315824] remoteproc1: remote processor 4a334000.pru0 is now up
[ 1455.315899] pru-rproc 4a334000.pru0: PRU rproc node /ocp/pruss@4a300000/pru0@4a334000 probed successfully
[ 1455.323563] remoteproc2: 4a338000.pru1 is available
[ 1455.323622] remoteproc2: Note: remoteproc is still under development and considered experimental.
[ 1455.323650] remoteproc2: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[ 1455.331994] remoteproc2: registered virtio0 (type 7)
[ 1455.335380] pru-rproc 4a338000.pru1: PRU rproc node /ocp/pruss@4a300000/pru1@4a338000 probed successfully
[ 1455.510257] remoteproc2: powering up 4a338000.pru1
[ 1455.510832] remoteproc2: Booting fw image am335x-pru1-fw, size 77884
[ 1455.511038] ti-pruss 4a300000.pruss: configured system_events = 0x0800000000000000 intr_channels = 0x00000002 host_intr = 0x00000002
[ 1455.516699] remoteproc2: remote processor 4a338000.pru1 is now up
[ 1455.517020] virtio_rpmsg_bus virtio0: rpmsg host is online

The problem is that character device rpmsg_pru31 isn't created in the /dev/ directory so I can't communicate with the PRU through /dev/rpmsg_pru31.

Could you please help me to resolve this issue? Thank you!