Linux not booting - can't get kernel image
Hi,
I'm having trouble booting to Linux after migrating a project to the newest GSRD 2.0 (Quartus 25.3).
I'm using an Agilex 5 FPGA E-Series 065B Premium Devkit. The project was based in the GSRD for Quartus 25.1 (QPDS25.1_REL_GSRD_PR) and had a few modifications, working in version 25.1 with the default device-tree.
I'm guessing this might be something related to differences in the device-tree between GRSD 2.0 and the previous version ? I've tried looking around but there's so many .dts and .dtsi files that I'm a bit lost.
Any advice appreciated.
Hi pmarques
From this thread, I see the the JTAG_USER_CODE is being set a 4 as it was set with that value in the example design used for the SD_CARD daughter card. I think that in the new design, this should be either 0 or undefined:
You can find this value from Quartus in the Assignments >> Device >> Device and Pin Options >> General.
Also you may find this in your .qsf:
set_global_assignment -name STRATIX_JTAG_USER_CODE 4
So, you can either change this value to 0 or remove it.
There is some documentation about how this JTAG_USER_CODE was used in GSRD 1.0
https://www.rocketboards.org/foswiki/Documentation/SingleImageBoot , Seems that something about this is still used in GSDR 2.0, but the board IDs changed in GSRD 2.0.
In this file you will see how the kernel.itb is created. This includes 2 sets of images: board-0 and board-1. The USER_CODE=0 will use the board-0 configuration and USER_CODE=1 will use the board-1 configuration (it's the same but doesn't include the core.rbf in the kernel.itb. I am guessing that when this is not defined it will use also the board-0 configuration.
