Home

Awesome

AirportBrcmFixup

Build Status Scan Status

An open source kernel extension providing a set of patches required for non-native Airport Broadcom Wi-Fi cards.

Notes

Currently this kext requires macOS 10.10 or newer.

Note: Debug version of Lilu.kext should be put in the same folder as AirportBrcmFixup! And they should be also used together!

Features

Installation types

Boot-args

Specific boot-args and ioreg properties

Possible values for brcmfx-aspm (and pci-aspm-default):

Credits

Matching device-id and kext name in different macOS versions

[10.8]

[10.9]

[10.10]

[10.11]

[10.12]

[10.13]

[10.14]

[10.15]

[11]

[12]

[13]

[14+] Use with OCLP

Explanation in russian language: (https://applelife.ru/threads/airportbrcmfixup-lilu-plagin-s-naborom-patchej-dlja-wi-fi-kart-broadcom.2355103/page-16#post-751173)

Until version [10.13] there were only two kexts and for the most cases FakeID = 43a0 was enough to get working Wi-Fi. In [10.13] (and later) one family was separated into AirPortBrcm4360 (probably will be removed in 10.15), AirPortBrcmNIC and AirPortBrcmNIC-MFG. A proper fake-id has to be considered to load appropriate kext. Some device-id have limitations in one kext (like 5 Ghz range), but do not have it another.

Please pay attention

In 11+ class AirPortBrcm4360 has been completely removed. Using of injector kext with such class name and matched vendor-id:device-id blocks loading of original airport kext. To address this issue and keep compatibility with older systems injectors for AirPortBrcm4360 and AirPortBrcmNIC were removed from main Info.plist file. Instead, the two new kext injectors are deployed in PlugIns folder: AirPortBrcm4360_Injector.kext and AirPortBrcmNIC_Injector.kext. You have to block (or remove) AirPortBrcm4360_Injector.kext in 11+. In OpenCore you can specify MaxKernel 19.9.9 for AirPortBrcm4360_Injector.kext. In Clover you can have two different AirportBrcmFixup.kext, but in kext folder with version name 11 and 12 and 13 AirportBrcmFixup.kext must not contain AirPortBrcm4360_Injector.kext. You don't need these injectors at all if your vendor-id:device-id is natively supported by AirPortBrcmNIC or AirPortBrcm4360 (your device-id is included into Info.plist in these kexts).