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.

TDA4VM: running C7x via linux remoteproc (SDK 7.2)

Part Number: TDA4VM

Hi

I want to load and run C7x from Linux. I see some hints for Sitara http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components/PRU-ICSS/Linux_Drivers/RemoteProc_and_RPMsg.html and seem to have /sys/class/remoteproc... on the TDA4VM J7-EVM

Main application is at least one deferred load after boot as to not having to rewrite the SD card when a faulty firmware blocks booting.

Is remote (re-)loading supported on the TDA4VM and how to do it?

TIA

  • Hi Klaus,

    Yes, you can boot C71x using remoteproc on TDA4VM. The repeated stop and start is not currently supported in TI SDK. TDA4VM uses a distributed resource management model, and all the remote processors on TDA4VM needs to be in Idle and release their resources before it can be shutdown.

    This support will be added in a future SDK. 

    regards

    Suman

  • Hello Suman

    thank you very much for the reply.

    Would you have a pointer to some documentation to how I could disable loading on boot and how I do it from Linux?

    I also saw this issue https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1036668/tda4vm-error-when-loading-remoteproc-firmware-via-linux

    so what exactly is to do to make it run on a system with the default 7.2 demo setup?

  • Hi Klaus,

    If you look through the default bootcmd, it uses a boot_rprocs variable to perform the early-boot of remote processors before loading the kernel and dtbs. This relies on two utility environment variables, dorprocboot and rproc_fw_binaries. The first variable enables early-boot or not for all remoteprocs and the second one lists the U-Boot rproc ids and associated firmwares to use for early-boot. C71x is rproc id 8. You can edit the rproc_fw_binaries variable to remove the C71x related tuple, and the kernel should fall back to booting the remote proc core in kernel. You can see a trace suggesting the same, look for "IPC-only mode" or "remoteproc mode".

    regards

    Suman