I’m starting to build up some remoteproc-based examples for the PRU and found a bunch of examples here: /usr/lib/ti/pru-software-support-package/examples.
But the examples are only half there. That is, the code is present for the PRU side but not the ARM side.
For example, PRU_PRUtoARM_Inaterrupt shows the PRU code to send an interrupt to the ARM, but there is no example code for the ARM side.
I remember seeing both sides of the code for this interrupt example but it was for bare bone NOT linux. Its been 6 months and I’m not sure if that helps you. My focus/interest is primarily the chip level(register level) not API(remote proc).
If it your interested I could do some digging. I want to say I saw it on a wiki for omap l138 I was working on which is ARM + PRU + DSP
Yeah, I haven’t worked on this for a while, but from what I remember, the ARM side sends out 200 ping messages to the PRU and the PRU responds to each interrupt with a reply, which the ARM side prints out. Look for the PING example for the PRU, load the firmware and then load this Kernel Module.
BTW, I seem to remember that I had to modify the code to work because RPMSG use to use mailbox to exchange messages, but that was changed to use Interrupts. I believe Jason Reeder from TI helped me get this working.