旧版macOS系统内置无线驱动:IO80211Family.kext
概述
前几天转发了 macOS 10.13 High Sierra 的 IO80211Family.kext,发现有这个需求的同学还是挺多的,而且有需求的本人似乎都不太明白为什么需要这个。好吧,这里重开一文明确一下。
在旧版本的 macOS 系统中,内置了 IO80211Family.kext 驱动,主要用于驱动无线网卡。苹果公司总是因为这样那样的原因(其实还是市占率低没有历史包袱)几乎每几年就要放弃一大批硬件的向后兼容,因此重新注入驱动可在新版本 macOS 中找回老硬件的原生支持,对于 IO80211Family.kext 来说,那就是能提供老款无线网卡的支持啦。
安装
- 文件包中提供了从 10.11 到 10.15 的 IO80211Family.kext,基本使用方法是放到 Clover 或 OpenCore 对应目录(OpenCore 还需要在 config 中启用),不要放到 S/L/E 目录;
- 「注意」当你在引导工具中注入了此类老款驱动时,如果要运行老版本系统时,一定要关闭注入,或在 config.plist → Kernel → add 添加 MinKernel 的限制,具体值如下。如不按此操作会因 kext 冲突导致系统功能不正常或无法引导;
Sierra 及以上 = 16.0.0
High Sierra 及以上 = 17.0.0
Mojave 及以上 = 18.0.0
Catalina 及以上 = 19.0.0
Big Sur 及以上 = 20.0.0
支持的设备 ID
- IO80211ElCapitan.kext
- 推荐持有老博通芯片的用户在 macOS 10.14 及以上使用
- 设置 MinKernel 为 16.0.0
- 支持的设备 ID
- 博通 - AppleAirPortBrcm43224
- pci106b,4 = 未公开的设备
- pci14e4,4311 = BCM4311
- pci14e4,4312 = BCM4311
- pci14e4,4313 = BCM4311
- pci14e4,4318 = BCM4318
- pci14e4,4319 = BCM4318
- pci14e4,431a = 未知设备
- pci14e4,4320 = BCM4306
- pci14e4,4324 = BCM4309
- pci14e4,4325 = BCM4306
- pci14e4,4328 = BCM4328
- pci14e4,432c = BCM4322
- pci14e4,432d = BCM4322
- IO80211HighSierra.kext
- 推荐持有老高通 Atheros 芯片的用户在 macOS 10.12 及以上使用
- 设置 MinKernel 为 18.0.0
- 支持的设备 ID
- Atheros - AirPortAtheros40
- pci168c,30 = AR93xx
- pci168c,2a = AR928X
- pci106b,86 = 未公开的设备
- pci168c,1c = AR242x / AR542x
- pci168c,23 = AR5416
- pci168c,24 = AR5418
- IO80211Mojave.kext
- 推荐持有老博通 BCM4322 芯片的用户在 macOS 10.15 及以上使用
- 设置 MinKernel 为 19.0.0
- 支持的设备 ID
- 博通 - AirPortBrcm4331
- pci14e4,432b = BCM4322
- IO80211Catalina.kext
- 推荐持有老博通 BCM4331 和 BCM43224 芯片的用户在 macOS 11.0 及以上使用
- 设置 MinKernel 为 20.0.0
- 支持的设备 ID
- 博通 - AirPortBrcm4360
- pci14e4,4331 = BCM4331
- pci14e4,4353 = BCM43224
其它信息
博通 BCM4331
使用 BCM4331 芯片组的用户需要注意,macOS Big Sur 其实仍然部分程度上支持这个无线网卡,但是需要使用仿冒设备 ID。与注入修改过的 IO80211.kext 相比,使用仿冒 ID 是一种更靠谱的解决方法,但是由于仿冒设备 ID 的效果会始终存在于 macOS 中,因此可能会破坏老版本的 macOS(由于 Windows 或 Linux 中不存在 DeviceProperties,无需担心)。
我们需要使用 gfxutil 来完成这个部分(点击下载,提取码:62ss),解压 gfxutil 到桌面,然后打开 终端.app,输入以下命令:
~/Desktop/gfxutil | grep -i "14e4:4331"
如果你的终端无法定位 gfxutil,可直接把 gfxutil 拖进终端自动补全路径,然后输入后续部分内容。
运行后,你将得到类似下面的结果:
00:1f.6 14e4:4331 /PC00@0/PXSX@1F,6 = PciRoot(0x0)/Pci(0x1F,0x6)
其中 PciRoot(0x0)/Pci(0x1F,0x6) 就是设备的具体位置,把 Pci 位置这个添加到:
- OpenCore:config.plist → DeviceProperties → add
- Clover:config.plist → Devices → Properties → add
然后,添加具体值,如下:
- compatible
- 类型 String
- "pci14e4,43ba"
- device-id
- 类型 Data
- BA430000
最后重启生效(Clover 未验证是否有效)。
不支持的高通 Atheros 芯片组
对于部分 AR9285/7 和 AR9280 芯片组,需要在无线网卡上仿冒设备 ID。这是由于 AirPortAtheros40.kext 具有内部 PCI ID 复检功能,手工修改扩展设备 ID 列表无法生效。
我们需要使用 gfxutil 来完成这个部分(点击下载,提取码:62ss),解压 gfxutil 到桌面,然后打开 终端.app,输入以下命令:
~/Desktop/gfxutil | grep -i "pci168c:002b|pci168c:002e"
如果你的终端无法定位 gfxutil,可直接把 gfxutil 拖进终端自动补全路径,然后输入后续部分内容。
运行后,你将得到类似下面的结果:
00:1f.6 pci168c:002e /PC00@0/PXSX@1F,6 = PciRoot(0x0)/Pci(0x1F,0x6)
其中 PciRoot(0x0)/Pci(0x1F,0x6) 就是设备的具体位置,把 Pci 位置这个添加到:
- OpenCore:config.plist → DeviceProperties → add
- Clover:config.plist → Devices → Properties → add
然后,添加具体值,如下:
- compatible
- 类型 String
- ""pci168c,2a""
- device-id
- 类型 Data
- 2A000000
最后重启生效(Clover 未验证是否有效)。
1. 本站资源收集于网络,仅做学习和交流使用,请于下载后24小时内删除。如果你喜欢我们推荐的软件,请购买正版支持作者。
2. 如有无法下载的链接,联系:admin#heipg.cn,或到QQ群进行反馈,我们将及时进行处理。
3. 本站发布的内容若侵犯到您的权益,请联系站长删除,联系方式:admin#heipg.cn,我们将第一时间配合处理!
黑苹果星球 » 旧版macOS系统内置无线驱动:IO80211Family.kext
支持12系统吗
IO80211Catalina.kext