BF537 app stuck at 0xFFA0-0000 when loaded from FLASH



Custom board



Started with E:\Analog Devices\CrossCore Embedded Studio 2.8.2\Blackfin\ldr\init_code\BF537_init\ezkitBF537_initcode

Modified SDRAM settings.

//#define __ACTIVATE_DPM__

Modified project to load to FLASH.

Built app.

'Building target: init_sdram.ldr'
'Invoking: CrossCore Blackfin Loader'
elfloader -proc ADSP-BF537 -si-revision 0.3 -b flash -f hex -width 16 -o "init_sdram.ldr" init_sdram.dxe
'Finished building target: init_sdram.ldr'
' '
make --no-print-directory post-build
'load app to FLASH'
cldp -proc ADSP-BF537 -emu 1000 -driver "E:\Analog Devices\ADSP-BF537_EZKIT-Rel1.0.0\BF537_EZ-KIT_Lite\Blackfin\Examples\Device_Programmer\parallel\bf537_m29w320eb_dpia.dxe" -cmd erase -cmd prog -file init_sdram.ldr
Target Blackfin Emulators/EZ-KIT Lites
Platform ADSP-BF537 via ICE-1000
Processor ADSP-BF537
Core 0
Driver E:\Analog Devices\ADSP-BF537_EZKIT-Rel1.0.0\BF537_EZ-KIT_Lite\Blackfin\Examples\Device_Programmer\parallel\bf537_m29w320eb_dpia.dxe
Erase all
Program init_sdram.ldr
' '


Reset the DSP.

Connected with debugger.

The FLASH is programmed with my program.


The FLASH matches the init_sdram.ldr file.


In the disassembly window, at 0xFFA0-0000 my program is loaded.

I can find my app's labels in SRAM, so I am sure it is loaded.

But the link 0; has been replaced with a JUMP.S instruction.


Please see the attached project.


The boot loader loaded my program to SRAM, but replaced the first instruction with JUMP.S.

Why did the boot loader place the JUMP.S instruction at 0xFFA0-0000?


renamed the zip
[edited by: bagraham at 5:17 PM (GMT 0) on 2 May 2019]