TX2 HDMI problem

TX2 Connects to Monitor via HDMI Power On Card Hangs Here
The display is not moving here

tegradc tegradc.1:old edid len =256
tegradc tegradc.1:hdmi:No EDID change. No userspace active. Using cached mode to initialize dc!
Unsupported HDMI VIC 82, ignoring
Unsupported HDMI VIC 208, ignoring
Unsupported HDMI VIC 30, ignoring
Unsupported HDMI VIC 32, ignoring
Unsupported HDMI VIC 184, ignoring
tegradc tegradc.1: hdmi: plugged
tegradc tegradc.1: read_edid_into_buffer:extension_blocks=1, max_ext_blocks=3
tegradc tegradc.1: hdmi_recheck_edid: read_edid_into_buffer() returned 256
tegradc tegradc.1: old edid len = 256
tegradc tegradc.1: hdmi: No EDID change. Nouserspace active. Using cached mode to initialize dc!
Unsupported HDMI VIC 82, ignoring
Unsupported HDMI VIC 208, ignoring
Unsupported HDMI VIC 30, ignoring
Unsupported HDMI VIC 32, ignoring
Unsupported HDMI VIC 184, ignoring
tegradc tegradc.1: hdmi: plugged
random: nonblocking pool is initialized
tegradc tegradc.1: nominal-pcl;:69111780 parent:69110937 div:1.0 pclk:69110937 68420583~75331753
tegradc tegradc.1: hdmi: pclk:69111K, set prod-setting:prod_c_hdmi_54m_75m
tegradc tegradc.1: hdmi: plugged
tegradc tegradc.1: read_edid_into_buffer:extension_blocks=1, max_ext_blocks=3
tegradc tegradc.1: hdmi_recheck_edid: read_edid_into_buffer() returned 256
tegradc tegradc.1: old edid len = 256
tegradc tegradc.1: hdmi: No EDID change. Nouserspace active. Using cached mode to initialize dc!
Unsupported HDMI VIC 82, ignoring
Unsupported HDMI VIC 208, ignoring
Unsupported HDMI VIC 30, ignoring
Unsupported HDMI VIC 32, ignoring
Unsupported HDMI VIC 184, ignoring

If you start the TX2 first, and then connect the HDMI monitor, it works normally. What is the situation?
My version is 28.1

TX2 not booting up with HDMI connected - Jetson TX2 - NVIDIA Developer Forums #19

Does this patch have any effect on me?

Your monitor seems to be failing EDID. Is there anything unusual about this monitor or its cables?

Is this a 4k monitor?

That patch might or might not matter. Which release are you using? You might try the R28.2 release, but I’d check first for other issues (such as cables).

I want to stop detecting HDMI, and how to set the mode with a fixed resolution of 1280x800?

The above problem should be a problem with the cable, but always detecting HDMI causes me to be unable to enter the system. Unplugging HDMI and plugging it in again can solve this problem. But how can I stop the system from detecting HDMI? Does anyone know?

I see on the Raspberry Pi that I can directly specify the resolution output by not detecting any information on the HDMI device.
Add hdmi_ignore_edid=0xa5000080 in the config file
Is TX2 also OK? Or similar approach?

I tried to modify xorg.config but it didn’t work.

root@tegra-ubuntu:~# sudo cat `find /sys -name 'edid'`
 00 ff ff ff ff ff ff 00 49 f7 00 00 00 00 00 00
 01 1a 01 03 80 00 00 00 0a d7 a5 a2 59 4a 96 24
 14 50 54 af ce 00 81 c0 01 01 01 01 01 01 01 01
 01 01 01 01 01 01 12 1b 00 7b 50 20 15 30 30 20
 36 00 05 a3 10 00 00 18 0e 1f 00 80 51 00 1e 30
 40 80 37 00 20 56 00 00 00 1c 00 00 00 fd 00 32
 4c 1e 50 10 00 0a 20 20 20 20 20 20 00 00 00 fc
 00 41 41 41 0a 20 20 20 20 20 20 20 20 0a 01 ff
 02 03 23 74 4f 10 9f 14 05 04 13 12 16 11 15 03
 07 02 06 01 23 09 0f 03 83 01 00 00 66 03 0c 00
 10 00 80 01 1d 00 bc 52 d0 1e 20 b8 28 55 40 c4
 8e 21 00 00 1e 01 1d 80 d0 72 1c 16 20 10 2c 25
 80 c4 8e 21 00 00 9e 8c 0a d0 8a 20 e0 2d 10 10
 3e 96 00 13 8e 21 00 00 18 8c 0a d0 90 20 40 31
 20 0c 40 55 00 13 8e 21 00 00 18 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9d

The driver accepts only EDID for modes, I doubt there is a way to set a mode not from EDID.

Your EDID is valid though, checksum is good. It looks like it supports several common older 4:3 aspect ratio timings (e.g., 640x480, 800x600, 1024x768). Some modes are available through extension data, but I believe the driver may not like extensions (I don’t know much about how the driver deals with that).

FYI, here is a list of some debug steps:
https://elinux.org/Jetson_TX2/r28_Display_debug

Probably the simplest thing to test next is to just ask the driver what it thinks about the EDID modes. To do that add this to Section “Device” in your “/etc/X11/xorg.conf” file:

Option   "ModeDebug"

When “ModeDebug” is in the Device section the driver will explicitly log what it thinks about every mode the EDID says is available, including why the mode is accepted or rejected.

Then reboot and attach a copy of “/var/log/Xorg.0.log” here. Regarding attaching log files in the forum, if you look at one of your existing posts and hover the mouse over the quote icon in the upper right you will find a paper clip icon shows…clicking on the paper clip icon will prompt for a file upload.

nvidia@tegra-ubuntu:/$ dmesg | grep tegradc
[    1.736499] tegradc 15210000.nvdisplay: DT parsed successfully
[    1.736533] tegradc 15210000.nvdisplay: Display dc.ffffff8002320000 registered with id=0
[    1.745128] tegradc 15210000.nvdisplay: vblank syncpt # 7 for dc 1
[    1.745133] tegradc 15210000.nvdisplay: vpulse3 syncpt # 8 for dc 1
[    1.747602] tegradc 15210000.nvdisplay: hdmi: no prod_list_hdmi_board, use default range
[    1.777264] tegradc 15210000.nvdisplay: probed
[    2.286834] tegradc 15210000.nvdisplay: fb registered
[    3.043238] tegradc 15210000.nvdisplay: hdmi: pclk:69111K, set prod-setting:prod_c_75M
[   12.378215] tegradc 15210000.nvdisplay: hdmi: plugged
root@tegra-ubuntu:/# cat /sys/kernel/debug/tegradc.0/mode 
pclk: 69300000
h_ref_to_sync: 1
v_ref_to_sync: 2
h_sync_width: 32
v_sync_width: 6
h_back_porch: 43
v_back_porch: 12
h_active: 1280
v_active: 800
h_front_porch: 48
v_front_porch: 3
flags: 0x3
stereo_mode: 0
avi_m: 0x0
vmode: 0x10200000

root@tegra-ubuntu:/# cat /sys/class/graphics/fb0/mode
U:1280x800p-60

This is the news I got.
The /var/log/Xorg.0.log file made me accidentally deleted.

My driver is not a problem. I just want to stop HDMI detection and specify the resolution output. What should I do?

Calmcar-Bao,

I remember xorg can specify the mode you want to use. Please try.

Note that we don’t support modes that not from edid. As a result, please make sure you specify the correct mode.

Could you explain what is “detecting HDMI,”? Is above log can show what is “detecting HDMI”?
I saw you have no problem when you hotplug the HDMI again, but as I understand, hotplug monitor should also do “detect”.

This is my Xorg.conf

# Disable extensions not useful on Tegra.
Section "Module"
    Disable     "dri"
    SubSection  "extmod"
        Option  "omit xfree86-dga"
    EndSubSection
EndSection

Section "Device"
    Identifier  "Tegra0"
    Driver      "nvidia"
# Allow X server to be started even if no display devices are connected.
    Option      "AllowEmptyInitialConfiguration" "true"
    Option      "ModeDebug"
Section "Monitor"
        Identifier "HDMI-2"
    Option      "IgnoreEDIDChecksum" "HDMI-2 "
    Modeline  "1280x800_60.00"   83.50  1280 1352 1480 1680  800 803 809 831 -hsync +vsync
    Option      "ModeDebug"     
EndSection

But it didn’t work

Because the HDMI interface is loose, the HDMI is continuously detected and the system cannot continue to operate. In order to maintain stability, I want the system to skip detecting HDMI and output HDMI directly at the specified resolution

root@tegra-ubuntu:/etc/X11# get-edid | parse-edid
This is read-edid version 3.0.2. Prepare for some fun.
Attempting to use i2c interface
No EDID on bus 0
No EDID on bus 1
No EDID on bus 2
No EDID on bus 3
No EDID on bus 4
No EDID on bus 5
No EDID on bus 6
No EDID on bus 8
1 potential busses found: 7
Bus 7 doesn't really have an EDID...
Couldn't find an accessible EDID on this computer.
I'm sorry nothing was successful. Maybe try some other arguments
if you played with them, or send an email to Matthew Kern <pyrophobicman@gmail.com>.
Partial Read... Try again
root@tegra-ubuntu:/etc/X11# get-edid | edid-decode
bash: edid-decode: command not found
This is read-edid version 3.0.2. Prepare for some fun.
Attempting to use i2c interface
No EDID on bus 0
No EDID on bus 1
No EDID on bus 2
No EDID on bus 3
No EDID on bus 4
No EDID on bus 5
No EDID on bus 6
No EDID on bus 8
1 potential busses found: 7
Bus 7 doesn't really have an EDID...
Couldn't find an accessible EDID on this computer.
I'm sorry nothing was successful. Maybe try some other arguments
if you played with them, or send an email to Matthew Kern <pyrophobicman@gmail.com>.

And I don’t seem to have resolved to the display device.

Modeline  "1280x800_60.00"   83.50  1280 1352 1480 1680  800 803 809 831 -hsync +vsync

This is trying to “add” a mode instead of use a existing mode. Our X11 driver cannot allow to “add” a mode.

Please try similar one as this thread
https://askubuntu.com/questions/74808/how-do-i-force-a-resolution-of-1024x768

If the HDMI interface is loose(you meant the hardware HDMI port?), hotplug should also be affected.

Could you share the dmesg to show us what is going on? I suggest to change to carrier board if the port is really broken.

How about

sudo -s 
cat /sys/kernel/debug/tegradc.0/edid
root@tegra-ubuntu:/etc/X11# cat /sys/kernel/debug/tegradc.0/edid 
 00 ff ff ff ff ff ff 00 49 f7 00 00 00 00 00 00
 01 1a 01 03 80 00 00 00 0a d7 a5 a2 59 4a 96 24
 14 50 54 af ce 00 81 c0 01 01 01 01 01 01 01 01
 01 01 01 01 01 01 12 1b 00 7b 50 20 15 30 30 20
 36 00 05 a3 10 00 00 18 0e 1f 00 80 51 00 1e 30
 40 80 37 00 20 56 00 00 00 1c 00 00 00 fd 00 32
 4c 1e 50 10 00 0a 20 20 20 20 20 20 00 00 00 fc
 00 41 41 41 0a 20 20 20 20 20 20 20 20 0a 01 ff
 02 03 23 74 4f 10 9f 14 05 04 13 12 16 11 15 03
 07 02 06 01 23 09 0f 03 83 01 00 00 66 03 0c 00
 10 00 80 01 1d 00 bc 52 d0 1e 20 b8 28 55 40 c4
 8e 21 00 00 1e 01 1d 80 d0 72 1c 16 20 10 2c 25
 80 c4 8e 21 00 00 9e 8c 0a d0 8a 20 e0 2d 10 10
 3e 96 00 13 8e 21 00 00 18 8c 0a d0 90 20 40 31
 20 0c 40 55 00 13 8e 21 00 00 18 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9d

It’s not that the backplane is damaged, but my HDMI cable is squeezed.

tegradc tegradc.1:old edid len =256
tegradc tegradc.1:hdmi:No EDID change. No userspace active. Using cached mode to initialize dc!
Unsupported HDMI VIC 82, ignoring
Unsupported HDMI VIC 208, ignoring
Unsupported HDMI VIC 30, ignoring
Unsupported HDMI VIC 32, ignoring
Unsupported HDMI VIC 184, ignoring
tegradc tegradc.1: hdmi: plugged
tegradc tegradc.1: read_edid_into_buffer:extension_blocks=1, max_ext_blocks=3
tegradc tegradc.1: hdmi_recheck_edid: read_edid_into_buffer() returned 256
tegradc tegradc.1: old edid len = 256
tegradc tegradc.1: hdmi: No EDID change. Nouserspace active. Using cached mode to initialize dc!
Unsupported HDMI VIC 82, ignoring
Unsupported HDMI VIC 208, ignoring
Unsupported HDMI VIC 30, ignoring
Unsupported HDMI VIC 32, ignoring
Unsupported HDMI VIC 184, ignoring
tegradc tegradc.1: hdmi: plugged
random: nonblocking pool is initialized
tegradc tegradc.1: nominal-pcl;:69111780 parent:69110937 div:1.0 pclk:69110937 68420583~75331753
tegradc tegradc.1: hdmi: pclk:69111K, set prod-setting:prod_c_hdmi_54m_75m
tegradc tegradc.1: hdmi: plugged
tegradc tegradc.1: read_edid_into_buffer:extension_blocks=1, max_ext_blocks=3
tegradc tegradc.1: hdmi_recheck_edid: read_edid_into_buffer() returned 256
tegradc tegradc.1: old edid len = 256
tegradc tegradc.1: hdmi: No EDID change. Nouserspace active. Using cached mode to initialize dc!
Unsupported HDMI VIC 82, ignoring
Unsupported HDMI VIC 208, ignoring
Unsupported HDMI VIC 30, ignoring
Unsupported HDMI VIC 32, ignoring
Unsupported HDMI VIC 184, ignoring

Always loop above

It will loop to detect HDMI, resulting in the system will not continue to go on, re-plug HDMI will solve the problem, but this is not a stable solution

It is weird to see “Nouserspace active”. I need more information for your board.

Are you using fresh BSP from Jetpack?
Are you using devkit or custom carrier board?
Do you disable X11? (I guess not, but still need to ask)

What is your monitor?

Please change different HDMI cable and monitor if possible.

root@tegra-ubuntu:/etc/X11# xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
HDMI-2 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     60.00*+  60.00    50.00    59.94  
   1920x1080i    60.00    50.00    59.94  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1360x768      60.02  
   1280x768      59.87  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    70.07    60.00  
   800x600       75.00    60.32  
   720x576       50.00  
   720x576i      50.00  
   720x480       60.00    59.94  
   720x480i      60.00    59.94  
   640x480       75.00    60.00    59.94  
   720x400       70.08

Is a small monitor, 28.2 version, I know the problem is because HDMI contact is bad, but if you stop the system to detect hdmi devices? Because of poor contact, it has been detected that there is HDMI insertion, the system will be stuck here does not perform, can cancel the detection