L4T 35.4.1 Pinmux

I’m trying to modify the pinmux for the Xavier NX and have had some trouble. For context, I’m working with a Seeed Studio J2012, which has their J202 carrier board. As far as I can tell, that carrier board is supposed to be compatible with the Jetson Xavier NX Development Kit carrier board. This model has the P3668-0003 (16 GB NX production module).

I’ve used the SDK Manager GUI to download Jetpack 5.1.2, so have that downloaded to ~/nvidia/nvidia_sdk/JetPack_5.1.2_Linux_JETSON_XAVIER_NX_TARGETS. I’ve also downloaded the pinmux spreadsheet from here.

I use the spreadsheet to generate the 3 dtsi files. For a baseline test, I’ve generated them without making any changes to the spreadsheet. Then I use pinmux-dts2cfg.py to generate the cfg file like so:

python3 pinmux-dts2cfg.py --pinmux addr_info.txt gpio_addr_info.txt por_val.txt --mandatory_pinmux_file mandatory_pinmux.txt ~/xavier_pinmux/original/tegra19x-jetson_xavier_nx_module-pinmux.dtsi ~/xavier_pinmux/original/tegra19x-jetson_xavier_nx_module-gpio-default.dtsi 1.0 > original.cfg

However, I then compare that to Linux_for_Tegra/bootloader/t186ref/BCT/tegra19x-mb1-pinmux-p3668-a01.cfg and it differs:

$ diff ~/nvidia/nvidia_sdk/JetPack_5.1.2_Linux_JETSON_XAVIER_NX_TARGETS/Linux_for_Tegra/bootloader/t186ref/BCT/tegra19x-mb1-pinmux-p3668-a01.cfg ~/nvidia/nvidia_sdk/JetPack_5.1.2_Linux_JETSON_XAVIER_NX_TARGETS/Linux_for_Tegra/kernel/pinmux/t19x/original.cfg
< ## Pinmux version 1.6
< ## Input pinmux file name: tegra19x-jetson_xavier_nx_devkit-pinmux.dtsi
< ## Input gpio file name: tegra19x-jetson_xavier_nx_devkit-gpio-default.dtsi
< ## Generation date: 2022-02-14 14:52
> ## Pinmux version 1.0
> ## Input pinmux file name: /home/bluecamel/xavier_pinmux/original/tegra19x-jetson_xavier_nx_module-pinmux.dtsi
> ## Input gpio file name: /home/bluecamel/xavier_pinmux/original/tegra19x-jetson_xavier_nx_module-gpio-default.dtsi
> ## Generation date: 2023-09-27 09:56
> pinmux.0x022140e0 = 0x00000001; # CONFIG G7
> pinmux.0x02434088 = 0x00000000; # GPIO soc_gpio11_pg7
< pinmux.0x02212620 = 0x00000001; # CONFIG M1
< pinmux.0x02440038 = 0x00000000; # GPIO dp_aux_ch1_hpd_pm1
< pinmux.0x02434088 = 0x00000459; # soc_gpio11_pg7: sdmmc1, pull-up, tristate-enable, input-enable, lpdr-disable
> pinmux.0x02440038 = 0x00000450; # dp_aux_ch1_hpd_pm1: dp, tristate-enable, input-enable, io_high_voltage-disable, lpdr-disable
> pinmux.0x02434088 = 0x00000058; # soc_gpio11_pg7: rsvd0, pull-up, tristate-enable, input-enable, lpdr-disable
< pinmux.0x02440038 = 0x00000041; # dp_aux_ch1_hpd_pm1: rsvd1, tristate-disable, input-enable, io_high_voltage-disable, lpdr-disable

So, that makes me uncomfortable and makes me think that I’ve maybe got the wrong pinmux spreadsheet? However, it’s the only one that I’ve found in the downloads section.

Could you please advise as to what I may have wrong here?

Sorry for the late response, our team will do the investigation and provide suggestions soon. Thanks