Intel AX211: old iwlwifi driver loading

Hi,

Fedora 36 always loads iwlwifi-so-a0-gf-a0-71 although iwlwifi-so-a0-gf-a0-73 is available in /lib/firmware/.

[   14.493880] Intel(R) Wireless WiFi driver for Linux
[   14.493928] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[   14.495514] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-so-a0-gf-a0-72.ucode failed with error -2
[   14.519538] EXT4-fs (nvme0n1p2): mounted filesystem with ordered data mode. Quota mode: none.
[   14.525055] iwlwifi 0000:00:14.3: api flags index 2 larger than supported by driver
[   14.525066] iwlwifi 0000:00:14.3: TLV_FW_FSEQ_VERSION: FSEQ Version: 0.0.2.36
[   14.525267] iwlwifi 0000:00:14.3: loaded firmware version 71.058653f6.0 so-a0-gf-a0-71.ucode op_mode iwlmvm
[   14.615106] snd_hda_intel 0000:00:1f.3: enabling device (0000 -> 0002)
[   14.615288] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[   14.668410] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 6E AX211 160MHz, REV=0x430

Kernel: 5.19.14-200.fc36.x86_64

Why is it and is it possible to load the newer firmware?

1 Like

Hi,

In my case wifi is not detected/not working

Recent purchase Thinkpad T16 Intel 12th Wifi AX211, with fresh F36 installation and dnf upgraded to last updates (kernel 5.19.16-200.fc36.x86_64)
lspci data


lspci -k | grep -i network -A2
00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
	Subsystem: Intel Corporation Device 0090
	Kernel modules: iwlwifi

Kernel version

uname -rms
Linux 5.19.16-200.fc36.x86_64 x86_64

dmesg output:

dmesg | grep -i wifi
[   31.313505] Intel(R) Wireless WiFi driver for Linux
[   31.313665] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[   31.462477] iwlwifi 0000:00:14.3: CSR_RESET = 0x11
[   31.462480] iwlwifi 0000:00:14.3: Host monitor block 0x0 vector 0x0
[   31.462528] iwlwifi 0000:00:14.3:     value [iter 0]: 0xbf1d0030
[   31.462571] iwlwifi 0000:00:14.3:     value [iter 1]: 0xbf1d0030
[   31.462573] iwlwifi 0000:00:14.3:     value [iter 2]: 0xbf1d0030
[   31.462575] iwlwifi 0000:00:14.3:     value [iter 3]: 0xbf1d0030
[   31.462577] iwlwifi 0000:00:14.3:     value [iter 4]: 0xbf1d0030
[   31.462579] iwlwifi 0000:00:14.3:     value [iter 5]: 0xbf1d0030
[   31.462581] iwlwifi 0000:00:14.3:     value [iter 6]: 0xbf1d0030
[   31.462583] iwlwifi 0000:00:14.3:     value [iter 7]: 0xbf1d0030
[   31.462585] iwlwifi 0000:00:14.3:     value [iter 8]: 0xbf1d0430
[   31.462587] iwlwifi 0000:00:14.3:     value [iter 9]: 0xbf1d0430
[   31.462589] iwlwifi 0000:00:14.3:     value [iter 10]: 0xbf1d0430
[   31.462591] iwlwifi 0000:00:14.3:     value [iter 11]: 0xbf1d0430
[   31.462593] iwlwifi 0000:00:14.3:     value [iter 12]: 0xbf1d0430
[   31.462595] iwlwifi 0000:00:14.3:     value [iter 13]: 0xbf1d0430
[   31.462597] iwlwifi 0000:00:14.3:     value [iter 14]: 0xbf1d0430
[   31.462598] iwlwifi 0000:00:14.3: Host monitor block 0x0 vector 0x1
[   31.462645] iwlwifi 0000:00:14.3:     value [iter 0]: 0x04006ec2
[   31.462647] iwlwifi 0000:00:14.3:     value [iter 1]: 0x04006ec2
[   31.462649] iwlwifi 0000:00:14.3:     value [iter 2]: 0x04006ec2
[   31.462651] iwlwifi 0000:00:14.3:     value [iter 3]: 0x04006ec2
[   31.462653] iwlwifi 0000:00:14.3:     value [iter 4]: 0x04006ec2
[   31.462655] iwlwifi 0000:00:14.3:     value [iter 5]: 0x04006ec2
[   31.462657] iwlwifi 0000:00:14.3:     value [iter 6]: 0x04006ec2
[   31.462659] iwlwifi 0000:00:14.3:     value [iter 7]: 0x04006ec2
[   31.462661] iwlwifi 0000:00:14.3:     value [iter 8]: 0x04006ec2
[   31.462663] iwlwifi 0000:00:14.3:     value [iter 9]: 0x04006ec2
[   31.462665] iwlwifi 0000:00:14.3:     value [iter 10]: 0x04006ec2
[   31.462667] iwlwifi 0000:00:14.3:     value [iter 11]: 0x04006ec2
[   31.462669] iwlwifi 0000:00:14.3:     value [iter 12]: 0x04006ec2
[   31.462671] iwlwifi 0000:00:14.3:     value [iter 13]: 0x04006ec2
[   31.462673] iwlwifi 0000:00:14.3:     value [iter 14]: 0x04006ec2
[   31.462674] iwlwifi 0000:00:14.3: Host monitor block 0x0 vector 0x6
[   31.462722] iwlwifi 0000:00:14.3:     value [iter 0]: 0xf0043860
[   31.462724] iwlwifi 0000:00:14.3:     value [iter 1]: 0xe0043860
[   31.462726] iwlwifi 0000:00:14.3:     value [iter 2]: 0xe0043860
[   31.462728] iwlwifi 0000:00:14.3:     value [iter 3]: 0xe0043860
[   31.462730] iwlwifi 0000:00:14.3:     value [iter 4]: 0xe0043860
[   31.462732] iwlwifi 0000:00:14.3:     value [iter 5]: 0xa0043860
[   31.462734] iwlwifi 0000:00:14.3:     value [iter 6]: 0xa0043860
[   31.462736] iwlwifi 0000:00:14.3:     value [iter 7]: 0xa0043860
[   31.462738] iwlwifi 0000:00:14.3:     value [iter 8]: 0xb0043860
[   31.462740] iwlwifi 0000:00:14.3:     value [iter 9]: 0xb0043860
[   31.462742] iwlwifi 0000:00:14.3:     value [iter 10]: 0xb0043860
[   31.462744] iwlwifi 0000:00:14.3:     value [iter 11]: 0xb0043860
[   31.462746] iwlwifi 0000:00:14.3:     value [iter 12]: 0xb0043860
[   31.462748] iwlwifi 0000:00:14.3:     value [iter 13]: 0xb0043860
[   31.462750] iwlwifi 0000:00:14.3:     value [iter 14]: 0xb0043860
[   31.462751] iwlwifi 0000:00:14.3: Host monitor block 0x22 vector 0x0
[   31.462794] iwlwifi 0000:00:14.3:     value [iter 0]: 0x29cec019
[   31.462815] iwlwifi: probe of 0000:00:14.3 failed with error -110

Could any help on this???

Regards

Hi Alberto,

I’m having the exact same issue with a Dell Precision 5560, Fedora 36, and Linux kernel version 6.0.5-200. Luckily when I installed this laptop fresh the other day it installed with Linux kernel 5.17.5-300 and the wireless drivers load and work correctly. You should have more than one Linux Kernel version available at the grub boot menu and maybe you’ll get lucky and one of those still functions. I’ll update if I find a work-around and get the wireless running with kernel 6.0.

Best,
Tom

Hi Thomas
In my case i’ve tried last kernel version available at fedora (v6.0.5) but didn’t work

I’ve tried too, fedora 37 beta, fedora rawhide, rocky linux v9, and Ubuntu 22.10 with same result, and showing exactly the same error…but surprise, surprise…works flawlessly with Manjaro distro (arch based)

I have open a bug report at bugzilla providing more information: 2138790 – No WiFi on T16 Intel Gen 12th Alder Lake Wifi 6E AX 211

Thanks
Regards

Hi Alberto,

Wow you tried many distros. Do you know what kernel version you are running with Manjaro? I had a different issue with older kernels. At the moment 5.17 is a sweet spot on Fedora. I’ll keep an eye on that RedHat bug. Thank you for updating.

Best,
Tom

Hi Tom

Majaro kernel version was 5.15 (iso: https://download.manjaro.org/gnome/21.3.7/manjaro-gnome-21.3.7-220816-linux515.iso)

Regards

Also having the same issue as mentioned by @mutenroid (identical dmesg output) on a Dell Latitude 7750 with the Intel AX201 on newer kernels, on Ubuntu, so it isn’t Fedora-specific. 5.15 works, but I will try 5.16 and 5.17 soon. 5.18 and later all fail, whether mainline, xanmod (what I usually use) or provided by canonical.

Found a suggestion elsewhere for the AX211 or 212 that said to grab the latest firmwares from intel and add them to the /lib/firmware folder, but that seems to make no difference (yes, I got the appropriate ones for the 201).

At this moment, the bugzilla redhat issue opened has no advance :frowning:

It must be a kernel build problem (fedora, Ubuntu)
Arch distros works well

Regards

@doyoulikemyhat Do you have any advance on this issue??

Regards

Have you tried Linux Hardware Org? Fedora provides their hw-probe tool that creates an anonymous database for your machine and adds it their database.

The difference between Arch and Fedora could be as simple as different module parameters (maybe configured in /etc/modprobe.d).

To understand the issue you should compare details between Arch and Fedora. Intel wifi drivers have had issues with some hardware (bluetooth or IPv6 are examples). The iwlwifi module has options that can be used to disable broken functionality. For Federa 37 with 6.0.8-300.fc37.x86_64 kernel:

% modinfo iwlwifi | grep '^parm:'
parm:           debug:debug output mask (uint)
parm:           swcrypto:using crypto in software (default 0 [hardware]) (int)
parm:           11n_disable:disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX (uint)
parm:           amsdu_size:amsdu size 0: 12K for multi Rx queue devices, 2K for AX210 devices, 4K for other devices 1:4K 2:8K 3:12K (16K buffers) 4: 2K (default 0) (int)
parm:           fw_restart:restart firmware in case of error (default true) (bool)
parm:           nvm_file:NVM file name (charp)
parm:           uapsd_disable:disable U-APSD functionality bitmap 1: BSS 2: P2P Client (default: 3) (uint)
parm:           enable_ini:0:disable, 1-15:FW_DBG_PRESET Values, 16:enabled without preset value defined,Debug INI TLV FW debug infrastructure (default: 16)
parm:           bt_coex_active:enable wifi/bt co-exist (default: enable) (bool)
parm:           led_mode:0=system default, 1=On(RF On)/Off(RF Off), 2=blinking, 3=Off (default: 0) (int)
parm:           power_save:enable WiFi power management (default: disable) (bool)
parm:           power_level:default power save level (range from 1 - 5, default: 1) (int)
parm:           disable_11ac:Disable VHT capabilities (default: false) (bool)
parm:           remove_when_gone:Remove dev from PCIe bus if it is deemed inaccessible (default: false) (bool)
parm:           disable_11ax:Disable HE capabilities (default: false) (bool)

If Arch is using a one of these the setting should be in /sys/module/ilwifi/parameters/<parameter>.

If you find you can’t get wifi whttps://linux-hardware.org/ithout disabling a functionality you need, you should consider replacing your wifi hardware. Good Intel wifi cards are readily available. The Linux Hardware Database may help you find a model that meets our needs.

Hi @gnwiii
Recently i was able to check a newer Thinkpad X1 Carbon Gen10 i7-1280p (T16 was i7-1270p) and surprisely…Wifi works flawlessly out-of-the-box (F37 iso live usb)

Comparing all the parameter values located at /sys/module/iwlwifi/parameters one each other, all were equal.

Regards.

Do both systems use the same wifi hardware? Have you generated linux-hardware.org probes for the systems? They have a probe for Thinkpad X1 Carbon Gen 10 with a Mediatek wireless controller (14c3:4d75:1cf8:3502), but your first system seems to have Intel wifi.

Yes, I was wondering the same thing. I bet it’s a different model of wireless card, even if it’s still using the same driver.

Yes same chipset (Alder Lake) and same Wifi card model (Intel AX211)
T16 linux hw probe: HW probe of Lenovo ThinkPad T16 Gen 1 2... #3f19147b70

Is it though?
The chipset ID detail found through use of lspci -nn may show something different, such as the revision number or similar.

04:00.0 Network controller [0280]: Qualcomm Atheros AR93xx Wireless Network Adapter [168c:0030] (rev 01)
06:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15)
08:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP107 [GeForce GTX 1050] [10de:1c81] (rev a1)

I’m confused. You say you have a problem with a :

but not with:

Both X1 and T16 are included and listed as working in:
Linux Hardware List of Systems using pci:8086-51f0-8086-0090 wifi

I’m wondering if you have a bad wifi card. Can you swap it with the one that works? A visual inspection/comparison could reveal some damage or even different chips on the two cards (vendors sometimes change the hardware without changing the model name).

These are lspci -nn both outputs (i think are the same for wifi card)

X1

[root@localhost-live ~]# lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 12th Gen Core Processor Host Bridge/DRAM Registers [8086:4641] (rev 02)
00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-P Integrated Graphics Controller [8086:46a6] (rev 0c)
00:04.0 Signal processing controller [1180]: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant [8086:461d] (rev 02)
00:06.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 [8086:464d] (rev 02)
00:07.0 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 [8086:466e] (rev 02)
00:07.2 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #2 [8086:462f] (rev 02)
00:08.0 System peripheral [0880]: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator [8086:464f] (rev 02)
00:0a.0 Signal processing controller [1180]: Intel Corporation Platform Monitoring Technology [8086:467d] (rev 01)
00:0d.0 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller [8086:461e] (rev 02)
00:0d.2 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 [8086:463e] (rev 02)
00:0d.3 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #1 [8086:466d] (rev 02)
00:14.0 USB controller [0c03]: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller [8086:51ed] (rev 01)
00:14.2 RAM memory [0500]: Intel Corporation Alder Lake PCH Shared SRAM [8086:51ef] (rev 01)
00:14.3 Network controller [0280]: Intel Corporation Alder Lake-P PCH CNVi WiFi [8086:51f0] (rev 01)
00:15.0 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 [8086:51e8] (rev 01)
00:15.1 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 [8086:51e9] (rev 01)
00:16.0 Communication controller [0780]: Intel Corporation Alder Lake PCH HECI Controller [8086:51e0] (rev 01)
00:16.3 Serial controller [0700]: Intel Corporation Device [8086:51e3] (rev 01)
00:1f.0 ISA bridge [0601]: Intel Corporation Alder Lake PCH eSPI Controller [8086:5182] (rev 01)
00:1f.3 Audio device [0403]: Intel Corporation Alder Lake PCH-P High Definition Audio Controller [8086:51c8] (rev 01)
00:1f.4 SMBus [0c05]: Intel Corporation Alder Lake PCH-P SMBus Host Controller [8086:51a3] (rev 01)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Alder Lake-P PCH SPI Controller [8086:51a4] (rev 01)
04:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO [144d:a80a]

T16

00:00.0 Host bridge [0600]: Intel Corporation Device [8086:4621] (rev 02)
00:02.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-P Integrated Graphics Controller [8086:46a6] (rev 0c)
00:04.0 Signal processing controller [1180]: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant [8086:461d] (rev 02)
00:06.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 [8086:464d] (rev 02)
00:07.0 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 [8086:466e] (rev 02)
00:07.2 PCI bridge [0604]: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #2 [8086:462f] (rev 02)
00:0a.0 Signal processing controller [1180]: Intel Corporation Platform Monitoring Technology [8086:467d] (rev 01)
00:0d.0 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller [8086:461e] (rev 02)
00:0d.2 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 [8086:463e] (rev 02)
00:0d.3 USB controller [0c03]: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #1 [8086:466d] (rev 02)
00:14.0 USB controller [0c03]: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller [8086:51ed] (rev 01)
00:14.2 RAM memory [0500]: Intel Corporation Alder Lake PCH Shared SRAM [8086:51ef] (rev 01)
00:14.3 Network controller [0280]: Intel Corporation Alder Lake-P PCH CNVi WiFi [8086:51f0] (rev 01)
00:15.0 Serial bus controller [0c80]: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 [8086:51e8] (rev 01)
00:16.0 Communication controller [0780]: Intel Corporation Alder Lake PCH HECI Controller [8086:51e0] (rev 01)
00:16.3 Serial controller [0700]: Intel Corporation Alder Lake AMT SOL Redirection [8086:51e3] (rev 01)
00:1f.0 ISA bridge [0601]: Intel Corporation Alder Lake PCH eSPI Controller [8086:5182] (rev 01)
00:1f.3 Audio device [0403]: Intel Corporation Alder Lake PCH-P High Definition Audio Controller [8086:51c8] (rev 01)
00:1f.4 SMBus [0c05]: Intel Corporation Alder Lake PCH-P SMBus Host Controller [8086:51a3] (rev 01)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Alder Lake-P PCH SPI Controller [8086:51a4] (rev 01)
00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (16) I219-LM [8086:1a1e] (rev 01)
02:00.0 Non-Volatile memory controller [0108]: Micron Technology Inc Device [1344:5411] (rev 01)

As i said in a previous comment, the wifi works perfect on T16 with Manjaro distro.
With Windows 10/11 works flawlessly too.

Only latest ubuntu/fedora/rocky linux distros fail

Regards

This seems a reasonable troubleshooting test.
If you swap the cards and the problem shifts to the other machine then it seems hardware related. Possibly the chipset is giving the kernel the wrong info so it loads the wrong driver version.
If the problem does not shift then it seems driver or firmware related in the software loaded on the system.

The output of lspci would indicate those chipsets should be the same but that command is not definitive in the results. Merely a point of reference.

Additional info that may reveal deeper differences is available with lspci -nn -vv or just after a reboot with a perusal of the output of dmesg or journalctl -b 0 for relevant data in loading the firmware and driver for that card.

You also could use modinfo iwlwifi to look for differences on the 2 machines.

I think wifi card its not swapable (soldered)
I’ll try to upload the info requested in a short.

Regards