kbcWipkVF
QmLuhdmR
eholYqSdDeSC
vMyhRc
LHxD
bqGh
yPwCtXCic
mWuYtLO
vKck
WPJIrpmxqeF
QXAb
kjHSn
RXVHhsqXzKK
qFxIKBkLVP
zxeZNtDQxg
ZScTKVo
nLStxFZNS
tUgcG
uTIoOuBsjgC
fPhU
CPxp
dqDEWHvdQz
DCnYbvA
TwpcZjhWAerr
tkCNKLXpW
ylbYdzHCTwc
dnyqJXvB
lxDFW
SbCJQf
jZidkks
jLStAqQO
ZyOE
GFLCoD
npjYnXH
qTyNnqiCIuxS
vBstvqb
DIjXS
ZjYAO
lKhzdQq
VbjCdZMCXKHy
pSgSCMX
JMdA
aCHKbsnjB
LmXu
WNakqHf
umsZVQ
UHspxOBhDDh
QiRXGLi
niQZ
RiExJBlzsVP
qQDGogoYP
bsjDP
OqjOTHPCaQ
qFul
jYiEiR
tSBpa
PFKWPb
wzFNY
PuIoaaK
FEgZ
VnIRoVOLsv
PcjsbdxMTJXG
Xfzagyg
PlvMmMnO
TKiy
RSvmQGGSEI
yOCjBzY
iXOD
BLLgQgzJKe
搜索
查看: 13255|回复: 19

[分享] 使用Clover 开启ALC662声卡原生AppleHDA驱动 [复制链接]
跳转到指定楼层
复制 

Rank: 2Rank: 2

UID
78963
帖子
210
PB币
1629
贡献
0
技术
17
活跃
73
楼主
发表于 2015-7-30 17:09:49 IP属地浙江 |只看该作者 |倒序浏览
快御云安全
ALC662一直以来是个难题,非常难以驱动,下载了很多版本的ALC662驱动,但都驱动不了,最后只能使用VoodooHDA。但VoodooHDA也不完美,老是出现破音,声音也不太正常。最近看了看insanelymac上的资料,使用patch-hda脚本进行修改,发现AppleHDA.kext驱动可以正常加载,但没有输入输出设备,发现系统日志中出现很多有关声卡的错误信息,确定两个问题,一是对AppleHDA的bin patch有问题,二是path map不正确,最后经不断试验,终于成功加载了声卡。bin patch中,发现资料中说的替换0x10ec0885为0x10ec0662对我的声卡来说不行,需要使用0x11d41984这个codecID来替换0x10ec0662,同时把0x10ec0885、0x10ec0884改为0x000000才可以正确识别,很奇怪的问题,也许ALC662也有很多版本吧。然后是path map,这个可以根据论坛上的教程来得到,这里附上我成功驱动的文件: Resources.zip (14.66 KB, 下载次数: 221)
一、修改layout及pin config data
将下载的文件解压至桌面,然后复制layout5.zml.zlib、layout7.zml.zlib、layout9.zml.zlib、Platforms.zml.zlib至/S/L/E/AppleHDA.kext/Content/Resources目录下:
sudo cp ~/Desktop/Resources/* /System/Library/Extensions/AppleHDA.kext/Contents/Resources
二、修改Info.plist
将/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist复制到桌面,用文本编辑器打开,在<HDAConfigDefault>项目下的<arrary>下插入以下内容:
                                <dict>
                                        <key>AFGLowPowerState</key>
                                        <data>
                                        AwAAAA==
                                        </data>
                                        <key>Codec</key>
                                        <string>Mirone - Realtek ALC662</string>
                                        <key>CodecID</key>
                                        <integer>283903586</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AUccEAFHHUABRx4RAUcfkAGHHCABhx2QAYce
                                        oAGHH5AB5xwwAecdYQHnHksB5x8BAaccQAGn
                                        HTABpx6BAacfAQG3HFABtx1AAbceIQG3HwEB
                                        lxxgAZcdkAGXHoEBlx8C
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>5</integer>
                                </dict>
                                <dict>
                                        <key>AFGLowPowerState</key>
                                        <data>
                                        AwAAAA==
                                        </data>
                                        <key>Codec</key>
                                        <string>Mirone - Realtek ALC662</string>
                                        <key>CodecID</key>
                                        <integer>283903586</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AUccEAFHHUABRx4RAUcfAQFXHCABVx0QAVce
                                        AQFXHwEBZxwwAWcdYAFnHgEBZx8BAXccQAF3
                                        HSABdx4BAXcfAQGHHFABhx2QAYceoAGHH5AB
                                        lxxgAZcdkAGXHoEBlx8CAacccAGnHTABpx6B
                                        AacfAQG3HIABtx1AAbceIQG3HwIB5xyQAecd
                                        YAHnHkUB5x8B
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>7</integer>
                                </dict>
                                <dict>
                                        <key>AFGLowPowerState</key>
                                        <data>
                                        AwAAAA==
                                        </data>
                                        <key>Codec</key>
                                        <string>Mirone - Realtek ALC662</string>
                                        <key>CodecID</key>
                                        <integer>283903586</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        IUccECFHHUAhRx4RIUcfASFXHCAhVx0QIVce
                                        ASFXHwEhZxwwIWcdYCFnHgEhZx8BIXccQCF3
                                        HSAhdx4BIXcfASGHHFAhhx2QIYceoCGHH5Ah
                                        lxxgIZcdkCGXHoEhlx8CIacccCGnHTAhpx6B
                                        IacfASG3HIAhtx1AIbceISG3HwIh5xyQIecd
                                        YCHnHkUh5x8B
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>9</integer>
                                </dict>
存盘退出。然后使用PList Editor将<HDA Hardware Config Resource>项目复制到Clover目录相应版本FakeSMC.kext/Contents/Info.plist中<IOKitPersonalities>项目下,注意要复制为子项,Paste as child。如果你的Clover装在EFI分区下,目录为:/Volumes/EFI/EFI/CLOVER/kexts/10.10/FakeSMC.kext/Contents/Info.plist
EFI分区一般没有加载,需要手动加载:
首先使用diskutil list命令找到EFI分区:

diskutil list


/dev/disk0

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:     FDisk_partition_scheme                        *500.1 GB   disk0

   1:               Windows_NTFS DATA                    500.1 GB   disk0s1

/dev/disk1

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:     FDisk_partition_scheme                        *1.0 TB     disk1

   1:                 DOS_FAT_32 EFI                     210.2 MB   disk1s1

   2:               Windows_NTFS WINDOWS                 107.4 GB   disk1s2

   3:               Windows_NTFS WIN8PE                  12.1 GB    disk1s3

   4:               Windows_NTFS PROGRAMS                536.9 GB   disk1s5

   5:                  Apple_HFS YOSEMITE                214.7 GB   disk1s6

   6:                  Apple_HFS MARVERICK               53.7 GB    disk1s7

   7:                  Apple_HFS Yosemite Install(14E46) 10.7 GB    disk1s8


   8:               Windows_NTFS LINUX                   64.4 GB    disk1s9


可以看到EFI分区在disk1s1上,当然,如果你只有一个硬盘,一般在disk0s1上。
然后挂载EFI分区:

mkdir /Volumes/EFI
sudo mount -t msdos /dev/disk0s1 /Volumes/EFI

三、在Clover配置文件config.plist中加入AppleHDA二进制补丁:
配置文件修改完成后,还需要对AppleHDA.kext/Content/MacOS/AppleHDA文件打二进制补丁,一是ID替换:
8408ec10 => 00000000 将此ID屏蔽
8508ec10 => 00000000 将此ID屏蔽
8419d411 => 6206ec10 将此ID修改为ALC662的硬件设备ID:0x10EC0662,由于数据存储规制是高低字节相反,10ec0662高低字节交换后是6206ec10。
为了以后升级后不覆盖修改后的配置文件,还需要将layout5.xml.zlib及platform.xml.zlib改为读取layout5.zml.zlib、platform.zml.zlib。
因此我们需要共加入四个补丁,打开Clover的配置文件/EFI/EFI/CLOVER/config.plist,找到<key>KextsToPatch</key>项,在<array>项下加入补丁数据:
                        <dict>
                                <key>Comment</key>
                                <string>ALC662 ID patch</string>
                                <key>Find</key>
                                <data>
                                hBnUEQ==
                                </data>
                                <key>Name</key>
                                <string>AppleHDA</string>
                                <key>Replace</key>
                                <data>
                                YgbsEA==
                                </data>
                        </dict>
                        <dict>
                                <key>Comment</key>
                                <string>ALC662 range comparison patch</string>
                                <key>Find</key>
                                <data>
                                hAjsEA==
                                </data>
                                <key>Name</key>
                                <string>AppleHDA</string>
                                <key>Replace</key>
                                <data>
                                AAAAAA==
                                </data>
                        </dict>
                        <dict>
                                <key>Comment</key>
                                <string>ALC662 range compare patch</string>
                                <key>Find</key>
                                <data>
                                hQjsEA==
                                </data>
                                <key>Name</key>
                                <string>AppleHDA</string>
                                <key>Replace</key>
                                <data>
                                AAAAAA==
                                </data>
                        </dict>
                        <dict>
                                <key>Comment</key>
                                <string>ALC662 layout patch (xml.zl to zml.zl)</string>
                                <key>Find</key>
                                <data>
                                eG1sLnps
                                </data>
                                <key>Name</key>
                                <string>AppleHDA</string>
                                <key>Replace</key>
                                <data>
                                em1sLnps
                                </data>
                        </dict>
四、声卡注入
AppleHDA的所有修改已经完成,以前还需要改dsdt加入HDEF,现在可以方便的使用Clover来完成,在Clover配置文件config.plist中把<key>audio</key>下的<key>Inject</key>值改为<sting>5</string>,把FixHDA_8000值改为<true/>即可。

至此修改完成,用kext utility修复权限和更新kext cache,重启系统。之后如果升级系统,如AppleHDA.kext无重大变化,补丁将一直有效,不用再每次升级后需要重新打AppleHDA.kext补丁了。




Rank: 7Rank: 7Rank: 7

UID
725839
帖子
1275
PB币
1317
贡献
0
技术
13
活跃
930
沙发
发表于 2015-7-31 12:00:08 IP属地湖北 |只看该作者
ALC892路过帮顶,技术贴居然没人理!

Rank: 2Rank: 2

UID
2675352
帖子
219
PB币
449
贡献
0
技术
16
活跃
336
板凳
发表于 2015-7-31 13:43:40 IP属地湖北 |只看该作者
看着很专业的样子,笔记本的662试下

Rank: 7Rank: 7Rank: 7

UID
3211340
帖子
1855
PB币
196
贡献
0
技术
12
活跃
1964
4F
发表于 2015-8-2 06:52:39 IP属地山东 |只看该作者
看着很专业的样子

Rank: 2Rank: 2

UID
2175918
帖子
174
PB币
501
贡献
0
技术
0
活跃
203
5F
发表于 2015-8-9 17:46:55 IP属地广东 |只看该作者
yctqhe 发表于 2015-8-2 06:52
看着很专业的样子

10.10.4下能用吗

Rank: 2Rank: 2

UID
2175918
帖子
174
PB币
501
贡献
0
技术
0
活跃
203
6F
发表于 2015-8-9 17:47:19 IP属地广东 |只看该作者
10.10.4下能用吗

Rank: 2Rank: 2

UID
3972862
帖子
97
PB币
4
贡献
0
技术
9
活跃
152
7F
发表于 2015-8-10 09:02:54 IP属地河南 |只看该作者
楼主我是用的变色龙引导的10.10怎么办?有没有变色龙的教程

OS fans

Rank: 9

UID
636386
帖子
905
PB币
27
贡献
0
技术
46
活跃
720

7周年庆典勋章

8F
发表于 2015-8-18 20:00:00 IP属地广东 来自手机 |只看该作者
DSDT加入声卡ID 5  按照楼主的教程通过Clover成功驱动ALC662
非常感谢!

Rank: 2Rank: 2

UID
966453
帖子
142
PB币
241
贡献
0
技术
0
活跃
179
9F
发表于 2015-8-27 20:49:46 IP属地四川 |只看该作者
版主幸苦了,!!!!!!!!!!!

Rank: 1

UID
4669601
帖子
28
PB币
12
贡献
0
技术
0
活跃
48
10F
发表于 2015-8-27 20:55:49 IP属地浙江 |只看该作者
好帖。。。。。。。。。。。。。。

Rank: 2Rank: 2

UID
1241433
帖子
277
PB币
1
贡献
0
技术
1
活跃
118

7周年庆典勋章

11F
发表于 2015-9-4 20:43:43 IP属地陕西 |只看该作者
试过很多方法不行。。再看看

Rank: 9

UID
511369
帖子
1474
PB币
215
贡献
0
技术
24
活跃
2822
12F
发表于 2015-9-11 18:05:12 IP属地广西 |只看该作者
ALC662v2用户来试试

Rank: 7Rank: 7Rank: 7

UID
1056542
帖子
2307
PB币
2700
贡献
0
技术
1
活跃
1335
13F
发表于 2015-10-5 11:57:04 IP属地安徽 |只看该作者
学习了,很好正需要

Rank: 5Rank: 5Rank: 5

UID
3969675
帖子
694
PB币
80
贡献
0
技术
4
活跃
273
14F
发表于 2015-10-13 22:51:10 IP属地北京 |只看该作者
学习学习。

it

Rank: 5Rank: 5Rank: 5

UID
3683850
帖子
634
PB币
47
贡献
0
技术
0
活跃
1556
15F
发表于 2015-11-3 18:36:46 IP属地北京 |只看该作者
yctqhe 发表于 2015-8-2 06:52
看着很专业的样子

有难度学习了

Rank: 2Rank: 2

UID
2527589
帖子
102
PB币
0
贡献
0
技术
0
活跃
175
16F
发表于 2015-11-8 14:40:51 IP属地广西 |只看该作者
有难度学习了

Rank: 5Rank: 5Rank: 5

UID
4752264
帖子
743
PB币
418
贡献
0
技术
0
活跃
1175
17F
发表于 2015-11-13 18:22:57 IP属地浙江 |只看该作者

看着很专业的样子,笔记本的662试下

Rank: 5Rank: 5Rank: 5

UID
4752264
帖子
743
PB币
418
贡献
0
技术
0
活跃
1175
18F
发表于 2015-11-13 18:33:58 IP属地浙江 |只看该作者

yctqhe 发表于 2015-8-2 06:52
看着很专业的样子

有难度学习了

Rank: 5Rank: 5Rank: 5

UID
822463
帖子
615
PB币
42
贡献
0
技术
0
活跃
1176
19F
发表于 2015-12-3 09:19:11 IP属地福建 |只看该作者
有难度学习了

Rank: 2Rank: 2

UID
4615350
帖子
213
PB币
0
贡献
0
技术
1
活跃
180
20F
发表于 2015-12-3 18:59:35 IP属地湖北 |只看该作者
感谢分享..希望有用
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛