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.

J721EXSOMXEVM: Error loading C66x example via remoteproc

Part Number: J721EXSOMXEVM

Part number: J721EXSOMG01EVM
Forum: Processors forum
Thread title: error loading C66x example via remoteproc
Description: We can make and load the ipc-echo example as follows and it works:
> (on build VM)
> $make ipc_echo_test_freertos BOARD=j721e_evm CORE=c66xdsp_1
Then sftp the -_strip.xe66 binary to /lib/firmware/pdk-ipc on the target and:
> cd /lib/firmware
> rm j7-c66_0-fw
> ln -s /lib/firmware/pdk-ipc/ipc_echo_test_freertos_c66xdsp_1_release_strip.xe66 j7-c66_0-fw
> echo stop > /sys/class/remoteproc/remoteproc0
> echo start > /sys/class/remoteproc/remoteproc0
And it works:
[589302.029576] remoteproc remoteproc0: powering up 4d80800000.dsp
[589302.036733] remoteproc remoteproc0: Booting fw image j7-c66_0-fw, size 2595804
[589302.044470] k3-dsp-rproc 4d80800000.dsp: booting DSP core using boot addr = 0xa6200400
[589302.052765] remoteproc0#vdev0buffer: assigned reserved memory node c66-dma-memory@a7000000
[589302.061524] virtio_rpmsg_bus virtio7: rpmsg host is online
[589302.067201] remoteproc0#vdev0buffer: registered virtio7 (type 7)
[589302.073560] virtio_rpmsg_bus virtio7: creating channel ti.ipc4.ping-pong addr 0xd
[589302.081129] remoteproc remoteproc0: remote processor 4d80800000.dsp is now up
[589302.088478] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: new channel: 0x400 -> 0xd!
root@j7-evm:/lib/firmware# [589302.097260] virtio_rpmsg_bus virtio7: creating channel rpmsg_chrdev addr 0xe
[589302.106814] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: incoming msg 1 (src: 0xd)
[589302.115302] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: incoming msg 2 (src: 0xd)
[589302.123840] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: incoming msg 3 (src: 0xd)
[589302.132227] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: incoming msg 4 (src: 0xd)
[589302.140606] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: incoming msg 5 (src: 0xd)
[589302.148954] rpmsg_client_sample virtio7.ti.ipc4.ping-pong.-1.13: goodbye!

But we do the same for GPIO_LedBlink
> (on build VM)
> $make GPIO_LedBlink_TestApp BOARD=j721e_evm CORE=c66xdsp_1
Then sftp the -_strip.xe66 binary to /lib/firmware/pdk-ipc on the target and:
> cd /lib/firmware
> rm j7-c66_0-fw
> ln -s /lib/firmware/pdk-ipc/GPIO_LedBlink_TestApp_freertos_c66xdsp_1_release_strip.xe66 j7-c66_0-fw
> echo stop > /sys/class/remoteproc/remoteproc0
> echo start > /sys/class/remoteproc/remoteproc0
And it fails:
[586867.297236] remoteproc remoteproc0: powering up 4d80800000.dsp
[586867.303356] remoteproc remoteproc0: Booting fw image j7-c66_0-fw, size 214996
[586867.310841] remoteproc remoteproc0: Boot failed: -22
-sh: echo: write error: Invalid argument

Can anyone spot what we're doing wrong?

TIA

-Tom