Hello all,
I have an Ethernet testing code running on MPC5675K, which is working correctly using Lockstep mode. As soon as I switched to DPM, I am experiencing an interesting problem. When a message is received, the Rx interrupt is initiated and I check the content of the according receive buffer. The start of the package (8 bytes) is correct, but after that the rest of the package is mixed up in the memory.
Correct version (LSM - buffer starts at 0x40003368):
Buggy version (DPM - buffer start at 0x40003378):
Do you have any idea of the root cause?
Thank you in advance for your help!
Daniel
Thank you, I will investigate this.
Hi,
the first thought could be disabling the cache at all, or with the help of MMU disable caching of the memory areas where TX/RX Buffer descriptors and TX/RX buffers are placed.
BR, Petr
Hi,
thank you for you help!
Could you give me some directions, how I can disable the cache? Or configure MMU? I didn't find any related information in the reference manual...
Thank you again!
The easiest way could be disabling the cache at startup, if enabled there. Not sure what IDE you are using, so go through startup code and comment out related code.
The device Core manual describes both the Cache and MMU modules; http://cache.nxp.com/files/32bit/doc/ref_manual/e200z760RM.pdf
You can also look at following document and read chapters MMU and Cache; e200 Core Training relevant to MPC55xx and MPC56xx device family.
For the MMU setup the MMU Assist Register CONFIGURATOR can be used.