Orin Nano Display port hot plug fail

Hello Nvidia teams

I encountered an issue with the DisplayPort hot-plug functionality on the Orin Nano using Jetpack 6.0.
When the DisplayPort is connected before booting the custom board, the monitor works as expected. However, if I unplug and replug the DisplayPort after booting, the monitor fails to display.

I tested the same process on the Orin NX, and it works normally.
I also test both modules in JP5.1.1, both modules work normally.
Could you please provide any advice or suggestions? Thank you!

Here are the logs I provided for your reference.
Please help me review and confirm. Thanks

Orin Nano xrandr

nvidia@tegra-ubuntu:~$ xrandr
Screen 0: minimum 0 x 0, current 3200 x 1080, maximum 32768 x 32768
default connected primary 3200x1080+0+0 338mm x 190mm
   3200x1080      0.00*

Orin NX xrandr

nvidia@tegra-ubuntu:~$ xrandr
Screen 0: minimum 0 x 0, current 1280 x 720, maximum 32768 x 32768
default connected primary 1280x720+0+0 338mm x 190mm
   1280x720       0.00*

Detect HPD pin Booting->Display->DP replug->close
Blue line HPD signal
Yellow line monitor 3.3V

Nano_HPD_dmesg.txt (56.5 KB)
Nano_HPDFlashing.txt (376.9 KB)
Nano_Xorg.0.log (18.9 KB)
NX_HPD_dmesg.txt (67.5 KB)
NX_HPD_Flashing.txt (295.7 KB)
NX_Xorg.0.log (29.4 KB)

The driver in use on your Orin Nano board seems not the default setting. Are you sure you didn’t customize something else in the software?

Hi WayneWWW

Thanks for your reply.

How can I configure the driver to work?
Which driver should I set up?
Is the driver on my Orin NX module working correctly?

I haven’t made any specific software configurations for the Orin Nano.
Based on my expectations, both Orin NX and Orin Nano modules should share the same software settings.

This is not something that needs to get configured. The default setting already DP.

The problem here is your Orin Nano went to use another driver.

For example, it goes to use fbdev driver.

05 [    29.170] (II) FBDEV: driver for framebuffer: fbdev
106 [    29.170] (WW) Falling back to old probe method for NVIDIA
107 [    29.170] (WW) Falling back to old probe method for modesetting
108 [    29.170] (EE) open /dev/dri/card0: No such file or directory
109 [    29.170] (WW) Falling back to old probe method for fbdev
110 [    29.170] (II) Loading sub module "fbdevhw"
111 [    29.170] (II) LoadModule: "fbdevhw"
112 [    29.170] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
113 [    29.170] (II) Module fbdevhw: vendor="X.Org Foundation"
114 [    29.171]    compiled for 1.21.1.4, module version = 0.0.2
115 [    29.171]    ABI class: X.Org Video Driver, version 25.2
116 [    29.171] (II) FBDEV(0): using default device
117 [    29.171] (II) FBDEV(0): Creating default Display subsection in Screen section
118         "Default Screen Section" for depth/fbbpp 24/32
119 [    29.171] (==) FBDEV(0): Depth 24, (==) framebuffer bpp 32
120 [    29.171] (==) FBDEV(0): RGB weight 888
121 [    29.171] (==) FBDEV(0): Default visual is TrueColor
122 [    29.171] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
123 [    29.171] (II) FBDEV(0): hardware: simple (video memory: 8640kB)
124 [    29.171] (DB) xf86MergeOutputClassOptions unsupported bus type 0
125 [    29.171] (II) FBDEV(0): checking modes against framebuffer device...
126 [    29.171] (II) FBDEV(0): checking modes against monitor...
127 [    29.171] (II) FBDEV(0): Virtual size is 1920x1080 (pitch 1920)
128 [    29.171] (**) FBDEV(0):  Built-in mode "current"
129 [    29.171] (==) FBDEV(0): DPI set to (96, 96)
130 [    29.171] (II) Loading sub module "fb"
131 [    29.171] (II) LoadModule: "fb"
132 [    29.171] (II) Module "fb" already built-in
133 [    29.171] (**) FBDEV(0): using shadow framebuffer
134 [    29.171] (II) Loading sub module "shadow"
135 [    29.171] (II) LoadModule: "shadow"
136 [    29.171] (II) Loading /usr/lib/xorg/modules/libshadow.so
137 [    29.172] (II) Module shadow: vendor="X.Org Foundation"
138 [    29.172]    compiled for 1.21.1.4, module version = 1.1.0
139 [    29.172]    ABI class: X.Org ANSI C Emulation, version 0.4
140 [    29.172] (II) UnloadModule: "nvidia"
141 [    29.172] (II) Unloading nvidia
142 [    29.172] (II) UnloadSubModule: "wfb"
143 [    29.172] (II) Unloading wfb
144 [    29.172] (II) UnloadModule: "modesetting"
145 [    29.172] (II) Unloading modesetting
146 [    29.172] (II) FBDEV(0): FBIOBLANK: Invalid argument (Screen blanking not supported by kernel - disabling)
147 [    29.174] (==) FBDEV(0): Backing store enabled
148 [    29.175] (==) FBDEV(0): DPMS enabled

But your Orin NX is using correct driver.

    18.223]    ABI class: X.Org ANSI C Emulation, version 0.4
 89 [    18.226] (II) NVIDIA(0): Creating default Display subsection in Screen section
 90         "Default Screen Section" for depth/fbbpp 24/32
 91 [    18.226] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
 92 [    18.226] (==) NVIDIA(0): RGB weight 888
 93 [    18.226] (==) NVIDIA(0): Default visual is TrueColor
 94 [    18.226] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
 95 [    18.226] (**) NVIDIA(0): Option "AllowEmptyInitialConfiguration" "true"
 96 [    18.226] (**) NVIDIA(0): Enabling 2D acceleration
 97 [    18.226] (II) Loading sub module "glxserver_nvidia"
 98 [    18.226] (II) LoadModule: "glxserver_nvidia"
 99 [    18.226] (II) Loading /usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
100 [    18.257] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"
101 [    18.257]    compiled for 1.6.99.901, module version = 1.0.0
102 [    18.257]    Module class: X.Org Server Extension
103 [    18.257] (II) NVIDIA GLX Module  540.3.0  Release Build  (bugfix_main)  (buildbrain@mobile-u64-6367-d8000)  Mon May  6 10:07:17 PDT 2024
104 [    18.258] (II) NVIDIA: The X server supports PRIME Render Offload.
105 [    18.687] (--) NVIDIA(0): Valid display device(s) on GPU-0 at SoC
106 [    18.687] (--) NVIDIA(0):     DFP-0
107 [    18.687] (--) NVIDIA(0):     DFP-1
108 [    18.691] (II) NVIDIA(0): NVIDIA GPU Orin (nvgpu) (GA10B) at SoC (GPU-0)
109 [    18.692] (--) NVIDIA(0): Memory: 7803952 kBytes
110 [    18.692] (--) NVIDIA(0): VideoBIOS: 
111 [    18.696] (--) NVIDIA(GPU-0): Asustek Computer Inc ASUS VA24E (DFP-0): connected
112 [    18.696] (--) NVIDIA(GPU-0): Asustek Computer Inc ASUS VA24E (DFP-0): Internal DisplayPort
113 [    18.696] (--) NVIDIA(GPU-0): Asustek Computer Inc ASUS VA24E (DFP-0): 2380.0 MHz maximum pixel clock
114 [    18.696] (--) NVIDIA(GPU-0): 
115 [    18.702] (--) NVIDIA(GPU-0): DFP-1: disconnected
116 [    18.702] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
117 [    18.702] (--) NVIDIA(GPU-0): DFP-1: 165.0 MHz maximum pixel clock
118 [    18.702] (--) NVIDIA(GPU-0): 
119 [    18.776] (==) NVIDIA(0): 
120 [    18.776] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
121 [    18.776] (==) NVIDIA(0):     will be used as the requested mode.
122 [    18.776] (==) NVIDIA(0): 

What is the xorg log showing for the connected and boot case for your Orin Nano?

Here is the Xorg log for the Orin Nano during boot with the DP display connected.
I’ve also attached a screenshot of the Orin Nano desktop.

Nano_bootDisplay_Xorg.0.log (18.9 KB)

Looks like this is still wrong one.

What is the result of lsmod on your Orin nano?

Below is the output of the lsmod command from my Orin Nano.

nvidia@tegra-ubuntu:~$ lsmod
Module                  Size  Used by
lzo_rle                16384  36
lzo_compress           16384  1 lzo_rle
zram                   32768  12
zsmalloc               32768  1 zram
ramoops                28672  0
reed_solomon           20480  1 ramoops
joydev                 32768  0
snd_soc_tegra186_asrc    36864  1
snd_soc_tegra210_admaif   118784  1
snd_soc_tegra_pcm      16384  1 snd_soc_tegra210_admaif
snd_soc_tegra210_ope    32768  1
snd_soc_tegra210_mixer    45056  1
snd_soc_tegra210_afc    20480  6
snd_soc_tegra186_arad    24576  2 snd_soc_tegra186_asrc
snd_soc_tegra186_dspk    20480  2
snd_soc_tegra210_dmic    20480  4
snd_soc_tegra210_mvc    20480  2
snd_soc_tegra210_adx    28672  4
snd_soc_tegra210_i2s    24576  6
snd_soc_tegra210_sfc    57344  4
snd_soc_tegra210_amx    32768  4
tegra210_adma          24576  0
snd_soc_tegra210_ahub  1257472  3 snd_soc_tegra210_ope,snd_soc_tegra210_sfc
nvvrs_pseq_rtc         16384  0
fusb301                24576  0
crct10dif_ce           20480  1
tegra234_oc_event      16384  0
snd_soc_tegra_machine_driver    16384  0
snd_soc_tegra_utils    28672  2 snd_soc_tegra210_admaif,snd_soc_tegra_machine_driver
snd_soc_simple_card_utils    28672  1 snd_soc_tegra_utils
tegra_cactmon_mc_all    16384  0
snd_hda_codec_hdmi     61440  1
nvpmodel_clk_cap       16384  0
thermal_trip_event     16384  0
tegra_aconnect         16384  0
rfkill                 36864  3
at24                   24576  0
snd_hda_tegra          20480  0
snd_hda_codec         126976  2 snd_hda_codec_hdmi,snd_hda_tegra
pwm_tegra_tachometer    16384  0
snd_hda_core           94208  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_tegra
r8168                 495616  0
nvidia_vrs_pseq        16384  0
nvidia               1458176  0
mc_hwpm                16384  0
tegra_pcie_dma_test    20480  0
tegra_pcie_edma        20480  1 tegra_pcie_dma_test
host1x_fence           24576  0
tegra_dce              98304  2 nvidia
tsecriscv              28672  1 nvidia
bridge                241664  0
stp                    20480  1 bridge
llc                    20480  2 bridge,stp
mttcan                 65536  0
usb_f_ncm              28672  2
nvpps                  28672  1 mttcan
can_dev                36864  1 mttcan
usb_f_mass_storage     45056  2
can_raw                28672  0
can                    28672  1 can_raw
nvhost_isp5            16384  0
nvhost_vi5             20480  0
nvhost_nvcsi_t194      16384  0
usb_f_acm              16384  2
u_serial               20480  3 usb_f_acm
usb_f_rndis            28672  2
u_ether                28672  2 usb_f_rndis,usb_f_ncm
libcomposite           61440  16 usb_f_rndis,usb_f_mass_storage,usb_f_acm,usb_f_ncm
tegra_camera          245760  3 nvhost_isp5,nvhost_nvcsi_t194,nvhost_vi5
v4l2_dv_timings        36864  1 tegra_camera
nvhost_nvcsi           24576  1 tegra_camera
tegra_camera_platform    24576  4 nvhost_isp5,nvhost_nvcsi_t194,tegra_camera,nvhost_vi5
capture_ivc            28672  1 tegra_camera
tegra_camera_rtcpu    176128  2 capture_ivc,tegra_camera
ivc_bus                24576  2 capture_ivc,tegra_camera_rtcpu
hsp_mailbox_client     20480  2 ivc_bus,tegra_camera_rtcpu
ivc_ext                20480  2 ivc_bus,capture_ivc
v4l2_fwnode            20480  1 tegra_camera
v4l2_async             20480  2 v4l2_fwnode,tegra_camera
videobuf2_dma_contig    24576  1 tegra_camera
videobuf2_memops       20480  1 videobuf2_dma_contig
videobuf2_v4l2         28672  1 tegra_camera
videobuf2_common       61440  4 videobuf2_dma_contig,videobuf2_v4l2,tegra_camera,videobuf2_memops
governor_userspace     16384  0
videodev              249856  4 v4l2_async,videobuf2_v4l2,tegra_camera,videobuf2_common
tegra_drm             344064  0
nvhost_pva            151552  0
nvhost_nvdla           98304  0
tegra_wmark            16384  0
nvhost_capture         20480  2 nvhost_isp5,nvhost_vi5
nvhwpm                106496  4 mc_hwpm,tegra_drm,nvhost_nvdla,nvhost_pva
cec                    53248  1 tegra_drm
mc                     57344  4 videodev,videobuf2_v4l2,tegra_camera,videobuf2_common
host1x_nvhost          40960  9 nvhost_isp5,nvhost_nvcsi_t194,nvidia,tegra_camera,nvhost_nvdla,nvhost_capture,nvhost_nvcsi,nvhost_pva,nvhost_vi5
drm_kms_helper        278528  1 tegra_drm
nvidia_p2p             20480  0
ina3221                24576  0
nvgpu                2654208  0
governor_pod_scaling    36864  0
host1x                180224  6 host1x_nvhost,host1x_fence,nvgpu,tegra_drm,nvhost_nvdla,nvhost_pva
mc_utils               16384  3 nvidia,nvgpu,tegra_camera_platform
nvmap                 204800  1 nvgpu
nvsciipc               24576  1 nvmap
fuse                  126976  5
drm                   602112  3 drm_kms_helper,nvidia,tegra_drm
ip_tables              32768  0
x_tables               45056  1 ip_tables
ipv6                  471040  115 bridge
pwm_fan                24576  0
pwm_tegra              20480  1
tegra_bpmp_thermal     16384  0
tegra_xudc             45056  0
ucsi_ccg               28672  0
typec_ucsi             32768  1 ucsi_ccg
typec                  53248  1 typec_ucsi
nvme                   45056  1
nvme_core              90112  2 nvme
phy_tegra194_p2u       16384  6
pcie_tegra194          40960  0
nvidia@tegra-ubuntu:~$

nvidia-modeset driver is missing. You shall see this driver in your OrinNX result.

Hi WayneWWW,

Thank you for your response.

I referred to the jetson-orin-nano-devkit.conf file, and successfully got the nvidia-modeset driver to work.
The DisplayPort hot-plug on the Orin Nano with the custom board now works as expected.

1 Like

I am just curious. Why do you need to “refer to jetson-orin-nano-devkit.conf” to make it work? jetson-orin-nano-devkit.conf shall not affect whether this driver is loaded or not.

Hi WayneWWW

Apologies for the delayed response.
The issue was caused by a mistake during my porting process.
I loaded the wrong path for the INITRD value in customer.conf.common.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.