本帖最后由 xiaoliu123 于 2017-9-29 21:08 编辑
板块没有开启补充功能,就放在这里写吧。直接用AppleALC默认的ConfigData的话耳机听不清,只有调左右声道才可以。所以要自己提取一下ConfigData。
首先在Ubuntu提取codec文件(/proc/asound/card0/codec#0),注意此处数字不一定为0也有可能是1
用verbit提取一下信息
- ./verbit codec#0.txt > verbs.txt
复制代码 出现错误就删除codec#0.txt 中的function ID 那一行。
然后打开verbs.txt,文件分为两部分,上面的是所有节点的信息,下面是过滤后的信息。此处只要下面过滤后的信息,我提取的如下:
Jack Color Description Node PinDefault Modified Verbs
--------------------------------------------------------------------------------------------------------
Digital Unknown Mic at Int N/A 18 0x12 0x90a60140 01271c40 01271d00 01271ea6 01271f90
Analog Unknown Speaker at Int N/A 20 0x14 0x90170110 01471c10 01471d00 01471e17 01471f90
Unknown Unknown Line Out at Ext N/A 23 0x17 0x40000000 01771c50 01771d00 01771e00 01771f40
1/8 Black Mic at Ext Right 25 0x19 0x04a11030 01971c30 01971d10 01971ea1 01971f00
Analog Pink Other at Ext N/A 29 0x1d 0x40f79a2d 01d71c20 01d71d90 01d71ef7 01d71f40
1/8 Black HP Out at Ext Right 33 0x21 0x04211020 02171c60 02171d10 02171e21 02171f00
--------------------------------------------------------------------------------------------------------
红字部分就是我们需要的configdata了。我们将它一行一行拷贝出来(没有回车,中间全是空格),如下
- 提取:
- 01271c40 01271d00 01271ea6 01271f90 01471c10 01471d00 01471e17 01471f90 01771c50 01771d00 01771e00 01771f40 01971c30 01971d10 01971ea1 01971f00 01d71c20 01d71d90 01d71ef7 01d71f40 02171c60 02171d10 02171e21 02171f00 01470C02 02170C02
复制代码 有没有注意到后面多了两串字符,这个因机型而异。我的codec文件包含EAPD 这个字符串,所以要加上01470C02 (AppleALC中自带的有两个所以我也加了两个)01470C02 02170C02
理论上加一个就可以了。
接下来就是替换AppleALC默认的configdata,此处用的软件是PlistEdit Pro
右键AppleAlC.kext - 显示包内容 - 打开Contents/plugins - PinConfigs.kext - 用PlistEdit 打开其中的info.plist
按下win+f 搜索ALC235,修改该条目下的ConfigData为上面我们自己提取的。
到这里就已经可以加载AppleHDA了。
经测试我的只修改AppleALC中的ConfigData声卡会变为万能声卡(可能我的改的太多,只是个例),如果遇到这种情况的话,就不要修改AppleALC了。直接修改AppleHDA.kext
以下是AppleHDA的生成和修改节点。
首先用AppleHDA生成,用到的软件AppleHDApartcher(附件有)
选择自己的声卡,左边台式,右边笔记本。点击partchHDA就会生成所需文件(桌面MironeAudio)
生成有很多文件这里也不赘述都有什么用了,我们只要AppleHDA.kext文件(在10ec235内)就行了。
生成后的节点和我找的一样(找节点方法参考一楼的帖子,里面也包括了节点的修改),所以这里就不说了。
这里只改configdata.
和AppleALC类似,不过这个是在Plugins下的AppleHDAHardwareConfigDriver.kext里面。
修改后用Kext Wizard (附件)安装,然后重建缓存。
当然为了让他加载,我们需要注入layoutid,以及修改HDEF。
这里有两种方法
1:用Clover Configurator
1>在Acpi选项卡里,DSDT下面 点击 list of parches - 选择 change HDAS to HDEF
2> 在devices ,Audio填入 3 (ALC235是3)
2:用DSDT(用到软件MaciACL,解决关机断电和亮度调节也要用到,后面会说)
没用过DSDT的接着看,用过的跳到下面。
1> 打开软件,依次点击右上角 MaciACL - Preferens - iASL - ACPI Specification - 选择5.1
2> 点击file - New from ACPI - DSDT (默认也是打开这个)
3> Clover Configurator - ACPI - 选中 Drop OEM _DSM
用过DSDT的直接打开自己的DSDT文件。
4> 打开软件,依次点击右上角 MaciACL - Preferens - Sources 点击+号,name自己添 ,URL填上https://raw.githubusercontent.com/RehabMan/Laptop-DSDT-Patch/master/
5> 返回主界面,按win+f 查找 HDAS ,选中后面的 Replace , 在下面的框填入 HDEF ,点击all,done;
6> 点击上面的Patch 选刚才添加的源,找到 [Audio] layoutid-3 ,选择并点击下面的Apply。
保存文件,将其放在Clovr内的 ACPI/patched/ 内。(确保你的Clover Configurator - Acpi - SortedOrder(右下角) 有DSDT.aml ,没有的话自己加上)
重启,声卡部分完成。
|