SimpleBCM.kext - alternative to OCLP and root patching for Broadcom WiFi

Edhawk

Guru
Guru
May 2, 2020
4,478
23
1,280
113
Fulham, London
Not sure if people are aware of the recent developments made by Laobamac regarding his simple BCM.kext. But this is something worth noting and using.

This single kext is a Lilu.kext plugin. It replaces the need to use the old Skywalk and IO80211FamilyLegacy kexts from Ventura, Block the current SkywalkFamily kext and run the OCLP root patches for Broadcom WiFi support in Sonoma, Sequoia and Tahoe. All without the need to create a snapshot and alter the macOS Volume.

Laobamac's GitHub repository (English translation) can be found here.


The kext, config.plist excerpts and other inofmaiton can be found here.


I would recommend using the Release 1.2.0 at this time, wait for the Alpha testing to be completed before using v1.2.1 on a working system. Unless you are feeling adventurous and want to help with the testing of the next release!

This is a really simple (hence the name) Broadcom fix for BCM4360 cards, including Fenvi T919 and native BCM4360CD chipsets.

After downloading the Release folder do the following:
  1. Revert the OCLP (Mod/Plus) or RP-Core patches you are currently using.
  2. Reboot.
  3. Uninstall OCLP or RP-Core or any other variant of OCLP.
  4. Mount your EFI.
  5. Delete the SkywalkFamily.kext, IO80211FamilyLegacy.kext and it's plugin AirPortBrcmNIC.kext from your /EFI/OC/Kexts folder.
  6. Delete the entries for the 3 x kexts from your config.plist.
  7. Delete/disable the SkywalkFamily kext Block entry in your config.plist.
  8. Add SimpleBCM.kext to the /EFI/OC/Kexts folder.
    1. Open the SimpleBCM-v1.2.0-RELEASE folder, drag and drop the BCMSimple.kext to the /EFI/OC/Kexts folder.
    2. Navigate to the SimpleBCM-v1.2.0-RELEASE folder and open config.fragment.plist, copy the kext entry and paste it in to your current config.plist.
  9. If you are using AirportBrcmFixup.kext then you need to place/paste the entry for SimpleBCM.kext AFTER AirportBrcmFixup.kext. Get this wrong and you may have caused yourself unnecessary issues.
  10. Save the changes to your config.plist
  11. Reboot.
That is it.

When you boot the system your Broadcom WiFi should be working with all the native Apple Continuity/Handoff/Airdrop features.

Simples!
 
Not sure if people are aware of the recent developments made by Laobamac regarding his simple BCM.kext. But this is something worth noting and using.

This single kext is a Lilu.kext plugin. It replaces the need to use the old Skywalk and IO80211FamilyLegacy kexts from Ventura, Block the current SkywalkFamily kext and run the OCLP root patches for Broadcom WiFi support in Sonoma, Sequoia and Tahoe. All without the need to create a snapshot and alter the macOS Volume.

Laobamac's GitHub repository (English translation) can be found here.


The kext, config.plist excerpts and other inofmaiton can be found here.


I would recommend using the Release 1.2.0 at this time, wait for the Alpha testing to be completed before using v1.2.1 on a working system. Unless you are feeling adventurous and want to help with the testing of the next release!

This is a really simple (hence the name) Broadcom fix for BCM4360 cards, including Fenvi T919 and native BCM4360CD chipsets.

After downloading the Release folder do the following:
  1. Revert the OCLP (Mod/Plus) or RP-Core patches you are currently using.
  2. Reboot.
  3. Uninstall OCLP or RP-Core or any other variant of OCLP.
  4. Mount your EFI.
  5. Delete the SkywalkFamily.kext, IO80211FamilyLegacy.kext and it's plugin AirPortBrcmNIC.kext from your /EFI/OC/Kexts folder.
  6. Delete the entries for the 3 x kexts from your config.plist.
  7. Delete/disable the SkywalkFamily kext Block entry in your config.plist.
  8. Add SimpleBCM.kext to the /EFI/OC/Kexts folder.
    1. Open the SimpleBCM-v1.2.0-RELEASE folder, drag and drop the BCMSimple.kext to the /EFI/OC/Kexts folder.
    2. Navigate to the SimpleBCM-v1.2.0-RELEASE folder and open config.fragment.plist, copy the kext entry and paste it in to your current config.plist.
  9. If you are using AirportBrcmFixup.kext then you need to place/paste the entry for SimpleBCM.kext AFTER AirportBrcmFixup.kext. Get this wrong and you may have caused yourself unnecessary issues.
  10. Save the changes to your config.plist
  11. Reboot.
That is it.

When you boot the system your Broadcom WiFi should be working with all the native Apple Continuity/Handoff/Airdrop features.

Simples!
Nice post, I've been testing this out on an MSI X870E Carbon Wifi board, swapped the internal M2 card out for a good old BCM94360NG card. Sequoia works as expected but with Tahoe and a spoofed RX 6950XT the end result is a black screen. The system boots fine, sleeps and wakes but no display. I swapped in an RX 580 video card, same result. I think I saw @fabiosun had a similar issue over at Insanelymac on his Asus X870E Crossfire Hero system.
Have you had better success with Tahoe and one of your AM5 boards yet?
 
I think I saw @fabiosun had a similar issue over at Insanelymac on his Asus X870E Crossfire Hero system.
Hi leusurone
i did many try in a different direction
It is possible to use SimpleBCM 1.0 using the blocks and old IOSkywalk kext (without root patches)
It is also possible to use SimpleBCM 1.2 using Thaoe integrated Ioskywalk, but in my case only using -v as boot arg
It is very weird but here in this way it is working
Without -v bootarg i have black screen
I am helping laobamac to investigate this weird situation, for now no success to understand what happens :)
 
  • Like
Reactions: leesurone
Hi leusurone
i did many try in a different direction
It is possible to use SimpleBCM 1.0 using the blocks and old IOSkywalk kext (without root patches)
It is also possible to use SimpleBCM 1.2 using Thaoe integrated Ioskywalk, but in my case only using -v as boot arg
It is very weird but here in this way it is working
Without -v bootarg i have black screen
I am helping laobamac to investigate this weird situation, for now no success to understand what happens :)
Thanks as always, I'm going to see if I can replicate your results.
 
Hi leusurone
i did many try in a different direction
It is possible to use SimpleBCM 1.0 using the blocks and old IOSkywalk kext (without root patches)
It is also possible to use SimpleBCM 1.2 using Thaoe integrated Ioskywalk, but in my case only using -v as boot arg
It is very weird but here in this way it is working
Without -v bootarg i have black screen
I am helping laobamac to investigate this weird situation, for now no success to understand what happens :)
Happy to report that worked with the RX 580 card, I'm pretty confident the RX 6950XT will work as well, at least for the time being.
 
Both my AM5 systems work just fine with SimpleBCM.kext 1.2.0. Even my B550 systems work with this kext, when they wouldn’t with OCLP or any of its variants.

I have swapped all the systems in my signature, and I am working my way through some Intel systems, to using SimpleBCM.kext and SimpleHDA.kext with no issues.

I now have no reason to dual-boot Sequoia and Tahoe, as I have the full Apple Continuity and audio features in Tahoe that I had in Ventura.
 
Did you revert the OCLP Root Patches before uninstalling OCLP?

Do you have the Network stack being implemented twice?
 
Did you revert the OCLP Root Patches before uninstalling OCLP?

Do you have the Network stack being implemented twice?
I never installed OCLP on this system, its a new build. The EFI I'm using is clean so it was a mystery. Changing the boot arguments to just -v solved it.
 
@leesurone this build solved the problem :)
with this bootarg:
sbcmdelay=10000
 
@leesurone this build solved the problem :)
with this bootarg:
sbcmdelay=10000
Unfortunately not working in Tahoe with attached but fine in Sequoia, anything stand out? The 1stboot photo is where it stops after clearing the NVRAM, then it reboots and the 2ndboot photo is where it hangs the second time.
 

Attachments

  • EFIMSIX870E.zip
    EFIMSIX870E.zip
    14.7 MB · Views: 1
  • 1stboot.jpeg
    1stboot.jpeg
    3.7 MB · Views: 2
  • 2ndboot.jpeg
    2ndboot.jpeg
    3.7 MB · Views: 2
@leesurone i never tested this working kext with -v
your EFI seems fine to me
only different i use also laobamac realtek patches in my config.plist and also i use no mmio whitelist but i add disablewritevariable quirk in booter /quirk but also this it shouldnt be a problem, i use also SIP enabled
i spoof 6950xt in DP, but it should be fine also via ssdt
 
Last edited:
yes @etorix
i did a bit o testing in private with laobamac and 1.21 posted above solved problem i had
only thing @leesurone could try is to spoof via device properties as i do but it is a "desperate"tries :)

i can use also a lower delay to boot but it is not relevant for his problem
 
@leesurone i never tested this working kext with -v
your EFI seems fine to me
only different i use also laobamac realtek patches in my config.plist and also i use no mmio whitelist but i add disablewritevariable quirk in booter /quirk but also this it shouldnt be a problem, i use also SIP enabled
i spoof 6950xt in DP, but it should be fine also via ssdt
Thanks, I changed the two values you mentioned and they also work with my setup. Same issues with Tahoe regardless of the version of SimpleBCM.kext with the included boot argument for version 1.21. It can get it to boot and it seems to make it to the end of the Tahoe boot cycle where it would hand of the the GUI and then stalls. Sometimes it will reboot, some times it will go to a black screen and stay that way. I think when that happens it makes it t the log in screen but there is no display.

I tried a variety of options to spoof and initiate the 6950XT with no luck so I swapped video cards and stuffed a 6900XT in it that doesn't require spoofing and it works in Sequoia but get this, same issues in Tahoe. The only way I've been able to reach the Tahoe desktop is by using a RX 580XT or using the 6950 without spoofing, end result no graphic acceleration.

Possibly future will address this on the 800 series boards....
 
✖
  AdBlock Detected
Sure, ad-blocking software does a great job at blocking ads, but it also blocks some useful and important features of our website. For the best possible site experience please take a moment to disable your AdBlocker.