I design a carrier board for AGX Orin, but the startup time is too long, more than 2minutes ,the log as follows.
The log shows that after initialized, the system started waiting. About 2 minutes later, the log printed a warning, that is "Test Key is used". I do not know what happened during the waiting time, and how to make the startup process normal.
Please give me some advice, Thanks.
Have you compared the startup process between your carrier board with the devkit?
First boot should take longer time than normal for configuring board.
Every startup takes more than two minutes, not just the first time.
I compared the startup process log of the two boards.
I found that before " [0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd421]", my board took a long time to perform some things, and I’m not sure what they did because I didn’t see them in the startup log in the devkit. These can be viewed in the attachment log of this topic.
The log before kernel started is about UEFI.
You might need to compile UEFI with debug to check what happened inside. Home · NVIDIA/edk2-nvidia Wiki · GitHub
Hi,I checked my board to make sure there was no EEPROM and NIC.
I’ve already set “cvb_eeprom_read_size = <0x0>”, and I entered boot manage menus and Boot Maintenance manager menu, tried to configure them, but I didn’t know how to do it. I tried to change some configuration, unfortunately, they didn’t work. (⊙︿⊙)
Hi,
I compiled UEFI debug environment and found that there were two long waits during startup,The serial port had no output during the waiting process.
1.After the second long wait, the serial port outputs::
/* first long wait */
SNP:PHY: PhyDxeInitialization () Failed to reset Phy
DeviceDiscoveryBindingStart, driver returned Device Error to start notification
2.After the second long wait, the serial port outputs:
DeviceDiscoveryBindingStart, failed to reset moduleDevice Error
TegraI2cStartRequest: No ACK received
Failed to read eeprom (No Response)
I checked with the hardware engineer that my board didn't have EEPROM and 10G network connector. Could you tell me how to skip this process?
For 10G network, please disable the ethernet node in the device tree. Kernel device tree has same content as UEFI device tree. But you need full flash to make sure it would take effect.
As for EEPROM, I don’t think that would cause long delay.
I checked the burnrootfs.sh file and found that UEFI dtb(TBCDTB file) is still using the devkit version.
By the way, Can I change the path of UEFI dtb after the system is burned? Like kernel dtb, it can be changed by configurating extlinux.conf file in /boot/extlinux/
Hi,
I changed the TBCDTB file and it works. The system skips the long waiting when loading the Ethernet. But at the same time, another error message is shown as fellows.
ConfigureOutputGpios: could not find compatible GPIO node in DT: not on SLT board?
PROGRESS CODE: V03101019 I0
TC: Secondary CPU 1 initializing
I/TC: Secondary CPU 1 switching to normal world boot
I/TC: Secondary CPU 2 initializing
I/TC: Secondary CPU 2 switching to normal world boot
I/TC: Secondary CPU 3 initializing
I/TC: Secondary CPU 3 switching to normal world boot
I/TC: Secondary CPU 4 initializing
I/TC: Secondary CPU 4 switching to normal world boot
I/TC: Secondary CPU 5 initializing
I/TC: Secondary CPU 5 switching to normal world boot
I/TC: Secondary CPU 6 initializing
I/TC: Secondary CPU 6 switching to normal world boot
I/TC: Secondary CPU 7 initializing
I/TC: Secondary CPU 7 switching to normal world boot
When the serial port output the above information, the system starts to wait, it seems that the boot cannot be entered.
If you could re-build UEFI on your host PC.
Please try to modify the following content in edk2-nvidia/Platform/NVIDIA/NVIDIA.common.dsc.inc to 0 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5