在重启之间保留 iwlwifi 重新加载

在重启之间保留 iwlwifi 重新加载

我收到了一台装有 Ubuntu 22.04 的戴尔 precision 5570 工作站。我注意到,在我卸载并加载iwlwifi内核模块之前,wifi 无法正常工作。事实上,在我这样做之前,该设备甚至没有在 gnome 中的 wifi 设置下列为可用。重新加载后,wifi 可以正常工作。但是,每次我重新启动工作站时,我都必须重新iwlwifi加载。

sudo modprobe -r iwlwifi
sudo modproble iwlwifi

我的问题是如何,或者更确切地说,什么是持久化这种变化的最佳方法?我在装有 Alma Linux 8 的戴尔 Latitude 上也遇到过类似的情况,也出现了同样的问题,在dracut重新加载iwlwifi内核模块后通过重新生成 initramfs 就足以解决这个问题,但是当我尝试以下任一命令时,似乎都不起作用:

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

欲了解更多信息,请参阅以下lspci显示内容:

$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显示以下内容:

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

不知道这是否有帮助,但在我重新加载之前 rfkill 显示以下内容:

$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

但重新加载模块后显示如下:

$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

作为参考,我正在运行linux-generic-hwe-22.04内核,这使我处于5.19.0-35-generic

我还检查了 bios 设置,以确保 wlan/wwan 设备未被禁用,或者电源管理在检测到有线连接时未禁用 wlan/wwan。我还检查了以确保iwlwifi不是黑名单模块。

答案1

我注意到日志中有这一行:

PNVM 数据缺失,请安装 iwlwifi-so-a0-gf-a0.pnvm

让我们安装它并看看问题是否解决。从终端:

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

重新启动并再次显示:

journalctl -b | grep iwl

编辑1:你的 grub 启动参数现在为:

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

我怀疑“fastboot”参数使启动过程变得太快,以至于 iwlwifi 驱动程序和固件无法完全初始化。让我们将其删除,看看是否有帮助。在终端中:

sudo nano /etc/default/grub

找到包含上述行的行。删除单词 fastboot。

该行现在应该仅包含:

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

仔细校对。保存(ctrl+o 后按 Enter)并退出(Ctrl+x)。然后执行以下操作:

sudo update-grub

重新启动并告诉我们是否有任何改进。

相关内容