USB endpoint limit in TX2

We are using TX2 module and in case we have more than 32 USB endpoints, we are getting an error that devices fail to enumerate.
According to the following post, we should be able to get up to 70 endpoints:

This is the USB device tree, if we connect one more device we will encounter an error:

We would like to know if it’s possible to increase the number of endpoints above 32 and how to do it.

Thanks

The problem is most devices have at least 2 endpoints, in our devices we had several that had 4 and 5. The original problem showed up using the TX2 module, and is the same for the TX2 NX. The Xavier NX does better (64 I think), but still runs into limits. Haven’t tried a Nano or Orin though. We ended up lashing a PCIe USB 3 controller alongside to get around the issue, which is most likely silicon based and internal to the chipsets, and not a driver issue.

We have developed a M.2 slot based PCIe Root controller, but I haven’t ported the driver yet for it to be useful.

Hi @dgoetz ,
I saw in your previous post:

I saw that you have got 67 endpoints, how did you manage to get it?
Did you change configurations or changed something during the kernel compilation?

Thanks

I think R28.2 was where the 67 came from, the TX2 module was capable of more, but with R32.5 it fell back in line with the TX2 NX. We switched the product that needed the heavy usb connections to using the Xavier NX, and still needed to add the additional PCIe root controller to handle everything.

I will say while it may be hw limited in silicon I don’t think it is the same across the TX2/TX2 NX/Xavier NX devices though, so there is some driver component (everyone using the same tegra_xhci?).

Running the stock rootfs on the original TX2 devkit (that’s how far back the original post goes), the capabilities of different PCIe devices varied as well, some had limits that encompassed both USB2 and USB3 counts and some worked fine with large numbers of USB2 while having a limit on USB3.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.