To test my ECC error handler,I want to inject 2b SRAM ECC error on mpc5744p.I had read the AN5200,but there isn't ECSM module in MPC5744P.Anyone could help me?
Thank you very much!
Instead of ECSM, there is EIM (Error Injection Module).
Currently I made two examples, one is for MPC5777C device that uses EIM and ERM modules (showing RAM ECC injections), second is from MPC5744P device that uses EIM and MEMU modules (showing FLASH ECC injections):
Example MPC5777C-1b+2b_RAM_ECC_error_injection GHS614
Example MPC5744P_1b+2b_FLASH_ECC_error_injection GHS614
With combination of both it should be possible to create RAM ECC injection with using of EIM and MEMU modules on MPC5744P. I plan to do it myself when I have time for it.
I had try to modify the 'Example MPC5777C-1b+2b_RAM_ECC_error_injection GHS614' to inject 2b RAM ECC in MPC5744P.There is some different betwen MPC5777C EIM and MPC5744P EIM.But I didn't succeed.
The code as below:
static vuint32_t test __attribute__ ((aligned (8))) =
register vuint32_t test_read = 0;
/* invert 2 LSB bits to create non-correctable data error */
EIM.EICHD_Word1.R = 0x00000003;
/* PRAMC_0 channel error injection enable */
EIM.EICHEN.R = 0x80000000;
/* global error injection enable */
EIM.EIMCR.R = 1;
/* error caused by read (it should set MCSR[MAV, LD, BUS_DRERR]) */
test_read = test;
It is otherwise. By MPC5744P's EIM module you can inject ECC fault only to transfer control descriptor of eDMA (that is peripheral RAM).
I am not sure if it is possible to inject ECC fault into system RAM on MPC5744P, probably it is not. Let me yet examine.
Thank you very much! Waiting for your good news.LoL
Retrieving data ...