Gateway E-475M 64 位笔记本电脑双启动,带 WIN7PRO 64 位和 UBUNTU 20.04.4LTS
问题:我可以暂停,但恢复后 wifi 检测不到任何东西……顶部栏上没有图标,选择网络时整个东西都是空的……但之后,我重新启动,然后可以进入休眠状态,恢复后 wifi 正常。(WIN7PRO 启动时没有任何 wifi 问题,打开/关闭睡眠模式,甚至休眠时也没有 wifi 问题)。pci wifi 出现为使用 iwl3945 驱动程序的 Intel Pro wireless 3945ABG。(信息:硬件扫描更快、更可靠,因此建议与网络管理器一起使用。但不幸的是,“iwl3945”驱动程序不能很好地支持硬件扫描,但这是网络管理器期望的默认行为)
尝试了所有网络管理器重启变体(modprobe 等),但无济于事。没有任何东西可以唤醒 pci wifi... 什么都没有!
这是 lsmod | egrep 'module|iwp|iwl' 和 dmesg | grep -i iwl 的结果
(首先清除 dmesg,全新启动,wifi 在第一份报告中工作 - 然后暂停,然后恢复,并且 wifi 断开,如下一份报告所示):
> batgirl@batgirl-E-475M:~/Desktop$ lsmod | egrep 'module|iwp|iwl'
>iwl3945 94208 0
>iwlegacy 114688 1 iwl3945
>mac80211 1228800 2 iwl3945,iwlegacy
>cfg80211 954368 3 iwl3945,iwlegacy,mac80211
>batgirl@batgirl-E-475M:~/Desktop$
>
>batgirl@batgirl-E-475M:~/Desktop$ dmesg | grep -i iwl
>[ 20.703742] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
>[ 20.703748] iwl3945: Copyright(c) 2003-2011 Intel Corporation
>[ 20.703750] iwl3945: hw_scan is disabled
>[ 20.703825] iwl3945 0000:02:00.0: can't disable ASPM; OS doesn't have ASPM control
>[ 20.767591] iwl3945 0000:02:00.0: Tunable channels: 11 802.11bg, 13 802.11a channels
>[ 20.767601] iwl3945 0000:02:00.0: Detected Intel Wireless WiFi Link 3945ABG
>[ 20.767967] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
>[ 25.556001] iwl3945 0000:02:00.0 wlp2s0: renamed from wlan0
>[ 61.110020] iwl3945 0000:02:00.0: loaded firmware version 15.32.2.9
>
>goto suspend, then resume...
>
batgirl@batgirl-E-475M:~/Desktop$ dmesg | grep -i iwl
>[ 20.703742] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
>[ 20.703748] iwl3945: Copyright(c) 2003-2011 Intel Corporation
>[ 20.703750] iwl3945: hw_scan is disabled
>[ 20.703825] iwl3945 0000:02:00.0: can't disable ASPM; OS doesn't have ASPM control
>[ 20.767591] iwl3945 0000:02:00.0: Tunable channels: 11 802.11bg, 13 802.11a channels
>[ 20.767601] iwl3945 0000:02:00.0: Detected Intel Wireless WiFi Link 3945ABG
>[ 20.767967] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
>[ 25.556001] iwl3945 0000:02:00.0 wlp2s0: renamed from wlan0
>[ 61.110020] iwl3945 0000:02:00.0: loaded firmware version 15.32.2.9
>[ 316.050830] iwl3945 0000:02:00.0: can't change power state from D3hot to D0 (config space inaccessible)
>[ 320.045831] WARNING: CPU: 0 PID: 696 at drivers/net/wireless/intel/iwlegacy/common.c:97 _il_grab_nic_access+0xa8/0xc0 [iwlegacy]
>[ 320.045831] Modules linked in: ccm binfmt_misc nls_iso8859_1 snd_hda_codec_hdmi snd_hda_codec_idt snd_hda_codec_generic ledtrig_audio snd_hda_intel snd_intel_dspcfg snd_intel_sdw_acpi snd_hda_codec snd_hda_core snd_hwdep i915 snd_pcm snd_seq_midi snd_seq_midi_event ttm iwl3945 drm_kms_helper pcmcia snd_rawmidi iwlegacy snd_seq mac80211 coretemp snd_seq_device cec cfg80211 rc_core yenta_socket pcmcia_rsrc i2c_algo_bit joydev fb_sys_fops wmi_bmof snd_timer syscopyarea input_leds sysfillrect serio_raw libarc4 at24 pcmcia_core snd sysimgblt tifm_7xx1 tifm_core soundcore mac_hid sch_fq_codel ipmi_devintf ipmi_msghandler msr parport_pc ppdev lp parport drm ip_tables x_tables autofs4 hid_generic usbhid sdhci_pci lpc_ich pata_acpi hid psmouse firewire_ohci firewire_core cqhci ahci i2c_i801 i2c_smbus crc_itu_t libahci sdhci e1000e wmi video
>[ 320.045831] RIP: 0010:_il_grab_nic_access+0xa8/0xc0 [iwlegacy]
>[ 320.045831] il_wr_prph+0x35/0x90 [iwlegacy]
>[ 320.045831] il_apm_init+0x1be/0x230 [iwlegacy]
>[ 320.045831] il3945_apm_init+0x1f/0x150 [iwl3945]
>[ 320.045831] il3945_hw_nic_init+0x33/0x560 [iwl3945]
>[ 320.045831] __il3945_up.part.0+0x70/0x140 [iwl3945]
>[ 320.045831] il3945_mac_start+0x70/0x1c0 [iwl3945]
>[ 320.990337] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 320.990353] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 321.117510] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 321.117519] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 321.244966] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 321.244973] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 321.372096] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 321.372102] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 321.499218] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 321.499223] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 321.500047] iwl3945 0000:02:00.0: Unable to initialize device after 5 attempts.
>[ 322.513903] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 322.513917] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 322.641250] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 322.641261] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 322.768839] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 322.768848] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 322.896142] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 322.896151] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 323.023431] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 323.023441] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 323.023800] iwl3945 0000:02:00.0: Unable to initialize device after 5 attempts.
>[ 323.958924] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 323.958940] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 324.086102] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 324.086112] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 324.213359] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 324.213372] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 324.340481] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 324.340487] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 324.467607] iwl3945 0000:02:00.0: BSM uCode verification failed at addr 0x00003800+0 (of 900), is 0xffffffff, s/b 0xf802020
>[ 324.467613] iwl3945 0000:02:00.0: Unable to set up bootstrap uCode: -5
>[ 324.467995] iwl3945 0000:02:00.0: Unable to initialize device after 5 attempts.
确实崩溃得很厉害,而且无法用任何网络管理器恢复——有人知道是什么原因造成的吗?使用 USB wifi 并挂起/休眠正常 ~ 使用网线也一样,挂起/休眠正常……
PS - 首次启动并挂起后,它通常会(并非总是)恢复,并且 pci wifi 工作正常……但第二次或第三次挂起后,它会死机,并且在恢复后不会再工作,直到重新启动。但是,我可以连续几个星期休眠,它每次都会恢复,并且 pci wifi 完好无损……好吧,直到我尝试挂起,然后它才会再次死机并需要重新启动,这很难说;-\
附录:仅供参考 - 尝试了以下所有方法,除了重新启动外,没有什么可以唤醒 pci wifi 从挂起状态恢复后〜
sudo systemctl stop network-manager sudo systemctl start network-manager sudo systemctl restart network-manager.service sudo modprobe -r iwl3945 sudo modprobe iwl3945 sudo systemctl restart NetworkManager sudo service network-manager restart <--- supposed to restart network to restore crashed wifi status sudo systemctl status network-manager.service <--- good too - maybe? ifconfig <------------------------------------------ info sudo iwconfig wlp2s0 power on <----------- nmcli networking off nmcli networking on nmcli radio wifi off nmcli radio wifi on <---cuts dropdown wifi from off to on nmcli nm wifi on ??? Intel PRO/Wireless 3945ABG sudo iwlist scan lspci -knn | grep Ether -A2 lspci -knn | grep Net -A2 <------- sudo hwinfo --network <------- ! lsmod | grep iwl3945 sudo modprobe -r iwl3945 sudo rmmod iwl3945 && sudo modprobe iwl3945 sudo rfkill unblock wifi; sudo rfkill unblock all sudo modprobe iwl3945 sudo gedit /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf ifconfig wlan0 sudo ifconfig wlan0 down sudo ifconfig wlan0 up <------------- lsmod | egrep 'module|iwp|iwl' sudo rmmod -f iwl3945 sudo modprobe iwl3945 disable_hw_scan=1 <---this may have fixed it? Nope... dmesg | grep -i iwl --------------------------------------------------------------------------- For Ubuntu 18.04 LTS and 20.04 LTS with GNOME desktop purging network-manager package will also purge ubuntu-desktop and
gnome-control-center(GNOME 桌面的基本部分)。所以它不是一个选项。
Here you should disable NetworkManager service (as you have already done): sudo systemctl stop NetworkManager.service sudo systemctl disable NetworkManager.service and three more services: sudo systemctl stop NetworkManager-wait-online.service sudo systemctl disable NetworkManager-wait-online.service sudo systemctl stop NetworkManager-dispatcher.service sudo systemctl disable NetworkManager-dispatcher.service sudo systemctl stop network-manager.service sudo systemctl disable network-manager.service and then reboot.
答案1
修复
BSM uCode 验证失败
是禁用省电。
搜索如果是“3”,则将其改为“2”。要编辑的文件可能/etc/NetworkManager/conf.d
名为。wifi.powersave
default-wifi-powersave-on.conf
可能解释了这种行为:
首次启动并挂起后,它通常会(并非总是)恢复,并且 pci wifi 工作正常……但第二次或第三次挂起后,它就会死机
如果省电功能未启动,则恢复时它将起作用。