may be the flash itself ?
Yes.
The posted XN file is referencing the flash p/n
AT25FS010 but you are using
AT25SF041-SSHD-T
Code: Select all
<Device NodeId="0" Tile="0" Class="SPIFlash" Name="bootFlash" Type="AT25FS010">
During the flash program phase of the XMOS tools, the programmer will ping your flash device and send out a standard SPI command -> extract the ID from the physical device and compare to the IDs stored on file that you are referencing in the XN file. So, there will be an ID mismatch in your case.
You have some options:
1) you can swap out the flash you have with the AT25FS010 but that component appears to be NRND (EOL).
2) alter the look up table for the AT25FS010 to reflect the true geometry of the device you are actually using (recommended).
Review the definition of the AT25FS010 and compare this to the AT25FS041 -> upgrade to the IDs inside your flash device -> increase the # of sectors to match, ideally use a flash device that configures the QSPI mode of the flash in the same manner as the original flash supported by the XMOS tool, etc. The XCORE-200 series of processors like the one you are using, boot using QSPI mode so you must be sure that your flash device is capable of this feature. Not all flash devices enable QSPI in the same manner (sometimes different register and bit locations). Try again. The XFLASH tool offers details on this process. The definition of the flash device is stored inside a text (ASCII) file.
Based on the excellent factory support received from ISSI (USA) on a recent XMOS issue, recommend that you consider the ISSI brand:
http://www.xcore.com/viewtopic.php?f=7&t=6146
If after the above compliance, you are still facing issues, please post more details on your hardware with partial relevant schematics of the CPU and power supply, etc.