主板启动时无法识别通过 USB-3.0 适配器连接的 USB 驱动器

主板启动时无法识别通过 USB-3.0 适配器连接的 USB 驱动器

我有一台基于 Intel DP55KG“Kenigsberg”主板的 PC。它没有 USB 3.0 总线 (xHCI)。我安装了 USB 3.0 适配器卡 (Inateck KT4006)(在 Windows 和 Ubuntu 18 上均可正常工作);但是,我想从位于 USB HDD 上的 Ubuntu 系统启动;并且在启动之前,BIOS 无法识别适配器创建的额外 USB 3.0 总线(和设备)。

因此,如果通过 USB 3.0 适配器连接,则无法选择 USB HDD 进行启动。(启动后,连接到 USB 3.0 适配器的同一 USB HDD 工作正常)。

答案1

如果主板没有配备 xHCI 控制器,那么其固件实际上可能也没有内置 xHCI 驱动程序。没有它,固件根本不知道如何通过此控制器枚举 USB 设备。

(实际上你的主板早于比 xHCI 的第一个版本晚了几个月,所以它的默认固件不可能有它的驱动程序。

同时,操作系统可以很好地使用 USB 3.0,因为它不依赖于任何固件功能——Windows 和 Linux 都有自己的 xHCI(和 EHCI、OHCI)驱动程序,可通过 PCI 总线直接与控制器通信。


为了解决这个问题,您可以将 GRUB 和 Ubuntu/boot分区放在不同的存储设备上(例如 SATA HDD 或 USB 2.0 闪存驱动器)。这将允许主板启动 GRUB,并且一旦 GRUB 加载 Ubuntu 内核+initrd,xHCI 控制器将通过 Linux 驱动程序变得可用,并且系统应该可以正常启动。

(这实际上就是拥有 initrd 的全部意义——它包含内核访问根文件系统所需的所有驱动程序。)

相关内容