This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I am working with TMDS570LS31USB. Code Composer Studio 8.0
F021 Flash API version is 02.01.01.
I downloaded the Hercules_MCU_Bootloader.zip from http://processors.wiki.ti.com/index.php/TMS570_Hercules_MCU_Bootloader
I am running the UART bootloader located in SafetyMCU_Bootloader\TMS570LS31x\boot_uart inside this zip file.
The bootloader builds and runs. I want to test downloading a small sample application, around 235KB. I press "1", and choose the .out file and send it through YModem on Teraterm.
I verify that Ymodem transferred the whole content since number of bytes macthes the file size. All good so far.
The problem is at Fapi_BlockErase(), execution hangs in this function forever, at line: while(FAPI_GET_FSM_STATUS != Fapi_Status_Success);
I already implemented the suggested first and second fixes proposed in the following post:
However the execution is still stuck at while(FAPI_GET_FSM_STATUS != Fapi_Status_Success); line inside Fapi_BlockErase().
Basically, (1) I replaced Fapi_enableMainBankSectors(0xFFFE) with of 0xFFFF. (2) in bl_link.cmd, I added section bl_flash.obj (.const) into the flashAPI section.
what is missing?
Do we need add more sections into the flashAPI via bl_link.cmd file? what other sections?
thank you in advance,
Hello,
Can you replace:
--library= F021_API_CortexR4_BE.lib < FlashStateMachine.IssueFsmCommand.obj
FlashStateMachine.SetActiveBank.obj
FlashStateMachine.InitializeFlashBanks.obj
FlashStateMachine.EnableMainSectors.obj
FlashStateMachine.IssueFsmCommand.obj
FlashStateMachine.ScaleFclk.obj
Init.obj
Utilities.CalculateEcc.obj
Utilities.WaitDelay.obj
Utilities.CalculateFletcher.obj
Read.MarginByByte.obj
Read.Common.obj
Read.FlushPipeline.obj
Read.WdService.obj
Async.WithAddress.obj
Program.obj > (.text)
with:
--library= F021_API_CortexR4_BE.lib (.text)
in flashAPI section in linker.cmd file
Did you copy flashSPI section into the SRAM? You are correct, you don't have to change 0xFFFE to 0xFFFF since you want to protect the 1st sector for bootloader.