Skip to main content

MediaTek MT7925 (RZ717) Wi-Fi Issues

Summary

The MediaTek MT7925 (also marketed as AMD RZ717) Wi-Fi 7 card shipped with Framework Laptop 13 (AMD Ryzen AI 300 Series), Framework Laptop 16 (AMD 7040 Series), and Framework Desktop (AMD Ryzen AI Max 300 Series) has multiple known driver bugs on Linux. Users report random connection drops, kernel panics causing full system lockups, poor throughput, and suspend/resume failures1. The issues stem from bugs in the Linux kernel's mt7925e driver (NULL pointer dereferences, missing mutex protection, broken MLO key handling) as well as problems in MediaTek's closed-source firmware23.

Symptoms

  • Random Wi-Fi disconnects — repeated deauthentication/reauthentication cycles, especially in the first 1–2 hours after boot1
  • Kernel panics — NULL pointer dereference in mt76_connac_mcu_uni_add_dev() during Wi-Fi MAC reset, causing complete system lockup3
  • MCU message timeoutsMessage 00020002 (seq N) timeout entries in dmesg, indicating firmware became unresponsive2
  • System hangs — mutex deadlocks and processes stuck in D state (uninterruptible sleep) during suspend/resume or network switching4
  • Poor throughput — speeds an order of magnitude lower than expected (15–80 Mbit/s vs 200+ Mbit/s), significantly worse than Intel cards in identical conditions12
  • No Wi-Fi adapter found after kernel update — mt7925e module missing or failing to load in some kernel versions (e.g., 6.18.3 regression)5
  • Connection failures after suspend — Wi-Fi non-functional after resume, requiring reboot or module reload6

Affected Models

  • Framework Laptop 13 (AMD Ryzen AI 300 Series) — ships with MT79251
  • Framework Laptop 16 (AMD 7040 Series) — compatible with MT79257
  • Framework Desktop (AMD Ryzen AI Max 300 Series) — ships with MT79253

Root Cause

The issues are a combination of Linux kernel driver bugs and MediaTek firmware problems:

Driver bugs (kernel-side):

  • NULL pointer dereference in mt76_connac_mcu_uni_add_dev() during Wi-Fi reset workflow — the driver iterates interfaces during MAC reset without checking for torn-down links3
  • Missing mutex protection in the reset path, causing race conditions that lead to system deadlocks2
  • Broken MLO (Multi-Link Operation) group key removal — returns -EINVAL instead of handling already-torn-down links, cascading into firmware hangs2
  • Double wcid initialization race condition4

Firmware issues (MediaTek-side):

  • Firmware state machine corruption during WiFi 7 MLO roaming, causing MCU command timeouts2
  • Aggressive power management causing suspend failures — firmware sends unnecessary ACK events that can get stuck due to timing issues6
  • Poor rate control and MIMO implementation, resulting in significantly lower throughput than competing cards2

Diagnosis

  1. Check for driver errors in kernel log:

    dmesg | grep -i mt7925

    Look for Message timeout, ASIC revision, and firmware version lines1.

  2. Verify kernel version — the driver requires kernel 6.7+ for basic support, but many fixes only landed in 6.17+4:

    uname -r
  3. Check firmware files exist:

    ls -la /lib/firmware/mediatek/mt7925/
  4. Monitor for deauth cycles in real time:

    dmesg -w | grep -E '(deauth|assoc|mt7925)'
  5. Test throughput with iperf3 against a wired server to quantify the performance gap1.

Workarounds & Fixes

SolutionEffectivenessNotes
Set regulatory domain1Improves speedInstall wireless-regdb, set WIRELESS_REGDOM to your country code in /etc/conf.d/wireless-regdom
Disable power save2Partialiw dev wlan0 set power_save off or add options mt7925e power_save=0 to modprobe config
Install DKMS patches (zbowling)4Fixes panics & deadlocksgithub.com/zbowling/mt7925 — fixes NULL deref, mutex, MLO bugs; requires kernel 6.17+
Install mt7925-wifi-patches (burakgon)8Improves stabilitygithub.com/burakgon/mt7925-wifi-patches — builds latest wireless-next drivers, disables ASPM and power save
Disable 802.11ax (HE)1May reduce disconnectsAdd DisableHE=true in /etc/iwd/main.conf if using iwd
Disable 6 GHz / MLO on AP2Reduces firmware hangsAvoid WiFi 7 MLO roaming triggers if your AP supports it
Replace with Intel AX210910Resolves all issuesAX210.NGWG.NV (non-vPro) confirmed working on AMD Framework models; ~$20

Resolution

Patches for the kernel driver bugs have been submitted upstream to the linux-wireless mailing list and the OpenWrt mt76 staging tree24. A DKMS package by Zac Bowling (mt76-mt7925-dkms) provides these fixes as a drop-in replacement for stock kernel modules on kernel 6.17+4. An alternative patch set by burakgon builds the latest wireless-next tree drivers automatically8.

Firmware-level issues (throughput degradation, some MLO roaming failures) cannot be fixed from the kernel side and require updates from MediaTek2.

For users unwilling to apply patches, replacing the MT7925 with an Intel AX210 (non-vPro) card resolves all driver-related issues. Framework's Linux support lead confirmed the AX210 works on AMD Framework models, though it is not "officially" supported10. The card uses a standard M.2 2230 interface and can be swapped using Framework's WiFi Replacement Guide11.

Footnotes

  1. Issues with MediaTek MT7925 (RZ717) Wi-Fi Card — Framework Community 2 3 4 5 6 7 8

  2. Known Issues — zbowling/mt7925 — GitHub 2 3 4 5 6 7 8 9 10 11

  3. mt7925e: Kernel panic NULL pointer dereference in mt76_connac_mcu_uni_add_dev during WiFi reset — Ubuntu Bug #2137291 2 3 4

  4. MT7925 WiFi Driver Fixes — Now Available as DKMS Package — Framework Community 2 3 4 5 6

  5. Linux kernel 6.18.3: MT7925 WiFi driver missing (regression from 6.18.2) — NixOS GitHub

  6. wifi: mt76: mt7925: fix fails to enter low power mode in suspend state — Linux-MediaK Mailing List 2

  7. RZ 717 wifi 7 — Framework Community

  8. MT7925 WiFi fix for Linux — burakgon/mt7925-wifi-patches — GitHub 2

  9. Wifi card replacement, which model is compatible? — Framework Community

  10. AMD AI 300 Series — Will AX210 No-vPro Wifi Card Work? — Framework Community 2

  11. WiFi Replacement Guide — Framework Guides