USB 3.0 和 3.1 被识别为 2.0

USB 3.0 和 3.1 被识别为 2.0

我的台式机配有 ASUS PRIME X370-PRO 主板,根据技术规格,所有 USB 端口均为 3.0 或 3.1,没有 2.0 端口。问题是所有暴露的 USB 端口都被识别为 2.0。我正在运行 Ubuntu 18.04.3 LTS。

003 号总线应为 3.1,其他总线均为 3.0。我连接 3.0 设备,但只支持 2.0 速度。 在此处输入图片描述

有什么想法可以修复此问题吗?

# lsusb
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0bda:8812 Realtek Semiconductor Corp. RTL8812AU 802.11a/b/g/n/ac WLAN Adapter
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 24ae:2010  
Bus 001 Device 003: ID 1b1c:0c04 Corsair 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

# lsusb -t
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=88XXau, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/8p, 10000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
    |__ Port 3: Dev 2, If 2, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 14: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M

# lspci | grep -i usb
02:00.0 USB controller: Advanced Micro Devices, Inc. [AMD] Device 43b9 (rev 02)
07:00.0 USB controller: ASMedia Technology Inc. ASM1143 USB 3.1 Host Controller
0b:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) USB 3.0 Host Controller

# uname -r
5.0.0-23-generic

答案1

所有端口均已正确检测到。Linux 内核将 2.0 和 3.0 集线器添加到 USB。

因此,您有三个 2.0 集线器和三个 3.0 集线器。

在这种情况下,问题是由于驱动程序的限制,RTL8812AU 设备被检测为 USB 2.0 设备。

但无线设备的实际传输速度不太可能超过480M。所以这看起来不是一个真正的问题。

答案2

疯狂建议:检查您的电缆。一些看似高质量的电缆无法协商 gbps 速度,因此一切都以 480mbps 的 USB2 结束。发生这种情况时,lsusb它将落在 USB 2 控制器下,并且设备将列为 usb2 / 480m。XHCI 驱动程序在 lsusb 中同时显示 USB 2 集线器和 USB 3 集线器是正常/标准的,然后设备出现在适合其速度的任何一个下。

答案3

删除您可能已安装的任何 rtl8812au 驱动程序,然后尝试此驱动程序...

sudo apt install git dkms
git clone https://github.com/aircrack-ng/rtl8812au.git
cd rtl8812au
sudo ./dkms-install.sh

您应该在/etc/modprobe.d名为的文件中创建一个88XXau.conf类似于此的文件,以强制 USB 3.x 操作。如果没有此文件,驱动程序将应该以 USB 2.x 模式启动并切换...

# Initially it will use USB2.0 mode, which will limit 5G 11ac throughput
# (USB2.0 bandwidth only 480Mbps => throughput around 240Mbps)
# with modprobe options it will switch to USB3.0 mode at initial driver load
#
options 88XXau rtw_switch_usb_mode=1
#
#
#
### TODO: run time change usb2.0/3.0 mode
#
### usb2.0 => usb3.0
#
# sudo sh -c "echo '1' > /sys/module/88XXau/parameters/rtw_switch_usb_mode"
#
### usb3.0 => usb2.0
#
# sudo sh -c "echo '2' > /sys/module/88XXau/parameters/rtw_switch_usb_mode"

相关内容