Forum Discussion

Jayasurya's avatar
Jayasurya
Icon for New Contributor rankNew Contributor
2 years ago

Kernel boot hang and reboot issue on Agilex in the U-Boot stage

Hi Team,

We are writing to seek your expert guidance and support in resolving a critical issue we are currently facing with our Agilex FPGA SOC system.

The problem we are encountering is related to the kernel loading process, which hangs during boot and subsequently results in an immediate reboot.

Here are the details of our setup:

  • FPGA Part No: AGFB012R24B2I3E
  • Board RAM: 4GB
  • Boot Method: Ethernet

To initiate the boot process, we have set the following environment variable:

setenv boottftp "tftp ${loadaddr} Image && tftp ${fdt_addr} socfpga_agilex_socdk.dtb; booti ${loadaddr} - ${fdt_addr};"

Despite our efforts, we have been unable to achieve a successful boot. Upon executing the command run boottftp, the system hangs ("Kernel Starting ...") and then reboots immediately. In an attempt to diagnose this issue, we have introduced debug prints into the U-Boot file. Our analysis suggests that the boot process halts within the assembly file (Start.s).

We have also taken into account the 4GB RAM on our board and accordingly edited the device tree file.

To provide you with more insights into the situation, we have attached the console log and the device tree source file (dts). Your assistance in analyzing and resolving this perplexing matter would be highly appreciated.

Kindly help us to resolve the issue.

Thanks in advance.

Best Regards,

Jayasurya R.

3 Replies

  • tehjingy_Altera's avatar
    tehjingy_Altera
    Icon for Regular Contributor rankRegular Contributor

    Hi Jayasurya


    Which version of u boot you are using at the moment?

    Could you try out printing the env variable in the uboot and share it with us?

    After printing the env variable take a look at the boot command, is it using bootm or booti.


    If you are using a more recent version (using bootm) could you try loading the .itb format instead of a separate package.

    The commands are as follows:

    tftp ${loadaddr} <path to itb file>

    bootm ${loadaddr} #board-${board_id}


    The .itb files is created in the uboot build process.


    Regards

    Jingyang, Teh




    • Jayasurya's avatar
      Jayasurya
      Icon for New Contributor rankNew Contributor

      Hi JingyangTeh,

      Thanks for the reply,

      I have followed the below path for generate the U-boot files.

      Building Bootloader for Agilex 7 | Documentation | RocketBoards.org

      U-Boot Version : "ver=U-Boot 2022.10-24691-gb1598f9fda-dirty (Aug 09 2023 - 10:17:35 +0530)socfpga_agilex"

      In the default mmcboot, they have used the booti command for loading the kernel. Thats why I have used the same. Currently after the compilation of the uboot sources, I am executing this command (ln -s u-boot.itb u-boot.bin) to change the file type for loading QSPI flash.

      Kindly do the needful for this issue. Thanks in advance.

      Regards,

      Jayasurya R.