Hi @all,
while developing a firmware that reads/writes calibration values from/to eeprom I got some strange error. I used the same functions for a RM48 implementation but now, while porting the SW to a TMS570LC43xx, this error popped up:
After perfoming a Fapi_doBlankCheck the flashbank 7 appears to be empty (0xFFFFFFFF) even though it is still containing old calibration data. Watching the memory content with the memory browser in CCS shows the calibration data before calling Fapi_doBlankCheck and afterwards the memory seems to be blank...
I am using:
TMDX570LC43HDK
Code Composer Studio Version: 6.0.1.00040
HALCoGen Version: 04.04.00
FLASH API Version: 02.01.01
System configuration:
HCLK 150 MHz
FAPI is running in RAM, copied by copytable
MPU/Cache disabled in HALCoGen
Defined macro _L2FMC in CCS project properties
Short implementation in HL_sys_main.c:
Fapi_StatusType f021_Res;
Fapi_FlashStatusWordType f021_State;
uint32 *f021_Address;
copy_in(&_flash_ctbl);
f021_Res = Fapi_initializeFlashBanks( 150 );
if ( f021_Res != Fapi_Status_Success ){
DOUT("Unable to initialize EEPROM support!");
}else{
DOUT("EEPROM support initialized...");
}
//
f021_Res = Fapi_setActiveFlashBank( Fapi_FlashBank7 );
if ( f021_Res != Fapi_Status_Success ){
DOUT("Unable to activate flash bank!");
}
while( FAPI_CHECK_FSM_READY_BUSY != Fapi_Status_FsmReady );
f021_Res = Fapi_enableEepromBankSectors( 0xFFFFFFFF, 0xFFFFFFFF );
if ( f021_Res != Fapi_Status_Success ){
DOUT("Unable to enable sectors!");
}
while( FAPI_CHECK_FSM_READY_BUSY != Fapi_Status_FsmReady );
f021_Address = (uint32 *) 0xF0200000;
f021_State.au32StatusWord[3] = 0; // prepare function answer
Fapi_disableAutoEccCalculation();
f021_Res = Fapi_doBlankCheck( f021_Address, 2, &f021_State );
while( 1 );
Can anybody give me a hint, where to look for the reason?
Thanks in advance...