前言
当前用户使用黑苹果双系统,在主板上安装双显卡(A/N卡),N卡在macOS 10.14 以后版本不支持了,有使用笔记本电脑黑果有独立N卡的设备,要如何在不拆机的情况下,少一些此类的设备,以下为简单的教学。
禁用 GPU
有以下三点:
- Boot Flag
- 禁用除 iGPU 之外的所有 GPU
- DeviceProperties
- 在每个插槽的基础上禁用 GPU
- SSDT
- 在每个插槽的基础上禁用 GPU
必须在 BIOS 中关闭 CSM 才能使设备工作正常,尤其是在基于 AMD CPU 的系统上。
Boot Flag
最简单的方式莫莫在引导参数加入以下代码 boot-arg:
-wegnoegpu
请注意,这将除掉 iGPU 之外的所有 GPU。
DeviceProperties-设备属性方法
用gfxutil找到PCI路由后,採取欺騙的方式创建一个新的 DeviceProperties 部分:
path/to/gfxutil -f GFX0
输出将得到这样的结果:
DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)
有了这个,进入到 Root -> DeviceProperties -> Add
添加具有以下属性的 PCI:
Key | Type | Value |
---|---|---|
disable-gpu | Boolean | True |
使用SSDT禁用设备的方法
找到设备路径的方法有很多,但一般来说,最简单的就是进入windows下的设备管理器,找到PCI路径。在Mac底下可以使用hackintool工具。
假想该让的设备路径为:_SB.PCI0.PEG0.PEGP
:
DefinitionBlock ("", "SSDT", 2, "DRTNIA", "spoof", 0x00000000)
{
External (_SB_.PCI0.PEG0.PEGP, DeviceObj)
Method (_SB.PCI0.PEG0.PEGP._DSM, 4, NotSerialized)
{
If ((!Arg2 || !(_OSI ("Darwin"))))
{
Return (Buffer (One)
{
0x03
})
}
Return (Package (0x0A)
{
"name",
Buffer (0x09)
{
"#display"
},
"IOName",
"#display",
"class-code",
Buffer (0x04)
{
0xFF, 0xFF, 0xFF, 0xFF
},
})
}
}
可以在此找到 这个SSDT 的副本:Spoof-SSDT.dsl这个编译档案。请你千万不要忘记 ,这.aml
是设置好的文件,.dsl
是源代码。您可以通过选择 File -> Save As -> ACPI机器语言使用 MaciASL 进行编译。
结论
使用SSDT的设备,可以用在主板内建的网卡、声卡或者是其他的扩展代码设备,因为macOS在运行的同时,会自检PORT主机上的所有设备。假想你的主机上有很多的设备例如扩展卡之类的,但在macOS底下却无驱动支持,但系统一直被激活的动作时,有可能会造成系统卡之类的情况,那么除了拆掉设备以外,就是使用SSDT 这个方式了。
评论(0)