AX201 WLAN 被 iwlwifi 检测为 AX101

AX201 WLAN 被 iwlwifi 检测为 AX101

我已经尝试过 bot ubuntu 22.04 和 23.04,都存在同样的问题。lspci 将我的 wlan 设备列为 AX201,但 iwlwifi 想要加载 AX101 卡的固件。

lspci 输出:

00:00.0 Host bridge: Intel Corporation Device 4e12
00:02.0 VGA compatible controller: Intel Corporation JasperLake [UHD Graphics] (rev 01)
00:04.0 Signal processing controller: Intel Corporation Dynamic Tuning service
00:14.0 USB controller: Intel Corporation Device 4ded (rev 01)
00:14.2 RAM memory: Intel Corporation Device 4def (rev 01)
00:14.3 Network controller: Intel Corporation Wi-Fi 6 AX201 160MHz (rev 01)
00:15.0 Serial bus controller: Intel Corporation Serial IO I2C Host Controller (rev 01)
00:15.1 Serial bus controller: Intel Corporation Serial IO I2C Host Controller (rev 01)
00:15.2 Serial bus controller: Intel Corporation Device 4dea (rev 01)
00:15.3 Serial bus controller: Intel Corporation Device 4deb (rev 01)
00:16.0 Communication controller: Intel Corporation Management Engine Interface (rev 01)
00:17.0 SATA controller: Intel Corporation Device 4dd3 (rev 01)
00:19.0 Serial bus controller: Intel Corporation Device 4dc5 (rev 01)
00:1e.0 Communication controller: Intel Corporation Device 4da8 (rev 01)
00:1e.3 Serial bus controller: Intel Corporation Device 4dab (rev 01)
00:1f.0 ISA bridge: Intel Corporation Device 4d87 (rev 01)
00:1f.3 Multimedia audio controller: Intel Corporation Jasper Lake HD Audio (rev 01)
00:1f.4 SMBus: Intel Corporation Jasper Lake SMBus (rev 01)
00:1f.5 Serial bus controller: Intel Corporation Jasper Lake SPI Controller (rev 01)

dmesg 输出:

[    7.262257] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 6 AX101, REV=0x351
[    7.262359] thermal thermal_zone4: failed to read out thermal zone (-61)
[    7.344988] loop8: detected capacity change from 0 to 8
[    8.395377] iwlwifi 0000:00:14.3: WRT: Collecting data: ini trigger 13 fired (delay=0ms).
[    8.396512] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[    8.396517] iwlwifi 0000:00:14.3: Transport status: 0x0000004A, valid: 6
[    8.396520] iwlwifi 0000:00:14.3: Loaded firmware version: 72.daa05125.0 QuZ-a0-hr-b0-72.ucode
[    8.396523] iwlwifi 0000:00:14.3: 0x00000084 | NMI_INTERRUPT_UNKNOWN       
[    8.396525] iwlwifi 0000:00:14.3: 0x000022F0 | trm_hw_status0
[    8.396527] iwlwifi 0000:00:14.3: 0x00000000 | trm_hw_status1
[    8.396529] iwlwifi 0000:00:14.3: 0x004CC13E | branchlink2
[    8.396531] iwlwifi 0000:00:14.3: 0x004C25DE | interruptlink1
[    8.396532] iwlwifi 0000:00:14.3: 0x004C25DE | interruptlink2
[    8.396534] iwlwifi 0000:00:14.3: 0x004CADF8 | data1
[    8.396536] iwlwifi 0000:00:14.3: 0x01000000 | data2
[    8.396537] iwlwifi 0000:00:14.3: 0x00000000 | data3
[    8.396539] iwlwifi 0000:00:14.3: 0x00000000 | beacon time
[    8.396541] iwlwifi 0000:00:14.3: 0x0010B6B3 | tsf low
[    8.396542] iwlwifi 0000:00:14.3: 0x00000000 | tsf hi
[    8.396544] iwlwifi 0000:00:14.3: 0x00000000 | time gp1
[    8.396545] iwlwifi 0000:00:14.3: 0x00111249 | time gp2
[    8.396547] iwlwifi 0000:00:14.3: 0x00000001 | uCode revision type
[    8.396548] iwlwifi 0000:00:14.3: 0x00000048 | uCode version major
[    8.396550] iwlwifi 0000:00:14.3: 0xDAA05125 | uCode version minor
[    8.396552] iwlwifi 0000:00:14.3: 0x00000351 | hw version
[    8.396553] iwlwifi 0000:00:14.3: 0x18C89001 | board version
[    8.396555] iwlwifi 0000:00:14.3: 0x8002FC12 | hcmd
[    8.396557] iwlwifi 0000:00:14.3: 0x00020000 | isr0
[    8.396558] iwlwifi 0000:00:14.3: 0x00000000 | isr1
[    8.396560] iwlwifi 0000:00:14.3: 0x08F00002 | isr2
[    8.396561] iwlwifi 0000:00:14.3: 0x00C0000C | isr3
[    8.396563] iwlwifi 0000:00:14.3: 0x00000000 | isr4
[    8.396564] iwlwifi 0000:00:14.3: 0x00000000 | last cmd Id
[    8.396566] iwlwifi 0000:00:14.3: 0x004CADF8 | wait_event
[    8.396568] iwlwifi 0000:00:14.3: 0x00000000 | l2p_control
[    8.396569] iwlwifi 0000:00:14.3: 0x00000000 | l2p_duration
[    8.396571] iwlwifi 0000:00:14.3: 0x00000000 | l2p_mhvalid
[    8.396572] iwlwifi 0000:00:14.3: 0x00000000 | l2p_addr_match
[    8.396574] iwlwifi 0000:00:14.3: 0x0000000B | lmpm_pmg_sel
[    8.396575] iwlwifi 0000:00:14.3: 0x00000000 | timestamp
[    8.396577] iwlwifi 0000:00:14.3: 0x00000020 | flow_handler
[    8.396631] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[    8.396633] iwlwifi 0000:00:14.3: Transport status: 0x0000004A, valid: 7
[    8.396635] iwlwifi 0000:00:14.3: 0x20000066 | NMI_INTERRUPT_HOST
[    8.396637] iwlwifi 0000:00:14.3: 0x00000000 | umac branchlink1
[    8.396638] iwlwifi 0000:00:14.3: 0x80455E9C | umac branchlink2
[    8.396640] iwlwifi 0000:00:14.3: 0x8047257E | umac interruptlink1
[    8.396642] iwlwifi 0000:00:14.3: 0xC0081524 | umac interruptlink2
[    8.396643] iwlwifi 0000:00:14.3: 0x01000000 | umac data1
[    8.396645] iwlwifi 0000:00:14.3: 0xC0081524 | umac data2
[    8.396646] iwlwifi 0000:00:14.3: 0x00000000 | umac data3
[    8.396648] iwlwifi 0000:00:14.3: 0x00000048 | umac major
[    8.396649] iwlwifi 0000:00:14.3: 0xDAA05125 | umac minor
[    8.396651] iwlwifi 0000:00:14.3: 0x00111247 | frame pointer
[    8.396653] iwlwifi 0000:00:14.3: 0xC0887EFC | stack pointer
[    8.396654] iwlwifi 0000:00:14.3: 0x00010C00 | last host cmd
[    8.396656] iwlwifi 0000:00:14.3: 0x00000004 | isr status reg
[    8.396691] iwlwifi 0000:00:14.3: IML/ROM dump:
[    8.396693] iwlwifi 0000:00:14.3: 0x00000003 | IML/ROM error/state
[    8.396729] iwlwifi 0000:00:14.3: 0x000056EF | IML/ROM data1
[    8.396738] iwlwifi 0000:00:14.3: 0x00000080 | IML/ROM WFPM_AUTH_KEY_0
[    8.396744] iwlwifi 0000:00:14.3: Fseq Registers:
[    8.396764] iwlwifi 0000:00:14.3: 0x60000000 | FSEQ_ERROR_CODE
[    8.396786] iwlwifi 0000:00:14.3: 0x80290033 | FSEQ_TOP_INIT_VERSION
[    8.396807] iwlwifi 0000:00:14.3: 0x00090006 | FSEQ_CNVIO_INIT_VERSION
[    8.396829] iwlwifi 0000:00:14.3: 0x0000A482 | FSEQ_OTP_VERSION
[    8.396851] iwlwifi 0000:00:14.3: 0x00000003 | FSEQ_TOP_CONTENT_VERSION
[    8.396872] iwlwifi 0000:00:14.3: 0x4552414E | FSEQ_ALIVE_TOKEN
[    8.396894] iwlwifi 0000:00:14.3: 0x20000302 | FSEQ_CNVI_ID
[    8.396916] iwlwifi 0000:00:14.3: 0x00000501 | FSEQ_CNVR_ID
[    8.396937] iwlwifi 0000:00:14.3: 0x20000302 | CNVI_AUX_MISC_CHIP
[    8.396961] iwlwifi 0000:00:14.3: 0x00000501 | CNVR_AUX_MISC_CHIP
[    8.396982] iwlwifi 0000:00:14.3: 0x05B0905B | CNVR_SCU_SD_REGS_SD_REG_DIG_DCDC_VTRIM
[    8.397004] iwlwifi 0000:00:14.3: 0x0000025B | CNVR_SCU_SD_REGS_SD_REG_ACTIVE_VDIG_MIRROR
[    8.753035] iwlwifi 0000:00:14.3: Failed to run INIT ucode: -110
[    8.765571] iwlwifi 0000:00:14.3: retry init count 2

我该怎么做才能解决这个问题?我能以某种方式说服 iwlwifi 加载 AX201 固件吗?提前致谢。

答案1

成功了。我重新安装了 ubuntu 22.04 并下载了内核源代码。然后我对 drivers/net/wireless/intel/iwlwifi/pcie/drv.c 进行了更改

首先,我从第 989 行开始注释掉以下几行,这些行将该卡检测为 AX101,尽管这可能不是必要的:

    /* QuZ */
    _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
              IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
              IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
              IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_NO_CDB, IWL_CFG_ANY,
              iwl_quz_a0_hr1_b0, iwl_ax101_name),

然后我为我的卡添加了一个条目,它的 pci id 为 0x4df0 0x0244。从行号 255 开始,有 AX201 卡的条目。我在块的底部添加了“Qu with Hr”。块的开头如下:

/* AX200 */
    IWL_DEV_INFO(0x2723, IWL_CFG_ANY, iwl_ax200_cfg_cc, iwl_ax200_name),
    IWL_DEV_INFO(0x2723, 0x1653, iwl_ax200_cfg_cc, iwl_ax200_killer_1650w_name),
    IWL_DEV_INFO(0x2723, 0x1654, iwl_ax200_cfg_cc, iwl_ax200_killer_1650x_name),

    /* Qu with Hr */
    IWL_DEV_INFO(0x43F0, 0x0070, iwl_ax201_cfg_qu_hr, NULL),
    IWL_DEV_INFO(0x43F0, 0x0074, iwl_ax201_cfg_qu_hr, NULL),
    IWL_DEV_INFO(0x43F0, 0x0078, iwl_ax201_cfg_qu_hr, NULL),
    IWL_DEV_INFO(0x43F0, 0x007C, iwl_ax201_cfg_qu_hr, NULL),

我添加的行如下:

    IWL_DEV_INFO(0x4DF0, 0x0244, iwl_ax201_cfg_qu_hr, NULL),

这是我的卡ID。

剩下的就是构建内核

make bindeb-pkg

并使用

dpkg -i 

答案2

感谢 Roku 回答了他们自己的问题,我能够让它在 Ubuntu 20.04.6 LTS、Linux 内核 v5.15.0-72-generic 上运行。

注意:必须删除 _IWL_DEV_INFO 条目,否则设备将被检测为 AX101 并失败。如 Roku 的回答所示,要删除的条目是包含 IWL_CFG_MAC_TYPE_QUZ 和 IWL_CFG_RF_TYPE_HR1 的条目。

我的 BeeLink 上现在有 WiFi 了,耶!

蓝牙无法正常工作,dmesg 中显示缺少固件 /lib/firmware/intel/ibt-19-0-3.sfi。我去了https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/intel并获得了 sfi 和 ddc 文件。然后我使用“sudo”将它们复制到 /lib/firmware/intel 目录中。

重启后,蓝牙可以正常工作。但我的 Bose 耳机断线了,所以可能需要做更多工作。

相关内容