USB 2.0 not detecting after boot-up, but in force recovery mode we are able to detect and operate USB interface.

Hi Sir/Madam,

Problem statement : USB 2.0 not detecting after boot-up, but in force recovery mode we are able to detect and operate USB interface.
Hardware : Jetson SOM-TX2i used in custom carrier board.
Operating system/Kernel : ubuntu 16.04 host PC, Kernel 4.4 is flashed onto board.
USB 2.0 port no usb0
Observation :

  1. When we are using evaluation board we are able to detect usb after boot-up with the same SOM-TX2i.
  2. Please provide inputs to further debug this issue and also if any input is required please let me know.
  3. As it is working on evaluation board we are not doubting the kernel image, is there a specific hardware dependency for USB port because of which it is not working please let us know

Thanks in advance

You will need a different device tree if you change carrier boards, and probably the TX2i has a different tree than does TX2. I am not familiar with what the differences are, but if you used the same device tree in the two cases, then probably the kernel has an incorrect idea of pin routing.

Hi linuxdev

Thanks for the reply. I’m using the default dtb file for TX2i and the same is used for the Eval board( I inserted the TX2i SOM onto the eval board by removing the TX2). If I need to change the device tree, I am facing doubts.

  1. I have 3 dtsi files which are created from excel tool from nvidia, how do I convert these 3 dtsi into one dtsi as dtc compiler requires only one to convert to dtb.
    2.I already tried replacing the sections in the default dtsi by my dtsi sections, but kernel wont bootup in that case.

Thanks in advance.

Which release are you using? This might change file names.

Do know that the flash target selected during flash (e.g., TX2 or TX2i) will automatically select the device tree to use, but the trees which are present by default are intended for the developer kit carrier board without customization. For the case where each (TX2 and TX2i) are flashed correctly with the same release, then I would think USB would work correctly regardless of which one is mounted to the developer kit carrier board.

If both were flashed in this manner, then both should work on the developer kit carrier board without further customization of device tree.

I cannot give you specific advice on dtsi edits, but you will need to say what edits you made to the device tree and how you installed the device tree for the TX2 and TX2i.

Hi linuxdev

Thanks for the reply.Sorry for the late reply, as I was on leave. I’m using R28.2 release.
I never used TX2 SOM that came with the eval/development board. I inserted our TX2i SOM onto the development board. Without any change to dtb USB is detected in Development board. But in our carrier voard, USB is not detected after bootup, but I’m getting “extcon-gpio-states external connection:extcon@1: Cable state 2”.Since straightforward it is not working in our custom board, I tried below steps

  1. I used tegra186-quill-p3489-1000-a00-00-ucm1.dtb file to modify.
  2. We have 3 dtsi files which are generated from Pinmux excel
  3. I decompiled tegra186-quill-p3489-1000-a00-00-ucm1.dtb and saved it in extracted.dts file.
  4. Replaced the section in extracted.dts with our sections in 3 dtsi files.
  5. Then compiled using dtc and saved it as tegra186-quill-p3489-1000-a00-00-ucm1.dtb
  6. Copied it to kernel/dtb directory and flashed
  7. But, On bootup it’s getting struck.
  8. I’m attaching my 3 dtsi files for reference

Thanks in advance (5.58 KB)

I couldn’t tell you about the specific dtsi edits, but someone familiar with custom carrier boards on the TX2i should be able to answer with what you’ve provided. Since the USB failure only occurs on the new carrier board, then the device tree is very likely in need of more edits (it may be as simple as editing where the PHY is found).

This kind of issues are very common on this forum.

In general, please share your dmesg for us to know why usb2-0 does not work.
You could also read tx2 adaptation guide. Please be careful that if you are using r28.2, you need to read v1.7.

Jetson TX2 Platform Adaptation and Bring-Up Guide 1.7 2018/06/29

Hi WayneWWW,

Thanks for the reply now it’s working properly.

To others who might be facing this issue:

  1. Modified the DTB as our carrier board does not have the vdd_usb2_5v supply and modified as per the adaptation guide.
  2. Flashed and still, USB was failing
  3. Instead of using the power-tree dtsi file for changing the USB power change, modified the standard(ucm1) DTB file as per the change.
  4. Flashed and tested. USB is working now.