T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - 可打印的版本 +- WeHack BBS (https://bbs.wehack.space) +-- 版块: 计算机技术 (https://bbs.wehack.space/forum-5.html) +--- 版块: 固件技术讨论区 (https://bbs.wehack.space/forum-8.html) +--- 主题: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 (/thread-95.html) |
T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - dalao - 10-28-2019 看帖子 https://www.reddit.com/r/coreboot/comments/dh9kq7/t420_issues_after_corebooting/ 也有不少人遇到过,但还没解决,搜了下相关文件hda_verb.c和Windows下的hdaudio.inf看了下也不知道怎么解决。该怎么解决? RE: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - vimacs - 10-28-2019 在 GNU/Linux 下呢? 我现在的 T440p 在 GNU/Linux 下耳机口也没有声音输出,不知道是什么原因。 RE: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - dalao - 10-28-2019 (10-28-2019, 07:23 PM)vimacs 提到: 在 GNU/Linux 下呢?在linux下完全正常,Manjaro发行版 RE: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - dalao - 02-08-2020 最近还发现一个问题,通过DP口连接显示器,显示器的音箱没有输出。 在Windows下我看是因为设备管理器里的这个设备有个黄色的叹号: 位置 3 (Internal High Definition Audio Bus) HDAUDIO\FUNC_01&VEN_8086&DEV_2805&SUBSYS_80860101&REV_1000 该设备无法启动。 (代码 10) 它自带的驱动是Microsoft的2019/9/4的10.0.18362.356版本的驱动,我手动换成Intel Corporation的2014/09/09的6.16.0.3154版本的驱动就解决了。(但也挺奇怪的,按理说Windows Update应该能自动处理好驱动,不知道其他人没coreboot的有没有这个问题) --------------------------------- 在linux上好像也有这个问题,但是还不知道怎么解决。 我看到x220的hda_verb.c文件有这样一段正好对应这个设备的ID,但是t420的hda_verb.c文件里没有 代码: /* --- Next Codec --- */ 我把这段复制到t420里,但还是解决不了。 我想在网上搜别人的看看他们的没coreboot的t420是不是有这个设备,但我用dmesg输出出来的没有8086:2805这个ID。 我以为会像上次触摸板那样能输出硬件的ID呢,我想请教下在linux上怎样能像windows的设备管理器这样查看VEN_8086&DEV_2805这种硬件ID? RE: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - vimacs - 02-10-2020 (02-08-2020, 11:21 PM)dalao 提到: 最近还发现一个问题,通过DP口连接显示器,显示器的音箱没有输出。 刚刚看了下代码。X220写的是8086:2806而不是2805. 另一个发现是这段是从X230抄过来的,因为注释里面的PantherPoint是7系芯片组,而X220用的是6系芯片组。 查看HDAudio codec应该是有办法的,但不是看PCI/USB设备。我现在不知道有没有现成的工具,不过可以看 /sys/class/sound/card*/hw*/vendor_id 来看 codec 的设备号。 RE: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - dalao - 02-11-2020 我用的是之前的代码,之前一直是8086:2805,最近这个 https://review.coreboot.org/c/coreboot/+/37541/5/src/mainboard/lenovo/x220/hda_verb.c 才改成8086:2806,他好像把注释里的当作正确的了,我也没x220不知道他改得这段是对还是不对的。 不过我在网上搜到x220好像有这样的驱动 HDAUDIO\FUNC_01&VEN_8086&DEV_2805&SUBSYS_80860101&REV_1000,我猜测大概率还是8086:2805是对的。 我刚用这个cat /sys/class/sound/card*/hw*/vendor_id 这个试了下,t420无论加不加上面那段x220的代码都能出来 0x80862805 ,挺奇怪的。 我还找到这里有人提到 https://review.coreboot.org/c/coreboot/+/10431 可以 cat /proc/asound/card0/codec#* 查看,我看这个codec#3输出的在加和不加输出的有些区别。对比了下这四行有区别 加之前 Pin Default 0x18560010: [Jack] Digital Out at Int HDMI DefAssociation = 0x1, Sequence = 0x0 Pin Default 0x18560010: [Jack] Digital Out at Int HDMI DefAssociation = 0x1, Sequence = 0x0 加之后 Pin Default 0x18560020: [Jack] Digital Out at Int HDMI DefAssociation = 0x2, Sequence = 0x0 Pin Default 0x18560030: [Jack] Digital Out at Int HDMI DefAssociation = 0x3, Sequence = 0x0 不过加不加在Windows下使用DP输出音频到显示器都还正常,不知道这个区别代表什么。 RE: T420 coreboot在windows下耳机口没有声音输出,该怎么解决 - vimacs - 12-13-2020 看到这个帖子突然想起来T440p耳机口不能用的问题,后来我是把原厂固件的HDA verbs贴到coreboot里面,就把问题解决了。我做HP EliteBook Folio 9480m的移植的时候,也需要用完整的原厂HDA verbs,否则声音也不正常。这两个机器的HDA codec都是Realtek家的产品。 |