vlambda博客
学习文章列表

黑苹果禁用不支持的NVME硬盘

有些nvme固态不仅不支持黑苹果系统安装,如:三星 983ZET、PM981、镁光 2200S等,还会拖慢macOS系统的开机速度,或者出现一些奇奇怪怪的使用问题,所以我们要禁用它,禁用nvme在OpenCover官方文档说明里有三种方法,这里我记录一下SSDT的方法步骤。

windowes下查找设备路径

打开设备管理器找到储存控制器,点击标准NVME Exoress控制器,右键点击属性。


黑苹果禁用不支持的NVME硬盘

找到详细信息下面的设备路径:ACPI(_SB_)#ACPI(PCI0)#ACPI(RP17)#ACPI(PXSX)括号里就是我们需要的路径数值。

提起出来的路径格式为:_SB_.PCI0.RP17.PXSX

macOS下查找设备路径

黑苹果禁用不支持的NVME硬盘

打开IORegistryExplorer工具,搜索栏搜索:nvme


黑苹果禁用不支持的NVME硬盘

路径格式为:_SB_.PCI0.RP17.PXSX



修改ssdt补丁

这里我们用禁用独立显卡的补丁SSDT-GPU-DISABLE.dsl来修改,大家可以复制下面代码用MaciASL编译

// Used for disabling unsupported GPUs in macOSDefinitionBlock ("", "SSDT", 2, "DRTNIA", "spoof", 0x00000000){ External (_SB_.PCI0.PEG0.PEGP, DeviceObj)
Method (_SB.PCI0.PEG0.PEGP._DSM, 4, NotSerialized) // _DSM: Device-Specific Method { If ((!Arg2 || (_OSI ("Darwin") == Zero))) { Return (Buffer (One) { 0x03 // . }) }
Return (Package (0x0A) { "name", Buffer (0x09) { "#display" },
"IOName", "#display", "class-code", Buffer (0x04) { 0xFF, 0xFF, 0xFF, 0xFF // .... },
"vendor-id", Buffer (0x04) { 0xFF, 0xFF, 0x00, 0x00 // .... },
"device-id", Buffer (0x04) { 0xFF, 0xFF, 0x00, 0x00 // .... } }) }}

用工具MaciASL打开SSDT-GPU-DISABLE.dsl,把External (_SB_.PCI0.PEG0.PEGP, DeviceObj) Method (_SB.PCI0.PEG0.PEGP._DSM, 4, NotSerialized)的路径更改为上面我们nvme的路径:External (_SB_.PCI0.RP17.PXSX, DeviceObj) Method (_SB.PCI0.RP17.PXSX._DSM, 4, NotSerialized)


如下图:

然后另存为:SSDT-NVME-DISABLE.aml


如下图:

最后拷贝到EFI的相应目录,加载到引导里,重启后检查是否生效,如未成功请检查是否修改正确,或者用其它的方法屏蔽nvme。