Orin HDMI error

Hello

I am using a custom Jetson AGX Orin 32GB with JetPack 5.1.3. After enabling the RT-kernel and recompiling the nvidia.ko, nvidia-modeset.ko, and nvidia-drm.ko drivers, the HDMI output stopped working. I researched the issue and applied the three patches mentioned in this thread: https://forums.developer.nvidia.com/t/hdmi-display-does-not-work-after-update-to-jetpack-5-0-2/226581/27. However, HDMI still fails to function even after re-flashing the device.

  1. I noticed that after the UEFI boot sequence ending at the NVIDIA logo, the monitor shows an “out of frequency” message followed by a black screen. Checking over SSH revealed that only nvidia.ko among the three drivers was loaded. Later testing confirmed I can load the remaining drivers manually without errors.
nvidia@eaora04v5-1-3:~$ lsmod | grep nvidia
nvidia               1449984  0
nvidia@eaora04v5-1-3:~$ ls /lib/modules/5.10.192-rt96-tegra/extra/opensrc-disp/ -al
total 24308
drwxr-xr-x 2 root root     4096 Jan  1 08:07 .
drwxr-xr-x 3 root root     4096 Jan  1 08:04 ..
-rw-r--r-- 1 root root  5267528 Jan  1 08:06 nvidia-drm.ko
-rw-r--r-- 1 root root 16658776 Jan  1 08:06 nvidia.ko
-rw-r--r-- 1 root root  2947048 Jan  1 08:06 nvidia-modeset.ko
nvidia@eaora04v5-1-3:~$ sudo modprobe nvidia
[sudo] password for nvidia: 
nvidia@eaora04v5-1-3:~$ sudo modprobe nvidia-modeset 
nvidia@eaora04v5-1-3:~$ sudo modprobe nvidia-drm 
nvidia@eaora04v5-1-3:~$ lsmod | grep nvidia
nvidia_drm             69632  0
nvidia_modeset       1138688  1 nvidia_drm
nvidia               1449984  1 nvidia_modeset

  1. I added nvidia, nvidia-modeset, and nvidia-drm to /etc/modules. After rebooting, all three drivers loaded successfully, yet the HDMI display still does not work. I have confirmed that my hardware is fully functional. Could you please help troubleshoot this issue?
nvidia@eaora04v5-1-3:~$ cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

nvidia
nvidia-modeset
nvidia-drm
nvidia@eaora04v5-1-3:~$ lsmod | grep nvidia
nvidia_drm             69632  0
nvidia_modeset       1138688  1 nvidia_drm
nvidia               1449984  1 nvidia_modeset
nvidia@eaora04v5-1-3:~$ ls /sys/class/drm/ -al
total 0
drwxr-xr-x  2 root root    0 Nov 22  2023 .
drwxr-xr-x 78 root root    0 Nov 22  2023 ..
lrwxrwxrwx  1 root root    0 Nov 22  2023 card0 -> ../../devices/platform/13800000.display/drm/card0
lrwxrwxrwx  1 root root    0 Nov 22  2023 renderD128 -> ../../devices/platform/13800000.display/drm/renderD128
-r--r--r--  1 root root 4096 Nov 22  2023 version

please share the dmesg and xorg log.

HI wayneWWW
My /var/log/Xorg.0.log file is empty, and I have uploaded the dmesg output.My /var/log/Xorg.0.log file is empty, and I have uploaded the dmesg output.

dmesg.txt (83.6 KB)

請問xorg log是本來你就沒在用gdm3所以是空的. 還是你開了RT kernel之後才變這樣的?
還是說你不懂我的問題?

1.I have been using the GDM graphical desktop. The /var/log/Xorg.0.log file became empty after I recompiled the RT kernel and display drivers and reflashed the system.

  1. Complete detailed fault supplement based on uploaded dmesg

After the three NVIDIA DRM kernel modules (nvidia, nvidia-modeset, nvidia-drm) are fully loaded during boot, the HDMI monitor shows “out of frequency” then turns black permanently.

Via SSH remote login, I can manually execute modetest -M nvidia-drm -s 63:#0 to force set the native 1920x1080@60 timing of DELL E2417H, and the screen lights up normally with test pattern.

This proves the HDMI hardware circuit, DDC EDID readout, DRM connector enumeration are all functional.

please check your gdm3 service status.

Do not use any DRM application for it now.

nvidia@eaora04v5-1-3:~$ systemctl status gdm3
Warning: The unit file, source configuration file or drop-ins of gdm.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
● gdm.service - GNOME Display Manager
Loaded: loaded (/lib/systemd/system/gdm.service; static; vendor preset: enabled)
Drop-In: /etc/systemd/system/gdm.service.d
└─override.conf
Active: active (running) since Sat 1970-01-03 20:58:35 CST; 2h 0min ago
Main PID: 2013 (gdm3)
Tasks: 3 (limit: 36368)
Memory: 2.3M
CGroup: /system.slice/gdm.service
└─2013 /usr/sbin/gdm3

Jan 03 20:58:35 eaora04v5-1-3 systemd[1]: Starting GNOME Display Manager…
Jan 03 20:58:35 eaora04v5-1-3 systemd[1]: Started GNOME Display Manager.
Jan 03 20:58:35 eaora04v5-1-3 gdm-launch-environment][2026]: pam_unix(gdm-launch-environment:account): account gdm has password changed in future
Jan 03 20:58:35 eaora04v5-1-3 gdm-launch-environment][2026]: pam_unix(gdm-launch-environment:session): session opened for user gdm by (uid=0)
Jan 03 20:58:35 eaora04v5-1-3 gdm-launch-environment][2026]: pam_unix(gdm-launch-environment:session): session closed for user gdm
Jan 03 20:58:35 eaora04v5-1-3 gdm3[2013]: Child process -2183 was already dead.
nvidia@eaora04v5-1-3:~$ systemctl get-default
graphical.target
nvidia@eaora04v5-1-3:~$

could you restart your gdm3 service and check if xorg log will get updated? or if gdm3 gives you any error that tells xorg not able to be up?

nvidia@eaora04v5-1-3:~$ sudo cp /var/log/Xorg.0.log /var/log/Xorg.0.log.old
nvidia@eaora04v5-1-3:~$ sudo systemctl daemon-reload
nvidia@eaora04v5-1-3:~$ sudo systemctl restart gdm3
Warning: The unit file, source configuration file or drop-ins of gdm3.service changed on disk. Run 'systemctl daemon-reload' to reload units.
nvidia@eaora04v5-1-3:~$ sleep 30
nvidia@eaora04v5-1-3:~$ cat /var/log/Xorg.0.log
nvidia@eaora04v5-1-3:~$ 

Hi Wayne,

I followed your steps:

  1. Backed up old Xorg log
  2. Executed sudo systemctl daemon-reload
  3. Restarted gdm3 and waited for 30 seconds

The warning still persists after daemon-reload:

Warning: The unit file, source configuration file or drop-ins of gdm3.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
This warning comes from the custom override.conf I added for gdm, and it will not affect service execution

Could you disable gdm3 and try some very basic binaries like startX or xinit and see what it would show?

You could try following to see if you get better log.
Edit /etc/gdm3/custom.conf
uncomment the last line and reboot.

[debug]
# Uncomment the line below to turn on debugging
# More verbose logs
# Additionally lets the X server dump core if it crashes
#Enable=true

Then run: journalctl -xu gdm and review the log.

Do the 2 files this returns exist?
systemctl show gdm -p FragmentPath -p SourcePath -p DropInPaths

Is this service ok?
systemctl status nv-graphics.service --no-pager -l

If not, do you have apt search nvidia-l4t-init installed?

Hi Wayne,

The first xinit test failed due to missing xterm package. I have installed xterm and re-run the test.

Observation:
The X server can start successfully, but the HDMI monitor remains black all the time while X server is running.

root@eaora04v5-1-3:/home/nvidia# > ~/xinit_log.txt
root@eaora04v5-1-3:/home/nvidia# sudo DISPLAY=:0 xinit >> ~/xinit_log.txt 2>&1 &
[1] 4329
root@eaora04v5-1-3:/home/nvidia# sleep 40
[1]+  Done                    sudo DISPLAY=:0 xinit >> ~/xinit_log.txt 2>&1
root@eaora04v5-1-3:/home/nvidia# sudo pkill Xorg
root@eaora04v5-1-3:/home/nvidia# cat ~/xinit_log.txt


X.Org X Server 1.20.13
X Protocol Version 11, Revision 0
Build Operating System: linux Ubuntu
Current Operating System: Linux eaora04v5-1-3 5.10.192-rt96-tegra #16 SMP PREEMPT Wed Mar 11 14:11:09 CST 2026 aarch64
Kernel command line: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 mminit_loglevel=4 console=ttyTCU0,115200 console=ttyAMA0,115200 console=tty0 firmware_class.path=/etc/firmware fbcon=map:0 net.ifnames=0 nospectre_bhb 
Build Date: 04 March 2025  05:35:23AM
xorg-server 2:1.20.13-1ubuntu1~20.04.20 (For technical support please see http://www.ubuntu.com/support) 
Current version of pixman: 0.38.4
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Sun Jan  4 02:09:07 1970
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
xinit: Unable to run program "xterm": No such file or directory
Specify a program on the command line or make sure that /usr/bin
is in your path.

xinit: connection to X server lost

waiting for X server to shut down (II) Server terminated successfully (0). Closing log file.

root@eaora04v5-1-3:/home/nvidia# 


What is the xorg log after your installation of xterm?

Are you sure your rootfs is really the one that we provided by default?

I mean xterm should not be a missing package here that needs to be installed by yourself.

Hi,

After installing xterm and running xinit, the X server can be started successfully without crash.
However, the HDMI monitor remains black all the time while X server is running.

This issue exists without gdm3, so it is not a gdm-related problem

Attached is the complete xorg log captured during this test.

Xorg.0.log (13.2 KB)

I didn’t mean gdm has anything to do with this issue.

I only need the xorg log to check the status. Please do not guess anything by yourself.

Xorg.0.log (13.2 KB)

Hi, I have additional information to share. I found that the sysfs node does not exist:
nvidia@eaora04v5-1-3:~$ cat /sys/class/drm/card0-HDMI-A-1/mode cat: /sys/class/drm/card0-HDMI-A-1/mode: No such file or directory

I found critical error logs in early kernel boot:
[ 2.618774] tegra_dc_assign_hw_data: no matching compatible node
[ 2.618777] tegradccommon module_init failed
[ 2.618779] tegradc module_init failed

The tegradc (Tegra Display Controller) driver fails to initialize at boot.
This may affect the initial display mode configuration sequence performed by NVKMS, which I suspect leads to incompatible timing and permanent HDMI sync loss after power-on.

Attached full dmesg log filtered for display subsystem.