On my Lenovo Edge-15 running 18.04.5 with kernel 4.15.0-122-generic. Secure Boot was disabled all along.
I just noticed one day on boot that the Wi-Fi wasn't working. When I went to the Wi-Fi settings I got "No Wi-Fi adapter found". Could an automatic update have turned something off/broken something?
$ sudo lshw -class network
*-network UNCLAIMED
description: Network controller
product: BCM4360 802.11ac Wireless Network Adapter
vendor: Broadcom Inc. and subsidiaries
physical id: 0
bus info: pci@0000:02:00.0
version: 03
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: latency=0
resources: memory:d1100000-d1107fff
$ lspci -vnn | grep Network
02:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter [14e4:4360] (rev 03)
Subsystem: Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter [14e4:4360]
and
$ iwconfig
vmnet8 no wireless extensions.
docker0 no wireless extensions.
lo no wireless extensions.
enp3s0 no wireless extensions.
vmnet1 no wireless extensions.
Is Wi-Fi blocked?
$ rfkill list all
0: ideapad_bluetooth: Bluetooth
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: yes
Hard blocked: no
Continuing working through Installing Broadcom Wireless Drivers.
$ sudo apt list bcmwl-kernel-source
Listing... Done
bcmwl-kernel-source/bionic-updates,now 6.30.223.271+bdcom-0ubuntu5~18.04.1 amd64 [installed]
Purging that per the instructions. Restarted and still no Wi-Fi.
$ sudo update-pciids
Downloaded daily snapshot dated 2020-10-11 03:15:01
Per the table, for 14e4:4360 I need to install
$ sudo apt install firmware-b43-installer
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
b43-fwcutter
The following NEW packages will be installed:
b43-fwcutter firmware-b43-installer
Rebooting and still no Wi-Fi.
sudo modprobe -r b43
sudo modprobe b43
sudo rfkill unblock all
After a comment from chili555
$ sudo modprobe wl
modprobe: FATAL: Module wl not found in directory /lib/modules/4.15.0-122-generic
A quick search of the output suggests this answer https://askubuntu.com/a/811015/334823
$ sudo apt-get install --reinstall linux-headers-generic
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 2 not upgraded.
Need to get 2,544 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 linux-headers-generic amd64 4.15.0.122.109 [2,544 B]
Fetched 2,544 B in 0s (28.8 kB/s)
(Reading database ... 442641 files and directories currently installed.)
Preparing to unpack .../linux-headers-generic_4.15.0.122.109_amd64.deb ...
Unpacking linux-headers-generic (4.15.0.122.109) over (4.15.0.122.109) ...
Setting up linux-headers-generic (4.15.0.122.109) ...
$ sudo modprobe wl
modprobe: FATAL: Module wl not found in directory /lib/modules/4.15.0-122-generic
I ran $ sudo apt install --reinstall bcmwl-kernel-source and it got rid of the error from sudo modprobe wl (which now returns nothing). But still no Wi-Fi.
dmesg | grep wl
[ 52.474364] wl: loading out-of-tree module taints kernel.
[ 52.474369] wl: module license 'MIXED/Proprietary' taints kernel.
[ 52.478450] wl: module verification failed: signature and/or required key missing - tainting kernel
[ 52.481565] wl driver 6.30.223.271 (r587334) failed with code 1
[ 52.481568] ERROR @wl_cfg80211_detach :
[ 52.481569] NULL ndev->ieee80211ptr, unable to deref wl1
After searching that 2nd line of output I found https://askubuntu.com/a/261934/334823, which I tried, but no change so reverted.