USB2-1 not working after software reboot but after power-off

Dear NVidia Team

We have a custom carrier with an M.2 Key B Slot where we connect an LTE module. The used signals for USB2 are USB1_D_P (Pin 117) and USB1_D_N (Pin 115), the ones for USB3 are USBSS2_RX_P/N (Pin 53 and 51) and USBSS2_TX_P/N (Pin 59 and 57).

Now when we power-on the device, everything works as expected and the LTE module is recognized without any errors. If we then do a software reboot (# sudo reboot), the usb device is not anymore recognized (nothing listed with “lsusb”) and we see the following errors:

[ 8.485709] usb 1-2: new low-speed USB device number 2 using tegra-xusb
[ 8.629486] usb 1-2: device descriptor read/64, error -71
[ 8.870132] usb 1-2: device descriptor read/64, error -71
[ 9.121707] usb 1-2: new low-speed USB device number 3 using tegra-xusb
[ 9.259016] usb 1-2: device descriptor read/64, error -71
[ 9.506082] usb 1-2: device descriptor read/64, error -71
[ 10.033708] usb 1-2: new low-speed USB device number 4 using tegra-xusb
[ 10.041663] usb 1-2: Device not responding to setup address.
[ 10.255068] usb 1-2: Device not responding to setup address.
[ 10.465711] usb 1-2: device not accepting address 4, error -71
[ 10.605571] usb 1-2: new low-speed USB device number 5 using tegra-xusb
[ 10.622749] usb 1-2: Device not responding to setup address.
[ 10.847172] usb 1-2: Device not responding to setup address.
[ 11.061706] usb 1-2: device not accepting address 5, error -71

Here is the full dmesg output after a power-off:
dmesg_ok.txt (74.1 KB)

Here is the full dmesg output in the failure case:
dmesg.txt (73.0 KB)

Here our device tree:
out.dts (310.4 KB)

If we connect the LTE Module via an onboard hub, it always gets correctly enumerated. Kernel Settings like “usbcore.autosuspend=-1” did not help. Weirdly is that the device gets in the failure case recognized as low-speed usb device.

Thank you for your help.
If you need any additional information, let us know.

Best regards

Please share schematic and device tree patches.

Hi WanyeWWW

Thank you for your reply.
We provided the device tree in our initial post. Or do you need something else? The schematic I first have to check if we can upload it here.

We found now a workaround. If we unbind the device from the usb prior to a reboot, the device will be recognized after:

sudo echo “2-3” > /sys/bus/usb/drivers/usb/unbind
reboot

Any idea why this helps?
Thank you.

It always needs schematic when dealing with usb issue.

I am not your partner or your coworker so I don’t know your exact design.
Some users’ problems are their DT totally not matches to their board design. Such cases always happened.

Thus, to save both of our time, share the schematic from the beginning.

Hi WayneWWW

Here our M.2 Key B Schematic:

USB2.0 connection:

USB3.0 connection:

Let us know if you need further information.

The key B schematic seems not have good resolution. Zoom in still not able to read.

sorry for that, here a better quality picture:

Thanks. Let me check

Hi WanyeWWW

Any update on this topic?
Thank you.

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.
Thanks

Hi, what is the config pin connection to Orin NX? Can you share the “onboard hub” design?