Translation(s): English - Español - Français - 简体中文 - Русский
Broadcom BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227, BCM43228, BCM43142, BCM4331, BCM4352, BCM4360 devices (wl)
This page describes how to enable support for WiFi devices based on Broadcom wireless LAN chips, using the vendor driver on Debian systems.
Contents
The proprietary Broadcom wireless LAN driver (wl, aka broadcom-sta) provides support for some Broadcom-based PCI/PCIe hardware. It includes a binary-only component targeted for the x86 or x86-64 architecture. Supported devices are listed at the end of this page.
The driver depends on the x86 or x86-64 architecture (Debian i386 and AMD64 ports respectively).
The BCM4313, BCM43224 and BCM43225 chips are alternatively supported by the open source brcmsmac driver. The BCM4311, BCM4312, BCM4321, BCM4322 and BCM4331 chips are alternatively supported by the open source b43 driver.
Installation
Add a "non-free" component to /etc/apt/sources.list for your Debian version, for example:
# Debian 9 "Stretch" deb http://deb.debian.org/debian stretch-backports main contrib non-free
# Debian 10 "Buster" deb http://deb.debian.org/debian buster-backports main contrib non-free
# Debian 11 "Bullseye" deb http://deb.debian.org/debian bullseye contrib non-free
Update the list of available packages. Install the relevant/latest linux-image, linux-headers and broadcom-sta-dkms packages:
# apt-get update # apt-get install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms
This will also install the recommended wireless-tools package. DKMS will build the wl module for your system.
(Optional) Rescue if install/build fails in previous step
# apt-get install -f # dpkg-reconfigure broadcom-sta-dkms
(Optional) Check all the built DKMS kernel modules. There should be "wl.ko" in the list.
# find /lib/modules/$(uname -r)/updates
Unload conflicting modules:
# modprobe -r b44 b43 b43legacy ssb brcmsmac bcma
Load the wl module:
# modprobe wl
Configure your wireless interface as appropriate. See also known issues.
Switch between wl/OSS drivers
shell script:
#!/bin/sh WIFI=$(find /sys/class/net -follow -maxdepth 2 -name wireless 2>/dev/null|cut -d / -f 5|head -1) echo ip link set $WIFI down ip link set $WIFI down >/dev/null 2>&1 modprobe -r wl brcmsmac modprobe -r cfg80211 brcmsmac cordic brcmutil bcma if [ "$1" = "wl" ]; then modprobe wl else modprobe brcmsmac fi sleep 0.1 WIFI=$(find /sys/class/net -follow -maxdepth 2 -name wireless 2>/dev/null|cut -d / -f 5|head -1) echo ip link set $WIFI up ip link set $WIFI up >/dev/null 2>&1
Known Issues
The Sonics Silicon Backplane driver (ssb) conflicts with the wl driver (545388).
b44, b43, b43legacy and ssb are blacklisted by default as of broadcom-sta 5.10.91.9.3-3 (brcm80211 and brcmsmac since 5.100.82.38-1, 5.100.82.38-2 respectively).
- This prevents use of any Ethernet device supported by b44.
- Frequent disconnections can be experienced. This may be resolved by disabling power management via:
iwconfig(8) (e.g. iwconfig wlan0 power off)
laptop-mode-tools: set WIRELESS_BATT_POWER_SAVING=0 within /etc/laptop-mode/conf.d/wireless-power.conf
See bugs reported on this package in the Debian Bug Tracking System.
Supported Devices
Version 6.30.223.271-5
This driver is packaged for the Debian 9 "Stretch" release as broadcom-sta-dkms.
- Broadcom BCM4311 (PCI IDs 14e4:4311, 14e4:4312)
- Broadcom BCM4312 (PCI ID 14e4:4315)
- Broadcom BCM4313 (PCI ID 14e4:4727)
- Broadcom BCM4321 (PCI IDs 14e4:4328, 14e4:4329, 14e4:432a)
- Broadcom BCM4322 (PCI IDs 14e4:432b, 14e4:432c, 14e4:432d)
- Broadcom BCM43224 (PCI IDs 14e4:0576, 14e4:4353)
- Broadcom BCM43225 (PCI ID 14e4:4357)
- Broadcom BCM43227 (PCI ID 14e4:4358)
- Broadcom BCM43228 (PCI ID 14e4:4359)
- Broadcom BCM43142 (PCI ID 14e4:4365)
- Broadcom BCM4331 (PCI ID 14e4:4331)
- Broadcom BCM4352 (PCI ID 14e4:43b1)
- Broadcom BCM4360 (PCI IDs 14e4:43a0, 14e4:4360)
See Also
External Links
https://www.broadcom.com/support/802.11/linux_sta.php - 802.11 Linux STA driver
CategoryHardware | CategoryWireless | CategoryProprietarySoftware