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.

TMDSIDK437X: PRUSS1 firmware doesn't work

Part Number: TMDSIDK437X

Hi,

I'm trying to follow http://processors.wiki.ti.com/index.php/RPMsg_Quick_Start_Guide to set all 4 PRU cores to work with RPMsg.

After I and reboot my device, I can only see PRUSS0_PRU0 and PRUSS0_PRU1's virtio port in /dev (rpmsg_pru30 & rpmsg_pru31)

I found that there are different information between unbinding/binding PRUSS0_PRU0 and PRUSS1_PRU0:

unbind/bind PRUSS0_PRU0:

root@am437x-evm:~# echo 54474000.pru0 > /sys/bus/platform/drivers/pru-rproc/unbind
[ 555.044277] pru-rproc 54474000.pru0: pru_rproc_remove: removing rproc 54474000.pru0
[ 555.059540] ti-pruss 54440000.pruss: unconfigured system_events = 0x0000000000030000 host_intr = 0x00000005
[ 555.070804] remoteproc3: stopped remote processor 54474000.pru0
[ 555.088129] remoteproc3: releasing 54474000.pru0
root@am437x-evm:~# echo 54474000.pru0 > /sys/bus/platform/drivers/pru-rproc/bind
[ 561.319925] remoteproc3: 54474000.pru0 is available
[ 561.324931] remoteproc3: Note: remoteproc is still under development and considered experimental.
[ 561.337684] remoteproc3: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[ 561.356154] remoteproc3: powering up 54474000.pru0
[ 561.363049] remoteproc3: Booting fw image am437x-pru0_0-fw, size 80464
[ 561.378715] ti-pruss 54440000.pruss: configured system_events = 0x0000000000030000 intr_channels = 0x00000005 host_intr = 0x00000005
[ 561.400686] remoteproc3: remote processor 54474000.pru0 is now up
[ 561.415102] virtio_rpmsg_bus virtio0: creating channel rpmsg-pru addr 0x1e
[ 561.424392] rpmsg_pru rpmsg4: new rpmsg_pru device: /dev/rpmsg_pru30
[ 561.436399] virtio_rpmsg_bus virtio0: rpmsg host is online
[ 561.450262] remoteproc3: registered virtio0 (type 7)
[ 561.455421] pru-rproc 54474000.pru0: PRU rproc node /ocp/pruss_wrapper@54426000/pruss@54440000/pru0@54474000 probed successfully

unbind/bind PRUSS1_PRU0:

root@am437x-evm:~# echo 54434000.pru0 > /sys/bus/platform/drivers/pru-rproc/unbind
[ 599.451109] pru-rproc 54434000.pru0: pru_rproc_remove: removing rproc 54434000.pru0
[ 599.458886] remoteproc1: releasing 54434000.pru0
root@am437x-evm:~# echo 54434000.pru0 > /sys/bus/platform/drivers/pru-rproc/bind
[ 608.533687] remoteproc1: 54434000.pru0 is available
[ 608.538692] remoteproc1: Note: remoteproc is still under development and considered experimental.
[ 608.550858] remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[ 608.563504] pru-rproc 54434000.pru0: PRU rproc node /ocp/pruss_wrapper@54426000/pruss@54400000/pru0@54434000 probed successfully

It looks like that PRUSS1_PRU0 didn't load any firmware, but I can't find out which part I did wrong.

Please help me, thanks!

Best Regards,

Leif