Home

Awesome

黑苹果 OpenCore配置 for Gigabyte z390 Aorus Pro WiFi

关于本机

更多图片在这里

彩蛋:Z390的板载无线网卡

z390的板载网卡,除了华擎itx默认屏蔽CNVi功能外,都因CNVi协议默认开启而不支持macOS。

在关闭CFG Lock时,我搜了一下CNVi,发现在BIOS中有隐藏的开关,默认开启状态:

Form: Connectivity Configuration, FormId: 0x271C {01 86 1C 27 9C 07}
0x37DE4         Text: Statement.Prompt: CNVi present, TextTwo: No {03 08 9E 07 9F 07 A0 07}
0x37DEC         Text: Statement.Prompt: CNVi Configuration, TextTwo:  {03 08 A1 07 A1 07 00 00}
0x37DF4         One Of: CNVi Mode, VarStoreInfo (VarOffset/VarName): 0x10CD, VarStore: 0x1, QuestionId: 0x1C9, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 A2 07 A3 07 C9 01 01 00 CD 10 10 10 00 01 00}
0x37E05             One Of Option: Disable Integrated, Value (8 bit): 0x0 {09 07 A5 07 00 00 00}
0x37E0C             One Of Option: Auto Detection, Value (8 bit): 0x1 (default) {09 07 A4 07 30 00 01}
0x37E13         End One Of {29 02}
...

理论上来说,只要类似的执行setup_var 0x10CD 0x0,应该就可以关闭CNVi协议。然后替换上BCM94系的网卡+转接卡,是不是就能识别了呢?

我现在手头没有转接卡,有兴趣的朋友可以试一试。

硬件配置

硬件选购Tips:

  1. 主板:
  1. CPU:之所以选购9700k而非 8700k / 9900k,因为后两者发热量太大,需要使用高端240或360水冷并更换机箱,预算+1000。而9700k的性能足以应付接下来数年内的任何使用场景。
  2. SSD:选购NVMe固态时,首先排除三星 970 Evo Plus、PM981系列。然后找评测,重点关注其缓存外速度。
  3. 超频心得:在Windows下,使用NH-D15可以把i7-9700k超频至全核心5.4GHz,AVX Offset -10,单烤FPU、双烤CPU与FPU都只有80度左右,也不会崩溃。在macOS下,5.4GHz时会kernel panic无法开机,或者开机后迅速崩溃。5.3时在系统下没有崩溃,但是跑GeekBench 5 GPU部分时会崩溃,FCPX导出时也会黑屏。目前降低到5.2稳定运行,未发现问题。另外,在Windows下可以直接在BIOS中分别指定CPU频率与AVX的频率,而macOS必须要通过指定CPU频率与AVX Offset,否则最高频率就只有指定的AVX频率。

BIOS设置(重要)

  1. Save & Exit → Load Optimized Defaults
  2. Peripherals → Trusted Computing → Security Device Support → Disable
  3. Peripherals → Intel(R)Bios Guard → Intel BIOS Guard Support → Disable
  4. Peripherals → USB Configuration → Legacy USB Support → Enabled
  5. Peripherals → USB Configuration → XHCI Hand-off → Enabled
  6. Peripherals → Network Stack Configuration → Network Stack → Disabled
  7. Peripherals → SATA And RST Configuration → SATA Mode Selection → AHCI
  8. Chipset → Vt-d → Disabled
  9. Chipset → Internal Graphics → Enabled
  10. Chipset → DVMT Pre-Allocated → 256M
  11. Chipset → DVMT Total Gfx Mem → MAX
  12. Chipset → Audio Controller → Enabled
  13. Chipset → Above 4G Decoding → Disabled
  14. Power → Platform Power Management → Disabled
  15. Power → ErP → Disabled
  16. Power → RC6 (Render Standby) -> Disabled

如果是4k显示器,想使用板载HDMI接口,请先将显示器的HDMI输入接口版本设置为1.4,一般在OSD菜单中可以设置。

解锁CFG Lock

由于技嘉使用的是AMI的BIOS,所以即便是隐藏了很多设置项目,重新制作了BIOS界面,我们还是可以通过一些通用的修改工具修改他们。

通常的方式有两种:

  1. 使用AMIBCP修改ROM中的默认设置,然后刷入修改后的ROM。这种方式比较简单,不再赘述。
  2. 使用setup_var修改隐藏设置。这种方式和直接进入BIOS修改各种选项其实没有不同,所以如果清空COMS,设置项就会恢复初始值。这样可以避免刷新BIOS的风险。

使用setup_var修改隐藏设置:

  1. 查找CFG Lock的地址:

①. 使用UEFITool打开自己的BIOS ROM。

②. 搜索Unicode String:CFG Lock

③. 双击下方搜索到的地方,跳转到一个PE32 image section,右击Extract as is,命名为setup.bin

④. 使用Universal-IFR-Extractor提取出所有设置项的地址:path/to/ifrextract path/to/setup.bin path/to/setup.txt

⑤. 使用文本编辑器打开提取出的setup.txt,搜索CFG Lock即可找到其地址。

如果你也是这个主板,并且是F9版本的BIOS,那么CFG Lock项的地址是0x5C1。F9版本的BIOS提取出的setup.txt我放在了attachment/setup.txt.zip中,如果你还需要设置其他项目,直接去里面查即可。

  1. 设置CFG Lock:

①. 到 这里 下载modGRUBShell.efi

②. 将U盘格式化为FAT32格式,新建EFI/BOOT文件夹,然后将modGRUBShell.efi改名为BOOTX64.EFI放进去

③. 按住F12开机,选择U盘,然后输入setup_var 0x5C1 0x00即可

软件说明

为何使用 OpenCore

OpenCore的思路是,通过完善ACPI表与UEFI固件来运行macOS:

这类似于从Docker到Kubernates的转变,从方法论的角度进行了总结,给出了黑果发展的方向。

OpenCore官方(这里)提供了非常详尽的文档,建议阅读Configuration.pdf即知道每个配置项的存在的意义和作用了,待有时间再补充详细修改的地方。

致谢