27. USB 传统支持¶
- 作者:
Vojtech Pavlik <vojtech@suse.cz>,2004 年 1 月
在 BIOS 设置中也称为“USB 键盘”或“USB 鼠标支持”,它是一项允许您像使用经典的 PS/2 对应物一样使用 USB 鼠标和键盘的功能。这意味着您可以使用 USB 键盘在 LILO 中输入内容。
但是,它有几个缺点
在某些机器上,即使没有 USB 鼠标,并且存在真正的 PS/2 鼠标,模拟的 PS/2 鼠标也会接管。在这种情况下,真正的 PS/2 鼠标的额外功能(滚轮、额外按钮、触摸板模式)可能不可用。
如果启用了 CONFIG_HIGHMEM64G,则 PS/2 鼠标仿真可能会导致系统崩溃,因为 SMM BIOS 不希望处于 PAE 模式。Intel E7505 是一款典型的发生这种情况的机器。
如果启用了 AMD64 64 位模式,则经常会发生系统崩溃,因为 SMM BIOS 不希望 CPU 处于 64 位模式。BIOS 制造商只使用 Windows 进行测试,而 Windows 尚未进行 64 位测试。
解决方案
- 问题 1)
可以通过在加载 PS/2 鼠标驱动程序之前加载 USB 驱动程序来解决。由于 PS/2 鼠标驱动程序在 2.6 中无条件编译到内核中,这意味着 USB 驱动程序也需要编译到内核中。
- 问题 2)
目前只能通过禁用内核配置中的 HIGHMEM64G 或 BIOS 中的 USB 传统支持来解决。BIOS 更新可能会有所帮助,但到目前为止还没有这样的更新。
- 问题 3)
通常通过 BIOS 更新来修复。检查主板制造商的网站。如果更新不可用,请禁用 BIOS 中的 USB 传统支持。如果仅此一项不起作用,请尝试在内核命令行中添加 idle=poll。BIOS 也可能在 HLT 指令上进入 SMM。