Forum Discussion
Just realized you are converting the u-boot-spl file as well, please try using u-boot-spl-dtb.hex, as suggested in the command
ok,the 7th and 9th steps in the "Operation Steps" remain unchanged. For the 8th step, replace the HPS File with u-boot-spl-dtb.hex.
The generation process was successful. What's the reason for this? It's truly astonishing. It seems that there is no information suggesting that u-boot-spl-dtb.hex is required.
- EstebanVV_Altera1 month ago
New Contributor
Yes, my guess is that your conversion as you said in "6. Convert u-boot-spl to u-boot-spl.hex and copy it to the output_files directory" is not aligned, hence the error.
Now, the current information and the recommended flow is the one described in the links I shared with you https://altera-fpga.github.io/rel-25.3/embedded-designs/stratix-10/sx/soc/gsrd/ug-gsrd-s10sx-soc/#build-core-rbf and https://altera-fpga.github.io/rel-25.3/embedded-designs/stratix-10/sx/soc/fabric-config/ug-linux-fabric-config-s10sx-soc/#build-example
Anyways, I have raised a issue internally so this is better handled by Quartus Programmer instead of a crash.
~E.V.
- grit1 month ago
New Contributor
Thank you for your response. There are still some doubts. I hope you can offer some suggestions.
Q1:The steps 1 to 5 above remain unchanged(HPS Boot First Mode). At this point, I have obtained the SOF file and the FSBL file. This is the prerequisite condition.
Scene A: If the JTAG loads the SOF file, the HPS cannot start because there is no FSBL information in the SOF file;
Scene B: If it is necessary to be written to flash, HPS can be activated. The SOF files and FSBL files need to be generated as Raw Binary File for HPS Core Configuration (.RBF) and Programmer Object File for Peripheral Configuration (.POF) through the Programming File Generator/Command Line. Finally, the POF file is burned.
Q2:The steps 1 to 5 mentioned above only change the startup sequence; the rest are the same as in Q1.(FPGA Configuration First Mode)
Scene A: If the JTAG loads the SOF file, the HPS cannot start because there is no FSBL information in the SOF file;
Scene B: If it is necessary to be written to flash, HPS can be activated. The SOF file and FSBL file need to be generated as Programmer Object File (.POF) through the Programming File Generator/command line. Finally, the POF file is burned.
I'm not sure if my understanding is correct. It seems that the Quartus Prime Pro 25.1.1 version can only burn POF files, but not JIC files.
- EstebanVV_Altera1 month ago
New Contributor
So, again as documented in the links.
- "HPS First" mode, you got a "name.core.rbf" and a "name.hsp.jic". The <name>.core.rbf goes into your boot source (this effectively programs the FPGA). The QSPI is programmed the "name.hps.jic", changing the configuration to "JTAGMode" (This is all described in the links I sent)
.............
- "FPGA First" mode you can do two things.
- If you want to use a SOF and kick off the booting with the Quartus Programmer, then you can create a sof with fsbl attached using
- >> aarch64-none-linux-gnu-objcopy -I binary -O ihex --change-addresses 0x0 ./u-boot-spl-dtb.bin ./u-boot-spl.ihex
- >> quartus_pfg -c ./name.sof ./fsbl_name.sof -o hps_path=./u-boot-spl.ihex
- And program this fsbl_name.sof into your device in "JTAG Mode"
The other option is to write the QSPI Flash with a JIC that has everything
- >> quartus_pfg -c name.jic -o hps_path=u-boot-spl-dtb.hex -o device=name -o flash_loader=name -o mode=ASX4
- So every time the board is powered on, you have everything coming up, because the QSPI Flash has a complete name.jic.
- In "FPGA First" you don't need a name.core.rbf in your boot partition (e.g. if you are trying to boot linux)
---
You don't need the POF
Hopefully this works
- If you want to use a SOF and kick off the booting with the Quartus Programmer, then you can create a sof with fsbl attached using