Contribute
Register

Broadcom BCM94352Z DW1560 with OpenCore + Big Sur

Status
Not open for further replies.
Joined
Jun 17, 2011
Messages
36
Motherboard
Acer V3-572 Predator
CPU
i5 > Need full CPU model number > See Forum Rules!
Graphics
HD 630, 1920x1080
Mac
  1. MacBook Pro
Mobile Phone
  1. Android
Hi,

I got it to work.
What irritates me highly is that people keep referring to post that indeed point to the solution, but until this moment never bloodly posted the full XML of the config.plist or a full procedure, including the original docs.
So I will try to be as elaborate as I can.

I upgraded from Catalina to Big Sur and on the way from Clover to Opencore (Dell Inspiron 5482 with DW1560).

I had to do the following:
- in EFI/OC/Kexts/ you need the following (additional) kexts:
AirportBrcmFixup
BrcmBluetoothInjector.kext
BrcmFirmwareData.kext
BrcmPatchRAM3.kext
FakePCIID.kext
FakePCIID_Broadcom_WiFi.kext

- then you need to make the kexts are loaded and that the mentioned 4360 plugin is not loaded.
This is the snippet from my config.plist for blocking that plugin from loading, they are in the config.plist under Kernel / Add / Item #:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Comment</key>
<string></string>
<key>MaxKernel</key>
<string>19.9.9</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
<key>Enabled</key>
<true/>
<key>MinKernel</key>
<string></string>
<key>ExecutablePath</key>
<string></string>
<key>Arch</key>
<string>Any</string>
<key>BundlePath</key>
<string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcm4360_Injector.kext</string>
</dict>
</plist>


These are the ones that load the kexts:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BundlePath</key>
<string>AirportBrcmFixup.kext</string>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AirportBrcmFixup</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</plist>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Comment</key>
<string></string>
<key>MaxKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
<key>Enabled</key>
<true/>
<key>MinKernel</key>
<string>19.0.0</string>
<key>ExecutablePath</key>
<string></string>
<key>Arch</key>
<string>Any</string>
<key>BundlePath</key>
<string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcmNIC_Injector.kext</string>
</dict>
</plist>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BundlePath</key>
<string>BrcmBluetoothInjector.kext</string>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string></string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</plist>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BundlePath</key>
<string>BrcmFirmwareData.kext</string>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/BrcmFirmwareData</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</plist>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BundlePath</key>
<string>BrcmPatchRAM3.kext</string>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/BrcmPatchRAM3</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</plist>

Last but not least, I added in the config.plist, under NVRAM / Add / 7C436110-AB2A-4BBB-A880-FE41995C9F82 / boot-args:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<string>-v debug=0x100 keepsyms=1 brcmfx-driver=2 </string>
</plist>

I am not sure if that was needed, the main thing to make it work was to add AirPortBrcmNIC_Injector.kext and the entry that blocks AirPortBrcm4360_Injector.

I am using Opencore 0.6.4 and latest versions of the kexts, or perhaps some older ones for the FakePCII, they came from the Clover folder. I don't seem to have separate entries to load them.

I had everything including sleep working on Catalina with Clover, at the moment I only seem to miss headphones audio missing and sleep. I'm gonna try and fix those.

Big thanks to everyone that made this all possible, at some point I started with :
and the linked:
https://github.com/daggeryu/DELL-Inspiron_5488_5480_5580_5482_5582_Hackintosh (using Google translate).
There is an Opencore folder in there that might be useful.

Feel free to post these snippets in documentation where possible, makes it much easier for others.

Also note the generic structure in the XML snippets for loading a kext, for if you need others.
Happy hacking :)!
 
Last edited:
Status
Not open for further replies.
Back
Top