Hi,
I have a XavierNX JP5.1.1 custom board, and the USB connects like the following picture
the problem is when I plug more USB storage into the HUB I get the error
one USB storage is fine, but the second USB storage fails, here is the error message:
[ 173.246805] usb 2-3.3.1.2: Not enough host controller resources for new device state.
[ 173.247131] usb 2-3.3.1.2: can't set config #1, error -12
here is the lsusb -t output
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=tegra-xusb/4p, 10000M
|__ Port 3: Dev 2, If 0, Class=Hub, Driver=hub/3p, 10000M
|__ Port 2: Dev 3, If 0, Class=Vendor Specific Class, Driver=option, 10000M
|__ Port 2: Dev 3, If 1, Class=Vendor Specific Class, Driver=option, 10000M
|__ Port 2: Dev 3, If 2, Class=Vendor Specific Class, Driver=option, 10000M
|__ Port 2: Dev 3, If 3, Class=Vendor Specific Class, Driver=option, 10000M
|__ Port 2: Dev 3, If 4, Class=Communications, Driver=cdc_mbim, 10000M
|__ Port 2: Dev 3, If 5, Class=CDC Data, Driver=cdc_mbim, 10000M
|__ Port 3: Dev 5, If 0, Class=Hub, Driver=hub/4p, 5000M
|__ Port 1: Dev 6, If 0, Class=Hub, Driver=hub/4p, 5000M
|__ Port 1: Dev 12, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=tegra-xusb/4p, 480M
|__ Port 2: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 4: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 5, If 2, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 5, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 5, If 3, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 5, If 1, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 4: Dev 6, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 7, If 1, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 7, If 2, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 7, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 7, If 3, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 4: Dev 8, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 9, If 2, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 9, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 9, If 3, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 1: Dev 9, If 1, Class=Vendor Specific Class, Driver=ftdi_sio, 480M
|__ Port 3: Dev 10, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 11, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 3: Dev 3, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 3: Dev 3, If 1, Class=Wireless, Driver=btusb, 12M
But when I used OrinNX JP5.1.1 with the same setting, it did not have this problem, it could connect many USB storage
so I noticed that the firmware version is different between XavierNX and OrinNX
Xavier NX JetPack 5.1.1:
cat /sys/devices/platform/3610000.xhci/tegra-firmware/3610000.xhci/version
3610000.xhci: Firmware timestamp: 2022-03-16 11:07:43 UTC, Version: 60.13 release
Orin NX JetPack 5.1.1:
cat /sys/devices/platform/3610000.xhci/tegra-firmware/3610000.xhci/version
3610000.xhci: Firmware timestamp: 2023-02-10 03:48:10 UTC, Version: 80.05 release
Is that the firmware version causing the difference? any advice for me to resolve this problem?