Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 5741|回复: 22

[分享] [翻译引进]解决AppleHDA升级烦恼的新思路, 升级10.9.5已验证 [复制链接]

Rank: 5Rank: 5Rank: 5

UID
377220
帖子
643
PB币
1534
贡献
0
技术
19
活跃
929
发表于 2014-2-25 11:21:29 |显示全部楼层
本帖最后由 xhcnb 于 2014-9-18 21:20 编辑

9月18日更新:在线升级10.9.5, 声音正常
7月2日更新: 在线升级10.9.4, 声音正常   
5月16日更新: 通过store升级10.9.3正式版, 声音正常   2月26日更新: 已经成功升级10.9.2正式版, 声音正常
_______________________________________ _______________________________________ _______________________________________
作者在     http://pikeralpha.wordpress.com/2013/12/17/new-style-of-applehda-kext-patching/
                       http://pikeralpha.wordpress.com/2014/01/05/new-style-of-applehda-kext-patching-take-ii/
        中提到了一种新的自动对AppleHDA打补丁的方法: Clover 引导patch AppleHDA binary + 冒充的kext内部符号链接AppleHDA
        就不一句句翻译了, 简单叙述一下原理:
        1.使用Clover的kext path功能在引导时修改AppleHDA内部的声卡vid/pid, 可以参考 https://github.com/Piker-Alpha/AppleHDA8Series.sh
        以我的889声卡为例, 看看这个脚本怎么使用
               
        下载脚本, 执行
        
  1. sudo ./AppleHDA8Series.sh
复制代码

        
        AppleHDA8Series.sh v2.5 Copyright (c) 2013-2014 by Pike R. Alpha
                            patched XML files by Toleda and contributors
        ----------------------------------------------------------------
        The supported Realtek ALC codecs for AppleHDA8Series.sh are:

            [1] Realtek ALC  885 (0x10EC0885 / 283904133)
            [2] Realtek ALC  887 (0x10EC0887 / 283904135)
            [3] Realtek ALC  888 (0x10EC0888 / 283904136)
            [4] Realtek ALC  889 (0x10EC0889 / 283904137)
            [5] Realtek ALC  892 (0x10EC0892 / 283904146)
            [6] Realtek ALC  898 (0x10EC0899 / 283904153)
            [7] Realtek ALC 1150 (0x10EC0900 / 283904256)

        Please choose the desired codec for the hardware:
               
        这里我选 4
        
        Do you want to use [1] as the layout-id (y/n)?
               
        我选y, 因为我已经在DSDT中指定layout-id为1了, 请根据自己的需要选择
        然后会自动寻找你是不是已经添加过ConfigData了, 如果没有, 会为你下载
        
        Looking in /System/Library/Extensions/AppleHDA.kext for ConfigData
        Looking in /System/Library/Extensions/FakeSMC.kext for ConfigData
        Error: ConfigData NOT found!
        Downloading [url]https://raw.github.com/toleda/audio_ALC889/master/889.zip ...
          % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                         Dload  Upload   Total   Spent    Left  Speed
        100 17218  100 17218    0     0   2123      0  0:00:08  0:00:08 --:--:--  3792

        Unzipping Archive:  /tmp/ALC889.zip
           creating: /tmp/889/
          inflating: /tmp/889/Info-84.plist
          inflating: /tmp/889/Info-85.plist
          inflating: /tmp/889/Info-90.plist
          inflating: /tmp/889/Info-91.plist
         extracting: /tmp/889/layout1.xml.zlib
         extracting: /tmp/889/layout2.xml.zlib
         extracting: /tmp/889/layout3.xml.zlib
          inflating: /tmp/889/Platforms.xml.zlib

        The available Info.plist files for the ALC 889 are:

        [1] /tmp/889/Info-84.plist
        [2] /tmp/889/Info-85.plist
        [3] /tmp/889/Info-90.plist
        [4] /tmp/889/Info-91.plist

        Please choose the matching Info.plist (1/4)
               
        我选 3
        
        Looking in: /tmp/889/Info-90.plist for ConfigData
        ConfigData for Realtek ALC 889 found!
        ------------------------------------------------------------
        IUccECFHHUAhRx4RIUcfkCFXHCAhVx0QIVceASFXHwEhZxwwIWcdYCFnHgEhZx8BIXcc8CF3HQAhdx4AIXcfQCGHHEAhhx2QIYceoCGHH5AhlxxgIZcdkCGXHoEhlx8CIaccUCGnHTAhpx6BIacfASG3HHAhtx1AIbceISG3HwIh5xyQIecdYSHnHksh5x8BIfcc8CH3HQAh9x4AIfcfQCEXHPAhFx0AIRceACEXH0A=
        ------------------------------------------------------------
        Creating AppleHDA889.kext in: /Users/jason/Downloads/AppleHDA8Series.sh-master
        Creating symbolic link to AppleHDA ...
        AppleHDA889.kext appears to be loadable (including linkage for on-disk libraries).
        Do you want to copy AppleHDA889.kext to: /System/Library/Extensions? (y/n) n
        Done.
               
        最后一步, 我选n, 不让它自动安装这个kext,准备手动安装
     这样就得到了一个AppleHDA889.kext, 可以打开看看, 它的内部玄机, 把它安装到SLE下面, 就不需要再对原版AppleHDA.kext做任何修改了, 系统升级也不需要修改了


AppleHDA8Series.sh-master.zip (12.3 KB, 下载次数: 146)





YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1772
贡献
0
技术
57
活跃
1242

7周年庆典勋章 8周年庆典勋章

发表于 2014-2-25 11:26:31 |显示全部楼层
支持下!!

Rank: 5Rank: 5Rank: 5

UID
200089
帖子
702
PB币
2187
贡献
0
技术
99
活跃
593
发表于 2014-2-25 11:29:01 |显示全部楼层
没这个必要把。

最低配置&最佳体验

Rank: 11Rank: 11Rank: 11

UID
1678738
帖子
6350
PB币
43
贡献
0
技术
70
活跃
1261

8周年庆典勋章

发表于 2014-2-25 11:42:28 |显示全部楼层
变色龙有办法吗?

Rank: 5Rank: 5Rank: 5

UID
46240
帖子
547
PB币
604
贡献
0
技术
39
活跃
1563
发表于 2014-2-25 11:42:32 |显示全部楼层
可以将他放到clover\kext\10.9下面吗

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94482
贡献
1
技术
23524
活跃
2822

热心会员 8周年庆典勋章

发表于 2014-2-25 11:51:22 来自手机 |显示全部楼层
yanjin 发表于 2014-2-25 11:42
可以将他放到clover\kext\10.9下面吗

不可以 必须在sle下

MEN就像一枚硬币,前面是1,后面是菊花 (&

UID
4105512
帖子
2141
PB币
3596
贡献
0
技术
101
活跃
1293

十一周年 我是大学生! 远景技术达人

发表于 2014-2-25 11:58:23 来自手机 |显示全部楼层
脚本支持269吗

Rank: 2Rank: 2

UID
3622757
帖子
451
PB币
106
贡献
0
技术
26
活跃
332
发表于 2014-2-25 12:12:18 |显示全部楼层
fox0491 发表于 2014-2-25 11:26
支持下!!

支持下!!

Rank: 9

UID
697283
帖子
2199
PB币
3583
贡献
0
技术
151
活跃
948

7周年庆典勋章

发表于 2014-2-25 13:05:22 |显示全部楼层
这个方法我几个月前就在用了,但是没有前面输出

黑苹果专用车

Rank: 7Rank: 7Rank: 7

UID
523723
帖子
1977
PB币
599
贡献
0
技术
201
活跃
558
发表于 2014-2-26 20:57:12 |显示全部楼层
还用的变色龙,看来没戏啊。

Rank: 2Rank: 2

UID
4225879
帖子
404
PB币
940
贡献
0
技术
34
活跃
555
发表于 2014-2-26 21:51:15 |显示全部楼层
仅限于ALC8系列的声卡么?

Rank: 7Rank: 7Rank: 7

UID
64620
帖子
1692
PB币
6608
贡献
0
技术
82
活跃
454

远景智多星 远景技术达人

发表于 2014-2-26 22:00:26 |显示全部楼层
我都直接沿用10.8的  没问题  

Rank: 2Rank: 2

UID
2453574
帖子
217
PB币
363
贡献
0
技术
4
活跃
145
发表于 2014-3-9 23:09:58 |显示全部楼层
这个太好啦!!!

风水师

Rank: 5Rank: 5Rank: 5

UID
315333
帖子
698
PB币
1710
贡献
0
技术
25
活跃
1561
发表于 2014-3-10 11:28:32 |显示全部楼层
楼主, 你好, 我的DSDT里声卡LAYOUT-ID是 0x79, 0x03, 0x00, 0x00, 换成10进制就是889, 你的脚本选项却只有声卡layout-id是1, 2, 3. 这里应该怎么做? 是修改dsdt里的声卡layout-id还是随便选?
如果选择889, 直接显示找不到ConfigData.
请指点. 谢谢!
LAYOUT-ID是 0x79, 0x03, 0x00, 0x00, 换成10进制就是889

dsdt.aml.png


找不到889的ConfigData.

ray — bash — 82×35.png

Rank: 5Rank: 5Rank: 5

UID
377220
帖子
643
PB币
1534
贡献
0
技术
19
活跃
929
发表于 2014-3-10 12:49:53 |显示全部楼层
macleane 发表于 2014-3-10 11:28
楼主, 你好, 我的DSDT里声卡LAYOUT-ID是 0x79, 0x03, 0x00, 0x00, 换成10进制就是889, 你的脚本选项却只有声 ...

DSDT中的layout_id可以改, 你可以看看这个
http://bbs.pcbeta.com/forum.php?mod=viewthread&tid=1439449

风水师

Rank: 5Rank: 5Rank: 5

UID
315333
帖子
698
PB币
1710
贡献
0
技术
25
活跃
1561
发表于 2014-3-10 15:25:33 |显示全部楼层
xhcnb 发表于 2014-3-10 12:49
DSDT中的layout_id可以改, 你可以看看这个
http://bbs.pcbeta.com/forum.php?mod=viewthread&tid=143944 ...

谢谢, 已修改layout-id为1, 但是还是无效果, 我是技嘉主板, Z68A-D3H-B3, 板载ALC889声卡, 这是我dsdt里的代码, 用macisal编译成功. CLOVER EFI加载DSDT.aml
  1.         Device (HDEF)
  2.         {
  3.             Name (_ADR, 0x001B0000)
  4.             Method (_DSM, 4, NotSerialized)
  5.             {
  6.                 Store (Package (0x06)
  7.                     {
  8.                         "layout-id",
  9.                         Buffer (0x04)
  10.                         {
  11.                             0x01, 0x00, 0x00, 0x00
  12.                         },

  13.                         "device-name",
  14.                         Buffer (0x0F)
  15.                         {
  16.                             "Realtek ALC889"
  17.                         },

  18.                         "PinConfigurations",
  19.                         Buffer (Zero) {}
  20.                     }, Local0)
  21.                 DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
  22.                 Return (Local0)
  23.             }

  24.             OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
  25.             Field (HDAR, WordAcc, NoLock, Preserve)
  26.             {
  27.                 DCKA,   1,
  28.                         Offset (0x01),
  29.                 DCKM,   1,
  30.                     ,   6,
  31.                 DCKS,   1,
  32.                         Offset (0x08),
  33.                     ,   15,
  34.                 PMES,   1
  35.             }

  36.             Method (_PRW, 0, NotSerialized)
  37.             {
  38.                 Return (GPRW (0x0D, 0x04))
  39.             }
  40.         }
复制代码


生成的AppleHDA889.kext驱动也安装成功, AppleHDA.kext 换回10.9.2的原版,和AppleHDA889.kextg共存, 但是无法驱动.显示未签名, 无法加载.
DSDT HDEF
dsdt.png


KEXT
MacBook Pro 2.png


系统声卡
声音.png



Rank: 2Rank: 2

UID
1155221
帖子
268
PB币
1
贡献
0
技术
1
活跃
373
发表于 2014-3-16 01:22:20 |显示全部楼层
这个一定支持。。
头像被屏蔽

Rank: 2Rank: 2

UID
29630
帖子
157
PB币
0
贡献
0
技术
0
活跃
43
发表于 2014-4-7 18:07:01 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

Rank: 2Rank: 2

UID
29630
帖子
157
PB币
0
贡献
0
技术
0
活跃
43
发表于 2014-4-7 19:28:37 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

Rank: 2Rank: 2

UID
1403126
帖子
264
PB币
755
贡献
0
技术
0
活跃
184
发表于 2014-4-7 21:02:52 |显示全部楼层
收藏下,以后备用
回顶部
Copyright (C) 2005-2020 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件