Skip to content

Lunaleeguo/Surface-Pro-4-Sierra

Repository files navigation

Surface-Pro-4-Sierra

微软 Surface Pro 4-macOS Sierra 10.12 黑苹果安装教程

机器配置

主板                微软 Surface Pro 4 ( 英特尔 PCI 标准主机 CPU 桥 - 100 Series 芯片组 )

准备工作

  • 安全启动Secure Boot关掉
  • BitLocker关掉
  • 从U盘启动的方法:长按音量减键保持,然后轻按一下开机键,直到出现Clvoer界面时就可松开音量键了
  • 安装Clvoer时不要安装CsmVideoDxe-64.efi,drivers64UEFI里检查下有的要删除,不删除会黑屏

安装说明

安装原版系统的原则是:无须DSDTSSDT,配置和驱动文件要尽量精简,便于后期五国查错

  • drivers64UEFI文件包含:

    DataHubDxe-64.efi EmuVariableUefi-64.efi Fat-64.efi OsxAptioFix2Drv-64.efi PartitionDxe-64.efi VBoxHfs-64.efi

  • kexts中的Others文件包含:

    FakeSMC.kext VoodooPS2Controller.kext USBInjectAll.kext

config配置需注意的几点

NVMe直接Patch

自从10.12以后不需要安装单独的NVMe驱动了,直接利用Clvoer的Patch功能即可,特别注意安装不同版本对应的Patch不完全相同

Iris 540在安装时ig-platform-id注入为0x12345678

目前HD 520/530/540显卡要想驱动一般要注入ig-platform-id:0x19160000,有的机型DVMT预读显存和苹果规定的大小不一致,就容易在安装过程中卡AppleIntelSKLGraphicsFramebuffer,这里远景论坛里面也有各种各样的解决办法。对于非Surface Pro 4的机器,大家可以借鉴一些解决办法,以下是在远景论坛上搜集的一些解决方法:                           

  • 法一:有直接在BIOS里将DVMT改为96M以上 这个办法可以但是前提是要Bios里有这个修改选项,Pro4里就没有这个选项

  • 法二:有的是通过直接升级Bios解决的  其他机器可能可行,但是Pro 4目前看来是没法升级Bios的

  • 法三:有利用Clover的Patch直接对AppleIntelSKLGraphicsFramebuffer打二进制补丁解决的    正常情况下,Clover里Patch过后就能解决问题,实际上Clover的Patch功能经常抽风,远景论坛上大把的人打了补丁还是卡这儿,Pro4同样不行

  • 法四:有的干脆直接上懒人版,然后替换SLE下的自己修改过的AppleIntelSKLGraphicsFramebuffer.kext   这个办法一般情况下是能够解决问题的,但是考虑到要用到懒人版,而且还得装HFS+这个软件,容易造成HFS分区不稳定,不是很建议大家使用

综上所述,个人认为目前解决卡AppleIntelSKLGraphicsFramebuffer最好的办法就是直接仿冒一个无用的显卡ID如:fakeID=0X12345678,也可以不是这个,只要仿冒一个无用的显卡ID即可)就行,目的是保证在初次安装系统时不加载显卡驱动。等安装完毕进入系统后再替换修改的AppleIntelSKLGraphicsFramebuffer.kext,然后修复权限即可。具体操作流程分两步进行

Step 1:

初次安装,仿冒无用显卡ID以进入系统,config注入ig-platform-id:0x12345678,代码如下:    Graphics                          Inject                                         ATI                                                  Intel                                                  NVidia                                                          NvidiaSingle                                 VRAM                 128                 ig-platform-id                 0x12345678         

Step 2:

利用原版镜像安装完成后注意:安装完成后替换S/L/E下的AppleIntelSKLGraphicsFramebuffer.kext,然后把ig-platform-id修改为注入为0x19160000,修复权限重启后即可驱动Iris HD 540config注入代码如下:

<key>Graphics</key>
        <dict>
                <key>Inject</key>
                <dict>
                        <key>ATI</key>
                        <false/>
                        <key>Intel</key>
                        <true/>
                        <key>NVidia</key>
                        <false/>
                </dict>
                <key>NvidiaSingle</key>
                <false/>
                <key>VRAM</key>
                <integer>128</integer>
                <key>ig-platform-id</key>
                <string>0x19160000</string>
        </dict> 

至此,Surface Pro 4通过仿冒无用显卡ID先安装原版镜像,进入系统后,替换修改版AppleIntelSKLGraphicsFramebuffer.kext并修复权限,再注入正确的显卡ID即可驱动显卡,并避免了在安装过程中卡AppleIntelSKLGraphicsFramebuffer的问题。


安装完成后对系统进行修正

- ALC298声卡修正

  • ALC298声卡的驱动

    通过从vit96961的主页上下载AppleALC的源码,保留ALC298的相关文件,删除其他无用的文件,并利用Xcode编译得到ALC298的仿冒声卡驱动AppleALC.kext,然后注入声卡ID为3即可。其中,注入声卡ID有两种方法,任选其一即可:

  1. 方法一:利用Clover直接注入:

     <key>Devices</key> 
          <dict> 
               <key>Audio</key> 
               <dict> 
                    <key>Inject</key> 
                    <string>3</string> 
               </dict> 
          </dict> 
    
  2. 方法二:利用Rehabman的HotPatches直接通过SSDT注入:

    SSDT-Config.dsl修改Name(AUDL, 你的id十进制),当然,对于Surfacre Pro 4则为Name(AUDL, 3),然后编译成aml文件,放回ACPI/patched

    • ALC声卡唤醒无声的解决

      直接利用Rehabman的CodecCommander.kext驱动便可解决


- 亮度修复

利用Rehabman的HotPatches加入SSDT-PNLF.aml放入ACPI/patched并配合IntelBacklight.kext,实现亮度可调


- 电池电量修复

  • 电池电量修复分两步进行:

- 网卡修正

  • 点击右上角的WiFi图标,选择最后一项,在左边列表删除掉所有网络。
  • 终端执行sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
  • 等系统重启完了,点击右上角的WiFi图标,选择最后一项,按顺序重新添加以太网Wi-Fi,应用。蓝牙可以不添加,之后自动会加的。
  • 利用Rehabman的HotPatches加入ssdt-rmne.aml 放入ACPI/patched并配合NullEthernet.kext,实现App Store无障碍登录。

- TF卡读卡器的修正

配合GenericUSBXHCI.kext,可以完美使用TF读卡器,并且USB 3.0以及拓展坞的正常使用


- 电源管理及变频的修正

由于苹果在 Skylake 平台已经不再使用 AppleLPC 机制,所以不再需要加载 AppleLPC 。特别的,在新的 Skylake 平台下,也不用像以前一样利用脚本产生SSDT来变频了,新平台下无须SSDT,直接在Clover中的CPU选项中开启HWPEnable即可,或者直接利用HWPEnabler.kext实现变频。

经过实际测试,在Surface Pro 4 上,利用HWPEnable可实现12级变频调节。

完成情况

  • NVMe SSD可用
  • Iris 540显卡驱动,HIDPI模式开启
  • 亮度可调节
  • 电池电量显示正常
  • 声卡ALC298可用,且唤醒有声
  • 睡眠唤醒正常,合盖睡眠正常
  • 电源管理可用,变频正常
  • USB3.0正常,TF卡读卡器可用,包括扩展坞可以正常使用
  • 有线网卡正常驱动
  • Type Cover键盘可用

目前无解

  • Marvell的无线蓝牙二合一卡均无解
  • 触控无解,Surface Pen无法使用
  • 前后摄像头+红外线无解   

特别鸣谢

About

微软 Surface Pro 4 macOS Sierra 10.12 黑苹果

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages