![HP Pavilion DV7:键盘在 Linux 上不起作用](https://linux22.com/image/1408641/HP%20Pavilion%20DV7%EF%BC%9A%E9%94%AE%E7%9B%98%E5%9C%A8%20Linux%20%E4%B8%8A%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我最近从一位朋友那里免费得到了一台 HP DV7 笔记本电脑:
正如您在图片中看到的,这款笔记本电脑配备了(改进的)全尺寸键盘,包括数字键盘。
键盘在 Windows 下可以正常工作,但在 Linux 上,我无法让小键盘工作。小键盘上的所有键似乎都无法产生任何键码,甚至 Numlock 也无法打开。但是,我不认为键盘有物理损坏,因为它在 Windows 上工作正常,小键盘正上方、顶部边缘的四个按钮工作正常。
当使用 测试控制台上showkey
和 X 上的按键时xev
,按键完全不执行任何操作,所有其他按键均按预期发送键码。
键盘上有一个Fn键,用于访问位于 F 键下方的一些媒体键。我发现 Fn 键还有一些其他奇怪的行为:当我按住 Fn 并按“jkl”时,我得到的是“123”!所以,就好像在主块上嵌入了一个笔记本电脑键盘(当键盘本身丢失时,这种情况很常见)。
现在,我相信由于此键盘的“二元性”,它使驱动程序感到困惑。有什么想法可以解决这个问题吗?由于按键完全不起作用,我根本不知道从哪里开始。
我尝试在 X 下使用 : 以编程方式设置 Numlock 状态,但numlockx on
没有成功。我还尝试在 Linux 控制台上使用setleds +num
:设置标志和 LED setleds -v
,现在报告标志和 LED 已设置,但 Numpad 仍然不工作,LED 也不亮。
答案1
好的,我设法解决了这个问题,而且它一点也不明显。
“InsydeH2O” BIOS 必须从版本 F.0A 刷新到版本 F.2D。我不知道是什么原因造成的,但似乎 BIOS 在某个时候损坏了。
我该怎么做才能修复 Numlock 问题?升级 EFI BIOS,但这并不容易。
作为 Linux 用户,我制作了一个 FreeDOS 启动映像,并从 USB 驱动器启动。BIOS 附带一个奇怪的更新工具,来自 Compal,这家中国公司制造了这台笔记本电脑的底盘和主板。找出正确的 ROM 映像需要几个小时和一个虚拟机,以及大量的费脑力劳动。
最终找到了一个可以在 DOS 上运行的程序(实际上来自 Insyde),所以它是 FreeDOS...Flashing 工具来自 Mediafire 上一个相当可疑的位置,我不知道这个程序最初来自哪里,在程序中找不到 URL 等。
在使用闪存工具和 ROM 映像对可启动的最小 FreeDOS 进行思考之后,我将 SYSLINUX 引导加载程序安装到 USB 记忆棒上,并从它进行启动。
我尝试了两次才正确地刷新 BIOS,但之后键盘就能正常工作了。
这台笔记本电脑上的 DVD/BD-Combo 驱动器有点坏了,所以我无法从那里启动。HP 存档中的闪存实用程序无法在 Windows PE 上运行,我尝试使用了几个小时。