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

  1. 打开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驱动已安装)。

 

 

 

 

 

 

posted @ 2022-01-05 19:59  闹闹爸爸  阅读(2145)  评论(0编辑  收藏  举报