No Wifi on fresh install

I installed EndeavourOS Mercury Neo on new hardware (MSI X870E motherboard, Ryzen 9 9900X, RTX 5080). After install, Wi-Fi was not working.

I checked for Wi-Fi hardware with lspci and lsusb. No PCI Wi-Fi device appeared, but lsusb showed a Foxconn / Hon Hai device with ID 0489:e10a. Based on research, this matches a Mediatek MT7922 chipset, not Broadcom.

I confirmed the correct Mediatek driver (mt7921e) was available on my system. I manually loaded it using sudo modprobe mt7921e, but no wireless interfaces appeared in ip link or iw dev.

I checked system logs using dmesg | grep firmware and confirmed there were no missing firmware errors related to Wi-Fi. Only a minor unrelated regulatory.db error appeared.

At that point I updated the system firmware by installing linux-firmware-git from the AUR using yay -S linux-firmware-git. I removed the existing linux-firmware package when prompted, rebooted, and tried loading the driver again.

At this point I’m not sure what to do next. The last issue I was having ended up being a quick and obvious fix that I just didn’t think to try because I’m still so new to linux. Any help would be greatly appreciated! Thank you!

EDIT- More information

uname -r
6.14.3-arch1-1
lspci -nn
lsusb
00:00.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Root Complex [1022:14d8]
00:00.2 IOMMU [0806]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge IOMMU [1022:14d9]
00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Dummy Host Bridge [1022:1
4da]
00:01.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge GPP Bridge [1022:14db]
00:01.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge GPP Bridge [1022:14db]
00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Dummy Host Bridge [1022:1
4da]
00:02.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge GPP Bridge [1022:14db]
00:02.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge GPP Bridge [1022:14db]
00:03.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Dummy Host Bridge [1022:1
4da]
00:04.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Dummy Host Bridge [1022:1
4da]
00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Dummy Host Bridge [1022:1
4da]
00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Internal GPP Bridge to Bus
[C:A] [1022:14dd]
00:08.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Internal GPP Bridge to Bus
[C:A] [1022:14dd]
00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller [1022:790b] (rev 71)
00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge [1022:790e] (rev 51)
00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 0 [
1022:14e0]
00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 1 [
1022:14e1]
00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 2 [
1022:14e2]
00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 3 [
1022:14e3]
00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 4 [
1022:14e4]
00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 5 [
1022:14e5]
00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 6 [
1022:14e6]
00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge Data Fabric; Function 7 [
1022:14e7]
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GB203 [GeForce RTX 5080] [10de:2c02] (rev a1)
01:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:22e9] (rev a1)
02:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller S4LV008[Pascal]
[144d:a80c]
03:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Upstream Port [10
22:43f4] (rev 01)
04:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
04:04.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
04:05.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
04:06.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
04:08.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
04:0c.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
04:0d.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
07:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8126 5GbE Controller [10ec:8126] (rev 0
1)
09:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Upstream Port [10
22:43f4] (rev 01)
0a:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:04.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:05.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:06.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:07.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:08.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:0c.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
0a:0d.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset PCIe Switch Downstream Port [
1022:43f5] (rev 01)
11:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] 800 Series Chipset USB 3.x XHCI Controller [
1022:43fd] (rev 01)
12:00.0 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset SATA Controller [1022:43
f6] (rev 01)
13:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] 800 Series Chipset USB 3.x XHCI Controller [
1022:43fd] (rev 01)
14:00.0 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] 600 Series Chipset SATA Controller [1022:43
f6] (rev 01)
15:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM4242 PCIe Switch Upstream Port [1b21:2421] (rev 01)
16:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM4242 PCIe Switch Downstream Port [1b21:2423] (rev 01)
16:01.0 PCI bridge [0604]: ASMedia Technology Inc. ASM4242 PCIe Switch Downstream Port [1b21:2423] (rev 01)
16:02.0 PCI bridge [0604]: ASMedia Technology Inc. ASM4242 PCIe Switch Downstream Port [1b21:2423] (rev 01)
16:03.0 PCI bridge [0604]: ASMedia Technology Inc. ASM4242 PCIe Switch Downstream Port [1b21:2423] (rev 01)
77:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM4242 USB 3.2 xHCI Controller [1b21:2426] (rev 01)
78:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM4242 USB 4 / Thunderbolt 3 Host Router [1b21:2425] (
rev 01)
79:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge PCIe Du
mmy Function [1022:14de] (rev c2)
79:00.2 Encryption controller [1080]: Advanced Micro Devices, Inc. [AMD] Family 19h PSP/CCP [1022:1649]
79:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge USB 3.1 xHCI [1022:15b
6]
79:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge USB 3.1 xHCI [1022:15b
7]
79:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family 17h/19h/1ah HD Audio Controller [1022:1
5e3]
7a:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Raphael/Granite Ridge USB 2.0 xHCI [1022:15b
8]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 046d:c548 Logitech, Inc. Logi Bolt Receiver
Bus 001 Device 003: ID 0db0:cd0e Micro Star International USB Audio
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 046d:c548 Logitech, Inc. Logi Bolt Receiver
Bus 003 Device 003: ID 0db0:0076 Micro Star International MYSTIC LIGHT
Bus 003 Device 004: ID 0489:e10a Foxconn / Hon Hai
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 009 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 010 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 011 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 012 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
lsmod | grep mt7921e
No output
sudo dmesg | grep mt7921e
sudo dmesg | grep firmware
Clear Stale Hibernate Storage Info was skipped because of an unmet condition check (ConditionPathExists=/sys/firmware/efi/efivars/HibernateLocation-8cf2644b-4b0b-428f-9387-6d876050dc67).
ip link
iw dev
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 34:5a:60:61:8f:91 brd ff:ff:ff:ff:ff:ff
    altname enx345a60618f91

>inxi -Mxx
Machine:
  Type: Desktop Mobo: Micro-Star model: MAG X870E TOMAHAWK WIFI (MS-7E59)
    v: 2.0 serial: <superuser required> UEFI: American Megatrends LLC. v: 2.A40
    date: 03/12/2025

>nxi -Na
Network:
  Device-1: Realtek RTL8126 5GbE vendor: Micro-Star MSI driver: r8169
    v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 1 port: e000 bus-ID: 07:00.0
    chip-ID: 10ec:8126 class-ID: 0200

Which kernel are you using?

Kernel is 6.14.3-arch1-1

Perhaps try the LTS just for the sake of ensuring it’s not a newer kernel bug?

I’ve had this occur before with an audio card, where the LTS detected my sound card and the latest kernel didn’t.

No luck with the LTS unfortunately! I’ve added in some additional information to my initial post if it helps add more clarity.
Thanks

It looks like there is a kernel module for this device in the AUR if you want to give it a shot.

❯ paru -Ss RTL8126
aur/r8126-dkms 10.015.00-2 [+4 ~0.51]
    Kernel module for Realtek RTL8126

Install with yay or paru like this:

yay -S r8126-dkms

Thanks everyone for your responses so far.
I’m actually not having any Ethernet issues, it’s just the WiFi , but I went ahead and tried

yay -S r8126-dkms

But with no difference
From what I can gather, it seems like the issue is within the Mediatek mt7921e or mt7922 family driver and firmware
Searching the AUR however I wasn’t able to find anything for mt7921e
What’s also interesting is that while using Mint on this same computer, I was able to get the WiFi working with kernel 6.11 while it did not work with kernel 6.8.
If anyone has any ideas I would really appreciate your input! Thanks

Isn’t it the ath12k driver that you need?

The Foxconn / Hon Hai device with ID 0489:e10a is bluetooth,

1 Like

You’re right, it is a Qualcomm card! And ath12k is the driver I need. Looks like I have it already, but not sure how to get it to work.

modinfo ath12k

filename: /lib/modules/6.14.3-arch1-1/kernel/drivers/net/wireless/ath/ath12k/ath12k.ko.zst
license: Dual BSD/GPL
description: Core module for Qualcomm Atheros 802.11be wireless LAN cards.
license: Dual BSD/GPL
description: Driver support for Qualcomm Technologies PCIe 802.11be WLAN devices
srcversion: D66F24B6C15EE9ACB2C41C7
alias: pci:v000017CBd00001107svsdbcsci*
alias: pci:v000017CBd00001109svsdbcsci*
depends: mac80211,qmi_helpers,mhi,cfg80211
intree: Y
name: ath12k
retpoline: Y
vermagic: 6.14.3-arch1-1 SMP preempt mod_unload
sig_id: PKCS#7
signer: Build time autogenerated kernel key
sig_key: 7B:5D:26:FA:C1:17:22:B8:70:CE:F3:01:96:1B:56:F7:E5:A0:7E:F7
sig_hashalgo: sha512
signature: 30:66:02:31:00:80:95:76:54:62:A4:55:A4:16:64:5B:F2:62:3A:3C:
CF:9E:79:3F:51:BD:2A:79:4B:1F:24:1F:0E:58:A8:39:15:73:EE:75:
7B:C1:34:60:EA:AF:ED:55:08:26:22:55:A1:02:31:00:C7:BE:C6:DB:
59:13:7C:05:32:E0:A7:6F:ED:4F:B7:97:76:A3:0E:49:C6:86:50:FC:
E6:78:86:46:E4:66:47:E4:37:54:A8:D3:46:B6:EC:D4:8E:6D:19:4F:
0C:ab:63:CB
parm: debug_mask:Debugging mask (uint)

Looks like I have it

sudo find /lib/firmware/ath12k/ -type f

/lib/firmware/ath12k/QCN9274/hw2.0/board-2.bin.zst
/lib/firmware/ath12k/QCN9274/hw2.0/firmware-2.bin.zst
/lib/firmware/ath12k/QCN9274/hw2.0/Notice.txt.zst
/lib/firmware/ath12k/WCN7850/hw2.0/board-2.bin.zst
/lib/firmware/ath12k/WCN7850/hw2.0/m3.bin.zst
/lib/firmware/ath12k/WCN7850/hw2.0/amss.bin.zst
/lib/firmware/ath12k/WCN7850/hw2.0/Notice.txt.zst

Firmware is installed

but no output from
I

sudo dmesg | grep ath12k

If it is a separate card, is it definitely plugged-in all the way in to the socket?

Sorry if I made it sound like it might be a separate card. It is just what came stock as a part of my x870e Tomahawk motherboard

A quick google suggests that you are not the only one having this problem, the wifi card is in an M2 slot though so perhaps somebody else knows how to help get it recognised.

Saw other people having issues related to the UEFI. I had been on the latest version, but In the time that I’ve started having this issue MSI actually released a new update. I flashed the new version 7E59v2A52
On reboot this has actually made an improvement as I actually get an output from

sudo dmesg | grep ath12k

[ 18.861499] ath12k_pci 0000:08:00.0: BAR 0 [mem 0xa0000000-0xa01fffff 64bit]: assigned
[ 18.861528] ath12k_pci 0000:08:00.0: enabling device (0000 → 0002)
[ 18.861935] ath12k_pci 0000:08:00.0: MSI vectors: 16
[ 18.861944] ath12k_pci 0000:08:00.0: Hardware name: wcn7850 hw2.0
[ 19.624088] ath12k_pci 0000:08:00.0: chip_id 0x2 chip_family 0x4 board_id 0xff soc_id 0x40170200
[ 19.624091] ath12k_pci 0000:08: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
[ 19.907912] ath12k_pci 0000:08:00.0: ignore reset dev flags 0x200
[ 24.736440] ath12k_pci 0000:08:00.0: failed to receive wmi unified ready event: -110
[ 24.736675] ath12k_pci 0000:08:00.0: failed to start core: -110
[ 24.737979] ath12k_pci 0000:08:00.0: qmi failed to send mode request, mode: 4, err = -5
[ 24.737981] ath12k_pci 0000:08:00.0: qmi failed to send wlan mode off

so now it’s actually detecting the WiFi hardware, loading the ath12k_pci module, and attempting firmware initialization but it’s now getting a Firmware/driver communication timeout Error -110

ls -l /lib/firmware/ath12k/WCN7850/hw2.0/
-rw-r–r-- 1 root root 2878820 Apr 25 17:55 amss.bin.zst
-rw-r–r-- 1 root root 34091 Apr 25 17:55 board-2.bin.zst
-rw-r–r-- 1 root root 148430 Apr 25 17:55 m3.bin.zst
-rw-r–r-- 1 root root 10699 Apr 25 17:55 Notice.txt.zst

hoping maybe some new firmware blobs would help the issue I ran

yay -S linux-firmware-qcom-git

then reboot and

sudo dmesg | grep ath12k
iw dev

still results in the timeout Error -110

sudo dmesg | grep -i board

[ 3.392446] hid-generic 0003:046D:C548.0001: input,hidraw0: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:11:00.0-4/input0
[ 3.519476] hid-generic 0003:046D:C548.0005: input,hidraw4: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:13:00.0-5/input0
[ 19.098076] ath12k_pci 0000:08:00.0: chip_id 0x2 chip_family 0x4 board_id 0xff soc_id 0x40170200

Looks like board_id 0xff is a placeholder ID

No output from

pacman -Ql linux-firmware-qcom-git | grep WCN7850

If I understand correctly there is no support for my system?

There is this page that lists all the boards , concerning the ath 12k.

Not sure if the exact model of your mobo is on that page, but if not maybe post something in their forum.

Yeah it’s looking like other people are having the issue of everything being detected but not actually running. Guess I’ll just be on Ethernet until it eventually gets updated. Thanks everyone for your input!