Hello,
I am trying to figure out how to load remote firmware to the R5F cores of an AM6548 that is running a VxWorks kernel.
I have been successful in loading the remote firmware (I think) using the following instructions
https://software-dl.ti.com/processor-sdk-linux/esd/AM65X/07_01_00_17/exports/docs/linux/Foundational_Components_U-Boot.html#remoteproc
But when I do "=>rproc start 0" to start the core, it does not appear that anything happens. And when I boot into the VxWorks kernel I also do not see anything happen in the MCU UART terminal.
Is there a way to verify I have loaded code successfully onto the R5F? I have come across this for the IPC examples
file:///C:/ti/pdk_am65xx_08_02_00_21/docs/userguide/am65xx/modules/ipc.html#loading-remote-firmware
But it is only for a Linux OS.
Does anyone know if there is a different way I should approach this? Here is my U-boot terminal log from loading the firmware successfully using tftpboot:
=> rproc init => rproc list 0 - Name:'r5f@41000000' type:'internal memory mapped' supports: load start stop reset 1 - Name:'r5f@41400000' type:'internal memory mapped' supports: load start stop reset 2 - Name:'pru0_0' type:'internal memory mapped' supports: load start stop 3 - Name:'rtu0_0' type:'internal memory mapped' supports: load start stop 4 - Name:'pru0_1' type:'internal memory mapped' supports: load start stop 5 - Name:'rtu0_1' type:'internal memory mapped' supports: load start stop 6 - Name:'pru1_0' type:'internal memory mapped' supports: load start stop 7 - Name:'rtu1_0' type:'internal memory mapped' supports: load start stop 8 - Name:'pru1_1' type:'internal memory mapped' supports: load start stop 9 - Name:'rtu1_1' type:'internal memory mapped' supports: load start stop 10 - Name:'pru2_0' type:'internal memory mapped' supports: load start stop 11 - Name:'rtu2_0' type:'internal memory mapped' supports: load start stop 12 - Name:'pru2_1' type:'internal memory mapped' supports: load start stop 13 - Name:'rtu2_1' type:'internal memory mapped' supports: load start stop => tftpboot 0x90000000 GPIO_LedBlink_TestApp_freertos_mcu1_0_release.xer5f k3-navss-ringacc ringacc@2b800000: Ring Accelerator probed rings:286, gp-rings[96,32] sci-dev-id:195 k3-navss-ringacc ringacc@2b800000: dma-ring-reset-quirk: enabled am65_cpsw_nuss_port ethernet@46000000port@1: K3 CPSW: rflow_id_base: 2 link up on port 1, speed 1000, full duplex Using ethernet@46000000port@1 device TFTP from server 192.168.20.19; our IP address is 192.168.20.20 Filename 'GPIO_LedBlink_TestApp_freertos_mcu1_0_release.xer5f'. Load address: 0x90000000 Loading: ################################################ 7.5 MiB/s done Bytes transferred = 702140 (ab6bc hex) => rproc load 0 0x90000000 0x${filesize} Load Remote Processor 0 with data@addr=0x90000000 702140 bytes: Success! => rproc start 0 =>
After the above commands I initialize the VxWorks kernel and nothing happens, even though I am loading a GPIO blinky example. Even when I boot into Linux it does not appear to actually start the R5F firmware.