I’m using AGX Xavier on which I’m trying to show the boot logo as soon as the bootloader (UEFI) is initialized. The problem that I’m facing is when UEFI is loaded, the nvidia logo shows up and then the system resets before getting to the later stages (L4T and kernel) and continues in this cycle. NVDisp-init is turned on by setting bootloader-status = “okay“ for &head1 node in kernel devicetree. The following are the versions/releases in use for compiling image through yocto:
- edk2-firmware-tegra v35.6.2
- Branch kirkstone for layer meta-tegra
Display Logo on bootup
Putty logs when NVDisp-Init starts until the point system resets
[0001.949] I> Welcome to NVDisp-Init
[0001.949] I> NVDisp-Init version: 32.07.02-poky-t194-ecbd8935
[0001.950] I> CPU-BL Params @ 0xca020000
[0001.950] I> 0) Base:0x00000000 Size:0x00000000
[0001.950] I> 1) Base:0xc8100000 Size:0x00100000
[0001.951] I> 2) Base:0xc9800000 Size:0x00200000
[0001.951] I> 3) Base:0xc8600000 Size:0x00200000
[0001.955] I> 4) Base:0xc8000000 Size:0x00100000
[0001.959] I> 5) Base:0xc7f00000 Size:0x00100000
[0001.964] I> 6) Base:0xc9400000 Size:0x00400000
[0001.968] I> 7) Base:0xc9000000 Size:0x00400000
[0001.972] I> 8) Base:0xc7e00000 Size:0x00100000
[0001.977] I> 9) Base:0xc7d00000 Size:0x00100000
[0001.981] I> 10) Base:0xca800000 Size:0x00800000
[0001.986] I> 11) Base:0x40000000 Size:0x00040000
[0001.990] I> 12) Base:0xc7c00000 Size:0x00100000
[0001.995] I> 13) Base:0x40046000 Size:0x00002000
[0001.999] I> 14) Base:0x40048000 Size:0x00002000
[0002.004] I> 15) Base:0xaf000000 Size:0x00004000
[0002.008] I> 16) Base:0x4004a000 Size:0x00002000
[0002.013] I> 17) Base:0xc7a00000 Size:0x00100000
[0002.017] I> 18) Base:0x4004c000 Size:0x00002000
[0002.022] I> 19) Base:0xc9a00000 Size:0x00600000
[0002.026] I> 20) Base:0x4004e000 Size:0x00002000
[0002.030] I> 21) Base:0xc7bc0000 Size:0x0000c000
[0002.035] I> 22) Base:0x00000000 Size:0x00000000
[0002.039] I> 23) Base:0xc7be0000 Size:0x00020000
[0002.044] I> 24) Base:0xcc000000 Size:0x02000000
[0002.048] I> 25) Base:0x40050000 Size:0x00002000
[0002.053] I> 26) Base:0x40040000 Size:0x00006000
[0002.057] I> 27) Base:0xc8c00000 Size:0x00400000
[0002.062] I> 28) Base:0xc8400000 Size:0x00200000
[0002.066] I> 29) Base:0xc8800000 Size:0x00400000
[0002.071] I> 30) Base:0xc7bd0000 Size:0x00010000
[0002.075] I> 31) Base:0x00000000 Size:0x00000000
[0002.080] I> 32) Base:0xf8000000 Size:0x08000000
[0002.084] I> 33) Base:0xce000000 Size:0x2a000000
[0002.089] I> 34) Base:0xcb000000 Size:0x01000000
[0002.093] I> 35) Base:0xae000000 Size:0x01000000
[0002.097] I> 36) Base:0xa0000000 Size:0x0e000000
[0002.102] I> 37) Base:0xca000000 Size:0x00800000
[0002.106] I> 38) Base:0x80000000 Size:0x20000000
[0002.111] I> 39) Base:0xb0000000 Size:0x08000000
[0002.115] I> 40) Base:0x00000000 Size:0x00000000
[0002.120] I> 41) Base:0x00000000 Size:0x00000000
[0002.124] I> 42) Base:0xc8200000 Size:0x00200000
[0002.129] I> 43) Base:0x00000000 Size:0x00000000
[0002.133] I> 44) Base:0x00000000 Size:0x00000000
[0002.138] I> 45) Base:0x00000000 Size:0x00000000
[0002.142] GIC-SPI Target CPU: 0
[0002.145] Interrupts Init done
[0002.148] calling constructors
[0002.151] initializing heap
[0002.153] I> Heap: [0xa0960000 ... 0xadf00000]
[0002.158] initializing threads
[0002.161] initializing timers
[0002.163] creating bootstrap completion thread
[0002.168] top of bootstrap2()
[0002.170] CPU: MIDR: 0x4E0F0040, MPIDR: 0x80000000
[0002.175] initializing platform
[0002.178] E> DEVICE_PROD: Invalid value data = 0, size = 0.
[0002.184] W> device prod register failed
[0002.187] I> Bl_dtb @0xadf00000
[0002.190] I> gpio framework initialized
[0002.203] I> tegrabl_gpio_driver_register: register 'nvidia,tegra194-gpio' driver
[0002.209] I> tegrabl_gpio_driver_register: register 'nvidia,tegra194-gpio-aon' driver
[0002.214] I> fixed regulator driver initialized
[0002.234] I> register 'maxim' power off handle
[0002.237] I> virtual i2c enabled
[0002.237] I> registered 'maxim,max20024' pmic
[0002.237] I> tegrabl_gpio_driver_register: register 'max20024-gpio' driver
[0002.238] I> Boot-device: eMMC
[0002.238] I> Boot_device: SDMMC_BOOT instance: 3
[0002.241] I> sdmmc-3 params source = boot args
[0002.244] W> No board IDs available
[0002.247] E> Failed to get board id info!
[0002.250] I> sdmmc bdev is already initialized
[0002.255] I> sdmmc-3 params source = boot args
[0002.261] I> Found 20 partitions in SDMMC_BOOT (instance 3)
[0002.267] I> Found 44 partitions in SDMMC_USER (instance 3)
[0002.287] I> enabling 'vdd-hdmi-5v0' regulator
[0002.295] I> regulator 'vdd-hdmi-5v0' already enabled
[0002.295] I> hdmi cable connected
[0002.300] W> set volts not configured for 'vdd-1v0'
[0002.305] W> set volts not configured for 'vdd-1v8-hs'
[0002.306] I> retrieved tmds range from prod_list_hdmi_soc
[0002.307] E> cannot find any other nvdisp nodes
[0002.335] E> read_edid: checksum failed and did not match consecutive reads. Previous remainder was 173. New remainder is 186 . Failed at attempt 1
[0002.341] I> hdmi_enable, starting HDMI initialisation
[0002.346] I> hdmi_enable, HDMI initialisation complete
[0002.356] initializing target
[0002.357] calling apps_init()
[0002.357] starting app kernel_boot_app
[0002.358] I> Kernel type = Normal
Jetson UEFI firmware (version v35.6.2 built on 2024-09-17T13:50:43+00:00)
Jetson UEFI firmware (version v35.6.2 built on 2024-09-17T13:50:43+00:00)
ESC to enter Setup.
F11 to enter Boot Manager Menu.
Enter to continue boot.
** WARNING: Test Key is used. **
Synchronous Exception at 0x00000008792907D8
Synchronous Exception at 0x00000008792907D8
ASSERT [ArmCpuDxe] edk2-firmware-tegra/35.6.2-r0/edk2-tegra/edk2/ArmPkg/Library/DefaultExceptionHandlerLib/AArch64/DefaultExceptionHandler.c(333): ((BOOLEAN)(0==1))
Resetting the system in 5 seconds.
Hi waleedasif619,
Are you using the devkit or custom board for AGX Xavier?
Sorry that we don’t support and verify yocto project locally.
Would you hit the similar issue with L4T(Linux_For_Tegra)?
It seems you hit this assertion issue in UEFI to block the boot.
Please clarify what customization may cause this issue in your case or you can use debug UEFI binary to get more logs.
Hello @KevinFFF , thanks for the reply. Let me answer your questions one by one.
I’m using a devkit; it’s the Connect Tech’s Rogue Carrier for Jetson AGX Xavier.
Yocto also supports using L4T(Linux_For_Tegra) and I’m using version 35.6.1. Below is the path yocto uses for holding the fetched kernel source code inside its build directory
waleed@pc:~/$ ls build/tmp/work-shared/L4T-tegra-35.6.1-r0/Linux_for_Tegra/
I had set bootloader-status = "okay" in kernel devicetree to make the splash logo appear on screen during bootup which actually did the job as can be seen in the picture I’ve posted, but it also led to the system reset problem I’m currently facing.
Let me share the logs with you from a debug binary. I’ve captured them with putty and they’re quite long so I’ve put them in the attached log file.
log (2).txt (113.5 KB)
It is a custom carrier board(developed by our partner ConnectTech) to us.
Is the assertion issue happening after you configure this?
(i.e. is there the similar issue if you don’t configure it?)
The section on Seamless Display from nvidia suggests moving to &head0 (mapped to HDMI by default) as the other head nodes have stability issues. The following are the changes I made to the kernel devicetree configuration which actually solved the UEFI reset problem.
--- a/nvidia/platform/t19x/galen/kernel-dts/common/tegra194-p2822-disp.dtsi
+++ b/nvidia/platform/t19x/galen/kernel-dts/common/tegra194-p2822-disp.dtsi
@@ -26,21 +26,23 @@
#include "tegra194-spmic-p2888-0001.dtsi"
&head0 {
- status = "disabled";
+ status = "okay";
+ bootloader-status = "okay";
nvidia,fb-bpp = <32>;
nvidia,fbmem-size = <265420800>; /* 8K (7680*4320) 32bpp double buffered */
nvidia,fb-flags = <TEGRA_FB_FLIP_ON_PROBE>;
win-mask = <0x3>;
nvidia,fb-win = <0>;
- nvidia,dc-connector = <&sor2>;
+ nvidia,dc-connector = <&sor0>;
nvidia,dc-flags = <TEGRA_DC_FLAG_ENABLED>;
avdd_hdmi-supply = <&p2888_spmic_sd0>; /* 1v0 */
avdd_hdmi_pll-supply = <&p2888_spmic_sd1>; /* 1v8 */
vdd_hdmi_5v0-supply = <&p2822_vdd_hdmi_5v0>; /* 5v0 */
+ disable-seamless = <1>;
};
&head1 {
- status = "okay";
+ status = "disabled";
nvidia,fb-bpp = <32>;
nvidia,fbmem-size = <265420800>; /* 8K (7680*4320) 32bpp double buffered */
nvidia,fb-flags = <TEGRA_FB_FLIP_ON_PROBE>;
@@ -51,6 +53,7 @@ &head1 {
avdd_hdmi-supply = <&p2888_spmic_sd0>; /* 1v0 */
avdd_hdmi_pll-supply = <&p2888_spmic_sd1>; /* 1v8 */
vdd_hdmi_5v0-supply = <&p2822_vdd_hdmi_5v0>; /* 5v0 */
+ disable-seamless = <1>;
};
&head2 {
@@ -67,6 +70,7 @@ &head2 {
vdd-edp-sec-mode-supply = <&battery_reg>;
vdd-dp-pad-supply = <&battery_reg>;
vdd_hdmi_5v0-supply = <&p2822_vdd_hdmi_5v0>;
+ disable-seamless = <1>;
};
The system is now able to boot up properly with UEFI logo showing when it loads. Now, there is another issue that I’m facing which I think is also related to display so I’m putting it here as well. I’m supposed to get a custom GUI display at the end when the system has fully initialized and entered userspace. Let me break down the problem and how I’ve tested this on two different displays for comparison
- When tested with 7-inch LCD screen
The system starts and initializes fully. When the UEFI loads, its logo shows up and the screen goes blank shortly after and remains like this. However, the GUI display does come on if HDMI is hot-plugged (connected after system has powered on). The following are the complete putty logs from the point UEFI starts
Putty Logs
Jetson UEFI firmware (version v35.6.1 built on 2025-10-08T10:41:27+00:00)
ESC to enter Setup.
F11 to enter Boot Manager Menu.
Enter to continue boot.
** WARNING: Test Key is used. **
L4TLauncher: Attempting Direct Boot
OpenAndReadUntrustedFileToBuffer: Failed to open boot\extlinux\extlinux.conf: No
t Found
ProcessExtLinuxConfig:sds Failed to Authenticate boot\extlinux\extlinux.conf (No
t Found)
L4TLauncher: Unable to process extlinux config: Not Found
L4TLauncher: Attempting Kernel Boot
I/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
[ 0.653713] ufs_tegra 2450000.ufshci: ufshcd_get_vreg: vcc get failed, err=-517
[ 0.675077] mttcan c310000.mttcan: Missing controller reset
[ 0.675619] mttcan c310000.mttcan: probe failed
[ 0.675906] mttcan c320000.mttcan: Missing controller reset
[ 0.676110] mttcan c320000.mttcan: probe failed
debugfs initialized
[ 14.755548] Camera-FW on t194-rce-safe started
TCU early console enabled.
[ 14.823908] Camera-FW on t194-rce-safe ready SHA1=23eee394 (crt 0.776 ms, total boot 69.165 ms)
[ 4.882092] tegradc 15200000.display: dc_hdmi_hotplug_init: couldn't get regulator vdd_hdmi_5v0, -517
[ 4.882773] tegradc 15200000.display: dc_probe: failed hotplug init, -517
[ 4.900503] ufs_tegra 2450000.ufshci: ufshcd_get_vreg: vcc get failed, err=-517
[ 5.024259] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
pll_d has no dyn ramp
[ 5.182234] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 5.182415] tegradc 15200000.display: timeout waiting for postcomp init state to promote
[ 5.234231] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 5.234407] tegradc 15200000.display: timeout waiting for win assignments to promote
[ 5.234589] tegradc 15200000.display: tegra_nvdisp_head_enable, failed head enable
pll_d has no dyn ramp
[ 5.422227] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 5.422232] tegradc 15200000.display: dc timeout waiting for DC to stop
[ 5.474230] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 5.474233] tegradc 15200000.display: dc timeout waiting for DC to stop
[ 5.526230] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 5.526234] tegradc 15200000.display: timeout waiting for postcomp init state to promote
[ 5.578232] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 5.578236] tegradc 15200000.display: timeout waiting for win assignments to promote
[ 5.578240] tegradc 15200000.display: tegra_nvdisp_head_enable, failed head enable
[ 6.253232] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.254140] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.267707] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.269673] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.272542] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.274869] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.277540] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.279928] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[OK: /dev/mmcblk0p1]
Mounting /dev/mmcblk0p1...
Switching to rootfs on /dev/mmcblk0p1...
[ 8.258737] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.677026] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.681409] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.693941] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.775706] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.788640] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.792613] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.431169] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.433741] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.442343] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.455693] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.465168] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.474061] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.481214] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.482006] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.491788] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.493825] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.498887] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 16.418264] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 16.418272] tegradc 15200000.display: dc timeout waiting for DC to stop
[ 16.470244] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 16.470250] tegradc 15200000.display: dc timeout waiting for DC to stop
[ 16.522246] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 16.522253] tegradc 15200000.display: timeout waiting for postcomp init state to promote
[ 16.574236] tegradc 15200000.display: dc_poll_register 0x41: timeout
[ 16.574243] tegradc 15200000.display: timeout waiting for win assignments to promote
[ 16.574247] tegradc 15200000.display: tegra_nvdisp_head_enable, failed head enable
- When tested with regular display (Lenovo ThinkVision E2224)
The system starts and initializes fully. The UEFI logo shows up and then the GUI appears when system enters userspace. The following are the complete putty logs from the point UEFI starts
Putty Logs
Jetson UEFI firmware (version v35.6.1 built on 2025-10-08T10:41:27+00:00)
ESC to enter Setup.
F11 to enter Boot Manager Menu.
Enter to continue boot.
** WARNING: Test Key is used. **
L4TLauncher: Attempting Direct Boot
OpenAndReadUntrustedFileToBuffer: Failed to open boot\extlinux\extlinux.conf: No
t Found
ProcessExtLinuxConfig:sds Failed to Authenticate boot\extlinux\extlinux.conf (No
t Found)
L4TLauncher: Unable to process extlinux config: Not Found
L4TLauncher: Attempting Kernel Boot
I/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
[ 0.668207] ufs_tegra 2450000.ufshci: ufshcd_get_vreg: vcc get failed, err=-517
[ 0.686336] mttcan c310000.mttcan: Missing controller reset
[ 0.686639] mttcan c310000.mttcan: probe failed
[ 0.686909] mttcan c320000.mttcan: Missing controller reset
[ 0.687150] mttcan c320000.mttcan: probe failed
debugfs initialized
[ 14.599368] Camera-FW on t194-rce-safe started
TCU early console enabled.
[ 14.667735] Camera-FW on t194-rce-safe ready SHA1=23eee394 (crt 0.775 ms, total boot 69.171 ms)
[ 4.834657] tegradc 15200000.display: dc_hdmi_hotplug_init: couldn't get regulator vdd_hdmi_5v0, -517
[ 4.835114] tegradc 15200000.display: dc_probe: failed hotplug init, -517
[ 4.840910] ufs_tegra 2450000.ufshci: ufshcd_get_vreg: vcc get failed, err=-517
[ 4.963843] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
pll_d has no dyn ramp
[ 5.825120] tegra_cec 3960000.tegra_cec: Can't find physical address.
[ 6.196689] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.197585] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.210272] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.212355] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.214546] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.216197] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.219284] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 6.240048] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[OK: /dev/mmcblk0p1]
Mounting /dev/mmcblk0p1...
Switching to rootfs on /dev/mmcblk0p1...
[ 8.225745] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.677864] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.683729] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.697076] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.776078] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.786212] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 9.797230] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.424456] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.426614] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.463324] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.479223] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.519187] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.529957] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.533015] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
[ 10.535285] tegra-xudc 3550000.xudc: failed to get usbphy-0: -517
What could be the reason for GUI display not working for the small LCD screen? Could it be related to the initial configuration I set for kernel devicetree? Any help would be appreciated
It seems the display in UEFI boot stage is fine.
The issue remains in kernel boot.
Could you check if your 7-inch LCD screen has been powered correctly?
It uses a microUSB port for power and was initially connected to my laptop through a USB cable. I have now replaced that with a 10W charger adapter but that still gives the same result.
There is no update from you for a period, assuming this is not an issue anymore.
Hence, we are closing this topic. If need further support, please open a new one.
Thanks ~1105
Do you mean there’s no display after boot up? but it shows the desktop after you hot-plug HDMI?
If so, please share the dmesg and Xorg.0.log before and after you hot-plug HDMI.