[关闭]
@chenyaofo 2018-03-03T12:07:08.000000Z 字数 1618 阅读 1422

黑苹果DSDT补丁教程

https://youtu.be/RVMrwMW3jOY

https://youtu.be/S6CJcWlXyGg

https://youtu.be/qkXfstUwrFA

  1. 下载iasl编译器

    这里下载编译器iasl.zip,并复制iasl可执行文件到/usr/bin/下面。

    1. wget https://bitbucket.org/RehabMan/acpica/downloads/iasl.zip
    2. unzip iasl.zip && sudo cp iasl /usr/bin
  2. 下载MaciASL IDE

    这里下载MaciASL最新版本,并安装到app文件夹中。

  3. 添加补丁源

    打开MAciASL IDE,在Preferences -> Souces中添加源http://raw.github.com/RehabMan/Laptop-DSDT-Patch/master

  4. 提取原始的DSDT和SSDT文件

    创建一个名为origin的文件夹放置所有DSDT和SSDT文件,删除SSDT文件名中带有x的文件,并将refs.txt放入origin文件夹中。

    refs.txt的内容如下:

    1. External(MDBG, MethodObj, 1)
    2. External(_GPE.MMTB, MethodObj, 0)
    3. External(_SB.PCI0.LPCB.H_EC.ECWT, MethodObj, 2)
    4. External(_SB.PCI0.LPCB.H_EC.ECRD, MethodObj, 1)
    5. External(_SB.PCI0.LPCB.H_EC.ECMD, MethodObj, 1)
    6. External(_SB.PCI0.PEG0.PEGP.SGPO, MethodObj, 2)
    7. External(_SB.PCI0.GFX0.DD02._BCM, MethodObj, 1)
    8. External(_SB.PCI0.SAT0.SDSM, MethodObj, 4)
    9. External(_GPE.VHOV, MethodObj, 3)
    10. External(_SB.PCI0.XHC.RHUB.TPLD, MethodObj, 2)
  5. 反编译aml文件

    1. iasl -da -dl -fe refs.txt DSDT.aml SSDT*.aml

    上述命令执行完之后会得到DSDT.dsl和一系列的SSDT*.dsl文件,将这些文件移动到新文件夹patched中。

  6. DSDT通用补丁

    1. Rename _DSM methods to XDSM
    2. Fix _WAK Arg0 v2
    3. HPET Fix
    4. SMBUS Fix
    5. IRQ Fix
    6. RTC Fix
    7. OS Check Fix (Windows 8)
    8. Fix Mutex with non-zero SyncLevel
    9. Add IMEI
    10. Rename GFX0 to IGPU
    11. Fix _WAK IAOE
    12. Rename B0D3 to HDAU
    13. Fix ADBG Error
    14. Fix PARSEOP_ZERO Error
  7. SSDT通用补丁

    为每个SSDT都要打下列补丁

    1. Rename _DSM methods to XDSM
    2. Rename GFX0 to IGPU
    3. Rename B0D3 to HDAU
    4. Cleanup/Fix Errors (SSDT)
    5. Remove _PSS placeholders
  8. 屏蔽独显

    查找所有包含_INI_OFF的SSDT文件

    1. grep -l Method.*_INI *.dsl
    2. grep -l Method*._OFF *.dsl

    下面假设在SSDT-8.dsl中查找到上述两个标识。
    为SSDT-8.dsl打上补丁Disable from _INI(SSDT),并将补丁内容中的PEG0改为RP05

  9. 编译dsl文件

    利用MaciASL IDE的另存为功能即可。

  10. 复制文件到EFI分区的对应位置

    在命令行中执行diskutil mount EFI即可挂载EFI分区。复制所有patched aml文件到EFI/EFI/CLOVER/ACPI/patched
    更改config.plist,为Acpi -> SSDT -> Drop OEM打上勾。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注