新内核固件缺失修复案例:WiFi + 声卡 电脑信息项目 详情型号 Lenovo 小新 Pro 16c IAH10 (XiaoXinPro-16c-IAH10)系统 Ubuntu 22.04.5 LTS (Jammy)内核 6.12.95-061295-generic自行升级的主线内核网卡 Intel Wi-Fi 6 AX201 160MHz (8086:7740)声卡 Intel Arrow Lake Audio (8086:7728)Conexant SN6140 解码器通用根因两个问题本质相同新内核的驱动需要新版固件但 Ubuntu 22.04 的固件包太旧。┌────────────────────────────────────────────────────┐│ Ubuntu 22.04 LTS (2022.04 发布) ││ ├── linux-firmware → 2022.03 版本 ││ ├── firmware-sof-signed → 2.0 (2022 年) ││ └── 内核 6.12 (2024.12) ││ ├── iwlwifi 需要 API v90 固件 → 缺失 ││ └── SOF 需要 Arrow Lake 固件 → 缺失 │└────────────────────────────────────────────────────┘一、WiFi 修复Intel AX201 固件缺失 (bz-b0-hr-b0)故障现象系统只有有线网卡 (enx0a10d7dd5f41)完全没有 WiFi 接口nmcli device status 看不到任何 wlan0 / wlp* 设备ip link show 无无线网卡rfkill list 显示 ideapad_wlan 未被软/硬屏蔽排查过程确认硬件存在$ lspci -nn -s 00:14.300:14.3 Network controller [0280]: Intel Corporation Device [8086:7740]设备存在PCI ID 为 8086:7740。检查驱动状态$ lsmod | grep iwlwifiiwlwifi 647168 0 # ← 0 users驱动没有绑定到设备cfg80211 1413120 1 iwlwifi$ nmcli device statusDEVICE TYPE STATE CONNECTIONenx0a10d7dd5f41 ethernet 已连接 有线连接 1lo loopback 未托管 –没有任何 WiFi 设备iwlwifi 模块已加载但未被任何设备使用 — 驱动识别了设备但固件加载失败后退出了。查看内核日志关键$ cat /var/log/syslog | grep iwl输出关键信息iwlwifi 0000:00:14.3: Detected Intel® Wi-Fi 6 AX201 160MHziwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-bz-b0-hr-b0-93.ucode failed with error -2iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-bz-b0-hr-b0-92.ucode failed with error -2iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-bz-b0-hr-b0-91.ucode failed with error -2iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-bz-b0-hr-b0-90.ucode failed with error -2iwlwifi 0000:00:14.3: no suitable firmware found!iwlwifi 0000:00:14.3: minimum version required: iwlwifi-bz-b0-hr-b0-90iwlwifi 0000:00:14.3: maximum version supported: iwlwifi-bz-b0-hr-b0-93iwlwifi 0000:00:14.3: check git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git驱动需要 bz-b0-hr-b0 固件 API 版本 v90-v93内核按 93→92→91→90 顺序尝试加载全部失败error -2 文件不存在4. 确认本地固件缺失$ ls /lib/firmware/iwlwifi-bz*iwlwifi-bz-b0-fm-c0-92.ucode iwlwifi-bz-b0-fm-c0.pnvmiwlwifi-bz-b0-fm-c0-94.ucode iwlwifi-bz-b0-gf-a0-92.ucodeiwlwifi-bz-b0-fm-c0-96.ucode iwlwifi-bz-b0-gf-a0-94.ucodeiwlwifi-bz-b0-gf-a0-96.ucodeiwlwifi-bz-b0-gf-a0.pnvm系统只有 fm-c0FM Radio和 gf-a0Gale Force变体固件缺少 hr-b0Harrison Peak变体。$ apt-cache policy linux-firmware已安装20220329.git681281e4-0ubuntu3.42 # 2022 年 3 月版本太旧5. 尝试过的失败方案方案 结果 原因git clone linux-firmware.git ❌ 超时 kernel.org 在国内极慢100s 仅下载 280KB总量 1GBcurl kernel.org /plain/ 端点 ❌ 404 git.kernel.org 的 cgit 不给二进制固件文件返回 200curl GitHub 镜像 ❌ 无法访问 github.com 无响应Symlink gf-a0→hr-b0 ❌ 超时 Failed to start RT ucode: -110 (ETIMEDOUT)RF 模块硬件不兼容6. 成功方案从 Debian testing 下载 firmware-iwlwifi 包仅 23MBTsighua 镜像速度快下载curl -L “https://mirrors.tuna.tsinghua.edu.cn/debian/pool/non-free-firmware/f/firmware-nonfree/firmware-iwlwifi_20260519-1_all.deb”-o /tmp/firmware-iwlwifi.deb提取dpkg-deb -x /tmp/firmware-iwlwifi.deb /tmp/fw-extract/安装正确变体 版本的固件sudo cp /tmp/fw-extract/usr/lib/firmware/intel/iwlwifi/iwlwifi-bz-b0-hr-b0-93.ucode /lib/firmware/sudo cp /tmp/fw-extract/usr/lib/firmware/intel/iwlwifi/iwlwifi-bz-b0-hr-b0.pnvm /lib/firmware/重载驱动sudo modprobe -r iwlwifisudo modprobe iwlwifi修复验证$ dmesg | grep iwl | tail -10iwlwifi: loaded firmware version 93.26a2cb89.0 bz-b0-hr-b0-93.ucode op_mode iwlmvmiwlwifi: Detected RF HR B3, rfid0x10a100iwlwifi: base HW address: f8:cf:52:bc:41:edwlp0s20f3: renamed from wlan0iwlwifi: Registered PHC clock: iwlwifi-PTP, with index: 0$ nmcli device statusDEVICE TYPE STATE CONNECTIONenx0a10d7dd5f41 ethernet 已连接 有线连接 1wlp0s20f3 wifi 已断开 – # ← WiFi 接口出现p2p-dev-wlp0s20f3 wifi-p2p 已断开 –lo loopback 未托管 –WiFi 根因分析┌─────────────────────────────────────────────────────┐│ Intel AX201 网卡有 3 种 RF 模块变体 ││ ││ FM (FM Radio) → iwlwifi-bz-b0-fm-c0-.ucode ││ GF (Gale Force) → iwlwifi-bz-b0-gf-a0-.ucode ││ HR (Harrison Peak) → iwlwifi-bz-b0-hr-b0-.ucode ← 这台机器 ││ ││ 不同 RF 变体固件互不兼容硬件射频前端不同 │└─────────────────────────────────────────────────────┘层级 问题直接原因 硬盘上没有 iwlwifi-bz-b0-hr-b0-.ucode 固件文件为什么其它 AX201 机器没问题 大多数 AX201 使用 FM 或 GF 射频模块Ubuntu 22.04 的 linux-firmware 包含这些变体但没包含 HR 变体根本原因 自行升级的 6.12 主线内核需要新版固件API v90Ubuntu 22.04 官方 linux-firmware 包版本为 2022 年 3 月太旧且缺 HR 变体WiFi 固件命名规则解读以 iwlwifi-bz-b0-hr-b0-93.ucode 为例字段 含义iwlwifi Intel WiFi 固件前缀bz 平台代号Bz (Bazaar)对应 AX201/AX211 系列b0 硅晶片步进版本 B0hr RF 射频模块类型HR Harrison Peakb0 RF 模块步进版本 B093 固件 API 版本号

本月热点