Broadcom wifi fails to install

wifi

#1

Reported at GitHub. Please comment there.


Wifi keeps disconnecting
#2

If your Broadcom wireless adapter driver is detected as “bcma-pci-bridge” or “b43-pci-bridge”, you have conflicting drivers installed.

Examples:

Kernel driver in use: bcma-pci-bridge
Kernel modules: bcma

Kernel driver in use: b43-pci-bridge
Kernel modules: ssb


Drivers detected as "bcma-pci-bridge"

If your driver is detected as “bcma-pci-bridge”, use the following steps below to fix your WiFi. For this procedure to work your adapter should be included in the broadcom-wl supported chipsets list below.

You will need to uninstall the currently installed dysfunctional driver to correct this issue.

The installed driver may be any of various driver versions, such as:

broadcom-wl, linux414-broadcom-wl, b43-firmware-legacy, etc.

Uninstall the driver (substituting your installed driver), at the tail end of the command below:

sudo pacman -Rns linux414-broadcom-wl

Installing the required linux headers:

You must install the required linuxXXX-headers package before installing the broadcom-wl-dkms driver.

Install the linux headers package corresponding to your kernel version number.

Use this command to install the headers:

pamac install linux$(uname -r| grep -o -E '[0-9]+' | head -n 2 | sed 'N;s/\n//')-headers

Once the linux headers package installation is complete:

Reboot.

After rebooting, your WiFi may be working with the native kernel modules already built into the kernel. If you find the kernel drivers work satisfactorily you may want to continue using them.

If your WiFi is not working (or the kernel drivers perform poorly), then continue on with the directions to install the proprietary broadcom-wl-dkms driver.

Next, install the dkms package with the following command:

sudo pacman -S dkms 

Then, reboot:

Do a quick check on your WiFi status, and if it is unchanged proceed with installing the dkms driver.

Install the “broadcom-wl-dkms” driver package from the Manjaro extra repo with this command:

sudo pacman -S broadcom-wl-dkms

After the driver has finished installing, reboot.

After rebooting, if your WiFi is still not working then follow these additional steps.

Check that a blacklist file exists in /etc/modprobe.d/ with the following contents.

blacklist b43
blacklist b43legacy
blacklist ssb
blacklist bcm43xx
blacklist brcm80211
blacklist brcmfmac
blacklist brcmsmac
blacklist bcma

If a file does not already exist with those contents, create it.

You can automatically add the required entries to /etc/modprobe.d/blacklist.conf file with the following command:

sudo echo -e "blacklist b43\nblacklist b43legacy\nblacklist ssb\nblacklist bcm43xx\nblacklist brcm80211\nblacklist brcmfmac\nblacklist brcmsmac\nblacklist bcma" | sudo tee -a /etc/modprobe.d/blacklist.conf

Then, issue these commands:

sudo rfkill unblock all
sudo depmod -a
sudo mkinitcpio -P

Use this command to install the headers:

sudo modprobe -r wl
sudo modprobe wl
sudo systemctl restart NetworkManager 

Once those commands have finished running test your connection.

If your Wi-Fi is still not working, reboot.

Hopefully after a restart your new wl driver will be working correctly.

This method will not necessarily work for all Broadcom chips. This method should work for most cards compatible with the broadcom-wl driver. Not all Broadcom adapters work best with the wl drivers, (but the majority do).


The broadcom-wl driver should work correctly with the following Wireless chipsets.

broadcom-wl supported chipsets:

BCM4311
BCM4312
BCM4313
BCM4321
BCM4322
BCM4331
BCM4352
BCM436O
BCM43142
BCM43224
BCM43225
BCM43227
BCM43228

Linux Broadcom adapter driver support reference lists:

https://wireless.wiki.kernel.org/en/users/drivers/brcm80211

https://wireless.wiki.kernel.org/en/users/drivers/b43

https://wiki.debian.org/wl

If your adapter is not on the above list, this method may not work for your adapter. If the wl driver does not work (or performs poorly) it may be better to follow the method below to use the built in kernel drivers.


Drivers detected as "b43-pci-bridge"

Generally if you see your WiFi drivers listed as “b43-pci-bridge” you have conflicting drivers installed. In a minority of instances a driver detected as “b43-pci-bridge” may function adequately. However, drivers installed this way tend to be unreliable in the long term.

In these cases the drivers included in the kernel may be the better choice. You may find your driver issues can be corrected by simply uninstalling the “broadcom-wl” drivers. You can uninstall the wl drivers through the Manjaro Settings Manager. Once the “broadcom-wl” drivers are uninstalled you can test the b43 driver:

sudo rmmod  wl
sudo rmmod ssb
sudo rmmod b43
sudo modprobe b43

Then:

sudo rfkill unblock all
sudo depmod -a
sudo mkinitcpio -P

Test your wifi.

Then reboot you computer. After restarting, the kernel drivers should automatically load.

If the kernel modules do not load automatically you must ensure they are not blacklisted. Check that no blacklist file exists in /etc/modprobe.d/ that blacklists the broadcom kernel modules (as in the blacklist example above). If the kernel modules are blacklisted then either delete the file, or comment out the entries. The blacklist entries can be made to be ignored by adding a pound sign “#” before any entry line (commented out).

There is no guarantee the correct kernel module will automatically be loaded for your adapter model. As different adapters may use different modules you may need to research which modules are required. A different blacklist may be required for different kernel modules, so this can get complicated. If the installation steps listed here do not resolve your broadcom driver issues a support request on the forum may be helpful.

Unfortunately, Broadcom drivers are well known for being problematic in Linux. If you can’t get the kernel modules working, then perhaps installing the “broadcom-wl-dkms” driver may be worth attempting. If you have no luck with either the native or proprietary drivers you may find purchasing a USB adapter with good Linux support is your best alternative.



[SOLVED] Slow Wi-fi on Broadcom BCM4313 Adapter (rev 01)
B43 module loading problem after upgrade
MacBook WiFi - BCM4360
[SOLVED] Bcm4331 wifi
<Solved>Cant install Wireless- Package is out of date
Apple macbook 2009 with broadcom 4332 disconnect after sleep
X250 touchpad and wifi not working
BCM4322 (rev 01) can’t find Networks
[SOLVED] Wifi not working after reinstall
Wifi not working on my Macbook Air early 2015 7,2
[SOLVED] Can't connect bluetooth mouse after powering off the system
Broadcom Wi-Fi on macbook 4,1 not recognized after install
Download speeds seriously compromised
Slow wifi, multiple fixes and reinstalls tried
First dualboot on macbook air and wifi
Connect to broadcom wifi pci card
Slow and inconsistent wifi with TP-Link Archer T9E AC1900
BCM43602 brcmfmac driver causes kernel panic in WPA2 networks
Dual Band PCI card
Confused installing wifi
BCM43142 not connecting to wifi
Confused installing wifi
[SOLVED] NordVPN CLI Client Install
[SOLVED] Wifi issue during installation
Just Another Macbook WiFi Problem
[SOLVED] Poor wifi speeds
Confused installing wifi
#3

Does it happen with other kernels + linuxXY-broadcom-wl ?
(You can post the results at github, I will read.)


#4

@eugen-b I’ve found that every time bcma-pci-bridge shows up as the broadcom driver the driver install is borked. Switching kernels will be very unlikely to help. I’ve helped 3 or 4 people in the last couple weeks where this issue has shown up with a variety of broadcom chips. The solution was the same on all of them. The miss-detected driver needed to be uninstalled and replaced. Depending on the card and proper driver that was required, a blacklisting might also be in order. It’s a dead giveaway now, when I see the bcma-pci-bridge driver I know it’s a conflicting drivers issue. On Windows they actually identify it as a bug and even have removal tool to fix the problem. So its not just Linux where this issue occurs with the Broadcom drivers. At least that’s what I’ve been able to piece together from a lot of searching.


#5

Uninstall the current driver is part of any solution with a Broadcom driver which doesn’t work. :wink:

My recommendation was based on this topic:

Ah, in that post the OP installed the wrong headers! :man_facepalming:
So, ok Alberto might try your proposal

sudo pacman -S linux414-headers
reboot
sudo pacman -S broadcom-wl-dkms

#6

@eugen-b From the link you posted:

I totally agree with the above quote. I’ve suspected the mhwd hardware detection has been installing broadcom drivers incorrectly for a little while now. I first noticed this issue about three weeks ago, and started researching it. After reading a thread that was linked from your original reference, I now think this is an even bigger issue than I first suspected. According to a post on that thread the mhwd scripts miss-detection of broadcom adapters is actually causing the calamares installer to hang on some Manjaro installs.

From searching bcma-pci-bridge I found some information on this issue. I did not find a lot of hits on Linux. It wasn’t until I found the hit on Windows identifying this as a bug that I realized that seeing the bcma-pci-bridge is a sure sign the driver install was botched. I’m simply trying to let others know that if you see bcma-pci-bridge listed as the driver your driver install has gone sideways and needs to be corrected.


#7

I will no longer be able to research this myself, as I solt the affected computer.


#8

Too bad, I’m almost 100% sure that would have fixed your wifi issue.


#9

The GPU was damaged :slight_smile:


closed #10

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.