bcmwl-kernel-source broken on kernel: 5.8.0-34-generic
The reason is obvious. Almost every time Canonical rolls out a HWE kernel, they forget to upgrade bcmwl-kernel-source
in the repos.
You have two solutions (use one or the other, it makes no sense to use both):
- Install
bcmwl-kernel-source
fromgroovy
repos. You can find it e.g. here. http://mirrors.kernel.org/ubuntu/pool/restricted/b/bcmwl/bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu7_amd64.deb It will compile with the 5.8 kernel.
Download the deb and install it by
sudo dpkg -i bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu7_amd64.deb
Remove all 5.8 kernel packages using these commands:
sudo apt remove linux-{image,modules,modules-extra,headers}-5.8.0-36-generic linux-hwe-5.8-headers-5.8.0-36 sudo apt install linux-generic
Make sure that the linux-generic
meta package is installed.
It is recommended to boot with the 5.4 kernel before you remove the 5.8.
The second solution will keep the 5.4 major kernel version with normal security upgrades.
I managed to restore WiFi with kernel 5.4.0-59-generic
as follows:
- Purge all packages related to kernel
5.8.0-34-generic
:sudo apt purge linux-image-5.8.0-34-generic linux-image-unsigned-5.8.0-34-generic linux-modules-5.8.0-34-generic linux-headers-5.8.0-34-generic
- Purge the Broadcom WiFi driver:
sudo apt purge bcmwl-kernel-source
- Remove redundant packages:
sudo apt autoremove
- Put the
5.4.0-59-generic
kernel on hold:sudo apt-mark hold 5.4.0-59-generic
- Update package metadata:
sudo apt update
- Re-install the driver:
sudo apt install bcmwl-kernel-source
Since the 5.8.0-34-generic
kernel is gone, the driver is compiled only for the 5.4.0-59-generic
kernel which succeeds as expected. Reboot, and WiFi is restored.
Hopefully I can unhold the kernel and receive kernel updates as usual once this is sorted out.
Turns out, you can use the ubuntu 20.10 version of the package and it works just fine, at its origin repo