You are not logged in.

#1 2024-05-18 14:30:40

HurricanePootis
Member
Registered: 2020-10-16
Posts: 22

MT7922 Card (mt7921e module) Crashes After Suspend

Hello everybody,

I have a Mediatek MT7922 Wifi 6E card in my computer (Ryzen 5 5600X, MSI x470 Gaming Pro, Radeon RX 6800). Whenever I put my computer to sleep and wake up, I get the following error message in my journalctl about the mt7921e driver:

May 18 09:24:57 TheCloutPC kernel: mt7921e 0000:24:00.0: PM: failed to resume async: error -110
May 18 09:24:57 TheCloutPC kernel: mt7921e 0000:24:00.0: PM: dpm_run_callback(): pci_pm_resume+0x0/0xf0 returns -110
May 18 09:24:57 TheCloutPC kernel: mt7921e 0000:24:00.0: Message 00020007 (seq 8) timeout

In order to fix this, I have to:

sudo modprobe -r mt7921e
sudo modporbe mt7921e
sudo systemctl restart NetworkManager bluetooth

On my system, I am using NetworkManager, Systemd-Resolved, and Bluez. I have no special configuration besides letting NetworkManager use systemd-resolved in a conf file.

I have looked online, but I can't seem to find anybody else with my exact problem. Anyone know any more info on this or how to help me?

Offline

#3 2024-05-18 16:16:27

HurricanePootis
Member
Registered: 2020-10-16
Posts: 22

Re: MT7922 Card (mt7921e module) Crashes After Suspend

Even with mt7921e.disable_aspm=y, I still am getting the same error. Is there a place where I can report this to mediatek kernel developers?

Offline

#4 2024-05-18 16:23:31

seth
Member
Registered: 2012-09-03
Posts: 57,541

Re: MT7922 Card (mt7921e module) Crashes After Suspend

This is probably related to https://bugzilla.kernel.org/show_bug.cgi?id=217415 (see esp. comment #3, same workaround)

Offline

#5 2024-05-18 16:34:08

loqs
Member
Registered: 2014-03-06
Posts: 17,919

Re: MT7922 Card (mt7921e module) Crashes After Suspend

Your only other option to report it would be on the linux-wireless mailing list:

perl scripts/get_maintainer.pl drivers/net/wireless/mediatek/mt76/mt7921/pci.c
Felix Fietkau <nbd@nbd.name> (maintainer:MEDIATEK MT76 WIRELESS LAN DRIVER,commit_signer:13/14=93%)
Lorenzo Bianconi <lorenzo@kernel.org> (maintainer:MEDIATEK MT76 WIRELESS LAN DRIVER,commit_signer:12/14=86%,authored:12/14=86%,added_lines:139/149=93%,removed_lines:130/130=100%)
Ryder Lee <ryder.lee@mediatek.com> (maintainer:MEDIATEK MT76 WIRELESS LAN DRIVER)
Shayne Chen <shayne.chen@mediatek.com> (reviewer:MEDIATEK MT76 WIRELESS LAN DRIVER)
Sean Wang <sean.wang@mediatek.com> (reviewer:MEDIATEK MT76 WIRELESS LAN DRIVER)
Kalle Valo <kvalo@kernel.org> (maintainer:NETWORKING DRIVERS (WIRELESS))
Matthias Brugger <matthias.bgg@gmail.com> (maintainer:ARM/Mediatek SoC support)
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> (maintainer:ARM/Mediatek SoC support)
Deren Wu <deren.wu@mediatek.com> (commit_signer:12/14=86%)
Ingo Rohloff <lundril@gmx.de> (commit_signer:1/14=7%,authored:1/14=7%)
Leon Yen <leon.yen@mediatek.com> (commit_signer:1/14=7%)
Quan Zhou <quan.zhou@mediatek.com> (authored:1/14=7%,added_lines:8/149=5%)
linux-wireless@vger.kernel.org (open list:MEDIATEK MT76 WIRELESS LAN DRIVER)
linux-kernel@vger.kernel.org (open list:ARM/Mediatek SoC support)
linux-arm-kernel@lists.infradead.org (moderated list:ARM/Mediatek SoC support)
linux-mediatek@lists.infradead.org (moderated list:ARM/Mediatek SoC support)

Offline

#6 2024-05-18 22:22:54

HurricanePootis
Member
Registered: 2020-10-16
Posts: 22

Re: MT7922 Card (mt7921e module) Crashes After Suspend

I appreciate all the feedback, I'll go look into sending an email to the mailing list.

Offline

#7 2024-06-11 11:33:26

chn
Member
Registered: 2024-06-11
Posts: 1

Re: MT7922 Card (mt7921e module) Crashes After Suspend

`mt7921e.disable_aspm=y` works on my machine. I am using NixOS linux 6.9 on Lenovo ARX8, network card is mt7922.

Offline

#8 2024-07-02 23:24:05

HurricanePootis
Member
Registered: 2020-10-16
Posts: 22

Re: MT7922 Card (mt7921e module) Crashes After Suspend

I have created a work around for this problem, which seems to be working so far.

Whenever you put your system to sleep, systemd will execut scripts at /usr/lib/systemd/systemd-sleep with the arguments "pre" or "post".

Therefore, I have created this script that will rmmod the mt7921e kernel module before sleeping, or any other action described in the man page, and then will modprobe it back after waking up.

#!/usr/bin/env bash
case ${1} in
    pre)
    rmmod mt7921e
    echo "Removing mt7921e kernel module"
    ;;
    post)
    modprobe mt7921e
    echo "Adding mt7921e kernel module"
    ;;
esac

Last edited by HurricanePootis (2024-07-03 02:09:45)

Offline

Board footer

Powered by FluxBB