问题
我想开始从事 GPGPU 工作,所以我买了一块 ASUS Rampage IV Black Edition 游戏主板。我认为它可以很好地支持多个 GPU。但是,除了 xhci_hcd 模块之外,我什么也没遇到。它只是dmesg
用这样的行填充我的输出:
<some stuff> usb 1-1: new high-speed USB deice number 1 using xhci_hcd
<some stuff> usb 1-1: new high-speed USB deice number 2 using xhci_hcd
...
<some stuff> usb 1-1: new high-speed USB deice number 127 using xhci_hcd
<some stuff> usb 1-1: new high-speed USB deice number 1 using xhci_hcd
...
此外,它还会导致任何 USB 硬件检测停止。这种情况发生在运行期间lsusb
、启动期间或安装的任何硬件检测步骤期间(在安装期间,我跑来rmmod xhci_hcp
解决这个问题)。我通常可以通过拔掉 USB 键盘或其他东西来中断这些扫描操作(并使其正常工作)。
当前的解决方法
通过运行:
echo "0000:06:00.0" | sudo tee /sys/bus/pci/drivers/xhci_hcd/unbind
我可以消除“始终检测新设备”问题和“硬件扫描挂起”问题。然而,我也失去了 8 个 USB3.0 端口中的 4 个。
我需要什么帮助
有谁熟悉这个问题,并且他们确切知道如何解决它?如果不:
我可以提供一些modprobe xhci_hcd
可以使其正常工作的选项吗?我在哪里可以找到不同的选项来尝试它们?
我的主板的 BIOS 是否会影响操作系统xhci_hcd
实际启动后的性能?或者操作系统启动后 BIOS 是否会改变实际 USB 设备的运行方式?如果是这样,我应该考虑改变什么样的选择?
我的设置
处理器:i7-4930k
主板:华硕 Rampage IV 黑色版
Linux:Debian 8.2.0 (Jessie)、网络安装
lspci | grep USB
输出:
00:1a.0 USB controller: Intel Corporation C600/X79 series chipset USB2 Enhanced Host Controller #2 (rev 06)
00:1d.0 USB controller: Intel Corporation C600/X79 series chipset USB2 Enhanced Host Controller #1 (rev 06)
06:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller
0b:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller
0e:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller
lsmod | grep hci
输出:
ahci 33291 2
libahci 27158 1 ahci
ehci_pci 12512 0
xhci_hcd 148881 0
libata 177457 2 ahci,libahci
usbcore 195430 6 btusb,usb_storage,ehci_hcd,ehci_pci,xhci_hcd
答案1
我可以通过在 BIOS 中禁用 Asmedia USB3.0 控制器 USB3_E12 和 USB3_E34 来解决该问题。不是一个完美的解决方案,但对我来说已经足够了。
高级 > 板载设备配置
Asmedia USB 3.0 控制器 (USB3_E12 USB3_E34) > 禁用