Hi Teh,
Could you please share the latest boot log that you are facing?
Attached you find the following boot logs:
- arrow_example_24.2_clean_boot_log.txt: I've followed the arrow tutorial 24.2 strictly.
- arrow_example_25.1_clean_boot_log.txt: I've followed the arrow tutorial 25.1 strictly.
- arrow_example_25.1_modified_dts_1_boot_log.txt: In addition to arrow tutorial 25.1 I've modified the dts to set the qspi status = "okay". I recompiled U-Boot and reran the quartus_pfg commands to generate the axe5_eagle_top_hps.sof and .jic and .rbf files. I also recompiled the Linux dts. I've updated the files on the SD card and updated the QSPI flash via JTAG. I ran sf probe in u-boot shell resulting in a synchronous abort.
- arrow_example_25.1_modified_dts_2_boot_log.txt: In addition to arrow tutorial 25.1 I've modified the dts as above. I let Linux boot. The boot fails due to a kernel panic when probing the qspi flash.
- arrow_example_25.1_modified_dts_and_24.2_sdm_boot_log.txt: In addition to arrow tutorial 25.1 I've modified the dts as above and used quartus_pfg from Quartus 24.2 to generate the axe5_eagle_top_hps.sof and .jic and .rbf files. I've update the QSPI flash via JTAG and the .rbf on SD card. All other files are from the 25.1 tutorial (u-boot-spl-dtb.hex, uboot.itb, atf, Linux Image). In the u-boot shell the command sf probe is now successful. When I try to continue the boot it fails because the FPGA image can not be loaded, but that's not the topic of this ticket.
Did you replace the device tree and the linux image generated using the 25.1 flow?
Yes, I've been careful to update all components in each test. When following the tutorials strictly, I used the dd command to overwrite the entire SD card. When I modified the .dts in the linux and u-boot projects, I've replaced the file socfpga_agilex5_axe5_eagle.dtb in the FAT partition, recompiled u-boot and regenerated the axe5_eagle_top_hps.sof and .jic file, and flashed the new axe5_eagle_top_hps.sof and .jic file via JTAG as described in the tutorials. When modifying the dts I did not replace the Linux image because it is unaffected by changes to the .dts file.
I believe the Quartus Version you are using is still 24.3, but I think it is able to run with the 25.1 linux binaries.
I don't understand what you are trying to say. The Quartus versions that I'm using are 24.2 and 25.1 (I've double checked). I don't have 24.3 installed.
Did you make the same changes done to the uboot device tree with the linux device tree?
Yes, I've modified the u-boot .dts and the linux .dts. As you can see from the log files, before changing the .dts there is no mention of an spi flash in the Linux boot and it boots just fine. Due to the change in the Linux .dts the kernel tries to probe the qspi flash and fails with the kernel panic that I've mentioned before.
Are you able to reproduce this problem with the arrow 25.1 tutorial?
Kind Regards,
Eric Opitz