我最近买了 VivoBook S 14 OLED(S3402,第 12 代 Intel i7),并尝试在其上安装 Kubuntu(22.04)。但是,板载键盘在 grub 阶段后不起作用。我使用外部 USB 键盘进行了安装,但需要尽快解决这个问题。
我研究过各种解决方案,包括将“i8042.reset i8042.nomux i8042.nopnp i8042.noloop”添加到 grub 的 linux 启动参数中。似乎没有什么帮助。触摸板可以工作,但键盘不工作。在 20.04 的实时会话中,甚至触摸板也不工作。
该问题与当前每日构建版本 22.10 相同,它也使用 5.15 内核。
答案1
我在使用华硕 Vivobook s 15 时遇到了同样的问题,并使用此处提供的补丁编译了内核 5.19.5https://bugzilla.kernel.org/show_bug.cgi?id=216158它对我也有用。
我已经上传了同样的内容到https://drive.google.com/drive/folders/1_29NPWOjJ_RGy9Oh-SnSdgEPBBVfEJHt?usp=sharing您可以下载所有 4 个 deb 文件并安装它们,然后启动内核“5.19.5 #1 SMP PREEMPT_DYNAMIC Mon Aug 29 16:57:23 IST 2022 x86_64 x86_64 x86_64 GNU/Linux”,它也应该适合您。
如果你想构建自己的内核,让我向你展示一些简单的步骤。
安装主线包
sudo apt install -y mainline
并安装编译工具sudo apt install -y build-essential libssl-dev libncurses5-dev gcc bc bison flex libelf-dev
搜索主线应用程序并安装您想要构建的内核,因为它将在我们构建内核时提供正确的内核配置。重新启动笔记本电脑以启动此内核。
例如,你已经安装了 5.19.5,然后转到 kernel.org 并下载相同的版本(最好匹配版本)
创建一个新目录并将内核 tar 移动到那里。例如。
mkdir mykernel
并将
cd mykernel
linux-x.xx.x 放在这里。
mkdir linux_kernel
tar xvf linux-* -C linux_kernel/ --strip-components=1
cd linux_kernel
cp /boot/config-$(uname -r) ./.config
修补内核以防止使用下面 https://bugzilla.kernel.org/attachment.cgi?id=301690 发出下面的命令来修补 src。
patch -p1 < ~/Downloads/fix-irq-vivobook.patch
sudo make deb-pkg
您可能会遇到 Debian 证书问题。要解决此问题,请执行以下操作。
sudo apt install -y linux-source
并从中复制证书cp -v /usr/src/linux-source-5.15.0/debian/*.pem debian/
再次开始构建过程。
sudo make deb-pkg
这可能需要 1 到 2 个小时,请等待。
如果一切顺利,那么您将在父目录中获得内核构建。
cd ..
sudo dpkg -i *deb
验证 grub 配置并重新启动,您将获得一个可用的键盘。
清理:打开主线>删除您在步骤2中安装的版本。
如果您遇到任何问题,请在此处发表评论,我会尽力帮助您。:)
确实,我只在 Vivobook 的键盘上打字。这一切都要感谢出色的 Linux 社区。:)
答案2
我在这里找到了针对此问题的补丁https://bugzilla.kernel.org/show_bug.cgi?id=216158但是,我对于如何给内核打补丁不太熟悉。
答案3
我在 Vivobook S 14x OLED 上遇到了完全相同的问题。如https://bugzilla.kernel.org/show_bug.cgi?id=216158,升级内核到6.1-rc1或以上版本可以完美解决这个问题。