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.

AM5728: remoteproc can load baremetal application on C66x DSP and run it?

Part Number: AM5728

Dear Champs,

My customer failed to run simple DSP FW - GPIO led - by using remoteproc in the linux as below, but I'm wonder if baremetal DSP SW can work with remoteproce properly without any additional implementation.

https://e2e.ti.com/support/processors/f/791/t/924289

If so, could you please provide details why baremetal DSP application will not work with remoteproc?

When I checked UG, it seemed remoteproc/rpmsg driver from ARM linux kernel need to communicate with IPC driver on the DSP.

Could you please provide details why this communication between 'remoteproc/rpmsg' driver on ARM and IPC driver on DSP?

https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/linux/Foundational_Components_IPC.html#ipc-for-am57xx

And also, I'm afraid there are no way to share resource, DSP initialization in remoteproc when baremetal application was used in DSP. does my understanding right?

My customer still did not understanding why their simple baremetal application is not worked after loading with remoteproc because they believe there is nothing to communicate between ARM and DSP as their DSP baremetal application is simple to turn-on/off LED.

So, it would be very helpful if you can provide details on remoteproc and how it works.

And also, it would be helpful if there is a way to run baremetal application on C66x DSP.

When I checked below e2e, it seemed it is possible for IPU when there is bootloader on IPU. So, I think it is also possible for C66x DSP.

It would be helpful to provide details how baremetal application can be run on C66x DSP while linux is running on ARM.

https://e2e.ti.com/support/processors/f/791/p/922957/3410835 

Thanks and Best Regards,

SI.

  • Hi Sung,

    Apologies for the long delay.

    Unfortunately we do not have any baremetal examples that work with the Arm Linux rpmsg stack, however it is possible with the proper rpmsg stack initialization on the DSP.  It is recommended to look at the existing examples to implement the bare minimum to load and run the DSP firmware.

    You can allocate resources to the DSP in the Linux device tree- again the examples will show how to mark peripherals such that Linux will allow the DSP to access without causing Linux issues.

    Regards,
    Mike