either connecting through JTAG (do
not load the application: only
connect)
or using an oscilloscope connected to
SPI1 pins (SPI1_PCS0, SPI1_SCK,
SPI1_SIN, SPI1_SOUT - looback SIN and
SOUT). If the firmware is running,
you see that the Colibri sends
continously packets through SPI. When
it is in hardware fault the SPI
communication is messed up
It took a couple of years but now we found the reason for this issue in this topic.
Toradex investigation confirmed what I found.
Rpmsg library on Win CE (I don’t know about Linux) uses memory between 0x3f060000 to 0x3f064000 as shared memory for inter-processor communication (A5 <–> M4).
For this reason the firmware on M4 side can’t use this memory region.
Here is how I configured the scatter file for M4 firmware:
RPMSG_SHARED 0x3F060000 EMPTY 0x4000 ; shared memory used for rpmsg communication
{ }
VRING0_BASE 0x3F070000 EMPTY 0x4000 ; shared memory used for rpmsg communication
{ }
VRING1_BASE 0x3F074000 EMPTY 0x4000 ; shared memory used for rpmsg communication
{ }
The documentation on Toradex webside will be updated.