Wifi no longer working after kernel update (6.14.6-arch1-1)

I updated my kernel yesterday to version 6.14.6-arch1-1.
After the update, my Wi-Fi stopped working.
I have timeshift setup to take a snapshot before doing upgrades, so switching back to the previous kernel, my WiFi works again…

When running lspci, the WiFi adapter gets detected:

09:00.0 Network controller: Qualcomm Technologies, Inc WCN785x Wi-Fi 7(802.11be) 320MHz 2x2 [FastConnect 7800] (rev 01)

running inxi -Na yields following result:

Device-2: Qualcomm WCN785x Wi-Fi 7 320MHz 2x2 [FastConnect 7800]
    vendor: Foxconn Band Simultaneous Wireless driver: ath12k_pci v: N/A
    modules: ath12k,wl pcie: gen: 3 speed: 8 GT/s lanes: 1 link-max: lanes: 2
    bus-ID: 09:00.0 chip-ID: 17cb:1107 class-ID: 0280

and dmesg | grep ath12k has following output:

[    5.080102] ath12k_pci 0000:09:00.0: BAR 0 [mem 0xf6000000-0xf61fffff 64bit]: assigned
[    5.080118] ath12k_pci 0000:09:00.0: enabling device (0000 -> 0002)
[    5.080278] ath12k_pci 0000:09:00.0: MSI vectors: 16
[    5.080282] ath12k_pci 0000:09:00.0: Hardware name: wcn7850 hw2.0
[    5.634689] ath12k_pci 0000:09:00.0: chip_id 0x2 chip_family 0x4 board_id 0xff soc_id 0x40170200
[    5.634698] ath12k_pci 0000:09:00.0: fw_version 0x1105811c fw_build_timestamp 2025-03-11 07:08 fw_build_id QC_IMAGE_VERSION_STRING=WLAN.HMT.1.1.c5-00284-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
[    5.912491] ath12k_pci 0000:09:00.0: ignore reset dev flags 0x200
[    8.849944] Modules linked in: rfcomm snd_seq_dummy snd_hrtimer snd_seq nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct ccm algif_aead crypto_null nft_chain_nat nf_nat des3_ede_x86_64 nf_conntrack nf_defrag_ipv6 cbc nf_defrag_ipv4 des_generic libdes md4 nf_tables overlay cmac algif_hash algif_skcipher af_alg bnep vfat fat qrtr_mhi amd_atl intel_rapl_msr intel_rapl_common kvm_amd qrtr ath12k kvm qmi_helpers irqbypass polyval_clmulni snd_hda_codec_hdmi snd_hda_intel polyval_generic snd_intel_dspcfg ghash_clmulni_intel wl(POE) mac80211 snd_usb_audio(+) uvcvideo btusb snd_intel_sdw_acpi sha512_ssse3 videobuf2_vmalloc btrtl sha256_ssse3 uvc snd_hda_codec snd_usbmidi_lib btintel sha1_ssse3 videobuf2_memops spd5118 snd_ump videobuf2_v4l2 btbcm aesni_intel snd_hda_core snd_rawmidi videobuf2_common btmtk crypto_simd libarc4 snd_hwdep snd_seq_device cryptd videodev r8169 bluetooth snd_pcm wmi_bmof sp5100_tco rapl pcspkr cfg80211 mc realtek snd_timer mdio_devres
[   10.845708] ath12k_pci 0000:09:00.0: failed to receive wmi unified ready event: -110
[   10.845939] ath12k_pci 0000:09:00.0: failed to start core: -110
[   10.847252] ath12k_pci 0000:09:00.0: qmi failed to send mode request, mode: 4, err = -5
[   10.847254] ath12k_pci 0000:09:00.0: qmi failed to send wlan mode off

When running dmesg on my previous kernel, I don’t get the last 4 lines.
I have no idea what the error codes mean, nor did I find anything related online…
Anyone where who knows what went wrong?

Thanks in advance!

In the topic linked to below someone had the same problem , and was able to solve it.

Thank you for pointing me toward this post!
I somehow missed it…

I confirm that downgrading the linux-firmware to 20250408.c1a774f3-1 fixed it for me.
Since I still had the package in my cache, simply running

sudo pacman -U file:///var/cache/pacman/pkg/linux-firmware-20250408.c1a774f3-1-any.pkg.tar.zst

Solved the issue for me

Good thing you solved it too and thanks for pointing out how you did it , just in case someone else will have the same problem.

I will also share my solution, I followed https://bugzilla.kernel.org/show_bug.cgi?id=220108, which pointed me to firmware at https://git.codelinaro.org/clo/ath-firmware/ath12k-firmware/-/tree/main/WCN7850/hw2.0/1.0.c5/WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3, which I replaced the not working one with; it doesn’t support multi-link operation, but I don’t use or need it.

Bumping this thread again,

Rolling back the firmware no longer fixes it.

something else other than linux-firmware breaks it.

I tried rolling back the kernel to multiple version, still doesn’t help.

@BoredCat 's solution is the only work around for now possibly.

Since it’s useful now, I will add that I renamed m3.bin.zst and amss.bin.zst to m3-bak.bin.zst and amss-bak.bin.zst to have a backup; one should probably rename them, as I don’t know how would the OS react to having m3.bin and m3.bin.zst in firmware

There is 6.14.7 now, maybe it fixes something

There are some things about WCN7850 in 6.14.9 changelog, maybe it works

Just updated my system and it is working now!
Qualcomm Technologies, Inc WCN785x Wi-Fi 7(802.11be) 320MHz 2x2 [FastConnect 7800] (rev 01)

1 Like

Just to be sure, on 6.14.9?
If yes, that would be great
There are also notes about WCN7850 in 6.12.31 lts changelog, but not that much

Yes 6.14.9, to be precise by ‘uname -rv’
6.14.9-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 29 May 2025 21:42:15 +0000

1 Like

It’s great they fixed it, I already have wired connection, but it’s always good to have more bandwidth