Linux 上的 VL813 USB 集线器出现神秘错误?

Linux 上的 VL813 USB 集线器出现神秘错误?

我正在运行带有 7 端口外部 USB 集线器的 Ubuntu 22.04。该盒子被实现为两个 4 端口 Via VL813 集线器。

在 lsusb 的 Linux 端,这看起来像

Bus 004 Device 009: ID 2109:0813 VIA Labs, Inc. VL813 Hub
Bus 004 Device 008: ID 2109:0813 VIA Labs, Inc. VL813 Hub
Bus 003 Device 060: ID 2109:2813 VIA Labs, Inc. VL813 Hub
Bus 003 Device 026: ID 2109:2813 VIA Labs, Inc. VL813 Hub

每个 VL813 中实际上有两个芯片,总线 004 上的 0813 处理 USB 3,总线 003 上的 2813 处理 USB 2。

对于总线 4 lsusb -t 显示

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
    |__ Port 6: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
        |__ Port 1: Dev 3, If 0, Class=Hub, Driver=hub/4p, 5000M

显示了两个 4 端口芯片的嵌套以实现 7 端口外接盒。

好吧,这终于是谜团了,系统日志显示连续的消息

Mar  5 12:01:52 orac kernel: [2068420.628891] usb 4-6.1: Disable of device-initiated U1 failed.
Mar  5 12:01:52 orac kernel: [2068420.633615] usb 4-6.1: Disable of device-initiated U2 failed.
Mar  5 12:01:52 orac kernel: [2068420.875834] usb 4-6.1: reset SuperSpeed USB device number 3 using xhci_hcd
Mar  5 12:02:38 orac kernel: [2068466.757899] usb 4-6.1: Disable of device-initiated U1 failed.
Mar  5 12:02:38 orac kernel: [2068466.762412] usb 4-6.1: Disable of device-initiated U2 failed.
Mar  5 12:02:39 orac kernel: [2068467.004831] usb 4-6.1: reset SuperSpeed USB device number 3 using xhci_hcd

这是没有连接到外部盒子上的端口的情况。

除了每隔几天系统日志中的所有消息外,所有 USB 设备都会挂起,即使是那些与外部设备无关的设备。您可以在最后一次挂起时看到这一点,其中 xhci_hcd 驱动程序在 USB 4-6.1 消息发出后 6 秒后关闭,没有任何干预。

Mar  4 21:55:34 orac kernel: [2017642.022271] usb 4-6: Disable of device-initiated U1 failed.
Mar  4 21:55:34 orac kernel: [2017642.025784] usb 4-6: Disable of device-initiated U2 failed.
Mar  4 21:55:40 orac kernel: [2017647.323348] xhci_hcd 0000:00:14.0: ERROR mismatched command completion event
Mar  4 21:55:40 orac kernel: [2017647.323358] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
Mar  4 21:55:40 orac kernel: [2017647.579344] xhci_hcd 0000:00:14.0: xHCI host not responding to stop endpoint command.
Mar  4 21:55:40 orac kernel: [2017647.579350] xhci_hcd 0000:00:14.0: USBSTS: 0x00000000
Mar  4 21:55:40 orac kernel: [2017647.579354] xhci_hcd 0000:00:14.0: xHCI host controller not responding, assume dead
Mar  4 21:55:40 orac kernel: [2017647.579375] xhci_hcd 0000:00:14.0: Timeout while waiting for stop endpoint command
Mar  4 21:55:40 orac kernel: [2017647.579399] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
Mar  4 21:55:40 orac kernel: [2017647.579409] xhci_hcd 0000:00:14.0: HC died; cleaning up

由于键盘(甚至不在盒子上)已失效,我必须通过网络登录并取消绑定并重新绑定 xhci_hcd 驱动程序以恢复 USB。所以我怀疑这与不断发生的4号公交车投诉有关。

我不确定是 USB 集线器盒还是 Linux 中的某个东西出了问题。

有想法吗?

相关内容