<_florent_>
sajattack[m]: With PCIe, on 7-Series I generally used the multiboot feature that allows having a golden bitstream + operational bitstream in SPI Flash
<sajattack[m]>
how does that work?
<_florent_>
At startup, the FPGA jumps to the operational bitstream and fall back to the golden bitstream if operational bitstream is corrupted
<sajattack[m]>
can I do that with openocd?
<_florent_>
This way you can safetly update the operational bitstream in SPI Flash and knows it will able to recover even if flashing is not successful
<_florent_>
With LitePCIe, LitePCIe already provides the MMAP interface (for AXI-Lite/Wishbone/CSR registers) and the bistream just need to have a SPI core connected to the SPI Flash
<_florent_>
you can then just do updates over PCIe
<sajattack[m]>
ok cool
<_florent_>
So you just need to configure a first time over JTAG, after that you no longer need it
<sajattack[m]>
but I need to write something to send the update to the spi flash? or it's already written?
<_florent_>
I'm planning to share examples for that for the Acorn soon
<_florent_>
but I want to rework it a bit, the current implementation use a hardware SPI core, but for another design I just did the reflashing over bitbanging and it was in fact more flexible and faster, so I want to switch the LitePCIe example SPI Flash update to bitbanging (which would by the way also allow having the SPI Flash mmaped in the SoC for reads).