Skip to content

fix-bcm43xx.sh installs broadcom-wl for BCM4331, which hard-freezes a 2011 MacBook Air where in-kernel b43 works #7593

Open

Description

@willhemming

What happened

install/hardware/fix-bcm43xx.sh installs broadcom-wl whenever it detects a BCM4360 (14e4:43a0) or BCM4331 (14e4:4331). On a mid-2011 MacBook Air (MacBookAir4,1, BCM4331), the wl driver hard-froze the machine in the live/install environment. The in-kernel b43 driver (firmware from linux-firmware-broadcom) drives the same chip without issue — the installed system has been running wifi on b43 (interface wlp2s0b1) stably since 2026-08-19.

Note also that broadcom-wl ships a modprobe blacklist for b43/ssb/bcma, so installing it doesn't just add an alternative driver — it disables the working in-kernel path.

What I expected

The installer's Broadcom handling not to install a driver that locks up the hardware it detected, when a working in-kernel driver exists for that chip.

Suggestion

The two chips the script matches are in different situations:

  • BCM4360 (14e4:43a0): no open in-kernel driver — broadcom-wl is genuinely the only option, keep as-is.
  • BCM4331 (14e4:4331): supported by in-kernel b43 with linux-firmware-broadcom. Preferring that (or at least not blacklisting it) would avoid the freeze.

I only have one BCM4331 machine (the 2011 Air), so I can't say whether wl misbehaves on the 2012 MacBooks the comment mentions — if wl is known-needed there, gating on DMI rather than PCI ID alone might be the safer shape.

System details

  • MacBookAir4,1 (mid-2011 11"), i5-2467M Sandy Bridge, BCM4331 (14e4:4331)
  • Omarchy install performed 2026-08-19

Happy to gather logs or test a patched script on this machine.

Activity

  1. andyholst commented on Sep 12, 2026

    @andyholst

    Related fix in #10910 — adds BCM43224 (14e4:4353) detection and blacklists conflicting open-source drivers (b43/brcmsmac/bcma) so broadcom-wl-dkms attaches cleanly.

    Verified on physical MacBook Air 5,2 (2012) with BCM43224:

    • Driver: brcmsmac → wl (broadcom-wl-dkms)
    • Link speed: 144.4 Mbps → 1170 Mbit/s
    • No freeze, clean boot

    Note: #7593 reports freeze on BCM4331 with broadcom-wl. BCM43224 is a different chip — the blacklist approach works here but may not be the right answer for 4331.

  2. added
    bugSomething isn't working
    compatibilityMake Omarchy work better on everything!
    on Sep 27, 2026
  3. self-assigned this
    on Sep 28, 2026
  4. removed their assignment
    on Oct 6, 2026
  5. omarchybot commented on Oct 8, 2026

    @omarchybot
    Collaborator

    Checked against quattro at b83d3df. The mechanism you describe is real: install/hardware/fix-bcm43xx.sh (lines 5–10) installs broadcom-wl-dkms for any BCM4331 (14e4:4331), on every model. It has done that since #1766 added BCM4331 to fix missing Wi-Fi on a MacBook Pro 9,2 (#1816). Nothing on quattro has changed that since.

    This is a hardware freeze, so it can't be reproduced on a worker without the MacBookAir4,1. What can be checked, the script's choice of driver, matches your report.

    #13532 is the open fix for this issue and is already linked to close it. It skips broadcom-wl-dkms only when the machine is a MacBookAir4,1 with BCM4331. Other BCM4331 Macs and BCM4360 keep wl. This is the DMI gate you suggested. It was tested on a worker with stubbed hardware and is waiting on you to confirm it on the Air, as asked on that pull request. One thing to know before testing: Arch's linux-firmware-broadcom ships no b43 firmware, so with wl skipped, a fresh install still needs b43 firmware supplied separately (the AUR b43-firmware package). The manual change in #13532 says so. If your b43 setup got its firmware some other way, that would be worth adding on #13532.

    No duplicate of this report was found. #10910 (BCM43224) and #11311 (BCM4322) touch the same script but don't change how BCM4331 is handled.

    Reviewed by Claude Opus 5.5 and, as a second opinion, Codex Medium. Codex agreed on the mechanism and on #13532 being the fix (independence is not guaranteed), and it pointed out the firmware detail above. This now waits on the maintainer, and on your hardware confirmation on #13532.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingcompatibilityMake Omarchy work better on everything!mac

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions