1.FakePCIID.kext是什么?
仿冒PCI设备核心驱动,部分驱动依赖于它比如:
1.FakePCIID_AR9280_as_AR946x.kext
2.FakePCIID_Broadcom_WiFi.kext
3.FakePCIID_Intel_GbX.kext
4.FakePCIID_Intel_HD_Graphics.kext
5.FakePCIID_Intel_HDMI_Audio.kext
6.FakePCIID_XHCIMux.kext
用于将Mac不支持的硬件设备仿冒成受支持的设备以开启原生功能
比如,dw1830,第三方的BRCM20702芯片的蓝牙设备,GenericSATA,GenericUSBXHCI,Intel HDMI Audio,甚至定制USBPorts,CPUFriendDataProvidor。
2.你是否需要定制FakePCIID.kext
如果你的机型已经稳定,并且要仿冒的设备较多,建议定制。因为已确定机型设备基本不需要升级FakePCIID.kext,而且定制后可以减少kext分散,缩短启动时间(虽然可以忽略不计)。
3.如何定制
以FakePCIID_Intel_HDMI_Audio.kext为例,这个kext看名字就能知道作用。没有他的话你的声卡可能无法正常使用
右键 显示包内容打开Contents/info.plist
展开IOKitPersonalities,我们可以看到多种主板的HDM声条目。我要定制的是NUC8,属于300系列。所以我们只保留300的条目即可。
我们正式对FakePCIID操刀。
右键FakePCIID.kext,显示包内容打开Contents/info.plist,将上面的我选中的(Intel HDMI Audio - 300-series 0xa348 0x9dc8)复制到当前info.plist,并保持目录结构。如果没有IOKitPersonalities可以直接将上面的IOKitPersonalities整个复制过去,并删除Intel HDMI Audio - Haswell等条目。
得到的info.plist如下
这里的名字(Intel HDMI Audio - 300-series 0xa348 0x9dc8)是可以随便改的,比如改成 Intel 300 HDMI Audio
另外将Bundle version改大比如2.0.0以防止升级
最后将FakePCIID.kext改成你想要的名字,比如FakePCIID-NUC8BE.kext .
这样FakePCIID_Intel_HDMI_Audio.kext就整合到FakePCIID-NUC8BE.kext 中去了。
其他的空壳kexts也可以继续整合。
我最终整合后得到的是