SPRAC21A June 2016 – June 2019 OMAP-L132 , OMAP-L138 , TDA2E , TDA2EG-17 , TDA2HF , TDA2HG , TDA2HV , TDA2LF , TDA2P-ABZ , TDA2P-ACD , TDA2SA , TDA2SG , TDA2SX , TDA3LA , TDA3LX , TDA3MA , TDA3MD , TDA3MV
ADAS starterware gives example implementation of using EMIF ECC. The STW can be downloaded from Here.
The basic starterware API are : <baseDir>\starterware_xx_xx_xx_xx\drivers\emif.c.
The example file are: <baseDir>\\ starterware_xx_xx_xx_xx \examples\ecc_app.
Table 82 maps the function to the programming sequence.
Programming Step | Starterware Function |
---|---|
EMIF ECC example | Main.c: emifEccTest() |
STEP 1: Enable EMIF ECC by configuring | This is taken care in GEL file or SBL |
STEP 2: Set the address range for ECC operation | emif.c: EMIFConfigECCInitECCParams() |
STEP 3: Enable ECC on both ranges by writing to the EMIF_ECC_CTRL_REG register | emif.c: EMIFConfigECCInitECCParams()
emif.c: EMIFConfigECCEnableEcc |
STEP 4: Optional - Set the threshold for 1 bit error interrupt | emif.c: EMIFConfigECCInitECCParams() |
STEP 5: Optional – Clear the error status | emif.c: EMIFConfigECCClrAllEccErrInfo() |
STEP 6: Enable the interrupts | emif.c: EMIFEnableIntr() |
STEP 7: Initialize ECC enabled memory regions | Main.c: emifEccConfig() |