Recently i encountered booting problem with my bare metal application and my custom Cyclone V board.
My app is running correctly when loaded via JTAG directly to SDRAM, but im unable to make it running from QSPI flash memory (or any external non-volatile memory).
The most scary part is that i made it run (and properly boot) a couple of times just by changing application code debug messages (for example from “Init” to “Initxxxxxxxx”). So i assume that problem is somehow related maybe to linker script or final app image (note that changes that made app running probably doesnt have any side effects). Sometimes it starts to work by adding couple of spaces at the end of debug message. Sometimes it starts running just by adding a random for loop doin nothing
I tested that issue on couple dev boards (Cyclone V SoC Developement Kit, De0 nano SoC and custom board), while booting from QSPI Flash and SD card. Results were the same.
Any of u guys encountered this kind of problem ?