having difficulty getting a custom bootloader working. Basically this is a MSD device bootloader, using USB MSD and SDIO Sdcard drivers and Chan FATFS. Note MSD only runs if there is not a valid binary file on disk.
Bootloader is compiled with normal compiler and linker settings its size is 90K.
FLASH (rw) : ORIGIN = 0x08000000, LENGTH = 512K
Applications flashed by the bootloader use the following and are around 180K
FLASH (rw) : ORIGIN = 0x08020000, LENGTH = 384K
What we are seeing is that a small application that just flashes a LED in a C main while loop works fine, but when we try our own application it fails to run. We know the application is working fine as can build it to run standalone without bootloader and it works fine.
Thus this seems like it is a issue with the core state when a larger application is launched, possibly interrupts too ?