USB 可在两个 5 Gb/s USB-A 端口上工作
然而,USB-C 无法识别速度设置高于 480 Mb/s 的设备
当插入此类设备时,dmesg --human --follow
不会输出任何内容
USB 硬件是普通的 Intel:
lspci-knns14.0 00:14.0 USB 控制器 [0c03]:英特尔公司 Cannon Lake PCH USB 3.1 xHCI 主机控制器 [8086:a36d](修订版 10) 子系统:英特尔公司 Cannon Lake PCH USB 3.1 xHCI 主机控制器 [8086:7270] 使用的内核驱动程序:xhci_hcd 内核模块:xhci_pci
Linux 是 Ubuntu linux-generic-hwe-20.04 5.8.0-36
2021 年 2 月 5 日:
上限为 480 Mb/s 的 USB 端口不属于 Thunderbolt 控制器:
lspci-knns7e:0 7e:00.0 USB 控制器 [0c03]:Intel Corporation JHL7540 Thunderbolt 3 USB 控制器 [Titan Ridge 4C 2018] [8086:15ec](修订版 06) 子系统:Intel Corporation JHL7540 Thunderbolt 3 USB 控制器 [Titan Ridge 4C 2018] [8086:0000] 使用的内核驱动程序:xhci_hcd 内核模块:xhci_pci lspci -knns8:0 08:00.0 USB 控制器 [0c03]:Intel Corporation JHL7540 Thunderbolt 3 USB 控制器 [Titan Ridge 4C 2018] [8086:15ec](修订版 06) 子系统:Intel Corporation JHL7540 Thunderbolt 3 USB 控制器 [Titan Ridge 4C 2018] [8086:0000] 使用的内核驱动程序:xhci_hcd 内核模块:xhci_pci
2021 年 2 月 6 日:
以下是 USB 总线速度及其 PCI 控制器:
对于 /sys/bus/usb/devices/usb* 中的 A;做 echo "$(basename $A):$(cat $A/speed)";完毕 USB1:480 USB2:10000 USB3:480 USB4:10000 USB5:480 USB6:10000
有6条USB总线:
ls -ld /sys/bus/usb/devices/usb* lrwxrwxrwx 1 root root 0 11月26日19:18 /sys/bus/usb/devices/usb1 -> ../../../devices/pci0000:00/0000:00:14.0/usb1 lrwxrwxrwx 1根根0 11月26日19:18 /sys/bus/usb/devices/usb2 -> ../../../devices/pci0000:00/0000:00:14.0/usb2 lrwxrwxrwx 1根根0 11月26日19:18 /sys/bus/usb/devices/usb3 -> ../../../devices/pci0000:00/0000:00:01.1/0000:05:00.0/0000 :06:02.0/0000:08:00.0/usb3 lrwxrwxrwx 1根根0 11月26日19:18 /sys/bus/usb/devices/usb4 -> ../../../devices/pci0000:00/0000:00:01.1/0000:05:00.0/0000 :06:02.0/0000:08:00.0/usb4 lrwxrwxrwx 1根根0 11月26日19:18 /sys/bus/usb/devices/usb5 -> ../../../devices/pci0000:00/0000:00:01.2/0000:7b:00.0/0000 :7c:02.0/0000:7e:00.0/usb5 lrwxrwxrwx 1根根0 11月26日19:18 /sys/bus/usb/devices/usb6 -> ../../../devices/pci0000:00/0000:00:01.2/0000:7b:00.0/0000 :7c:02.0/0000:7e:00.0/usb6
最好的总线 usb4 和 usb6 无法使用
有从事英特尔开源驱动程序工作的人愿意发表评论吗?
也许有一个内核模块选项或其他方式来获得 10 Gb/s USB?
答案1
我认为我们需要排除明显的问题,即您使用的是什么类型的电缆?有一种仅支持 USB 2.0 的 USB-C 电缆,如果您使用的是这种电缆,那么您将不会获得比 USB 2.0 更好的速度。遵循 USB 规范的电缆将指示其可以在连接器上处理的带宽和协议。
支持 USB 的 USB-C 电缆将带有 USB“三叉戟”图标,支持超过 480 Mbps 的电缆还将带有风格化的“SS”和三叉戟。通常会用一个小数字 5、10 或 20 来表示“超高速”电缆的认证带宽(以 Gbps 为单位)。支持“超高速”的新型 USB-C 电缆将使用 20 或 40 代替“SS”来表示经过认证的速度,但我还没有在野外看到过任何电缆。符合规范的 Thunderbolt 3 电缆的电缆连接器上将有 Thunderbolt 图标。
电缆带宽的一项指标是其长度。 USB 2.0 USB-C 电缆的长度通常超过一米,因为价格便宜,所以电缆更长,这就是它们被制造和人们购买的原因。它们最常用于传输电力的能力大于传输数据的能力,例如将笔记本电脑连接到电源块。具有超高速能力的电缆将是无源的,长度不超过一米,或者是有源的,并且更长,这也使得它们更加昂贵。
另一种可能性是您使用了正确的电缆,但电缆已损坏。检查您使用的电缆是否正确,并且电缆没有损坏。
答案2
不起作用的是在配备 Intel cpu、2016+ 的 Apple 计算机上热插拔任何 5+ Gb/s 的设备
启动时,设备由 efi 固件识别。之后,所有拔下的设备都会消失,直到在启动期间再次插入为止
https://bugzilla.kernel.org/show_bug.cgi?id=211681
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1914845
https://www.reddit.com/r/Gentoo/comments/mlkc57/usb_drive_only_detected_when_attached_at_boot/