AMD ZEN 系列CPU 补丁说明

Ryzen 和 Threadripper(17th和 19th)

支持 版本
初始 macOS 支持 macOS 10.13,High Sierra

起点

因此,制作 config.plist 可能看起来很困难,但事实并非如此。这只是需要一些时间,但本指南将告诉您如何配置一切,您不会被冷落。这也意味着如果您遇到问题,请检查您的配置设置以确保它们正确。使用 OpenCore 需要注意的主要事项:

  • 必须定义所有属性,没有默认的 OpenCore 可以依赖,所以不要删除部分,除非明确告知。如果指南未提及该选项,请将其保留为默认值。
  • Sample.plist 不能按原样使用,您必须将其配置到您的系统
  • 不要使用配置器,这些配置器很少尊重 OpenCore 的配置,甚至像 Mackie 这样的配置器也会添加 Clover 属性和损坏的 plist!

现在,快速提醒我们需要的工具

在设置 OpenCore 之前请多次阅读本指南,并确保正确设置。请注意,图像并不总是最新的,因此请阅读图像下面的文本,如果未提及任何内容,请保留默认值。

ACPI

ACPI

Add

您可以在此处为系统添加 SSDT,这些对于 启动 macOS 非常重要,并且有许多用途,例如 USB 映射禁用不支持的 GPU 等。对于我们的系统,甚至需要启动。有关制作它们的指南可在此处找到:ACPI 入门

所需 SSDT 描述
SSDT-EC-USBX 修复了嵌入式控制器和 USB 电源,请参阅 ACPI 入门指南 了解更多详细信息。
SSDT-CPUR 修复了 B550 和 A520 主板的 CPU 定义,如果您没有 AMD B550 或 A520 系统,不要使用。您可以在这里找到预构建的:SSDT-CPUR.aml

请注意,您不应在此处添加生成的 DSDT.aml,它已经在您的固件中。因此,如果存在,请删除 config.plist 中 EFI/OC/ACPI 下的条目。

对于那些想要更深入地转储 DSDT、如何制作这些 SSDT 并编译它们的人,请参阅 ACPI 入门 页面。 编译的 SSDT 具有 .aml 扩展名(已组装),并将进入 EFI/OC/ACPI 文件夹,并且 必须 在您的配置中的 ACPI -> Add 下指定。

Del

这会阻止加载某些 ACPI 表,对于我们来说,我们可以忽略它。

Patch

此部分允许我们通过 OpenCore 动态修改 ACPI 的部分内容(DSDT、SSDT 等)。对于我们来说,我们的补丁由 SSDT 处理。这是一个更干净的解决方案,因为这将允许我们使用 OpenCore 启动 Windows 和其他操作系统

quirks

与 ACPI 相关的设置,将此处的所有内容保留为默认值,因为我们对这些quirks没有用处。

Booter

Booter

本节专门介绍与使用 OpenRuntime(AptioMemoryFix.efi 的替代品)patching boot.efi 相关的quirks

MmioWhitelist

此部分允许空间传递到通常被忽略的 macOS,与 DevirtualiseMmio 配对时非常有用

quirks

与 boot.efi patching和固件修复相关的设置,对于我们来说,我们需要更改以下内容:

quirks 已启用 评论
去虚拟Mmio 如果您有 TRx40 系统,请启用此系统并按照此处的说明进行操作:https://dortania.github.io/OpenCore-Install-Guide/extras/kaslr-fix.html
启用WriteUnprotector
重建AppleMemoryMap
调整 AppleGpuBars 大小 -1 如果您的固件支持增加 GPU Bar 大小(即可调整大小的 BAR 支持),请将其设置为 0
设置虚拟地图 – 注意 X570、B550、A520 和 TRx40 主板可能需要此禁用的
-具有 2020 年末 BIOS 更新的 X470 和 B450 可能也需要此禁用
同步运行时权限
  • 避免运行时碎片整理:是
    • 修复了 UEFI 运行时服务,如日期、时间、NVRAM、电源控制等
  • 启用安全模式滑动:是
    • 允许在安全模式下使用幻灯片变量。
  • 启用WriteUnprotector:否
    • 此quirks和 RebuildAppleMemoryMap 通常会发生冲突,建议在较新的平台上启用后者并禁用此条目。
    • 但是,由于 OEM 未使用最新 EDKII 版本的问题,您可能会发现上述组合将导致早期启动失败。这是由于缺少 MEMORY_ATTRIBUTE_TABLE,因此我们建议禁用 RebuildAppleMemoryMap 并启用 EnableWriteUnprotector。有关此问题的更多信息,请参阅故障排除部分
  • 提供自定义幻灯片:是
    • 用于滑动变量计算。然而,此quirks的必要性是由调试日志中的 OCABC: Only N/256 slide values are usable! 消息确定的。如果日志中存在 OCABC: All slides are usable! You can disable ProvideCustomSlide! 消息,您可以禁用 ProvideCustomSlide
  • 重建AppleMemoryMap:是
    • 生成与 macOS 兼容的内存映射,可能会破坏某些笔记本电脑 OEM 固件,因此如果您收到早期启动失败,请禁用此功能
  • 调整AppleGpuBars的大小:-1
    • 启动 macOS 时如果设置为 0 将减少 GPU PCI Bars 的大小,设置为 -1 则禁用
    • 通过此quirks可以设置其他 PCI Bar 值,但可能会导致不稳定
    • 仅当您的固件中启用了可调整大小的 BAR 支持时,才需要将此quirks设置为零。
  • 设置虚拟地图:是
    • 修复了对虚拟地址的 SetVirtualAddresses 调用
    • B550、A520 和 TRx40 板应禁用此quirks
  • 同步运行时权限:是
    • 修复了与 MAT 表的对齐问题,并要求使用 MAT 表启动 Windows 和 Linux,也建议用于 macOS。主要与 RebuildAppleMemoryMap 用户相关

DeviceProperties

设备属性

Add

从地图设置设备属性。

默认情况下,Sample.plist 为音频设置了此部分,我们将通过在 boot-args 部分中设置布局 ID 来设置音频,因此也建议从 Add 部分中删除 PciRoot(0x0)/Pci(0x1b,0x0)

TL;DR,删除此处的所有 PciRoot,因为我们不会使用此部分。

Del

从地图中删除设备属性,对于我们来说我们可以忽略它

Kernel

内核 内核补丁
内核

Add

在这里,我们指定要加载哪些 kext、加载的具体顺序以及每个 kext 适用的架构。默认情况下,我们建议保留 ProperTree 所做的事情,但是对于 32 位 CPU,请参见下文:

您需要记住的主要事情是:

  • 加载次序
    • 请记住,任何插件都应在其依赖项之后加载
    • 这意味着像 Lilu 这样的 kext 必须 出现在 VirtualSMC、AppleALC、WhateverGreen 等之前

提醒一下,ProperTree 用户可以运行 Cmd/Ctrl + Shift + R 以正确的顺序添加所有 kext,而无需手动输入每个 kext。

  • 架构
    • 该kext支持的架构
    • 目前支持的值为 Anyi386(32 位)和 x86_64(64 位)
  • 捆绑路径
    • 内核扩展名
    • 例如:Lilu.kext
  • 已启用
    • 不言自明,启用或禁用 kext
  • 可执行路径
    • 实际可执行文件的路径隐藏在 kext 中,您可以通过右键单击并选择 Show Package Contents 来查看您的 kext 的路径。一般来说,它们是 Contents/MacOS/Kext,但有些驱动程序隐藏在 Plugin 文件夹下。请注意,仅 plist 的 kext 不需要填写此内容。
    • 例如:Contents/MacOS/Lilu
  • 最小内核
    • 您的 kext 将被inject的最低内核版本,请参阅下表了解可能的值
    • 例如。 12.00.00 适用于 OS X 10.8
  • 最大内核
    • 您的 kext 将被inject的最高内核版本,请参阅下表了解可能的值
    • 例如。 11.99.99 适用于 OS X 10.7
  • Plist路径
    • info.plist 的路径隐藏在 kext 中
    • 例如:Contents/Info.plist
OS X 版本 最小内核 最大内核
10.4 10.4 8.0.0 99.99
10.5 10.5 9.0.0 9.99.99
10.6 10.6 10.0.0 10.99.99
10.7 10.7 11.0.0 99.99.11
10.8 10.8 12.0.0 99.99.12
10.9 10.9 13.0.0 99.99.13
10.10 14.0.0 99.99.14
10.11 10.11 15.0.0 99.99.15
10.12 10.12 16.0.0 99.99.16
10.13 10.13 17.0.0 99.99.17
10.14 10.14 18.0.0 99.99.18
10.15 10.15 19.0.0 99.99.19
11 11 20.0.0 99.99.20
12 12 21.0.0 99.99.21
13 22.0.0 99.99.22
14 14 23.0.0 99.99.23
15 15 24.0.0 99.99.24

Emulate

用于欺骗不受支持的 CPU(如 Pentium 和 Celerons)以及禁用不受支持的 CPU(如 AMD CPU)上的 CPU 电源管理

quirks 已启用
虚拟电源管理
  • Cpuid1Mask:将此留空
    • 假CPUID的掩码
  • CPUid1Data:将此留空
    • 伪造的CPUID条目
  • 虚拟电源管理:是
    • NullCPUPowerManagement 的新替代方案,所有基于 AMD CPU 的系统都需要它,因为没有本机电源管理。
  • MinKernel:将此留空
    • 上述补丁将被inject的最低内核版本,如果没有指定值,它将应用于所有版本的 macOS。请参阅下表了解可能的值
    • 例如。 12.00.00 适用于 OS X 10.8
  • MaxKernel:将此留空
    • 上述补丁将被inject的最高内核版本,如果没有指定值,它将应用于所有版本的 macOS。请参阅下表了解可能的值
    • 例如。 11.99.99 适用于 OS X 10.7
OS X 版本 最小内核 最大内核
10.4 10.4 8.0.0 99.99
10.5 10.5 9.0.0 9.99.99
10.6 10.6 10.0.0 10.99.99
10.7 10.7 11.0.0 99.99.11
10.8 10.8 12.0.0 99.99.12
10.9 10.9 13.0.0 99.99.13
10.10 14.0.0 99.99.14
10.11 10.11 15.0.0 99.99.15
10.12 10.12 16.0.0 99.99.16
10.13 10.13 17.0.0 99.99.17
10.14 10.14 18.0.0 99.99.18
10.15 10.15 19.0.0 99.99.19
11 11 20.0.0 99.99.20
12 12 21.0.0 99.99.21
13 22.0.0 99.99.22

Force

用于从系统卷加载 kext,仅与缓存中不存在某些 kext 的旧操作系统相关(即 10.6 中的 IONetworkingFamily)。

对于我们来说,我们可以忽略。

Block

阻止加载某些 kext。与我们无关。

Patch

这就是 AMD 内核patching魔法发生的地方。请注意,如果来自 Clover,则来自 Clover 的 KernelToPatchMatchOS 在 OpenCore 中将变为 KernelMinKernel/ MaxKernel。最新的 AMD 内核补丁始终可以在 AMD Vanilla GitHub 存储库 上找到。

内核补丁:

合并:

  • 打开这两个文件,
  • 从 config.plist 中删除 Kernel -> Patch 部分
  • 从 patch.plist 复制 Kernel -> Patch 部分
  • 粘贴到 config.plist 中旧补丁所在的位置

您还需要修改四个补丁,全部名为 algrey - Force cpuid_cores_per_package。您只需更改 Replace 值。你应该改变:

  • B8000000 0000 => B8 <core count> 0000 0000
  • BA000000 0000 => BA <core count> 0000 0000
  • BA000000 0090 => BA <core count> 0000 0090
  • BA000000 00 => BA <core count> 0000 00

其中 <core count> 替换为 CPU 的物理核心数(十六进制)。例如,8 核 5800X 的新替换值为:

  • B8 08 0000 0000
  • BA 08 0000 0000
  • BA 08 0000 0090
  • BA 08 0000 00
Core Count Hexadecimal
2 Core 02
4 Core 04
6 Core 06
8 Core 08
12 Core 0C
16 Core 10
24 Core 18
32 Core 20
64 Core 40

quirks

与内核相关的设置,对于我们来说,我们将更改以下内容:

quirks 已启用 评论
PanicNoKextDump
PowerTimeoutKernelPanic 电源超时内核恐慌是
提供当前CPU信息
Xhci 端口限制 如果运行 macOS 11.3+ 则禁用
  • AppleCpuPmCfgLock:否
    • 仅当 CFG-Lock 无法在 BIOS 中禁用时才需要。 AMD用户可以忽略
  • AppleXcpmCfgLock:否
    • 仅当 CFG-Lock 无法在 BIOS 中禁用时才需要。 AMD用户可以忽略
  • AppleXcpmExtraMsrs:否
    • 禁用不受支持的 CPU(如 Pentium 和某些 Xeon)所需的多个 MSR 访问
  • 自定义SMBIOSGuid:否
    • 对设置为 Custom 的 UpdateSMBIOSMode 执行 GUID patching。通常与Dell笔记本电脑相关
    • PlatformInfo -> UpdateSMBIOSMode -> Custom 一起启用此quirks将禁用 SMBIOS inject“非 Apple”操作系统,但我们不认可此方法,因为它会破坏 Bootcamp 兼容性。使用风险自负。
  • DisableIoMapper:否
    • AMD 没有 DMAR 或 VT-D 支持,所以无关紧要
  • DisableIoMapperMapping:否
    • AMD 没有 DMAR 或 VT-D 支持,所以无关紧要
  • DisableLinkeditJettison:是
    • 让Lilu等人在没有keepsyms=1的情况下也能拥有更可靠的性能
  • DisableRtcChecksum:否
    • 防止 AppleRTC 写入主校验和 (0x58-0x59),这是接收 BIOS 重置或在重新启动/关闭后进入安全模式的用户所必需的
  • 扩展BTFeatureFlags
    • 对于那些遇到非 Apple/非 Fenvi 卡的连续性问题的人有帮助
  • LapicKernelPanic:否
    • 禁用 AP 核心 lapic 中断上的内核恐慌,这通常是 HP 系统所需要的。 Clover 等效项是 Kernel LAPIC
  • LegacyCommpage: 否
    • 解决了 macOS 中 64 位 CPU 的 SSSE3 要求,主要与 64 位 Pentium 4 CPU(即 Prescott)相关
  • PanicNoKextDump:是
    • 允许在发生内核恐慌时读取内核恐慌日志
  • PowerTimeoutKernelPanic:是
    • 帮助修复与 macOS Catalina 中 Apple 驱动程序的电源更改相关的内核恐慌,尤其是数字音频。
  • 提供当前CPU信息:是
    • 为内核提供 AMD 的 CPU 频率值。
  • 设置ApfsTrimTimeout-1
    • 为 SSD 上的 APFS 文件系统设置修剪超时(以微秒为单位),仅适用于有问题 SSD 的 macOS 10.14 及更高版本。
  • XhciPortLimit:是

Scheme

与旧版启动(即 10.4-10.6)相关的设置,对于大多数人来说,您可以跳过,但是对于那些计划启动旧版操作系统的人,您可以在下面看到:

  • 模糊匹配:正确

    • 用于忽略内核缓存的校验和,而是选择最新的可用缓存。可以帮助提高 10.6 中许多机器的启动性能
  • KernelArch:x86_64

    • 设置内核的arch类型,可以在Autoi386(32位)和x86_64(64位)之间进行选择。
    • 如果您要启动需要 32 位内核的旧版操作系统(即 10.4 和 10.5),我们建议将其设置为 Auto,并让 macOS 根据您的 SMBIOS 进行决定。有关支持的值,请参阅下表:
      • 10.4-10.5 — x86_64i386i386-user32
        • i386-user32 引用 32 位用户空间,因此 32 位 CPU 必须使用此空间(或缺少 SSSE3 的 CPU)
        • x86_64 仍将具有 32 位内核空间,但将确保 10.4/5 中的 64 位用户空间
      • 10.6 — i386i386-user32x86_64
      • 10.7 — i386x86_64
      • 10.8 或更高版本 — x86_64
  • 内核缓存:自动

    • 设置内核缓存类型,主要用于调试,因此我们推荐 Auto 以获得最佳支持

Misc

杂项

Boot

quirks 已启用 评论
隐藏辅助 按空格键显示 macOS 恢复和其他辅助条目
  • 隐藏辅助:是
    • 此选项将隐藏选择器中的补充条目,例如 macOS 恢复和工具。隐藏辅助条目可能会提高多磁盘系统上的引导性能。您可以在选择器上按空格键来显示这些条目

Debug

有助于调试 OpenCore 启动问题:

quirks 已启用
苹果调试
苹果恐慌
禁用看门狗
目标 67
  • AppleDebug:是
    • 启用 boot.efi 日志记录,对于调试很有用。请注意,仅 10.15.4 及更高版本支持此功能
  • ApplePanic:是的
    • 尝试将内核恐慌记录到磁盘
  • DisableWatchDog:是
    • 禁用 UEFI 看门狗,可以帮助解决早期启动问题
  • DisplayLevel2147483650
    • 显示更多调试信息,需要 OpenCore 的调试版本
  • SystemReport:否
    • 有助于调试,例如转储 ACPI 表
    • 请注意,这仅限于 OpenCore 的 DEBUG 版本
  • Target67
    • 显示更多调试信息,需要 OpenCore 调试版本

这些值基于 OpenCore 调试 中计算的值

Security

安全性是不言自明的,不要跳过。我们将更改以下内容:

quirks 已启用 评论
允许设置默认
黑名单苹果更新
扫描策略 0
安全启动模型 默认 将其保留为 Default,以便 OpenCore 自动设置与您的 SMBIOS 相对应的正确值。下一页将详细介绍此设置。
避难所 可选 这是一个字,省略这个设置是不可选的。不设置为Optional你会后悔的,注意区分大小写
  • 允许设置默认:是

    • 允许CTRL+EnterCTRL+Index在选择器中设置默认启动设备
  • ApECID:0

    • 用于网络个性化安全启动标识符,目前由于 macOS 安装程序中的错误,此quirks不可靠,因此我们强烈建议您将此保留为默认值。
  • 验证重启:否

    • 为 FileVault 2 启用经过身份验证的重新启动,因此重新启动时不需要密码。可以被视为安全风险,因此可选
  • 黑名单苹果更新:是

    • 用于阻止固件更新,用作额外级别的保护,因为 macOS Big Sur 不再使用 run-efi-updater 变量
  • DmgLoading:已签名

    • 确保仅加载签名的 DMG
  • 暴露敏感数据6

    • 显示更多调试信息,需要 OpenCore 调试版本
  • 保险库Optional

    • 我们不会处理存储,因此我们可以忽略,您不会将此设置设置为安全
    • 这是一个单词,省略此设置是不可选择的。不设置为Optional你会后悔的,注意区分大小写
  • 扫描策略0

    • 0 允许您查看所有可用的驱动器,请参阅安全 部分了解更多详细信息。 将此设置为默认值时不会启动 USB 设备
  • SecureBootModel:默认

    • 控制 macOS 中 Apple 的安全启动功能,请参阅安全 部分了解更多详细信息。
    • 注意:用户可能会发现在已安装的系统上升级 OpenCore 可能会导致早期启动失败。要解决此问题,请参阅此处:卡在 OCB 上:LoadImage 失败 – 安全违规

Serial

用于串行调试(保留一切默认值)。

Tools

用于运行shell等OC调试工具,ProperTree的快照功能将为您添加这些。

Entries

用于指定 OpenCore 无法自然找到的不规则引导路径。

此处不再赘述,请参阅 Configuration.pdf 的 8.6 了解更多信息

NVRAM

NVRAM

Add

用于 OpenCore 的 UI 缩放,默认值适用于我们。请参阅深入部分了解更多信息

Booter Path,主要用于UI修改

  • DefaultBackgroundColor:boot.efi 使用的背景颜色
    • 00000000:西拉黑
    • BFBFBF00:浅灰色

OpenCore 的 NVRAM GUID,主要与 RTCMemoryFixup 用户相关

  • rtc-blacklist:<>
    • 要与 RTCMemoryFixup 结合使用,请参阅此处了解更多信息:修复 RTC 写入问题
    • 大多数用户可以忽略此部分

系统完整性保护位掩码

  • 通用引导参数
启动参数 描述
-v 这将启用详细模式,该模式会显示启动时滚动的所有幕后文本,而不是 Apple 徽标和进度条。它对于任何 Hackintosher 来说都是无价的,因为它可以让您深入了解启动过程,并可以帮助您识别问题、问题 kext 等。
debug=0x100 这会禁用 macOS 的看门狗,这有助于防止内核崩溃时重新启动。这样您就可以希望收集一些有用的信息并按照面包屑导航来解决问题。
keepsyms=1 这是 debug=0x100 的配套设置,告诉操作系统在内核崩溃时也打印符号。这可以提供一些更有用的见解来了解造成恐慌本身的原因。
npci=0x3000 这会禁用与 kIOPCIConfiguratorPFM64gIOPCITunnelledKey 相关的一些 PCI 调试。这是在 BIOS 中启用 以上 4G 解码的替代方法。除非您的 BIOS 中没有它,否则请勿使用它。当卡在 [PCI configuration begin] 上时需要,因为存在与 PCI 通道相关的 IRQ 冲突。 来源
alcid=1 用于设置 AppleALC 的布局 ID,请参阅支持的编解码器 以找出适合您的特定系统的布局。有关这方面的更多信息,请参阅安装后页面
  • GPU 特定的启动参数
启动参数 描述
agdpmod=pikera 用于禁用某些 Navi GPU(RX 5000 和 6000 系列)上的主板 ID 检查,否则您将看到黑屏。 如果您没有 Navi,请勿使用(即 Polaris 和 Vega 卡不应使用此功能)
-radcodec 用于允许官方不支持的 AMD GPU(欺骗)使用硬件视频编码器
radpg=15 用于禁用某些电源门控模式,有助于正确初始化基于 AMD 佛得角的 GPU
unfairgva=1 用于修复支持的 AMD GPU 上的硬件 D​​RM 支持
nvda_drv_vrl=1 用于在 macOS Sierra 和 High Sierra 中启用 Maxwell 和 Pascal 卡上的 NVIDIA Web 驱动程序
  • csr-active-config00000000
    *“系统完整性保护”(SIP) 的设置。

    • csr-active-config 默认设置为 00000000,可启用系统完整性保护。您可以选择多个不同的值,但总的来说,我们建议保持启用状态以获得最佳安全实践。更多信息可以在我们的故障排除页面中找到:禁用 SIP
  • run-efi-updaterNo

    • 这用于防止Apple的固件更新包安装和破坏启动顺序;这很重要,因为这些固件更新(适用于 Mac)将不起作用。
  • prev-lang:kbd:<>

    • lang-COUNTRY:keyboard 格式的非拉丁键盘需要,建议保留空白,但您可以指定它(示例配置中的默认值为俄语):
    • 美国:en-US:0656e2d55533a30 十六进制)
    • 完整列表可在 AppleKeyboardLayouts.txt 中找到
    • 提示:prev-lang:kbd可以改为字符串,这样您就可以直接输入en-US:0,而不用转换为HEX
    • 提示 2:prev-lang:kbd 可以设置为空白变量(例如 <>),这将强制语言选择器在首次启动时出现。
关键 类型 价值
prev-lang:kbd string zh-CN:0

del

强制重写 NVRAM 变量,请注意,Add 不会覆盖 NVRAM 中已存在的值,因此应保留 boot-args 等值。对于我们来说,我们将更改以下内容:

quirks 已启用
Write-Flash YES
  • 旧架构

    • 用于分配NVRAM变量,与OpenVariableRuntimeDxe.efi一起使用。仅适用于没有本机 NVRAM 的系统
  • WriteFlash:是

    • 允许将所有添加的变量写入闪存。

PlatfromInfo

平台信息

为了设置 SMBIOS 信息,我们将使用 CorpNewt 的 GenSMBIOS 应用程序。

在此示例中,我们将选择 MacPro7,1 SMBIOS,但某些 SMBIOS 在某些 GPU 上的运行效果比其他 GPU 更好:

  • MacPro7,1:AMD Polaris 及更新版本
    • 请注意,MacPro7,1 专用于 macOS 10.15、Catalina 及更高版本
  • iMacPro1,1:NVIDIA Maxwell 和 Pascal 或 AMD Polaris 及更新版本
    • 如果您需要 High Sierra 或 Mojave,请使用,否则请使用 MacPro7,1
  • iMac14,2:NVIDIA Maxwell 和 Pascal
    • 如果安装带有 NVIDIA GPU 的 Web 驱动程序后在 iMacPro1,1 上出现黑屏,请使用
  • MacPro6,1:AMD GCN GPU(支持HD和R5/R7/R9系列)

运行 GenSMBIOS,选择选项 1 用于下载 MacSerial,选择选项 3 用于选择 SMBIOS。 这将为我们提供类似于以下内容的输出:

订单是Product | Serial | Board Serial (MLB)

Type 部分被复制到 Generic -> SystemProductName。

Serial 部分被复制到 Generic -> SystemSerialNumber。

Board Serial 部分被复制到 Generic -> MLB。

SmUUID 部分被复制到 Generic -> SystemUUID。

Apple ROM 部分被复制到 Generic -> ROM。

提醒您需要一个无效的序列号!在 Apple 的检查覆盖范围页面 中输入序列号时,您应该会收到一条消息,例如“无法检查此序列号的覆盖范围”。

自动:是

  • 基于 Generic 部分而不是 DataHub、NVRAM 和 SMBIOS 部分生成 PlatformInfo

Generic

  • AdviseFeatures:NO

    • 当 EFI 分区不是 Windows 驱动器上的第一个分区时使用
  • MaxBIOSVersion:NO

    • 将 BIOS 版本设置为 Max,以避免 Big Sur+ 中的固件更新,主要适用于正版 Mac。
  • ProcessorType0

    • 设置为 0 以进行自动类型检测,但如果需要,可以覆盖该值。请参阅 AppleSmBios.h 了解可能的值
  • SpoofVendor:是

    • 将供应商字段替换为 Acidanthera,在大多数情况下使用 Apple 作为供应商通常不安全
  • SystemMemoryStatus:自动

    • 在 SMBIOS 信息中设置内存是否焊接,纯粹是装饰性的,所以我们推荐 Auto
  • UpdateDataHub:是

    • 更新数据中心字段
  • UpdateNVRAM:是

    • 更新NVRAM字段
  • UpdateSMBIOS:是

    • 更新 SMBIOS 字段
  • UpdateSMBIOS模式:创建

    • 将表替换为新分配的 EfiReservedMemoryType,在需要 CustomSMBIOSGuid 特性的Dell笔记本电脑上使用 Custom
    • 设置为 Custom 并启用 CustomSMBIOSGuid 怪异功能也可以禁用 SMBIOS inject“非 Apple”操作系统,但我们不认可此方法,因为它会破坏 Bootcamp 兼容性。使用风险自负

UEFI

UEFI

ConnectDrivers:是

  • 强制使用 .efi 驱动程序,更改为 NO 将自动连接添加的 UEFI 驱动程序。这可以使启动速度稍快一些,但并非所有驱动程序都会自行连接。例如。某些文件系统驱动程序可能无法加载。

Drivers

在此处添加您的 .efi 驱动程序。

只有这里出现的驱动程序应该是:

  • HfsPlus.efi
  • OpenRuntime.efi
关键 类型 描述
Path string OC/Drivers 目录中的文件路径
LoadEarly boolean 在 NVRAM 设置之前尽早加载驱动程序,如果使用传统 NVRAM,则仅应为 OpenRuntime.efiOpenVariableRuntimeDxe.efi 启用
Arguments string 某些驱动程序接受此处指定的附加参数。

APFS

默认情况下,OpenCore 仅从 macOS Big Sur 及更高版本加载 APFS 驱动程序。如果您启动 macOS Catalina 或更早版本,您可能需要设置新的最低版本/日期。
不设置此项可能会导致 OpenCore 找不到您的 macOS 分区!

macOS Sierra 及更早版本使用 HFS 而不是 APFS。如果启动旧版本的 macOS,您可以跳过此部分。

如果更改最低版本,则需要设置 MinVersion 和 MinDate。

macOS Version Min Version Min Date
High Sierra (10.13.6) 748077008000000 20180621
Mojave (10.14.6) 945275007000000 20190820
Catalina (10.15.4) 1412101001000000 20200306
No restriction -1 -1

Audio

与 AudioDxe 设置相关,对于我们来说,我们将忽略(保留默认值)。这与 macOS 中的音频支持无关。

Input

与用于 FileVault 和热键支持的 boot.efi 键盘直通相关,将此处的所有内容保留为默认值,因为我们没有使用这些quirks。请参阅此处了解更多详细信息:安全和 FileVault

Output

关于 OpenCore 的视觉输出,请将此处的所有内容保留为默认值,因为我们对这些quirks没有用处。

Output Value Comment
UIScale 0 0 will automatically set based on resolution
-1 will leave it unchanged
1 for 1x scaling, for normal displays
2 for 2x scaling, for HiDPI displays

ProtocolOverrides

主要与虚拟机、旧版 Mac 和 FileVault 用户相关。请参阅此处了解更多详细信息:安全性和 FileVault

quirks

关于 UEFI 环境的quirks,我们将更改以下内容:

quirks 已启用 评论
解锁 FsConnect 主要由HP主板需要
  • DisableSecurityPolicy:否

    • 禁用固件中的平台安全策略,建议用于有问题的固件,其中禁用安全启动不允许加载第 3 方固件驱动程序。
    • 如果运行 Microsoft Surface 设备,建议启用此选项
  • RequestBootVarRouting:是

    • 将 AptioMemoryFix 从 EFI_GLOBAL_VARIABLE_GUID 重定向到 OC_VENDOR_VARIABLE_GUID。当固件尝试删除启动条目时需要,建议在所有系统上启用,以确保正确的更新安装、启动磁盘控制面板功能等。
  • UnblockFsConnect:否

    • 某些固件通过在“按驱动程序”模式下打开分区句柄来阻止分区句柄,从而导致文件系统协议无法安装。当未列出驱动器时,主要与 HP 系统相关

保留内存

用于免除操作系统使用某些内存区域,主要与 Sandy Bridge iGPU 或内存有故障的系统相关。本指南未涵盖此quirks的使用

清理

现在您已准备好保存并将其放入 EFI 的 EFI/OC 下。

对于遇到启动问题的用户,请务必先阅读故障排除部分,如果您的问题仍未得到解答,我们有大量资源可供您使用:

AMD BIOS 设置

  • 注意:大多数这些选项可能不存在于您的固件中,我们建议尽可能匹配,但如果您的 BIOS 中不提供其中许多选项,请不要太担心

禁用

  • 快速启动
  • 安全启动
  • 串行/COM 端口
  • 并行端口
  • 兼容性支持模块 (CSM)(在大多数情况下必须关闭,启用此选项时,像 gIO 这样的 GPU 错误/停顿很常见
  • IOMMU

针对 3990X 用户的特别说明:macOS 目前不支持内核中超过 64 个线程,因此如果看到更多线程,内核会出现恐慌。 3990X CPU 共有 128 个线程,因此需要禁用其中的一半。对于这些情况,我们建议在 BIOS 中禁用超线程。

启用

  • 以上 4G 解码(此选项必须打开,如果找不到该选项,请将 npci=0x3000 添加到 boot-args。请勿同时启用此选项和 npci。
    • 如果您使用的是 Gigabyte/Aorus 或 AsRock 主板,启用此选项可能会破坏某些驱动程序(即以太网)和/或其他操作系统上的启动失败,如果确实发生,请禁用此选项并选择 npci
    • 2020+ BIOS 注意:启用Above4G 时,可调整大小的BAR 支持可能会在某些X570 和更新的主板上可用。如果启用,请确保 Booter -> Quirks -> ResizeAppleGpuBars 设置为 0
  • EHCI/XHCI 切换
  • 操作系统类型:Windows 8.1/10 UEFI 模式(某些主板可能需要“其他操作系统”)
  • SATA 模式:AHCI

完成后,我们需要编辑一些额外的值。前往 Apple 安全启动页面

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇