问题症状
全新安装后 WiFi 无法使用(实时图像也无法使用)。
我需要帮助了解如何加载正确的驱动程序/固件。
据我所知,该设备已被识别,iwlwifi
但找不到任何固件。
操作系统信息
我现在正在使用 Debian trixie(测试版),因为我希望通过这种方式获得足够新的软件包。我也尝试过稳定版(bookworm),但甚至无法使用该实时映像启动到 GUI,所以我又切换回了 trixie。
$ uname -a
Linux fake-21kc0053mz 6.9.7-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.9.7-1 (2024-06-27) x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux trixie/sid
Release: n/a
Codename: trixie
硬件信息
$ lspci -nn |grep WiFi
00:14.3 Network controller [0280]: Intel Corporation Meteor Lake PCH CNVi WiFi [8086:7e40] (rev 20)
$ sudo dmesg | egrep 'Wi-Fi|Gen'
[ 6.926689] thinkpad_acpi: Lenovo ThinkPad X1 Carbon Gen 12, model 21KC0053MZ
[ 7.449218] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 6E AX211 160MHz
$ sudo rfkill list
0: tpacpi_bluetooth_sw: Bluetooth
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
$ sudo lspci -v | grep WiFi -A12
00:14.3 Network controller: Intel Corporation Meteor Lake PCH CNVi WiFi (rev 20)
Subsystem: Intel Corporation Device 0090
Flags: fast devsel, IRQ 18, IOMMU group 12
Memory at 405a704000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [c8] Power Management version 3
Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [40] Express Root Complex Integrated Endpoint, IntMsgNum 0
Capabilities: [80] MSI-X: Enable- Count=16 Masked-
Capabilities: [100] Latency Tolerance Reporting
Capabilities: [164] Vendor Specific Information: ID=0010 Rev=0 Len=014 <?>
Kernel modules: iwlwifi
00:15.0 Serial bus controller: Intel Corporation Meteor Lake-P Serial IO I2C Controller #0 (rev 20)
无无线接口
$ sudo iwconfig
lo no wireless extensions.
enx00e04c680094 no wireless extensions.
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: enx00e04c680094: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:e0:4c:68:00:94 brd ff:ff:ff:ff:ff:ff
inet 192.168.158.21/24 brd 192.168.158.255 scope global dynamic noprefixroute enx00e04c680094
valid_lft 862309sec preferred_lft 862309sec
inet6 2001:1686:aa02:1801:a257:9b2:c8f6:ddf/128 scope global dynamic noprefixroute
valid_lft 7166sec preferred_lft 3566sec
inet6 2001:1686:aa02:1801:7ab5:2654:2344:a04/64 scope global dynamic noprefixroute
valid_lft 7042sec preferred_lft 3442sec
inet6 fe80::a257:9b2:c8f6:ddf/64 scope link noprefixroute
valid_lft forever preferred_lft forever
我尝试过
通过快速浏览联想商店,我发现联想Carbon X1的第 11 代和第 12 代(我的笔记本电脑型号)具有相同的 WiFi 卡,因此安装 DebianOn/Thinkpad/X1 Carbon Gen 11/trixie似乎可能会有所帮助
- 就像那里的代码片段一样(但在已经存在的安装中而不是在安装过程中),我将固件从复制
git.kernel.org
到/lib/firmware
- 就像那里的代码片段一样(但在已经存在的安装中而不是在安装过程中),我将固件从复制
$ mkdir firmware && cd firmware # Load the firmware files for the WLAN modul. $ wget -r -nd -e robots=no -A 'iwlwifi-so-a0-gf-a0*.*' --accept-regex '/plain/' https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/ # Load the firmware files for the i915 modul. $ mkdir i915 && cd i915 § wget -r -nd -e robots=no --accept-regex '/plain/' https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
- 之后
sudo modprobe -r iwlwifi && sudo modprobe iwlwifi
,的输出sudo dmesg | grep iwl
显示新添加的固件文件已被尝试:
$ sudo dmesg | grep iwl
[ 6.903352] Loading modules backported from iwlwifi
[ 6.903352] iwlwifi-stack-public:master:12220:5e893e52
[ 7.447491] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[ 7.449214] iwlwifi 0000:00:14.3: Detected crf-id 0x400410, cnv-id 0x1080800 wfpm id 0x80000020
[ 7.449216] iwlwifi 0000:00:14.3: PCI dev 7e40/0090, rev=0x441, rfid=0x2010d000
[ 7.449218] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 6E AX211 160MHz
[ 7.449266] iwlwifi 0000:00:14.3: firmware: failed to load iwl-dbg-cfg.ini (-2)
[ 7.449272] iwlwifi 0000:00:14.3: firmware: failed to load iwl-dbg-cfg.ini (-2)
[ 7.449512] iwlwifi 0000:00:14.3: firmware: failed to load iwlwifi-ma-b0-gf-a0-89.ucode (-2)
[ 7.449516] iwlwifi 0000:00:14.3: firmware: failed to load iwlwifi-ma-b0-gf-a0-89.ucode (-2)
[ 7.449516] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-ma-b0-gf-a0-89.ucode failed with error -2
[ 7.449527] iwlwifi 0000:00:14.3: firmware: failed to load iwlwifi-ma-b0-gf-a0-88.ucode (-2)
...
[ 7.449786] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-ma-b0-gf-a0-59.ucode failed with error -2
[ 7.449787] iwlwifi 0000:00:14.3: no suitable firmware found!
[ 7.449789] iwlwifi 0000:00:14.3: minimum version required: iwlwifi-ma-b0-gf-a0-59
[ 7.449790] iwlwifi 0000:00:14.3: maximum version supported: iwlwifi-ma-b0-gf-a0-89
[ 7.449790] iwlwifi 0000:00:14.3: check git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
联想有一个关于如何在不同型号的笔记本电脑上安装 debian(旧版本)的指南。他们提到的问题与我的问题(触摸板和 wifi)相符,所以我尝试按照该指南的第 5 部分操作 选项 1:lenovo thinkpad p53 p73 debian10 安装
这也没有帮助。运行sudo update-initramfs -u
并重新启动后,wifi 接口仍然不存在。Debian 不稳定版没有较新版本的
firmware-iwlwifi
我刚才注意到dmesg 输出的名称与我下载的名称不同!它想要的是
iwlwifi-ma-b0-gf-a0-89
,而不是'iwlwifi-so-a0-gf-a0*.*'
。当我将与模式匹配的文件iwlwifi-ma-b0-gf-a0*.*
从https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/复制到/lib/firmware
并运行时sudo modprobe -r iwlwifi && sudo modprobe iwlwifi
,我现在看到不同的dmesg | grep iwl
输出。我将在重启后更新这个问题。