相关动态
从Clover转向OpenCore的X99 iMac Pro(一)
2025-01-02 23:52

追加修改(2019-12-27 21:31:24):
这篇文章中我疏忽了一件事情,就是XCPM原生电源管理,在OpenCore中不像Clover一样直接有某项跟PluginType有关,而是需要通过SSDT-PLUG修复,但是困难之处在于OC-little中并没有和X99相符的SSDT-PLUG,于是我自己照着我的SSDT-PmMgt修改了一个SSDT-PLUG,这部分会在(二)中写到。

本篇文章不能替代篇6的Clover安装说明,本文仅仅只是将Clover相关设置平行迁移到OpenCore下,所以没有阅读过篇6的请重新回去看一遍。

OpenCore是类似于Clover的UEFI的引导器,目前已越来越受到大家的欢迎。首先OpenCore提供了详细的日志系统,帮助黑苹果排错;其次OpenCore以更先进的方法注入第三方Kext,不破坏系统的SIP;再次,OpenCore支持读取NVRAM等一系列特性,可以让黑苹果变得更“原生”,诸如选择启动器、Command Ctrl互换,原生开启Option键特性都可以实现。

不过流行起来的原因倒并不是OpenCore具有种种优势,主要是一堆开发者抱起团来指名道姓Clover未来不会被他们的工作支持,第三方Kext都不会对Clover做兼容性检查,AptioMemoryFix这种重要的efi更是直接并入OpenCore成为了FwRuntimeVariable.efi。虽然对大家的学习又一次提出了挑战,不过我还是觉得确实每隔一段时间就应该打破向下兼容的传统,重构系统架构,这样整套引导系统会更有效率。上次是Clover革Chameleon的命,这次就轮到OpenCore革Clover的命了

原因非常简单,因为OpenCore在传给OS ACPI表的时候是不分操作系统的,这意味着在OpenCore的框架下修改ACPI表要更加的小心谨慎,所以在这一块我仍然处于学习的阶段,未来会向大家继续汇报我学习的经验(笑)。不过可能是我这里使用的都是一些无关紧要的SSDT修复,所以Windows也是可以正常引导的,所以和我们X99使用也关系不大。

本篇文章不打算讲OpenCore的相关设置,这里推荐三个地方的文章

本次文章的主要内容还是在了解了这些的基础上,对X99黑苹果引导进行升级。

首先需要准备如下三个安装包:

其次OpenCore官方推荐使用ProperTree和Xcode 10对config.plist进行编辑,目前Xcode11存在问题,所以如果你碰巧是Xcode10仍然可以继续使用,如果是11版本则需要更换一个plist编辑。

如何创建U盘我就不再赘述,有问题的看之前的文章,创建完U盘我们可以使用Clover Configuration或者在Terminal中输入sudo diskutil mount /dev/disk5s1挂载U盘EFI分区(disk5s1是在我的电脑上U盘的位置,各位在使用前先用diskutili list查看具体路径。)

接下来我们要将下载的OpenCorePkg中的EFI文件夹整个儿复制到U盘EFI分区中。

文件结构如下图所示,在各个文件夹中目前仍然是全空的状态。我们接下来要补充相关ACPI、Drivers和Kexts。

在我们下载的AppleSupport中,我们需要将其中的efi驱动放到Drivers中,Tools同样方法迁移到EFI分区中。

再将原来Clover中的DSDT/SSDT和Kexts文件都放到OC对应文件夹中。复制后结构如下:

简单说明需要注意的点,目前我使用WhateverGreen来替代X580的aml,主要基于两点理由,第一是尽量少用ACPI替换;第二是WhateverGreen相对来说会一直迭代,不需要我操心,这里的WhateverGreen版本为release 1.3.6,可以支持在10.15.2下HEVC硬解码。

TB3T.aml也被我拿掉了,我目前没有使用雷电卡,因为我用上了雷电卡发现我本质上不需要雷电卡,我既没有5K屏幕也没有雷电扩展设备,白白占了我一条PCI-E x16通道不说还挺贵,所以转手就出掉了。

在Drivers里面,我们使用了四个驱动,Apfs/HFSPlus就不用多说了,大家都懂,FwRuntimeServices.efi就是AptioMemoryFix.efi,也是必备的,这次我添加了一个MemoryAllocation.efi,主要是听说X99和Z390都需要添加这个驱动预留第一组 512MB , 帮助引导工具注入内核以及内核缓存至第一组 512MB 内存, 加入这个后还需要配合 FwRuntimeServices 和引导标识符 slide=1。但是根据实测我发现没有这个也很正常,本着能少用就少用的理念,我bak注释掉了这个驱动。VirtualSMC.efi是配合VirtualSMC.kext一起使用的,嗯,原来KGP是使用FakeSMC的,但是我觉得有点太老了,这次就升级更换掉了。

有一个很具争议的驱动是UsbKbDxe.efi,主要是为了在启动阶段提供苹果原生的快捷键,但是我的在使用时候发现加入了这个在OC引导界面直接不能用键盘了,这个需要你们自己测试,我推荐不用。

接下来是很重要的一步,我们需要根据以前的Clover config.plist修改OpenCore.plist。首先从OpenCore/Docs文件夹中将Sample.plist复制到EFI/OC目录下,并重命名为config.plist,如果你原来的机型是老机型,则使用SampleFull.plist。

在讲解OpenCore具体用法部分我不会详细讲每一项的功能,这和黑屏小兵和Xjn的重复了,我以阅读OC Configuration为主,配合Xjn的一些实测结果进行设置,这里也只讲我碰到麻烦的一些地方。

修改ACPI之前首先将开头的5个Key-String对删除,只是一些Warning。Add array中主要是关于ACPI表的修补,我们需要将其修改为加载我们自己的ACPI patched。将九个SSDT patch加入其中,需要注意,貌似这个加载是有顺序的,所以DTGP要放到了最前面,除此以外icon-patch和ANS1/2有关,但我不是很敢肯定依赖关系顺序,所以我尝试了icon-patch放后面,ANS1/2放前面,结果正常起效了,所以大家可以依照这个来,我有点怀疑这三者作用时可能对顺序没啥要求,所以随便放也是可以的。

Patch array要改的就非常多了,稍微解释一下其中两个我认为重要的Properties,第一个是Count,实际上是指这种替换要进行多少次,默认是0,意思是只要碰见符合替换的就进行替换;第二个是Limit,默认是0,意思是整个ACPI表都要进行查找替换。这里给了一个例子给大家参考:

最终应该是有10条常规hot patch和16条跟线程有关的hot patch。其实在DSDT中要修改的CP-PR对挺多,但是我就修改这么多,剩下的留置争议到以后再说。

最后是Quirks Array,具体解释如下,我就不再翻译了,针对X99,统统默认关闭就行了,没啥卵用。

MmioWhitelist不用动,都是默认关闭的,第一项跟Haswell内存寻址修复有关,第二项跟X99用户很熟悉的卡PCI Configuration有关,但是这两项对我们也是没啥用的,X99卡PCI也和第二项没关系。

Quirks中设置如下,如果对每一项究竟是干什么用的感兴趣,请去翻官方文档。

其中需要注意的是DevirtualiseMmio这一项,手册中写了对大多数主板来说都应该开启,但是Xjn这个表达了不同的看法,他认为连续性内存注入更合适,没有电脑适合分布式注入。所以我这里选择和他一致关闭这一项,关闭后理论上是需要提供slide值的,但是能直接进系统最好不指定。

这部分和Clover中的DeviceProperties是对应的,主要是对帧缓冲和音频进行属性注入,由于X99没有核显,所以单单处理音频部分即可。这部分Xjn写的太好了,如果你需要对核显进行处理,建议看看xjn的教程,X99的朋友照抄我的就行了,应该大家都是ALC1150。

可以看到的设备地址是PciRoot(0x0)/Pci(0x1b,0x0),再使用Hackintool查看目前的layout-id为5

将OC config修改如下即可:

这一部分涉及Kext注入,我们需要对每一个Kext都列一个item,而且这个kext注入方式有顺序,也就意味着Lilu和Lilu附属驱动要注意先后,有关联的驱动要排顺序。大致如下图所示

三个蓝牙的驱动貌似是没有顺序的,随便即可,我的顺序如下

特别需要注意的是,针对笔记本而言经常用的VoodooI2C和VoodooPS2这类驱动内包含驱动的,千万不要忘记要分开注入,也就是说,一个驱动要分为多个子驱动注入,当然对没啥影响,大多数kext都是单个单个打包的。

还有不要打错、少打、漏打、多打,Enabled选项要改为True才能正常注入。

至于Emulate部分则是和CPU仿冒有关,针对Haswell-E的处理器修改如下,Broadwell自己查。

Cpuid1Data F2060300 00000000 00000000 00000000

Cpuid1Mask 010A0000 00000000 00000000 00000000

Patch部分等同于Clover中的KextToPatch和KernelToPatch,照抄过来即可。KernelToPatch只需要将Identifier改为kernel即可。

比较蛋疼的一项是IOPCIFamilyPatch,作用于IOPCIFamily.kext,熟悉的朋友应该知道,X99如果不修改这一项会造成卡PCI,我按照Clover的设置经验直接填了IOPCIFamily,结果卡PCI了,我大概猜测是这一项没有实现修改,经过查阅资料发现,OC上这里要修改为com.apple.iokit.IOPCIFamily。

此外需要注意,10.15.2的X99又双叒叕改Patch了。详情可以从这里看。

最终修改结果大致如下。

Quirk部分除了AppleXcpmExtraMsrs/ThirdPartyDrives我开启了以外,其余都关了,CFG-Locked的机器请参照Xjn的方法使用EFI修改BIOS项,都快0202年了还有没解锁的。ThirdPartyDriver则是开启Trim功能。其他项目参考官方文档。

Misc主要关系OC本身的引导界面,需要修改的东西不多,在安装的时候我们可以把ShowPicker和UsePicker改为True,Timeout改为0,等同于Clover引导timeout -1。Debug部分只需要把Target改为3即可。

在boot-args小项中改为-v npci=0x2000,除此以外不懂不要动。

这里和SMBIOS有关,需要借助Clover Configuration中的SMBIOS来计算配套的三码,Xjn做了很好的教程,参照他的即可。不要什么EFI拿来就直接用,不修改三码坑的不仅仅是你,还有贡献EFI的人。

在Drivers项中,我们需要依次把Drivers文件夹中的efi加载进来,同样需要注意顺序,我的配置文件如下。

比较重要的是Protocols和Quirks,ConsoleControl务必要打开,RequestBootVarRouting关系到macOS的启动磁盘是否能使用,我这里也打开了,最重要的是SanitiseClearScreen,在手册中解释说高分屏需要这一项来避免运行在1024x720的分辨率下,实测发现这里的高分屏包含1080p,所以除非你用的是上古,不然都打开。

    以上就是本篇文章【从Clover转向OpenCore的X99 iMac Pro(一)】的全部内容了,欢迎阅览 ! 文章地址:http://ww.kub2b.com/news/19312.html
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站 http://ww.kub2b.com/mobile/ , 查看更多   
最新文章
Shams:如果火箭季后赛早早被淘汰 他们很可能会积极追求杜兰特
直播吧04月17日讯 今日ESPN名记Shams Charania做客节目《NBA COUNTDOWN》中谈到了火箭追逐KD的可能性。Shams表示:“如果球队能
手机是什么时候出现的手机是哪个国家发明的「手机是什么时候出现的」
手机,这个如今几乎人手一部的通讯工具,其发展历程漫长而有趣。要追溯其起源,我们需要回到上世纪初。一、早期探索阶段早在20世
再建新厂、增加注资、积极纳税 北京税企协同共建优质营商环境
4月16日,北京市税务局“民企显身手”系列媒体采访活动正式启动。此次活动以“政策落实有力度、服务升级有温度、营商环境有厚度
oppo手机里的记事本在哪里手机记事本在哪里「oppo手机里的记事本在哪里」
“盾牌”是古代作战时一种手持格挡,用以掩蔽身体,抵御敌方兵刃、矢石等兵器进攻的防御性兵械,呈长方形或圆形,盾的中央向外凸
个人业务利润降30%,3万亿规模宁波银行也有“烦恼”
文 | 刘振涛资本市场进入财报披露季,上市企业过去一年的成绩令市场高度关注,特别是市场“分红大户”——上市银行的成绩备受关
闽北从观光到沉浸 解锁旅游新体验
  中新网南平4月17日电 (记者 张丽君)依托核心景区武夷山,闽北南平凭借创新的文旅融合模式,实现了从传统观光游到沉浸式深度
重新定义奢华旅游,情绪价值比“钞能力”更重要
【文/观察者网 王勇 编辑/赵乾坤】新加坡“亚洲新闻台”日前报道称,越来越多的千禧一代、Z世代以及来自亚洲和中东等新兴市场的
最便宜的红米手机——红米7A红米手机预定「最便宜的红米手机——红米7A」
5.28号下午,在红米K20系列发布会上,出现了一款史上最便宜的红米手机——红米 7A,售价仅549元起,如此便宜的手机究竟配置如何呢
如何开启手机定位功能,确保精准定位与安全使用手机定位功能在哪里开启「如何开启手机定位功能,确保精准定位与安全使用」
检查手机设置:在设定中找到“隐私”或“位置服务”选项。对于不同品牌的手机,可能会有所不同。例如,iPhone 在设置中有明显的
华为一键测速手机测速「华为一键测速」
华为一键测速有了这款app你就可以实时了解自己的网速了,更为专业强大的技术支撑,还能直接查看网络的各方面信息,各位朋友们尽