FPGA Configuration from PS - 2 #354
Unanswered
muratgureken
asked this question in
HSS and U-Boot
Replies: 1 comment 3 replies
-
Yes the FPGA has the ability to write to the SPI flash - I'm not sure what effect erasing the flash will have but the flow for the device is to check for a newer bitstream in the SPI flash when booting and if there is one it will re-program itself with the newer bitstream. If you wipe the flash it should just move on. The flow we use in some cases is to write an updated bitstream to the SPI flash from the FPGA itself and then reboot the device to update the device |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello @nitindeshpande,
I couldn't reply your answer from discussion. That's why I created another discussion.
For auto-update or IAP cases, SPI has to be in master mode. In PolarFire Soc FPGA figures, we have seen a one-way link between SPI (system controller) and external SPI Flash memory (from external flash to SPI). Is it also possible to have a two-way link? For example in IAP, system controller will fetch bitstream from external SPI flash to program device. Then, we would like to reach back to SPI flash and erase its memory for some security purposes. Is it possible?
### Your previous answer:
Hello @muratgureken,
Thanks for your interest in PolarFire FPGAs.
There are two different devices PolarFire FPGA and PolarFire SoC FPGA.
I don't understand your requirement completely, but it is possible to re-program the FPGA part of the PolarFire SoC. The software running on PFSoC corecomplex helps in achieving that.
On PolarFire SoC, auto update and In-Application Programming (IAP) are the mechanisms through which the FPGA can reprogram itself. In auto update, the device reprograms itself on power-up, and in IAP, the device is programmed when an application executing on the device requests it. In both cases, the system controller fetches a bitstream from external SPI flash & uses that to program the device.
I would request you to refer to this document re-programming-the-fpga-from-linux.md to see if that is what you are looking for.
The same feature is also available on PolarFire FPGA device as well. See here.
Beta Was this translation helpful? Give feedback.
All reactions