Hi Aik,
I'm using already option 2 of the Bootloader. This is the work flow that I want to obtain:
- Cold reset (power on)
- SPL loads peripheral rbf
- TPL u-Boot loads core rbf
- TPL boots to linux
- linux transfers a new .itb file to FAT partition
- linux issues reboot command
- SPL loads NEW peripheral rbf contained in new .itb file
- TPL u-Boot loads new core rbf contained in new .itb file
- TPL boots to linux
Mostly similar to this topic https://forum.rocketboards.org/t/arria10-u-boot-2021-04-support-reboot-from-linux/2845
The current situation is this:
- Cold reset (power on)
- SPL loads peripheral rbf
- TPL u-Boot loads core rbf
- TPL boots to linux
- linux transfers a new .itb file to FAT partition
- linux issues reboot command
- SPL skips peripheral load (BAD, we want the new peripiheral image!)
- TPL u-Boot attempts to load core rbf
- TPL hangs and watchdog reboots (repeat from step 6).
The problem is that in step 7, SPL skips peripheral load since FPGA is already programmed.
Is there a option to force the peripheral and core programming at every reboot issued by linux, without having a power cycle of the board? I'm trying to use the patch in uboot suggested in that topic but it seems to not work as intended.