TX1 adapter board USB ports No longer work with TX2 module attached

Hello,

I have a situation where the adapter board I built for TX1 does not function as expected with the TX2 module. The USB ports do not work and as a result, I am unable to access the GUI/terminal to troubleshoot the problem. However, the TX2 does work on the dev board, and the adapter board is still functional when connected to the TX1 module.

Can anyone help and possibly, provide me with step by step guidance as to how to troubleshoot and/or to modify things to on the TX2, so that it can work with the adapter board.

Thank you!

Knowing the L4T release used (such as R28.1) will help. If this is someone else’s carrier, then they should provide a board support package with a new device tree. If not, then you may need to read up from the OEM design guide. See:
https://developer.nvidia.com/embedded/downloads#?search=oem%20product%20design

EDIT: Additionally, is this a commonly available carrier board (a model would help), or completely custom?

R28 (release), REVISION: 1.0, GCID: 9379712, BOARD: t186ref, EABI: aarch64, DATE: Thu Jul 20 07:59:31 UTC 2017

Older version that I used with my custom board was:

R23 (release), REVISION: 2.0, GCID: 6630372, BOARD: t210ref, EABI: hard, DATE: Tue Feb 9 01:49:02 UTC 2016

Looks same as https://devtalk.nvidia.com/default/topic/1025519/

In summary:

R28 (release), REVISION: 1.0, GCID: 9379712, BOARD: t186ref, EABI: aarch64, DATE: Thu Jul 20 07:59:31 UTC 2017

Older version that I used with my custom board was:

R23 (release), REVISION: 2.0, GCID: 6630372, BOARD: t210ref, EABI: hard, DATE: Tue Feb 9 01:49:02 UTC 2016

Does this maybe apply/relate to the problem you describe?

https://elinux.org/Jetson/TX2_USB

Thanks for pointing this out.

How do I enable Configuration 3?

That is, configuration as it relates to the custom board design…

And, am I suppose to flash the DTB directly on the dev board, or via a host?

Can you guys help with a bit more of step by step as it relates to my making the necessary updates to have the carrier board board with the TX1 dev tree set-up to work with the TX2 in the same manner? I’m a big lost with all the forums and the scattered info.

Once you have a dtb file R28.1 deals with importing this differently than prior releases. It used to be just a file copy and edit to extlinux.conf, but with R28.1 merging both TX1 and TX2, this became a hidden partition and possibly separate for DTB of U-Boot and DTB of kernel. The Documentation download does explain this partially, but the gist is this is explained here:
https://elinux.org/Jetson/TX2_DTB

Flash commands then write to the correct partition, and the “-r” option says to not rebuild or flash the root partition (in other words this is not a full flash, it just flashes the dtb file):

# TX1:
sudo ./flash.sh -r -k DTB jetson-tx1 mmcblk0p1
# TX2:
sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1

Both of the above write a hidden partition by naming its label. The TX1 and TX2 simply name that partition differently.

It is also possible to use dd to write this partition. See:
https://devtalk.nvidia.com/default/topic/1021660/jetson-tx1/is-there-any-other-method-in-l4t-r28-1-to-update-dtb-file-for-tx1-besides-flashing-the-dtb-partitio-/post/5200056/#5200056