We have tools that write bin files directly to QSPI flash in XUF216-512-FB236-C20. The bin files are generated by connecting an XTAG to the board and running
xflash app.xe -o app.bin
This works great. But now I have some pristine devices (never connected to an XTAG or programmed) and bin programming is not working.
- - After failed bin programming, I read flash using xflash --read-all. The 1st 4 bytes are 0x84 0x21 0xFC 0x35, and everything else is 0xFF. This makes me think the factory fresh part is write-protected somehow
- - I can connect an XTAG to a pristine device and program app.xe. After that, bin programming works fine. So it appears xflash is doing something to setup / unprotect a factory fresh part
I noticed in "Design and manufacture system with flash memory" it says
XFLASH generates an image in the xCORE flash format that contains a first stage
loader and factory image comprising the binary and data segments from your
compiled program. It then writes this image to flash memory using the xCORE
Is the first stage loader included in the bin files created by xflash -o command? Or do I have to connect XTAG one time to get it into the device?