从黑苹果爱好者的一个伸手要efi的小白到根据电脑配置拼文件再到大概知道各驱动与各acpi的搭配使用,到现在的acpi的编译与优化,精简补丁,现把个人的一些体会与成果分享下给大家。
电脑配置:
型号:华硕UX31A 1080P触屏版
cpu:i5 3317u
内存:8g
硬盘:256g
无线:几年前换的bcm94352hmb
几年前折腾过这本,当时dsdt修改的方式装的osx 10.11,最近把小新pro13装了蒙特雷12.5后想起这个老本子,开下机,发现依然用起来很顺手,真是神机,用了这么多年还依然没有坏,但是osx 10.11很多软件受限不能升级了,就决定再让这机子发光发热一下,升级到新系统,但是3代u在12系统已经减掉了显卡驱动,虽然可以不注入id安装完后,再用打入显卡驱动,但是有升级的话又要打入,不想麻烦了,就选择了也是大版本号的bigsur。
进入正题,开始装系统前先做efi,做efi一般有几种方法:
1、网上找到同型号的efi,大多可以直接使用,但可能有些功能问题;
2、熟悉一些的就根据机型定制凑出整个包,然后调整config文件;
3、用工具 OC Gen-X 生成,但是要求在mac系统,一般这阶段装系统的多是新手,没有mac系统,也可以忽略,个人感觉效果一般,也需要人工修改和加kext的。这方法这里就不说了。
第1种方法,无非就是在网上,如csdn,远景,拿大神上传的文件,对配置相近的机型有以尝试使用,或修改后使用;通过这种现成的例子文件去了解,对比,学习,也是很快成长的,我也是从这步一路过来。
第2种方法:这方法要求高些,要了解的东西会多些,成功率后喜悦感翻倍,也利于装完系统后的优化,其实认真看下也不是很难,教程比较多,整理了一些比较系统的资料,方便大家顺利完成;最主要的是 acpi的选择、kext,config的设置,通过 官网 的建议来做,里面写得非常详细,已经根据配置分别写了指导方法,还有解释,还有相关acpi链接和工具链接,跳转下载就可以。
配置config文件工具挺多的,新手建议使用occ进行配置 oc,图形化界面设置,但是注意occ的版本要与oc的一致,否则运行时会提示有一些配置错误,config的配置可以用oc的simple.plist,配置完后改为config.plist再放进oc文件夹中。
acpi:按官网列出的配置就可以,虽然不能完美,但是装机使用最合适,后续优化时再根据硬件和dsdt定制热补丁加上就好;官方列的acpi中有部分也是需要定制的,如3代u的ssdt-pm,ssdt-rtc;
有几个重要的重复说下,1、ssdt-pm:这个只能在安装完之后再补充,装系统阶段配置config时先不用设置,装完后再补充。这个的文件生成方法:在acpi的删除配置里增加cpu0lst和cpupm 2项,设置官方那也有说明,设置生效后重启,然后运行工具 ssdtPRGen https://github.com/Piker-Alpha/ssdtPRGen.sh ,就会自动生成一个aml文件,注意,这个工具需要复制到指定目录下执行;
2、ssdt-pnlf:这个有区分cpu版本,需要注意,里面的_uid会不相同,3代是14,也有自动识别的;
3、ssdt-xosi:这个操作系统补丁需要与重命名配合使用,如果不使用也没发现问题,尽量不使用。
boot:这个就略过了,按官网的配置就行;
dp:
我装这个时,折腾了很久,看官方说明,机型应该是前面的2个,然后就一直使用前面2个id安装,一直无法进入安装页面,一直检查设置,后面换到09006601就能正常进入安装,汗......这机子没有hdmi接口,所以不用配置太多其它信息,基本上就需要配置核显就够了。音频也直接在启动参数那直接加alcid=xx注入(声卡id的获取见另一编文章),如果有强逼症设置型号信息的,也可以增加配置。
Kernel:
装系统主要是加以下几个就好,装完后再优化完善:注意有顺序要求
Lilu
VirtualSMC(几个卫星附加件可选)
WhateverGreen
usbmap(可在window系统里定制)
VoodooPS2Controller
装机会加:
AppleALC
ECEnabler
BrcmBluetoothInjector
BrcmFirmwareData
BrcmPatchRAM3
AirportBrcmFixup(AirPortBrcm4360_Injector这个不能加)
Asussmc(华硕专用)
选项标签页的设置就按官网的配置即可,不详细说了。
NVRAM:
这个主要说下,旧机型装系统需要在启动参数里加上 -no_compat_check ,否则无法正常安装,会提示错误 This version of Mac os x is not supported on this platform!
UEFI驱动:
主要说几个:
HfsPlus.efi 或OpenHfsPlus.efi 必须有,一般用HfsPlus.efi
OpenRuntime.efi 须与oc版本一致
AudioDxe.efi(可选)
与macOS中的音频支持有关
OpenCanopy.efi
这是OpenCore的GUI显示需要用到
CrScreenshotDxe.efi
用于在UEFI中拍摄屏幕截图
NvmExpressDxe.efi
当固件未内置NVMe驱动程序时,用于Haswell及更早版本
ToggleSipEntry.efi
sip打开关闭
装机的设置基本上完成以上这些就行,其它按官网的配置即可,有点晚了,有空再给大家整理一篇优化的吧。
oc的配置还可以看看xjn的,也非常详细https://blog.xjn819.com/post/opencore-guide.html
acpi、kext的优化强烈建议学习GitHub - daliansky/OC-little: ACPI Hotpatch Samples for the OpenCore Bootloader