Linux:两个 USB 根集线器如何具有相同的 iSerial?

Linux:两个 USB 根集线器如何具有相同的 iSerial?

我最近需要重置 USB 子系统的一部分,因为外部硬盘突然不可用,将其拔出再重新插入也没有用。对于重置过程,我遵循了以下文档:
https://www.linux.org/threads/resetting-the-usb-subsystem.10404/

该文档的 TL;DR 如下:
我需要呼应串行接口功能失调的根枢
/sys/bus/pci/驱动程序/xhci_hcd/解除绑定
然后
/sys/总线/pci/驱动程序/xhci_hcd/bind

根据lsusb -t,我有六个根集线器。但是,当我尝试确定串行接口我需要解除绑定绑定操作后,我发现两个根集线器具有相同的功能:

root@TuxServer:~# lsusb -s 001:001 -v | grep -F iSerial
  iSerial 1 0000:02:00.0
root@TuxServer:~# lsusb -s 005:001 -v | grep -F iSerial
  iSerial 1 0000:02:00.0

这有点奇怪,因为 001:001 是 USB 2,而 005:001 是 USB 3。这是一个问题,因为当我尝试解除/绑定 005:001 时,我注意到它发生在 001:001 上。我可以说这是因为我的键盘和鼠标连接到 001:001,两者都亮着,然后灯熄灭了一秒钟。幸运的是,这些输入设备在重置后正常工作,所以我没有被锁定在我的电脑之外 :-)

我需要知道的是:

  • 两个 USB 根集线器如何具有相同的 iSerial?
  • 我如何确保重置发生在 005:001?

我的主板是 Gigabyte Aorus Gaming x470(AMD Ryzen 第二代平台)。
我的 Linux 发行版是 Arch Linux。

相关内容