AGX orin can't boot up during Initrd flash process


Platform : AGX Orin
Jetpack : 5.0.2
board : custom carrier board

I use the commands in tools/kernel_flash/README_initrd_flash.txt to flash, but it always show timeout

Here’re flash log’s and uart logs during flashing process
flash_1-3_0_20230213-175224.log (7.5 KB)
initrd_flash_uartlog_fail.txt (36.4 KB)

Ths same process on devkit is okay

Here’re logs
flash_1-1_0_20230213-163016.log (123.8 KB)
initrd_flash_uartlog_devkit.txt (88.9 KB)

I’ve tried to modified the EEPORM settings in Linux_for_Tegra/bootloader/tegra234-mb2-bct-common.dtsi
(refernce Making massflash blob on AGX Orin - #3 by KevinFFF)

Our carrier board has a EEPORM, but it does nothing

Does EEPORM need to modify any values for booting?

Hi zax0220jecht,

Have you referred to the adaptation guide for your custom board?

From your uart log of the custom board, it could not enter kernel, there’s might something missing in device tree.

Hi KevinFFF,

I can use for flashing and can boot up successfully

And all function is correct on our carrier board

I’m not sure why initrd can’t flash

Is that related to my dts?

Here’s flash command:
sudo ./ jetson-agx-orin-devkit mmcblk0p1

I think that would be fine if you could flash and boot up success with on your custom carrier board.
Do you modify any configuration for the custom board?
(You use the board config for the Orin devkit)

Have you tried the following command from Workflow 1 of README_initrd_flash.txt on you custom board?

$ sudo ./tools/kernel_flash/ jetson-agx-orin-devkit mmcblk0p1

Please provide the flash log and serial console log for further check?

Yes, I have tried the Workflow1 and It also stopped at “Step 3: Start the flashing process”

The log showed timeout

Here’re logs
uart_log_failed.txt (37.4 KB)
initrd_flash_log_failed.txt (199.6 KB)

Uart log showed
“RAS Uncorrectable Error in IOB, base=0xe010000:”
What is IOB error?

Are you connecting your carrier board with 4K Monitor?
Please try to disconnect the monitor while boot up.

I’ve found some similar threads with this error.
Please refer to the following threads and check if it could help.
Newly flashed AGX Orin black screen on reboot - Jetson & Embedded Systems / Jetson AGX Orin - NVIDIA Developer Forums
Jetson AGX Orin will not start when the monitor is power on - Jetson & Embedded Systems / Jetson AGX Orin - NVIDIA Developer Forums

Or update to Jetpack 5.1 with new UEFI release.

I didn’t connect 4K monitor

I just connect power and Micro USB for flashing and an uart log debugger

I’ll try to build new UEFI to test

Does your custom board change any UPHY configuration?

Yes, I’ve changed UPHY configuration#2

Did you change the ODMDATA?

Yes here’re what I changed


Did you disable unused interface in the device tree? For example, if MGBE is not in use anymore, please disable it in DT.

Yes, all unused interface are disabled including MGBE

Should we offer our modified dts files?


Just a clarification. You can use to flash + boot up your custom board but initrd cannot do it, is this the situation right now?

Yes, that is

Are you using same board config in initrd flash and Did you also enable PCIe controller C7?

The address 0x3f600c0 from your log indicates this is related to P2U_GBE_4 which is related to PCIe C7

Yes, the board config is the same

Yes, PCIe controller C7 is enabled


I’m trying to build UEFI, and I reference this

building without docker

After I execute, the log showed error

ERROR - Could not find appropriate folder for mu_nasm. Host(os=‘Linux’, arch=‘ARM’, bit=‘64’)
ERROR - Could not find appropriate folder for edk2-acpica-iasl. Host(os=‘Linux’, arch=‘ARM’, bit=‘64’)

full build logs
uefi.txt (188.3 KB)

it seems something lost, is there any directly tar file for download instead of downloading by git?

Are you using standalone X86-64 Ubuntu 18.04 or 20.04 as your host PC?

Do you follow all the steps from Build without docker to setup build environment?

Yes My host is X86-64 Ubuntu 18.04

But I build UEFI on my ARM Ubuntu target

Should I build on host?

All my steps are following the Github