Re: mt7921e: repeated driver own failures cause hanging

moosager <[email protected]>
Newsgroups org.infradead.lists.linux-mediatek,org.kernel.vger.linux-wireless
Message-ID <[email protected]>
Hello,

On Sat, Jan 3, 2026 at 8:10 AM Sean Wang <[email protected]> wrote:
> Hi moosager90,
>
> Could you please share more details on how this issue can be
> reproduced?

I have found a (somewhat hacky) way to reliably reproduce the issue.
Just run this script for 3-5 seconds:

#!/bin/sh
echo 0x7c060010 > /sys/kernel/debug/ieee80211/phy0/mt76/regidx
while true; do echo 0xffffffff > /sys/kernel/debug/ieee80211/phy0/mt76/regval ; done

Running this script results in the same "driver own failed" messages and system 
slowdowns observed when the issue naturally occurs.

I have investigated the bug a little and found how it manifests in the driver 
code:

During normal usage, the function __mt792xe_mcu_drv_pmctrl writes to a register 
like this:
mt76_wr(dev, MT_CONN_ON_LPCTL, PCIE_LPCR_HOST_CLR_OWN);

and it expects to find 0x00000004 (which is PCIE_LPCR_HOST_OWN_SYNC). Instead, 
when the issue happens, it finds 0xffffffff, which does not change even after 
the driver attempts to write to it.

In essence, the above script recreates those conditions by writing 0xffffffff 
to the MT_CONN_ON_LPCTL register (at address 0x7c060010).

In addition, the failure of __mt792xe_mcu_drv_pmctrl returns -5 as an error 
code; this is not checked by the caller, mt7921e_mac_reset, which calls 
mt792xe_mcu_drv_pmctrl without checking its return value.

This issue still happens and is still reproducible on my build of the vanilla 
7.2.0-rc4 kernel, as it has been for every past kernel version.
This is my best attempt at investigating it, but i believe it is ultimately 
down to the firmware rather than the driver.

> Also, please confirm which firmware version you are using.

Here is the firmware version reported in dmesg:

[   15.848101] mt7921e 0000:62:00.0: enabling device (0000 -> 0002)
[   15.849369] mt7921e 0000:62:00.0: disabling ASPM  L1
[   15.865381] mt7921e 0000:62:00.0: ASIC revision: 79220010
[   15.958433] mt7921e 0000:62:00.0: HW/SW Version: 0x8a108a10, Build Time: 20260605203307a
[   16.352504] mt7921e 0000:62:00.0: WM Firmware Version: ____000000, Build Time: 20260605203411

> As a debugging step, could you also try disabling PCIe ASPM and check
> whether the issue still occurs?

The issue happens whether ASPM is on or off.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.