Why the HDMI can't display GUI desktop, but the tty console is OK on our own carrier board?

Hi,everyone:
We developed a custom carrier board, the board works well but the HDMI can’t display GUI desktop,when I use Ctrl+alt+f1, the tty console can display and works well.BTW, the GPU module is works well on the Nvidia’s carrier board.
Someone tell me this may be a HW problem, but I compare my design to reference design and all the same. Someone can give me some suggestion? I get these boot message like below:

[   27.611130] tegradc 15210000.nvdisplay: hdmi: pclk:148500K, set prod-setting:prod_c_150M

[ 35.922003] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 35.953757] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 35.981291] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.187072] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.293531] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.346034] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.364880] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.386540] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.556727] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0
[ 36.574751] tegradc 15210000.nvdisplay: sanitize_flip_args: WIN 3 invalid size:w=0,h=0,out_w=0,out_h=0

In console mode standard VGA modes are used. Configuration is different for graphical modes.

What do you see from this? This is an indicator of automatic configuration data being found:

sudo -s
find /sys -name edid
# If that succeeded, then try this:
cat `find /sys -name edid`
exit

If EDID is present, then it is a configuration issue. If EDID is not present (or not valid), then the i2c query is failing.

@linuxdev :
thank you for ur replay! I do the operation which you said, then I see edid! What’s the right configuration?

Having that file implies automatic configuration has the possibility to succeed. It might still be a case of the driver not liking what it finds. With the “cat” part of those above commands, what data did you get? Please paste the EDID data here…it can be checked and viewed at http://www.edidreader.com to see details of the monitor.

If you add this to the Section “Device” of your “/etc/X11/xorg.conf” file you will see what the driver thinks of that particular EDID data:

Option   "ModeDebug"

Then reboot and post the content of the resulting “/var/log/Xorg.0.log”. This should tell a lot more about what is going on (FYI, the Xorg X11 server runs the graphical mode display and is separate from the console mode…both talk to the NVIDIA video driver).

1 Like

Hi, linuxdev:
I add the line ur mentioned and I receive a lot of message. The message on the beginning is right,such like monitor INFO, resolution support. But at the end of the message a error line displayed:
NVIDIA(0):Failed to set the display configuration.

It would be a lot easier for others to help if you actually copied and pasted the EDID information you find, and the log information you find, into this thread where people can see it.

When HDMI doesn’t work, what monitor is plugged in? Does this monitor work when using the standard devkit board?
Does the contents of the EDID file change depending on whether you’re using the devkit board with your monitor, or your own carrier board with your monitor?
Does your own board use a different DTB of any kind? Does it configure I2C differently?

Hi,I only have the picture of the edid:
http://s14.sinaimg.cn/mw690/001j7aKtzy7gB4sdf538d&690
thank you for examine!

I copy it out:
00 ff ff ff ff ff ff 00 1e 6d 86 5a 06 54 05 00
0c 19 01 03 80 3c 22 78 ea 31 35 a5 55 4e a1 26
0c 50 54 a5 4b 00 71 4f 81 80 95 00 b3 00 a9 c0
81 00 81 c0 90 40 02 3a 80 18 71 38 2d 40 58 2c
45 00 56 51 21 00 00 1e 00 00 00 fd 00 38 4b 1e
53 0f 00 0a 20 20 20 20 20 20 00 00 00 fc 00 32
37 4d 50 33 35 0a 20 20 20 20 20 20 00 00 00 ff
00 35 31 32 4e 54 53 55 41 39 31 39 30 0a 00 24

And I can’t open the website: http://www.edidreader.com

The web site opens for me. However, I see this:

Valid Checksum: FALSE

If you are certain that the data from the edid file is posted correctly into the forum thread, then this means EDID cannot be used due to invalid data. Are you certain this data is an exact match from that file?

Is this a custom or specialized monitor?

Not sure why that site won’t open for you. There are some filters in some countries in the world which cause some remote sites to fail unless a proxy is used, or perhaps clearing browser cache might help if it is just a cache issue.

@linuxdev It’s my mistake that I input a wrong data on EDID. Now I check it and please re-examine. I can’t use google’s service so I can’t open the the website: http://www.edidreader.com.
Thanks A lot.
Because I can use the system on tty mode, so I think there may be a little wrong on something. Maybe a HW or SW, a little…

This now shows valid checksum.

Console mode and graphical mode are two entirely different sets of software sharing the same hardware (GUI runs in an X11 server, console is a separate program). It is quite common for one to work and the other to fail…it isn’t the same program running two separate layouts…X11 runs a lot more software and accesses hardware much more invasively. VGA modes for console text have been long established, and tend to be available even in the oldest of hardware. Failure of text mode tends to be from selection of a mode exceeding the monitor’s scan rate. Failure of graphical mode tends to be from the reported modes of the monitor not matching what the video card supports.

In this case the monitor seems very “compact”…it does not offer a lot of modes, which probably means it isn’t a regular desktop monitor. There were enough modes though that it probably should work. I see these modes as available, and these modes should probably all work:

720×400 @ 70 Hz
640×480 @ 60 Hz
640×480 @ 75 Hz
800×600 @ 60 Hz
800×600 @ 75 Hz
832×624 @ 75 Hz
1024×768i @ 87 Hz
1024×768 @ 60 Hz
1024×768 @ 75 Hz
1280×1024 @ 75 Hz

The next step is to ask the driver why it doesn’t like those modes. Further back the way to do this was given: Put this in xorg.conf’s Section “Device”:

Option   "ModeDebug"

…and then reboot and post the log from “/var/log/Xorg.0.log”. Without this we won’t know why one of those modes were not picked. That option tells the driver to log what it thinks of every one of the monitor’s EDID modes.

Hi,everyone. I resolve this problem: the uart1’s tx pin must set his default status when power up. Can’t driver, pull-up ,pull-down.I do this then the board works well!

@Richardzhr I have your similar problem with our custom carrier board. I dont understand how you solve it. why uart1 impacts the graphic video? can you post please in detail your fix? thanks

I had same problem with TX2 on custom carrier board. I confirm set uart1 pull-down solved the issue.

Hi @moscamich, I have the same issue. Could you tell me how to set uart1 pull-down? I’m new to Jestson. Thanks!

@zhxt - I have custom carrier board with a microcontroller integrated
so we set uart1 low at start for x seconds.
Do you have custom carrier board? If so ask your electronics designer, maybe removing a resistor make the magic.
By device tree source configuration maybe it is more elegant solution by I don’t know where to change.
So I solved quickly for tx1 and tx2 (28.2) with above approach

@moscamich Thanks for the reply.
No, I don’t have a custom carrier board. Mine is the official tx2 DevKit. I just received it yesterday.

Change device tree source is a little out of my knowledge at now, will learn that way later.

I have saw a message form dmesg saying:
“Unsupported HDMI VIC 64, ignoring”

Could this be the reason ?

Development kit works ( for tx1 and tx2), otherwise nvidia guys here won’t have a job anymore .
I suggest to be fast to make a clean and proper installation. Don’t reuse any previous jetpack mixed, stick to ubuntu 16.4 as host if you are new.
People suggest sometimes here to change hdmi cable and so on but by experience development board works.
( here the topic it is for custom carrier board, different problems better for you to don’t mix)
Enjoy your challenge and start again from scratch ;)

@moscamich Thanks for clarify this. I will have a try. :)

@moscamich I got the login window now(but login loop). Stupid me, I don’t even know I have to run the installer.sh to install the NVIDIA driver…

Thank you for your help. Have a nice day!

When there is strange behavior you might start by thinking about whether the drivers are all installed (and not overwritten by an apt update), and whether permissions are correct (this only applies if installing on command line).

To know if drivers are there, see if all show ok from:

sha1sum -c /etc/nv_tegra_release

If you installed via command line, then be sure you’ve unpacked the driver package without sudo, but that sample rootfs was unpacked sudo, and apply_binaries.sh was also run sudo.