Nvidia Jetson AGX Xavier USB 3.0 Not Working

One of the USBs on JETSON AGX XAVIER is not working, But this USB 3.0 cannot be used for keyboard/mouse , but the host can recognize Nvidia device through dmesg on host , though it is not recognized for flashing the AGX Xavier in recovery mode.

Attached Serial log. @WayneWWW @linuxdev

jetson_agx_xavier_serial_log.txt (31.8 KB)

I don’t see any kind of USB setup during boot, which seems odd. Have you ever flashed this? If so, what release? If not, then what do you see from “head -n 1 /etc/nv_tegra_release”? If you monitor “dmesg --follow”, and then plug something into the port, what shows up? With something plugged into that port, what do you see from “lsusb -t”?

What is the exact thing you want to do here? Flash the board or try to use device as host?

Also, is this devkit or custom board?

I have the same question as linuxdev here. Did you ever flash this board before? In most cases, the problem is on your host and usb cable quality, but not the jetson side if you didn’t flash the board befire.

@linuxdev @WayneWWW This is an Standard AGX Xavier Developer Kit, which was working fine and was in use, we were running L4T 32.6.1 , one USB port above the power adapter suddenly stopped working.

Right Now , we are using release 32.6.1 , With the same release , USB was working fine previously.

There is no issue with bad cable , no issues on the host, problem is on the Jetson side.

with dmesg --follow , It detects , when i insert my keyboard usb dongle , but does not work

[  228.476315] ucsi_ccg 1-0008: port1 evt: Type-C Port Connect Detected
[  228.478253] ucsi_ccg 1-0008: [typec-port1] Cable state:1, cable id:2
[  240.918955] ucsi_ccg 1-0008: port1 evt: Type-C Port Disconnect Detected
[  240.920914] ucsi_ccg 1-0008: [typec-port1] Cable state:0, cable id:2
[  253.618107] ucsi_ccg 1-0008: port1 evt: Type-C Port Connect Detected
[  253.620117] ucsi_ccg 1-0008: [typec-port1] Cable state:1, cable id:2
[  256.866546] usb 1-4: USB disconnect, device number 2
[  257.175191] usb usb1: usb_suspend_both: status 0
[  257.175595] tegra-xusb 3610000.xhci: entering ELPG
[  257.181155] tegra-xusb 3610000.xhci: entering ELPG done
[  473.981705] tegra-xusb 3610000.xhci: exiting ELPG

lsusb -t gives this :



/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=tegra-xusb/4p, 10000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=tegra-xusb/4p, 480M
    |__ Port 4: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 4: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M

Is this removal done by you or not?

[ 256.866546] usb 1-4: USB disconnect, device number 2

@WayneWWW I am not disconnecting any device at that place !!

Please also try other devices and see if they can work.

Flash the board with l4t 32.7.1 again and see if issue is still. If it is, then please RMA this device.

@WayneWWW @linuxdev
Tried Flashing the board with SDK Manager , but Nada, Nothing !! Still, the Ports Not working !!

Also Just noticed the Ethernet port is also not working, I was using a PCIe ethernet for a long time. So in all 1 USB, 3.0 and 1 Ethernet port do not work! The device is 1.5 Yrs Old, Will RMA be entertained?

Also Have some interesting output about not working USB 3.1 port, apparently related to usb driver failing to load , below both usb and ethernet logs , also attached serial port debug log.

[0012.890] E> Failed to enumerate USB device
[0012.890] E> failed to start xhci controller
[0012.890] E> Error in init of XUSB host driver, err: 7979000c
[0012.891] W> Failed to initialize device 5-0
[0012.891] E> USB boot failed, err: 2037973004
[0012.891] I> ########## NVME (0) boot ##########
[0012.895] I> Initializing nvme device instance 0
[0012.900] I> Initializing nvme controller
[0012.904] I> tegrabl_locate_pcie_ctrl_in_dt: found match at 0x14180000
[0012.910] I> vpcie3v3-supply not found
[0012.914] I> vpcie12v-supply not found
[0012.917] W> Failed to get nvidia,plat-gpios

jetson-xavier-serial.txt (33.7 KB)

nkb@nkb-desktop:~$ ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        ether 02:42:7d:bc:b8:f5  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:04:4b:e5:92:60  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 41  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 759  bytes 48691 (48.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 759  bytes 48691 (48.6 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

rndis0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 2a:79:98:bb:7e:0d  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

usb0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 2a:79:98:bb:7e:0f  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

nkb@nkb-desktop:~$ ifconfig -a eth0
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:04:4b:e5:92:60  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 41  

nkb@nkb-desktop:~$ 
nkb@nkb-desktop:~$ ifconfig -a eth0
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:04:4b:e5:92:60  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 41  

nkb@nkb-desktop:~$ sudo ethtool eth0
[sudo] password for nkb: 
Settings for eth0:
	Supported ports: [ TP MII ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Half 1000baseT/Full 
	Supported pause frame use: Symmetric Receive-only
	Supports auto-negotiation: Yes
	Supported FEC modes: Not reported
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Half 1000baseT/Full 
	Advertised pause frame use: Symmetric Receive-only
	Advertised auto-negotiation: Yes
	Advertised FEC modes: Not reported
	Speed: Unknown!
	Duplex: Unknown! (255)
	Port: MII
	PHYAD: 0
	Transceiver: internal
	Auto-negotiation: on
	Supports Wake-on: g
	Wake-on: d
	Link detected: no
nkb@nkb-desktop:~$ sudo ethtool --phy statistics eth0
ethtool: bad command line argument(s)
For more information run ethtool -h
nkb@nkb-desktop:~$ sudo ethtool --phy-statistics eth0
PHY statistics:
     phy_receive_errors_copper: 0
     phy_idle_errors: 0
nkb@nkb-desktop:~$ dmesg | egrep -i "0.*4.*4b.*cb.*a2.*28"
nkb@nkb-desktop:~$ dmesg | egrep -i "0.*4.*4b.*cb.*a2.*28"

Hi,

The log you shared is cboot log which does not represent your usb port and ethernet ports…

Also, I think you need to share dmesg… not the serial log from uart. Serial log by default would only show partial log from kernel and every log from bootloader.

For your issue, most of log we need is from kernel. So we need your dmesg.

@WayneWWW @linuxdev Here is my dmesg log attached.
dmesg_log_xavier.txt (95.6 KB)

Hi Ish,

Your dmesg told us you are actually using a dts provided by e-cam. Could you firstly test the board with pure jetpack from sdkmanager?

Also, I am not quite sure where is this “PCIe ethernet”. Your log only has eth0. But if this is really “standard devkit”, there should be eth0 as on board ethernet and eth1 as your PCIe ethernet.

I am not sure why your previous comment keep checking eth0.

1 Like

@WayneWWW As previously suggested by you , I had flashed with SDK-Manager , I had the same issue , for using this MIPI Camera Kit , I have flashed their drivers , will reflash with SDK Mangaer , Nvidia Standard pure Jetpack.

I have removed the Pcie Ethernet board , I will install it and take the dmesg log and send you !!

It is possible that something incorrect about third party drivers would cause issue for other drivers, e.g., USB. If this works completely stock from a fresh regular flash, then I would provide some details here about what is being added for MIPI drivers before adding them, then see if adding them changes USB. If for example the MIPI setup changes the device tree, and the tree is incompatible with that carrier board, then it would probably cause such an issue.

@linuxdev @WayneWWW This issue is persisting with your pure Jetpack Builds L4T32.5.1 , L4T32.6.1 and L4T32.7.1 as well.

1 USB 3.0 and Ethernet Port is not functional !!

Right now we are in the middle of a pilot project, will share the logs after the pilot is done.

Were there any MIPI additions, or device tree changes? Is this entirely stock without the MIPI? If so, and the issue still exists, it’ll be more obvious that something fundamental is wrong (versus an interaction with a new device).