Moderators Jake Lo Posted October 23, 2023 Moderators Share Posted October 23, 2023 (edited) Wifi in Sonoma & later: Patching for legacy Broadcom wireless cards Sonoma has dropped support for our beloved legacy Broadcom wireless devices (DW1560, DW1820A, DW1830). If you opt for a legacy BCM4352, BCM4360 or BCM43602 wireless card, you'll need to apply OCLP root patches and boot with OpenCore in order to bypass vanilla IOSkywalkFamily kext and inject replacement IOSkywalkFamily+ IO80211FamilyLegacy kexts. Assuming you have a working Broadcom wireless config prior to upgrading to Sonoma. the following steps are added: 1) Download latest OCLP (v1.1.0 at time of writing) 2) Download the necessary kexts (attached below) 3) Configure the following in your Config file a) System Integrity Protection is set to 0x803 csr-active-config | data | 03080000 b) Reset NVRAM or add csr-active-config to Delete to ensure the new variable is set c) Secure Boot Model is set to Disabled d) Following kexts are blocked: i) com.apple.iokit.IOSkywalkFamily Set the Strategy of the blocked kext to "Exclude" a) Set MinKernel to 23.0.0 to ensure patches only apply on Sonoma e) Following kexts are injected in these order: i) IOSkywalk.kext a) Set MinKernel to 23.0.0 to ensure patches only apply on Sonoma ii) IO80211FamilyLegacy.kext a) Set MinKernel to 23.0.0 to ensure patches only apply on Sonoma iii) IO80211FamilyLegacy.kext has a plugin, AirPortBrcmNIC.kext, ensure this is injected as well a) Set MinKernel to 23.0.0 to ensure patches only apply on Sonoma iv) AMFIPass.kext f) add to bootarg i) -amfipassbeta 4) Once these are injected, you can run OpenCore-Patcher's Post-Install option and root patch. Systen will reboot after patching is done. On reboot, Wireless support should be restored assuming your machine was configured correctly to the above." Necessary Kexts Kexts.zip References: https://osxlatitude.com/forums/topic/19456-oclp-patcher-support-for-legacy-broadcom-wireless-cards-in-sonoma https://www.insanelymac.com/forum/topic/357087-macos-sonoma-wireless-issues-discussion/?do=findComment&comment=2812059 https://github.com/dortania/OpenCore-Legacy-Patcher/blob/e21efa975c0cf228cb36e81a974bc6b4c27c7807/payloads/Config/config.plist#L1695-L1710 https://dortania.github.io/OpenCore-Legacy-Patcher/ Edited September 16 by Hervé Edited for Sequoia 1 Link to comment Share on other sites More sharing options...
Administrators Hervé Posted January 17 Administrators Share Posted January 17 Further to my communication of July 2023 and Jake Lo's post above, I can confirm that Clover r5157 now supports blocking of vanilla kext IOSkywalkFamily kext which is required to support and use "legacy" wireless cards in Sonoma, i.e. cards that worked perfectly, natively or not, up to Ventura. This is basically equivalent to the kext exclusion available in OpenCore but limited to IOSkywalkFamily kext. The blocking is available as kext patch called BlockSkywalk and is integrated to latest versions of CloverConfigurator too. Process with Clover is therefore as follows: update or install Clover r5157 (versions r5155 and r5156 are supposed to provide the patch too but I found that it was not working and resulted in a freeze at startup) apply/enable Kernel & Kexts patch BlockSkywalk in your Clover config either add boot arg -amfi_get_out_of_way=1 in your config or add AMFIPass kext provided above by Jake to your kexts/14 or kexts/Other Clover folder and add boot arg -amfipassbeta boot arg in your Clover config add kexts IOSkywalk (renamed copy of older version of IOSkywakFamily kext) and IO80211FamilyLegacy kexts provided above by Jake to your kexts/14 or kexts/Other Clover folder you can keep SIP disabled with CsrActiveConfig set to 0xFEF, I found there was no need to change to, say, 0x803 install and run OCLP Patcher and apply Networking: modern wireless or Networking legacy wireless (depending on the card) root patch which should be automatically offered reboot and enjoy recovered wireless services out of your PCIe wireless card Clover_r5157.pkg.zip Clover Configurator.zip Example with the Apple BCM94360CS2 card fitted with an adapter board to the M.2 WLAN slot of my Dell Latitude E7270: or (as text): <key>BlockSkywalk</key> <true/> 2 Link to comment Share on other sites More sharing options...
Administrators Hervé Posted March 10 Administrators Share Posted March 10 Revised wireless kexts for Sonoma 14.4, the previous ones not providing wifi service beyond Sonoma 14.3. OCLP 1.4.1 or later required too. Wifi_kexts_Sonoma_14.4.zip 3 Link to comment Share on other sites More sharing options...
Administrators Hervé Posted July 26 Administrators Share Posted July 26 Important note about BCM4352 cards (eg: DW1560), given that these are not supported OOB. Injection of the device id or injection of compatibility statement was always required so that it could be activated through AirPortBrcm4360 (older OS X/macOS versions up to Catalina) or AirPortBrcmNIC (Big Sur & later) kexts. In addition, a binary patch of the drivers was required to obtain operation on 5Ghz networks. Injecting the property "compatible pci14e4,43a0 STRING" only provides operation on 2,4GHz networks. In Sonoma, BCM4352 cards can be fully activated with the above process + injection of Acidanthera's AirportBrcmFixup v2.1.8. With OpenCore, only the AirportBrcmNIC injector needs to be specified for loading in the config, AirportBrcm4360 injector being irrelevant (target kext not present). The injector does exactly what its name implies: it injects the missing device id (eg: 14e4:43b1 for the DW1560) in the AirPortBrcmNIC PlugIn of IO802FamilyLegacy kext. The binary/executable module of the kext handles the binary patch required to obtain operation on 5GHz networks. For BCM4350 cards (eg: DW1820a), no changes to what was required with previous macOS versions. It's a simple matter of applying the above process is + injecting the property "compatible pci14e4,43a0 STRING". No need of AirportBrcmFixup. Link to comment Share on other sites More sharing options...
Administrators Hervé Posted September 16 Administrators Share Posted September 16 Above procedure is good for Sequoia too. Link to comment Share on other sites More sharing options...
Recommended Posts