Forum Discussion

pmarques's avatar
pmarques
Icon for New Contributor rankNew Contributor
1 month ago
Solved

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 G...
  • RolandoS_Altera's avatar
    29 days ago

    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.

    https://github.com/altera-fpga/meta-altera-fpga/blob/main/meta-altera-bsp/recipes-kernel/linux/linux-socfpga-lts/fit_agilex5_kernel.its