ALC262 Verb Table配置
Realtek提供了一个专门配置Verb Table的工具HDACfg.exe,专门用来配置其下各种型号audio codec的Verb Table,非常的方便。
简单介绍一下项目背景,目前我司做的x86主板基于Intel NUC平台,兼容NUC8和NUC11,主板上用的audio codec芯片是Realtek的ALC262,Intel的指导文档610837_NUC_8_Compute_Element_Carrier_Board_Design_Guide_English_v1p1.pdf 和 632238_NUC_11_Compute_Element_Carrier_Board_Design_Guide_English_v1p0.pdf中关于audio codec verb table的配置的介绍是关于ALC256的,所以只好自己重新配置适用于ALC262的verb table。
一、配置Audio Codec Verb Table
- 打开HDACfg.exe,点击下一步,如下图所示:
2. 如果之前没有相关配置文件可参考,选择 'No',有配置文件参考的话直接点 'Yes' 去load配置文件即可,我们这里选择 'No';
3. 这一步需要选择主板的类型了,是台式机还是笔记本呢?台式机选择 “Desktop System”,笔记本选择“Mobile System”,我们这里选择“Mobile System”,因为我们的主板只有一个二合一的接口(即麦克风和扬声器二合一);
4. 到这一步我们需要选择Audio codec型号了,我们这里选择ALC262;"Default configuration setting"我们选择“2 external Jacks”;
5. 选择 “Internal”;
6. 选择 "Next";
7. ADD ID;
8.经过步骤7以后显示如下:
9.鼠标左键选中下图红框中的部分,然后点击“Create Verb table”,这时会提醒你输入保存的txt文件名;
10. 这时会提示你是否有“Intel low power ECR request”,选择“否”;
11. 这时候显示配置OK了;
得到HDACfg.txt内容如下:
;HDACfg Version : 4.09 ;HD Audio Codec : ALC262 ;PCI PnP ID : PCI\VEN_8086&DEV_2668&SUBSYS_026210EC ;HDA Codec PnP ID : HDAUDIO\FUNC_01&VEN_10EC&DEV_0262&SUBSYS_10EC0000 ;The number of verb command block : 13 ; NID 0x11 : 0x411111F0 ; NID 0x12 : 0x411111F0 ; NID 0x14 : 0x99130110 ; NID 0x15 : 0x0121401F ; NID 0x16 : 0x411111F0 ; NID 0x18 : 0x01A19820 ; NID 0x19 : 0x99A3092F ; NID 0x1A : 0x411111F0 ; NID 0x1B : 0x411111F0 ; NID 0x1C : 0x411111F0 ; NID 0x1D : 0x40020205 ; NID 0x1E : 0x411111F0 ; NID 0x1F : 0x411111F0 ;===== HDA Codec Subsystem ID Verb-table ===== ;HDA Codec Subsystem ID : 0x10EC0000 dd 00172000h dd 00172100h dd 001722ECh dd 00172310h ;===== Pin Widget Verb-table ===== ;Pin Complex (NID 0x11 ) dd 01171CF0h dd 01171D11h dd 01171E11h dd 01171F41h ;Pin Complex (NID 0x12 ) dd 01271CF0h dd 01271D11h dd 01271E11h dd 01271F41h ;Pin Complex (NID 0x14 ) dd 01471C10h dd 01471D01h dd 01471E13h dd 01471F99h ;Pin Complex (NID 0x15 ) dd 01571C1Fh dd 01571D40h dd 01571E21h dd 01571F01h ;Pin Complex (NID 0x16 ) dd 01671CF0h dd 01671D11h dd 01671E11h dd 01671F41h ;Pin Complex (NID 0x18 ) dd 01871C20h dd 01871D98h dd 01871EA1h dd 01871F01h ;Pin Complex (NID 0x19 ) dd 01971C2Fh dd 01971D09h dd 01971EA3h dd 01971F99h ;Pin Complex (NID 0x1A ) dd 01A71CF0h dd 01A71D11h dd 01A71E11h dd 01A71F41h ;Pin Complex (NID 0x1B ) dd 01B71CF0h dd 01B71D11h dd 01B71E11h dd 01B71F41h ;Pin Complex (NID 0x1C ) dd 01C71CF0h dd 01C71D11h dd 01C71E11h dd 01C71F41h ;Pin Complex (NID 0x1D ) dd 01D71C05h dd 01D71D02h dd 01D71E02h dd 01D71F40h ;Pin Complex (NID 0x1E ) dd 01E71CF0h dd 01E71D11h dd 01E71E11h dd 01E71F41h ;Pin Complex (NID 0x1F ) dd 01F71CF0h dd 01F71D11h dd 01F71E11h dd 01F71F41h
二、集成Verb Table到ECD里
生成HDACfg.txt Verb Table文件以后,如何集成到ECD里去呢?Intel NUC平台使用BMP Tool来集成Verb Table。
1. 分别选择"Binary Data File" 和 “BMP Script File”;
2. 选择“Audio Codec Verb Table”,根据HDACfg.txt分别填如下内容:
“Verb Table Length in DWORD”的值56是根据箭头3指向的部分决定的,根据HDACfg.txt填写了56个DWORD Verb Table值;
“Audio Codec Vendor ID”填供应商ID(0x10EC);
"Audio Codec Device ID"填产品ID(0x0262);
保存ECD配置,顺便更改一下ECD Revision或者Timestamp(BIOS会根据ECD的revision或Timestamp是否有改变来重新load ECD),然后build一个带ECD的EC固件版本,烧录EC固件,断电重启,发现Audio Codec已经能正常工作了(Realtek windows驱动已安装)。
本文来自博客园,作者:闹闹爸爸,转载请注明原文链接:https://www.cnblogs.com/wanglouxiaozi/p/15768655.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了