最近,我安装的 Debian 11 的 wifi(Intel AX200)突然停止工作了。它说它在 Gnome 中已连接,但甚至无法连接到路由器。
当我检查journalctl时,我发现了一系列如下错误:
kernel: iwlwifi 0000:04:00.0: Queue 1 is stuck 0 19
kernel: iwlwifi 0000:04:00.0: Microcode SW error detected. Restarting 0x0.
kernel: iwlwifi 0000:04:00.0: Start IWL Error Log Dump:
kernel: iwlwifi 0000:04:00.0: Status: 0x00000040, count: 6
kernel: iwlwifi 0000:04:00.0: Loaded firmware version: 63.c04f3485.0 cc-a0-63.ucode
kernel: iwlwifi 0000:04:00.0: 0x00000084 | NMI_INTERRUPT_UNKNOWN
kernel: iwlwifi 0000:04:00.0: 0x00802AF0 | trm_hw_status0
kernel: iwlwifi 0000:04:00.0: 0x00000000 | trm_hw_status1
kernel: iwlwifi 0000:04:00.0: 0x004FAA7E | branchlink2
kernel: iwlwifi 0000:04:00.0: 0x000083A6 | interruptlink1
kernel: iwlwifi 0000:04:00.0: 0x000083A6 | interruptlink2
kernel: iwlwifi 0000:04:00.0: 0x0000773A | data1
kernel: iwlwifi 0000:04:00.0: 0x01000000 | data2
kernel: iwlwifi 0000:04:00.0: 0x00000000 | data3
kernel: iwlwifi 0000:04:00.0: 0x1901268E | beacon time
kernel: iwlwifi 0000:04:00.0: 0x31E8A949 | tsf low
kernel: iwlwifi 0000:04:00.0: 0x00000175 | tsf hi
kernel: iwlwifi 0000:04:00.0: 0x00000000 | time gp1
kernel: iwlwifi 0000:04:00.0: 0x009F35FC | time gp2
kernel: iwlwifi 0000:04:00.0: 0x00000001 | uCode revision type
kernel: iwlwifi 0000:04:00.0: 0x0000003F | uCode version major
kernel: iwlwifi 0000:04:00.0: 0xC04F3485 | uCode version minor
kernel: iwlwifi 0000:04:00.0: 0x00000340 | hw version
kernel: iwlwifi 0000:04:00.0: 0x18C89000 | board version
kernel: iwlwifi 0000:04:00.0: 0x0200001C | hcmd
kernel: iwlwifi 0000:04:00.0: 0x80020000 | isr0
kernel: iwlwifi 0000:04:00.0: 0x00000000 | isr1
kernel: iwlwifi 0000:04:00.0: 0x08F00002 | isr2
kernel: iwlwifi 0000:04:00.0: 0x00C3068C | isr3
kernel: iwlwifi 0000:04:00.0: 0x00000000 | isr4
kernel: iwlwifi 0000:04:00.0: 0x0400001C | last cmd Id
kernel: iwlwifi 0000:04:00.0: 0x0000773A | wait_event
kernel: iwlwifi 0000:04:00.0: 0x00000080 | l2p_control
kernel: iwlwifi 0000:04:00.0: 0x00000020 | l2p_duration
kernel: iwlwifi 0000:04:00.0: 0x0000003F | l2p_mhvalid
kernel: iwlwifi 0000:04:00.0: 0x00000080 | l2p_addr_match
kernel: iwlwifi 0000:04:00.0: 0x00000009 | lmpm_pmg_sel
kernel: iwlwifi 0000:04:00.0: 0x00000000 | timestamp
kernel: iwlwifi 0000:04:00.0: 0x000040A8 | flow_handler
kernel: iwlwifi 0000:04:00.0: Start IWL Error Log Dump:
kernel: iwlwifi 0000:04:00.0: Status: 0x00000040, count: 7
kernel: iwlwifi 0000:04:00.0: 0x20000066 | NMI_INTERRUPT_HOST
kernel: iwlwifi 0000:04:00.0: 0x00000000 | umac branchlink1
kernel: iwlwifi 0000:04:00.0: 0x8045541A | umac branchlink2
kernel: iwlwifi 0000:04:00.0: 0x8047367E | umac interruptlink1
kernel: iwlwifi 0000:04:00.0: 0xC008095A | umac interruptlink2
kernel: iwlwifi 0000:04:00.0: 0x01000000 | umac data1
kernel: iwlwifi 0000:04:00.0: 0xC008095A | umac data2
kernel: iwlwifi 0000:04:00.0: 0x00000000 | umac data3
kernel: iwlwifi 0000:04:00.0: 0x0000003F | umac major
kernel: iwlwifi 0000:04:00.0: 0xC04F3485 | umac minor
kernel: iwlwifi 0000:04:00.0: 0x009F35FA | frame pointer
kernel: iwlwifi 0000:04:00.0: 0xC0887F18 | stack pointer
kernel: iwlwifi 0000:04:00.0: 0x0039010C | last host cmd
kernel: iwlwifi 0000:04:00.0: 0x00000004 | isr status reg
kernel: iwlwifi 0000:04:00.0: IML/ROM dump:
kernel: iwlwifi 0000:04:00.0: 0x00000003 | IML/ROM error/state
kernel: iwlwifi 0000:04:00.0: 0x000059AB | IML/ROM data1
kernel: iwlwifi 0000:04:00.0: 0x00000080 | IML/ROM WFPM_AUTH_KEY_0
kernel: iwlwifi 0000:04:00.0: Fseq Registers:
kernel: iwlwifi 0000:04:00.0: 0x60000000 | FSEQ_ERROR_CODE
kernel: iwlwifi 0000:04:00.0: 0x80290021 | FSEQ_TOP_INIT_VERSION
kernel: iwlwifi 0000:04:00.0: 0x00050008 | FSEQ_CNVIO_INIT_VERSION
kernel: iwlwifi 0000:04:00.0: 0x0000A503 | FSEQ_OTP_VERSION
kernel: iwlwifi 0000:04:00.0: 0x80000003 | FSEQ_TOP_CONTENT_VERSION
kernel: iwlwifi 0000:04:00.0: 0x4552414E | FSEQ_ALIVE_TOKEN
kernel: iwlwifi 0000:04:00.0: 0x00100530 | FSEQ_CNVI_ID
kernel: iwlwifi 0000:04:00.0: 0x00000532 | FSEQ_CNVR_ID
kernel: iwlwifi 0000:04:00.0: 0x00100530 | CNVI_AUX_MISC_CHIP
kernel: iwlwifi 0000:04:00.0: 0x00000532 | CNVR_AUX_MISC_CHIP
kernel: iwlwifi 0000:04:00.0: 0x05B0905B | CNVR_SCU_SD_REGS_SD_REG_DIG_DCDC_VTRIM
kernel: iwlwifi 0000:04:00.0: 0x0000025B | CNVR_SCU_SD_REGS_SD_REG_ACTIVE_VDIG_MIRROR
kernel: iwlwifi 0000:04:00.0: WRT: Collecting data: ini trigger 4 fired (delay=0ms).
kernel: ieee80211 phy0: Hardware restart was requested
systemd-resolved[953]: Using degraded feature set UDP instead of UDP+EDNS0 for DNS server <dns server IP is censored>.
systemd-resolved[953]: Using degraded feature set UDP instead of UDP+EDNS0 for DNS server <dns server IP is censored>.
当我将此错误的各个部分放入搜索引擎时,我发现很多人都有类似但不完全相同的错误:
- https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1848921/comments/38
- https://bugs.launchpad.net/hwe-next/+bug/1933415
- https://bugs.launchpad.net/linux-firmware/+bug/1932548
- https://bugzilla.kernel.org/show_bug.cgi?id=205719
- https://community.intel.com/t5/Wireless/ubuntu-20-04-Intel-ax200-Failed-to-run-INIT-ucode-110/mp/1266491
- https://bbs.archlinux.org/viewtopic.php?id=257900
- (还有很多)
大多数针对类似但不相同的错误的建议修复(例如,对于大多数其他人来说,这是间歇性的,但对我来说,我的 wifi 芯片完全无法工作)绝对不会改变我的 AX200 的行为方式,但有些产生一些改进。添加options iwlwifi 11n_disable=1
到 /etc/modprobe.d/iwlwifi.conf 可以使其连接可靠,但我坚持 10-20mbps 的速度,这是不可接受的。添加options iwlmvm power_scheme=1
并options iwlwifi swcrypto=0 bt_coex_active=0 power_save=0
允许通过 2.4GHz wifi 而不是 5GHz wifi 进行一些连接一次几分钟,并将速度限制为 100mbps(我通常可以通过 wifi 获得 200-350mbps,这在我的手机上仍然可以正常工作),直到它再次断开连接并需要大量摆弄(例如随机重新启动、modprobing 和其他此类操作)才能重新连接。
作为调试此问题的一部分,我使用 Ubuntu live USB 启动了我的计算机,一切运行良好。因此,我认为对我来说这个问题仅限于 Debian 11,而不是 Ubuntu。但是,在安装和相关更新之后,Ubuntu 现在遇到了完全相同的问题。因此,我怀疑这是对 Debian 11 和 Ubuntu 21.10 中某些相关软件包的相对较新的更新,但我无法说出是哪一个。
我有两个问题:
- 首先,我该如何解决这个问题?
- 其次,到底是什么损坏了以及如何损坏的?
1:出于隐私(时区)考虑,journalctl 删除了时间戳,并且来自我的新 Ubuntu 安装而不是 Debian 11,因为 Debian 11 安装在撰写本文时已被删除。