Hello, I have recently needed to use a USB3 device at its full speed but then I noticed that it is connected using USB2.
The device of interest:
Bus 009 Device 003: ID 03e7:2485 Intel Movidius MyriadX
Running lsusb -t I can see that it is connected with the speed of 480M
/: Bus 009.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/2p, 480M
|__ Port 001: Dev 002, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 001: Dev 002, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 001: Dev 002, If 2, Class=Video, Driver=uvcvideo, 480M
|__ Port 001: Dev 002, If 3, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 001: Dev 002, If 4, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 002: Dev 003, If 0, Class=Vendor Specific Class, Driver=[none], 480M
Looking at dmesg I have bunch of buses inited as USB3, as well as USB2, but whenever I plug a device into a USB3 port it gets assigned to a USB2 bus.
...
[ 1.608162] usb usb7: Product: xHCI Host Controller
[ 1.608162] usb usb7: Manufacturer: Linux 6.12.74 xhci-hcd
[ 1.609502] usb usb8: Product: xHCI Host Controller
[ 1.609503] usb usb8: Manufacturer: Linux 6.12.74 xhci-hcd
[ 1.611439] xhci_hcd 0000:76:00.4: xHCI Host Controller
[ 1.611442] xhci_hcd 0000:76:00.4: new USB bus registered, assigned bus number 9
[ 1.611788] xhci_hcd 0000:76:00.4: hcc params 0x0120ffc5 hci version 0x120 quirks 0x0000000200000010
[ 1.612142] xhci_hcd 0000:76:00.4: xHCI Host Controller
[ 1.612145] xhci_hcd 0000:76:00.4: new USB bus registered, assigned bus number 10
[ 1.612147] xhci_hcd 0000:76:00.4: Host supports USB 3.1 Enhanced SuperSpeed
[ 1.612173] usb usb9: Product: xHCI Host Controller
[ 1.612174] usb usb9: Manufacturer: Linux 6.12.74 xhci-hcd
[ 1.613633] usb usb10: Product: xHCI Host Controller
[ 1.613634] usb usb10: Manufacturer: Linux 6.12.74 xhci-hcd
[ 1.615244] xhci_hcd 0000:77:00.0: xHCI Host Controller
...
Any clue what might be up?
Host: Micro-Star International Co., Ltd. X870 GAMING PLUS WIFI
Kernel: 6.12.74
AMD Ryzen 9 7950X (32) @ 5.881GHz
Also notably I asked an LLM for what can I try to do, and it told me to try using those KernelParams, but they had no effect.
boot.kernelParams = [
"usbcore.quirks=07ca:e575:u"
"usbcore.autosuspend=-1"
"pcie_aspm=off"
"iommu=soft"
"pci=realloc"
"usbcore.old_scheme_first=1"
];