Attached is the Multi DXE boot code for ADSP-BF527 Ez-Kit. There are two different LED blink application is available, one of which resides in the boot flash (start address: 0x20004000) which will blink three LEDs in the EZ-Kit continuously if the same address location in the flash is not erased. The 'bfrom_MemBoot' ROM API function is doing this job. BTW, if the flash is erased, it will have value 0xFF. Since we know the LDR Size we will read the flash and check if the desired memory location is eraser or not. We set the flag to determine the condition of flash erased. If we found the flash is erased, the other LED blink function (three LEDs will blink from right to left continuously) will be executed which is resided in the main(); The 'Erase_FLASH'' macro defined in the 'Flash_m29w320.h' file enables the the Block erase of boot flash where the LDR is loaded in the address 0x20004000. The 'Write_LDR' macro defined in the same file enables the LED blink LDR to program to flash memory from the starting address 0x20004000. You can comment out either of these at a time to check both scenarios such as booting from flash if new LDR is loaded or if it is erased continue with main application.
BF527_Multi_DXE_Boot.zip