Why does ECC_ERR_INJECT[EMB,EIEN]=0b'11 cause a hard reset?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Why does ECC_ERR_INJECT[EMB,EIEN]=0b'11 cause a hard reset?

739 Views
tracysmith
Contributor IV

Attempting to select mirror byte function for error injection.  ECC_ERR_INJECT[EMB, EIEN]= 0b'11

 

The default is 0b'00.

 

Why does writing to ECC_ERR_INJECT[EMB,EIEN]=0b'11 cause a reset?

 

root@ls1043ardb:~# devmem 0x1080E08 w 0x00030000

 [ 839.465065] Unhandled fault: synchronous external abort (0x96000210) at 0xff

Then the WDT is triggered and the board resets.

I had someone check the byte ordering and it looks fine. If I set the EMB only or the EIEN without EMB set (0x00020000 or 0x00010000), there is no hard reset. Only when I set both the EMB,EIEN (0x00030000) does it do a hard reset.

  • I can set both at the same time without a hard reset. Why is that?

  • What is the purpose of the EMB? 
  • Is the EMB a test bit to inject the error, even prior to reading and writing a word to a 0x5000 memory location?
  • ECC is supported on the LS1043ARDB, correct?
  • Are ARM ECC extensions required for this processor to support ECC?
  • Do I need to set the EMB to cause an ECC error when I write 0x55aa0000 to 0x5000?

22  EMB
ECC Mirror Byte.
0b - Mirror byte functionality disabled.
1b - Mirror the most significant data path byte onto the ECC byte.

23 EIEN
Error Injection Enable.
0b - Error injection disabled.
1b - Error injection enabled. This applies to the data mask bits, the ECC mask bits, and the ECC
mirror bit. Note that error injection should not be enabled until the memory controller has been
enabled via DDR_SDRAM_CFG[MEM_EN].

Labels (1)
0 Kudos
3 Replies

565 Views
andrei_skok
NXP Employee
NXP Employee

I checked the LS1043RDB and ECC is not supported on this board, so they can not test ECC related errors.

0 Kudos

565 Views
tracysmith
Contributor IV

So does this mean that this board does not correct for DDR memory errors?  Which board in the LS family supports error correction?

0 Kudos

565 Views
andrei_skok
NXP Employee
NXP Employee

Yes, it means the LS1043RDB board doesn't correct DDR memory errors because of lack of external ECC memory.

The following NXP boards provide ECC support: LS1043A-QDS, LS1046A-RDB.


Have a great day,
Andrei

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos