欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Wildcard White 安装黑色苹果 OpenCore 启动,适合白人、非专业人士 @a.hongwan

最编程 2024-05-01 10:51:04
...

更新时间 :2020年9月7日

文件写了一半,发现一个很严重的问题,本来是想简简单单的写。

写着写着才发现,这个事情根本就简单不成,黑苹果就是很复杂。

首先建议网上找和自己配置相同的EFI。自己做EFI真的很累。。。。

我的笔记本在网上找的EFI基本上都有问题,不知道哪里的问题,只好自己研究。

研究过程也了解到很多黑苹果的相关知识。

我的笔记本是   联想小新air 13LKB pro 配置如下:

CPU: Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz (4 CPUs), ~2.9GHz
芯片组 Kaby Lake
集成显卡: Intel(R) HD Graphics 620
独立显卡: NVIDIA GeForce 940MX

黑苹果最重要的一步是引导开机。安装,正常使用都需要引导。

最新的引导方式是  OpenCore  简称OC引导 目前版本0.6.0

还有上一代  Clover 四叶草  以及很久的版本 变色龙

第一步:下载最新的 OpenCore  https://github.com/acidanthera/OpenCorePkg/releases  目前是0.6.0

目录结构是这样的。

 第一个文件夹  ACPI是放系统补丁的,就这么理解吧,不准确哦;

这里涉及到一个很重要的内容 ,这两个东西DSDT。SSDT。第一次看见肯定一脸懵。

其实不用太在意,这个就是硬件的连接表,大概理解成,显卡,cpu,都在那个地方,在主板上的位置。名字等。

让电脑操作系统知道了,就能调用。这么理解就可以。

我的

 都是干啥的呢。我也不是很清楚。就是得有。

我关心的是哪里找到这些文件,自己电脑能用。

SSDT-EC-USBX.aml 

SSDT-PLUG.aml  

SSDT-PMC.aml

SSDT-PNLF.aml   这个是笔记本屏幕亮度需要用的。下载驱动WhateverGreen.kext 里包含了。需要编译才能使用。

介绍一个文章 : https://www.bilibili.com/read/cv6737693/

看完就会了,摘录一部分:

 https://github.com/daliansky/OC-little

然后是 Drivers 

有两个就够了,其实一个就可以。OpenRuntime.efi 必须。

 HfsPlus  在0.6.0中内置了。为了不出错,添加也可以。

重点驱动 Kexts 

Lilu.kext  必须 

SMCBatteryManager.kext  电池管理,显示笔记本电量等

SMCProcessor.kext  CPU风扇信息

SMCSuperIO.kext  CPU温度等信息

USBPorts.kext  定制USB,安装的时候用 USBInjectAll.kext

VirtualSMC.kext  模拟白苹果 macOS 的SMC芯片,缺少这个文件,macOS将无法启动。

VoodooHDA.kext   万能声卡驱动 

VoodooPS2Controller.kext   键盘,鼠标,触摸板驱动

WhateverGreen.kext   显卡相关驱动,很重要。

有上面这些就够用了。

Tools  工具 

可能用到的就3个。其实也没用上。

CleanNvram  清除Nvram

ResetSystem 系统重启

VerifyMsrE2  查看主板的CFG锁状态

开始配置核心文件  config.plist

这个文件一开始是没有的,需要在下载的  OpenCore中 复制过来 修改名字 

 打开这个软件,推荐使用 ProperTree https://github.com/corpnewt/ProperTree

 ProperTree.bat  Win系统下运行,右键管理员身份运行这个 批处理文件  

 文件 打开 打开刚刚复制过去的 那个文件 记得修改名称 config.plist

然后开始编辑。

第一步把自己刚刚整理好的目录加载上去,点击

 选择你刚刚的OC目录 就可以完成自动加载,每次修改完目录中的文件 都需要重新加载一次 。切记 切记 切记  不然刚刚的修改全部无效

全部的文件必须配置后OC引导才会加载。

先把最上面的几个删除 没有用

1 2 3 4 删除 

先看ACPI 只需要调整Quirks

 具体什么意思,请自己查看其他大神的说明。

必须的驱动 kext是内核扩展(kernel extension),你可把它当作macOS的驱动程序,这些文件将放在EFI的 Kexts 目录中

VirtualSMC
模拟白苹果 macOS 的SMC芯片,缺少这个文件,macOS将无法启动。
还有另一种选择是 FakeSMC ,它的支持可能更好也可能更差,通常只在旧版硬件上使用

Lilu
一个处理很多过程的补丁,是 AppleALC, WhateverGreen, VirtualSMC 以及其他一些 Kexts 所必须的。没有 Lilu,它们都无法正常工作。

VirtualSMC 的插件

SMCProcessor.kext
用于监测CPU温度,但不支持 AMD CPU 平台。

SMCSuperIO.kext
用于检测风扇速度,但不支持 AMD CPU 平台。

SMCLightSensor.kext
用于笔记本电脑上的环境光传感器,台式机请忽略。
如果你没有环境光传感器请不要用,否则会引发其他问题。

SMCBatteryManager.kext
用于笔记本电脑的电池读数测量,台式机请忽略。
在正确装好电池之前,请勿使用,否则可能导致问题

显卡

WhateverGreen
用于显卡打补丁修补 DRM,boardID,帧缓冲区修复等,所有GPU均可从此 kext 中受益。
注意,仅笔记本电脑和一体机才需要附带的SSDT-PNLF.dsl文件,请参阅 下一节ACPI部分

声卡

AppleALC
用于 AppleHDA 修补,以让你使用板载音频。在 AMD 15h/16h 上可能有问题,而 Ryzen/Threadripper 系统很少有麦克风支持。

VoodooHDA.kext  这个也是声卡驱动 我笔记本这个驱动可以用,其他无效

VoodooHDA.kext 是一款开源音频驱动程序,用于与英特尔高清晰度音频(HDA)规范兼容的设备。它旨在作为 macOS 上 AppleHDA 的 Intel 替代品,并支持多种音频控制器和编解码器。

VoodooHDA 无法和 AppleALC 共存;

以太网网卡

IntelMausi
是 Intel NICs 必须的。但如果基于I211的芯片组则需要下面的 SmallTreeIntel82576 kext。 Required for Intel NICs, chipsets that are based off of I211 will need the SmallTreeIntel82576 kext

SmallTreeIntel82576 kext
I211 网卡必需。该驱动已在SmallTree kext基础上打上I211补丁。
适用于大多数运行英特尔网卡的 AMD 主板。

AtherosE2200Ethernet
适用于 Atheros 和 Killer 杀手 网卡

RealtekRTL8111
适用于 Realtek 千兆网卡

LucyRTL8125Ethernet
适用于 Realtek 2.5Gb 网卡

USB

USBInjectAll

用于在 ACPI 中没有定义USB端口的系统上注入 Intel USB 控制器
Skylake 6代及以上平台不需要该补丁(但AsRock很傻,确实需要这个);不支持任何 AMD CPU 平台

WiFi 无线网络和蓝牙:

AirportBrcmFixup

用于修补非苹果机的博通无线网卡(Broadcom),不支持 Intel, Killer, Realtek 等

BrcmPatchRAM

用于上传固件到博通蓝牙芯片,是所有 非Apple / Fenvi Airport cards所必需的。 Used for uploading firmware on Broadcom Bluetooth chipset, required for all non-Apple/Fenvi Airport cards.
To be paired with BrcmFirmwareData.kext

BrcmPatchRAM3 用于 10.14+ (必须和 BrcmBluetoothInjector 搭配使用)
BrcmPatchRAM2 用于 10.11-10.14
BrcmPatchRAM 用于 10.10或更老的版本
Kernel -> Add 的顺序必须是:
BrcmBluetoothInjector
BrcmFirmwareData
BrcmPatchRAM3

AMD CPU Specific kexts

NullCPUPowerManagment
We have a much better solution known as DummyPowerManagement found under Kernel -> Quirks in your config.plist, this will be covered in a later page
XLNCUSBFIX
USB fix for AMD FX systems, not recommended for Ryzen
VoodooHDA
Audio for FX systems and front panel Mic+Audio support for Ryzen system, do not mix with AppleALC. Audio quality is noticeably worse than AppleALC on Zen CPUs

其他部分

AppleMCEReporterDisabler
Useful starting with Catalina to disable the AppleMCEReporter kext which will cause kernel panics on AMD CPUs and dual-socket systems
Affected SMBIOS: MacPro6,1 MacPro7,1 iMacPro1,1
CpuTscSync
Needed for syncing TSC on some of Intel's HEDT and server motherboards, without this macOS may be extremely slow or even unbootable. Skylake-X should use TSCAdjustReset instead

TSCAdjustReset
On Skylake-X, many firmwares including Asus and EVGA won't write the TSC to all cores. So we'll need to reset the TSC on cold boot and wake. Compiled version can be found here: TSCAdjustReset.kext. Note that you must open up the kext(ShowPackageContents in finder, Contents -> Info.plist) and change the Info.plist -> IOKitPersonalities -> IOPropertyMatch -> IOCPUNumber to the number of CPU threads you have starting from 0(i9 7980xe 18 core would be 35 as it has 36 threads total)
NVMeFix
用于修补 非Apple NVMe上的电源管理和初始化, macOS 10.14 或更新版本所必需。

笔记本特别的部分 Laptop Specifics

VoodooPS2
Required for systems with PS2 keyboards and trackpads
Trackpad users should also pair this with VoodooInput(This must come before VoodooPS2 in your config.plist)

VoodooI2C
Used for fixing I2C devices, found with some fancier touchpads and touchscreen machines
To be paired with a plugin:
VoodooI2CHID - Implements the Microsoft HID device specification.
VoodooI2CElan - Implements support for Elan proprietary devices. (does not work on ELAN1200+, use the HID instead)
VoodooI2CSynaptics - Implements support for Synaptic's proprietary devices.
VoodooI2CFTE - Implements support for the FTE1001 touchpad.
VoodooI2CUPDDEngine - Implements Touchbase driver support.

To figure out what kind of keyboard and trackpad you have, check Device Manager(设备管理器) in Windows or dmesg |grep input in Linux

NoTouchID
Recommended for SMBIOS that include a TouchID sensor to fix auth issues

 

黑苹果卡在 Touchpad enabled解决办法

ApplePS2SmartTouchPad.kext  的问题,先删除

黑苹果卡在 apfs_module_start: 1689: load: com.apple.filesystems.apfs, v1412.101.1, apfs-1412. 101.1, 2020/03/06

缺少SSDT-EC补丁:如果你没有该SSDT-EC,可以点击这里下载一个

卡[EB|#LOG:EXITBS:START]

笔记本BIOS无法关闭CFG LOCK

以下关闭

Kernel 内核

Quirks:

  • AppleCpuPmCfgLock: NO
    • 如果设备的 CFG-Lock 是开启的状态则需要设置为 YES (尽可能用 Grub 关闭 BIOS 的 CFG-Lock 并避免开启这个 Quirk)
  • AppleXcpmCfgLock: NO
    • 同上

原文地址:https://www.cnblogs.com/hongwans/p/13627493.html