06-09-2020 01:21 PM
I was studying the device trees for the libmetal and openamp examples and am a bit unsure if this is possible.
I read on a seperate forum that uio sharing is not possible amongst interrupts.
How does one use both the ipi_amp node in the device tree for the amba section, and the ipi_mailbox_rpu0 node for the r5_0 node? If they both use interrupts <0 29 4>, it appears they will have a conflict.
I have included my device tree to explain what i have.
06-15-2020 02:49 PM
You can't have both ipi_mailbox_rpu and ipi_amp in the same device tree. ipi_amp node is used when UIO is used for IPI and shared memory. The ipi_mailbox_rpu node is used for OpenAMP example with RPMsg in kernel space.
06-16-2020 05:38 AM
I think you are right if the configurations are left the same. However, I changed the r5 firmware to use a different PL Ipi, and changed the uio ipi device tree to use address 0xFF36000 (so channel 9), along with interrupt 63 (so interrupt configuration <0 31 4>). Now that the mailbox and the ipi_amp are using different interrupts, I believe it worked?
At least I was able to run the openamp echo test firmware, with the userspace app, then re-program the r5 with the modified libmetal firmware, and the libmetal userspace app.
Does that approach seem viable to you?