Issue with "Waiting for target to boot-up..." Error while Flashing Jetson Orin NX

I’m currently facing an issue while attempting to flash my Jetson Orin NX device using the provided flashing tool. The process halts with the error message “Waiting for target to boot-up…
Timeout
Cleaning up…”

flash_log.txt (240.6 KB)

we are using the custom carrier board.

Here are the specifics of my setup:

  • Jetson Orin NX device model: Jetson Orin NX
  • Flashing tool command:

Copy code

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
-c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" \
--showlogs --network usb0 jetson-orin-nano-devkit internal
  • Operating System: Ubuntu 20.04
    *kernel version = 5.10

I’ve attempted the following troubleshooting steps without success:

  1. Restarting both the host machine and the Jetson device.
  2. Ensuring all connections are secure.

Despite these efforts, I’m still encountering the error. Any insights or guidance from the community would be greatly appreciated.

Thank you for your time and assistance.

Get the log:

okay I willGet logs but can you gave me any clue what is the reason ? and how to resolve it?

We don’t know the reason without serial console log.
There are 100 different ways leading to this time out error.

jetson_uart.log (34.1 KB)

Here are the logs & image,

note :
We have been using a custom carrier board that has been designed by our team.

Now we are trying this:

Linux_for_Tegra/bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts

  • `- cvb_eeprom_read_size = <0x100>
    • cvb_eeprom_read_size = <0x0>`

as per this document we make changes in above file and rebuilding the kernel because we don’t have an EEPROM in our custom board.

https://docs.nvidia.com/jetson/archives/r35.4.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html#eeprom-modifications

@DaveYYY,

We have followed some steps:

  1. I have changed this file “Linux_for_Tegra/bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts”. This change has been made in that file:
+ cvb_eeprom_read_size = <0x0>
  1. Save that file and rebuild the kernel.

  2. After building the kernel, I have replaced these files:

    a) Replace Linux_for_Tegra/rootfs/usr/lib/modules/$(uname -r)/kernel/drivers/gpu/nvgpu/nvgpu.ko with a copy of this file:

    $kernel_out/drivers/gpu/nvgpu/nvgpu.ko
    

    b) For the device tree, replace the files in Linux_for_Tegra/kernel/dtb/ with a copy from:

    $kernel_out/arch/arm64/boot/dts/nvidia/
    

    c) Replace Linux_for_Tegra/kernel/Image with a copy of this file:

    $kernel_out/arch/arm64/boot/Image
    
  3. Flash the source with this command:

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

Still getting the same error “waiting for target to boot-up…”. Here are the logs after these changes."

Jetson_uart_2.log (36.2 KB)

Are you sure this is the full log?
It did not even boot into the kernel.

Yes that was the log I have got from the debug UART of our custom board.

Does this all steps are Right ?

Make sure at least it boots with the stock kernel without any modification.

You usually need some modification in device trees with custom boards.
Is the board made by yourself?

I have tried with the stock kernel which is download from Jetson Linux Archive | NVIDIA Developer version R35.3.1,
but it gave me the same error. Then, I followed some forum suggestions and found that I need to deactivate EEPROM for custom board which dont have EEPROM, so I made those changes.

Yes, the board is made by ourselves.

I have some queries related to kernel customization:

  1. If we are building an image, will the bootloader be included with it?
  2. For the modifications required to disable EEPROM, where should it be done? In the kernel device tree or in the bootloader section?

I don’t know what you mean with this.

https://docs.nvidia.com/jetson/archives/r35.5.0/DeveloperGuide/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html#eeprom-modifications
You should know that you are still very far away from the stage where you would hit an error if you don’t make the EEPROM read size change.

https://docs.nvidia.com/jetson/archives/r35.5.0/DeveloperGuide/AT/JetsonLinuxDevelopmentTools/DebuggingOnJetsonPlatforms.html#enabling-debugging-features-through-the-bct-configuration-file
See if you get some progess with this.

Hello DaveYYY

We have flashed the Orin SOM module and NVME from the development carrier board, and we are currently using that flashed Orin SOM module and NVME for our custom carrier board, which has been designed by ourselves. However, it is still not booting up. Can you suggest where the issue might be?

here is the bootup log

custom_bootup_log.txt (394.0 KB)

Are you aware of any required device tree changes?

The only change in our development kit and custom board is that we don’t have an EEPROM, so we are disabling it in the source code. You can refer to the log from previous comment for more details

Our board is inspired by Antmicro, and we have also tried using the Antmicro open-source tools. However, we still encountered the error “Erasing SPI: 0…(Failed) Error: Return value 8.”

Here are the log when try to flash antmicro open source os and screenshots.


Flash_log_qspi.docx (18.2 KB)

Do you have other modules for testing?

We have only one devkit and our designed custom carrier board

We also change that Som module and and place in the Devlopment kit board and it gets flashed correctly without any error. But trying same with our carrier board it get failed.
(All this were done with disabling the EEPROM)

Does this project give any instructions on device tree/MB1 MB2 config changes?
I checked it’s design and it looks very different from a DevKit/