我有一台华为笔记本电脑(KLVL-WXXW-PCB),其中安装了 Ubuntu 22.04.3 LTS 和 Windows。在 Ubuntu 中,内置扬声器和耳机插孔都无法使用。尝试调整音量时,我只看到虚拟输出,但通过 HDMI 连接的外部显示器可以发出声音。
内置扬声器适用于 Windows,因此我相信硬件没有问题,只需修改内核驱动程序 (snd_hda_intel) 即可解决问题。
我已经提交了错误报告,但我不想只是等待,而是想自己尝试修复它。我的问题类似于这个我需要一些内核补丁,但我不知道如何编写一个合适的补丁。
$ cat /proc/asound/cards
0 [Generic ]: HDA-Intel - HD-Audio Generic
HD-Audio Generic at 0xd03c0000 irq 64
1 [acp ]: acp - acp
HUAWEI-KLVL_WXXW-M1010-KLVL_WXXW_PCB
我的笔记本电脑似乎有 2 个音频控制器(卡)。只有卡 0 检测到 HDA 编解码器,它是 HDMI 编解码器。连接外部显示器后,HDMI 上的声音可以正常工作。
$ ls /proc/asound/card0
codec#0 eld#0.0 eld#0.1 id pcm3p pcm7p
$ ls /proc/asound/card1
id pcm0c
内置扬声器是否可能连接到卡 1?解决方案描述在这里对我来说不起作用。将 snd_acp3x_rn 模块列入黑名单会使 card1 从 /proc/asound/cards 中消失。撤销黑名单后,它又恢复了。
$ cat /proc/asound/modules
0 snd_hda_intel
1 snd_acp3x_rn
与此同时,Windows 将 BIOS 升级到版本:1.09 发布日期 2023 年 6 月 20 日 我推测这是最新可用版本。有人试过 Linux 的 AMD 驱动程序吗?