JetPack 6.0 Enabling HDMI on Custom Board Issue... What am I missing?

Hello.

We have a custom carrier board for the p3767-0005 module. The custom board is almost identical to the p3768 dev kit carrier board other than we’ve removed the eeprom, removed the USB hub, added an extra gigabit ethernet (LAN7430) and changed to HDMI.

This carrier board has been used with JetPack 5.1.1 with no issues. I’m now working with JP 6.0 and have added the LAN7430 driver back as a kernel module and am now working on switching to HDMI.

The same carrier board when I made the alterations for HDMI worked great with JP 5.1.1, showing as HDMI when attached to a 4K display:

I’ve attempted to make the changes to DP 6.0 using some of the helpful information found on these forums but I’m running into the edge of my knowledge and need some advice.

I’ve made my own conf file for my carrier board for flashing purposes.

The contents are such:

source "${LDK_DIR}/p3767_ondis.conf.common";

PINMUX_CONFIG="tegra234-mb1-bct-pinmux-p3767-hdmi-a03.dtsi";
PMC_CONFIG="tegra234-mb1-bct-padvoltage-p3767-hdmi-a03.dtsi";
BPFDTB_FILE="tegra234-bpmp-3767-0003-3509-a02.dtb";
DTB_FILE=tegra234-p3768-0000+p3767-0005-nv.dtb;
TBCDTB_FILE="${DTB_FILE}";
EMMC_CFG="flash_t234_qspi_nvme.xml";
OVERLAY_DTB_FILE+=",tegra234-dcb-p3767-0000-hdmi.dtbo";
DCE_OVERLAY_DTB_FILE="tegra234-dcb-p3767-0000-hdmi.dtbo";

The contents of p3767_ondis.conf.common are identical to p3767.conf.common except I use a custom MB2_BCT file where cvb_eeprom_read_size is set to 0x0.

In my custom conf file I have used the files that would have been chosen through the standard p3768-0000-p3767-0000-a0.conf for the development board (confirmed by comparing flash logs).

I flash to NVMe and the system boots seemingly ok. However xrandr shows me on a small display:

Which makes me believe I have done something wrong in reconfiguring.

And on the large 4K display it shows me the same but a different resolution (not 4K):

I have attached dmesg and debug logs.

Thank you for any advice that could be given for my next steps.

Ben.

dmesg.txt (59.8 KB)
debug_boot_log.txt (77.0 KB)

There is a “,” inside your dtbo path. Are you sure this would work?

And it looks like nvidia driver is missing too. What is the result of lsmod on your board?

Thank you for your reply.

I’m emulating what I saw in p3768-0000-p3767-0000-a0.conf and p3509-a02-p3767-0000.conf files where the OVERLAY_DTB_FILE is compound assigned with the filename prepended with a comma separator.

The overlay seems to be included at flashing, with the following appearing in the log:

copying overlay_dtb(/home/ben/nvidia/nvidia_sdk/JetPack_6.0_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/kernel/dtb/tegra234-dcb-p3767-0000-hdmi.dtbo)... done.

I’ve attached the lsmod, and a comparison seems to reveal that the only relevant differences to the lsmod from a devkit flashed from the same environment is the custom carrier board is missing “nvidia_modeset” (other differences being the lack of a few bluetooth, camera and wifi items, and the addition of the lan743x).

I can’t see any errors related to nvidia_modeset in the boot log or dmesg logs attached to the first post, so is it something incorrect in the flashing environment?

Many thanks for your help,

Ben.

lsmod_custom.txt (4.9 KB)

Then I think the issue here is just modeset driver is gone.

Please check if this is file missing or it cannot load.

I reflashed the dev kit with the kernel I’d recompiled and confirmed that it wasn’t an issue with the recompiled kernel as the driver was loaded.

I then removed the “tegra234-p3768-0000+p3767-0000-dynamic.dtbo” from the “p3768-0000-p3767-0000-a0.conf” and flashed the devkit with that and it reproduced the issue on the dev kit.

I had already tried flashing with the *dynamic.dtbo file on my carrier board and it failed to enter the initial Ubunutu configuation pages. But I must have placed the file before the HDMI DCB overlay, when it should have been at the end.

So this works:

OVERLAY_DTB_FILE+=",tegra234-dcb-p3767-0000-hdmi.dtbo,tegra234-p3768-0000+p3767-0000-dynamic.dtbo";

Many thanks for your help again.

Ben.

So are you going to check this or…?

I am just not sure what did you try to say. That DTBO already not matter as my previous comment.

or the driver has been loaded ?

Apologies. I did check this and then my next steps as detailed above led to believe the issue was caused by an error in flashing.

The nvidia_modeset driver was present and not loaded. I could load it manually using modprobe and it started with no issues.

Separately, adding the *dynamic.dtbo back as an overlay which loads tegra234-p3767-sku-handling.dtsi which disables items based on sku seems to resolve the issue. With this overlay appended, the nvidia_modeset driver is loaded on boot, xrandr works as expected and we achieve a 4K HDMI on our monitor.

Many thanks,

Ben.

1 Like

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