0

I was issued a dell precision 5570 workstation with Ubuntu 22.04 on it. I have noticed that wifi does not work on it until I unload and load the iwlwifi kernel module. In fact, the device doesn't even list as available under the wifi settings in gnome until I do. Once reloaded, wifi works as expected. However, every time I reboot the workstation, I must redo the iwlwifi reload.

sudo modprobe -r iwlwifi
sudo modproble iwlwifi

My question is how, or more precisely what would be the best way to persist this change? I had a similar situation on a dell latitude with Alma Linux 8 where this same problem happened and regenerating the initramfs via dracut after reloading the iwlwifi kernel module was enough to persist that, but when I try the either of the following commands, that does not seem to work:

sudo update-initramfs -c -k $(uname -r)
sudo update-initramfs -c -k all

For more information, here is what lspci shows:

$USER@$HOST:~$ lspci -knn | grep Net -A3
00:14.3 Network controller [0280]: Intel Corporation Alder Lake-P PCH CNVi WiFi [8086:51f0] (rev 01)
    Subsystem: Intel Corporation Device [8086:4090]
    Kernel driver in use: iwlwifi
    Kernel modules: iwlwifi

lsmod shows the following:

$USER@$HOST:~$ lsmod | grep iwl
iwlmvm                610304  0
mac80211             1314816  1 iwlmvm
iwlwifi               503808  1 iwlmvm
cfg80211             1044480  3 iwlmvm,iwlwifi,mac80211

And don't know if this will be helpful, but rfkill shows the following before I reload:

$USER@$HOST:~$ rfkill 
ID TYPE      DEVICE              SOFT      HARD
 0 bluetooth hci0           unblocked unblocked
 1 wlan      dell-wifi      unblocked unblocked
 2 bluetooth dell-bluetooth unblocked unblocked

But show's this after the reload of the module:

$USER@$HOST:~$ rfkill 
ID TYPE      DEVICE              SOFT      HARD
 0 bluetooth hci0           unblocked unblocked
 1 wlan      dell-wifi      unblocked unblocked
 2 bluetooth dell-bluetooth unblocked unblocked
 3 wlan      phy0           unblocked unblocked

For reference as well, I am running the linux-generic-hwe-22.04 kernel, which puts me at 5.19.0-35-generic.

I've also checked the bios settings to make sure the wlan/wwan device wasn't disabled or that power management wasn't disabling wlan/wwan when it detects a wired connection. I also checked to make sure iwlwifi wasn't a blacklisted module.

beardedeagle
  • 111
  • 7
  • What messages does the module produce at boot? journalctl -b | grep iwl. If you want to execute a script at startup you can use systemd: https://askubuntu.com/questions/919054/how-do-i-run-a-single-command-at-startup-using-systemd – Khalid Abu Shawarib Mar 11 '23 at 11:00
  • Is this a dual boot with Windows? https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi#about_dual-boot_with_windows_and_fast-boot_enabled – chili555 Mar 11 '23 at 14:25
  • @KhalidAbuShawarib here is a gist of the output from that command https://gist.github.com/beardedeagle/210db5ae21e72e4cedda903c687bc360 – beardedeagle Mar 11 '23 at 16:22
  • @chili555 this is not a dual booted system. only has Ubuntu 22.04 on it. – beardedeagle Mar 11 '23 at 16:22

1 Answers1

0

I notice this line in the log:

PNVM data is missing, please install iwlwifi-so-a0-gf-a0.pnvm

Let's install it and see if the problem is solved. From the terminal:

cd /usr/lib/firmware/
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/iwlwifi-so-a0-gf-a0.pnvm

Reboot and show us again:

journalctl -b | grep iwl

EDIT 1: Your grub boot parameters now read:

ro, quiet, splash, ipv6.disable=1, fastboot, vt.handoff=7

I suspect that the ‘fastboot’ parameter makes the boot process so quick that the iwlwifi driver and firmware don’t fully initialize. Let’s remove it to see if it helps. In a terminal:

sudo nano /etc/default/grub

Find the line that includes the line above. Delete the single word fastboot.

The line should now only include:

ro, quiet, splash, ipv6.disable=1, vt.handoff=7

Proofread carefully. Save (ctrl+o followed by Enter) and exit (Ctrl+x). Follow with:

sudo update-grub

Reboot and tell us if there is any improvement.

chili555
  • 60,188
  • the same thing occurred. wifi did not show up or work until a module reload upon reboot. Here is a gist of journalctl: https://gist.github.com/beardedeagle/a5c1868126c98ac476eef601b52fa191 – beardedeagle Mar 11 '23 at 20:28
  • I noticed the wget'd file was named with a .1, so I backed up the file that was already present and redownloaded it. Performed a reboot, and same output for journalctl, however now when I unload and reload the iwlwifi module, it does nothing and wifi keeps not working. – beardedeagle Mar 11 '23 at 20:36
  • I put everything back, and now I am back to being able to get wifi once I reload the module after boot. So it doesn't appear to like the pnvm file from the git source. – beardedeagle Mar 11 '23 at 20:43
  • I've also checked the bios settings to make sure the wlan/wwan device wasn't disabled or that power management wasn't disabling wlan/wwan when it detects a wired connection. I also checked to make sure iwlwifi wasn't a blacklisted module. – beardedeagle Mar 13 '23 at 04:13
  • I also see this as a means to run for troubleshooting: https://github.com/UbuntuForums/wireless-info, but unsure if I should run that before or after running the iwlwifi reload. – beardedeagle Mar 13 '23 at 04:17
  • Please run it and post it after a fresh boot and paste it here: http://paste.ubuntu.com and give us the link. – chili555 Mar 13 '23 at 12:25
  • Here it is: https://pastebin.ubuntu.com/p/fFffFscPPf/ – beardedeagle Mar 13 '23 at 17:15
  • I see nothing remarkable about the wireless in your paste. Please run: tail -f /var/log/syslog Open a new terminal and do: sudo modprobe -r iwlwifi && sudo modprobe iwlwifi Capture the syslog output and let us see a paste of the result. Is this a virtual machine? What explains the gdp0 interface? – chili555 Mar 13 '23 at 19:55
  • Done, here it is: https://gist.github.com/beardedeagle/c51042c1606ff913bcccdf0a89d31877. This is a physical laptop that my company issued me, so I am unsure of why the gdp0 interface, as provisioning laptops is managed by another team. – beardedeagle Mar 14 '23 at 07:51
  • Ah, gpd0 appears to be the global protect vpn client – beardedeagle Mar 15 '23 at 05:24
  • Please see my edit above in a few moments. – chili555 Mar 16 '23 at 14:30
  • ah yeah, I stumbled across that a few days ago myself and tried disabling it myself to no avail (also removed the ipv6 bit since ipv6 works fine here, something the provisioning team did that wasn't needed. – beardedeagle Mar 17 '23 at 16:00
  • interestingly we installed ubuntu 22.04 desktop edition onto a dell precision 5570 and it had working wifi out of the box. The workstation I was issued is ubuntu 22.04 server edition. They issue server currently because it's easier for them to provision, they are still figuring out the preseed method for desktop version. – beardedeagle Mar 17 '23 at 23:21
  • I notice there are newer ucode/pnvm files at https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/. Would it be worth a try to backup all iwlwifi-*.{ucode,pnvm} files in /usr/lib/firmware/, download the latest and move them there? – beardedeagle Mar 18 '23 at 04:49
  • I highly doubt it but it takes little to try. – chili555 Mar 18 '23 at 13:20
  • It did not fix the issue unfortunately, but unlike before I can still unload and reload iwlwifi so at least there is that. It's still complaining about the exact same error, but once again I've confirmed that file is present in the correct location. I'm at a loss at this point. – beardedeagle Mar 18 '23 at 18:11
  • I regret that I haven't any further useful suggestions. Sorry. – chili555 Mar 18 '23 at 21:04