From nobody Thu Apr 9 17:29:36 2026 Received: from flow-a2-smtp.messagingengine.com (flow-a2-smtp.messagingengine.com [103.168.172.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D1BE32D640D; Sat, 7 Mar 2026 00:34:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.137 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772843652; cv=none; b=omF15n+3P0mzmTHiJ39SwQ5SuvRP0ieAXa1CZTtDEDphOTqa7eG5I6HahRnz5Ji4QjTWYz/Jfdi2Qn6c0sxcJz0DHj1ya2KT5+mGI46rr9gtJ29s+7zDSLSnZd7Rq4GXaQWnq4ur3oJ77YqEWwX5+bDalzTUrKwYOTP51Ml5K/4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772843652; c=relaxed/simple; bh=tCHjsPhpfMH7ZEGqWpgSyLniBJo0Zn0CURYGz/GzZP4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc: In-Reply-To:References; b=Gj5p28btTF+eNYeZRNGBTjyVGHwSzOsi9dh/+U7mhak2Z36lnTu3OBQrp4KNIXBNx/ESE2g5fziJHaL1EPMkAdHC7/4tA3ABr9xbdwQ2svI8lk0gGclVoHl05OsDVqcwUwkY5P5jo635zOlNQTKEefHlkNhKphhxOXpdsnKB2tk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=jetm.me; spf=pass smtp.mailfrom=jetm.me; dkim=pass (2048-bit key) header.d=jetm.me header.i=@jetm.me header.b=ES8gN2g9; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=KqShWAJy; arc=none smtp.client-ip=103.168.172.137 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=jetm.me Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=jetm.me Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=jetm.me header.i=@jetm.me header.b="ES8gN2g9"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="KqShWAJy" Received: from phl-compute-02.internal (phl-compute-02.internal [10.202.2.42]) by mailflow.phl.internal (Postfix) with ESMTP id 4D0311380AB4; Fri, 6 Mar 2026 19:34:10 -0500 (EST) Received: from phl-imap-07 ([10.202.2.97]) by phl-compute-02.internal (MEProxy); Fri, 06 Mar 2026 19:34:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jetm.me; h=cc:cc :content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1772843650; x=1772850850; bh=SPSKM3QYVOcFDvng3faMKvZZN8LqVSIHWoAzKRCTAZ8=; b= ES8gN2g91ZN4V71Hrkfv+G3zV3C/s6x8wCCKZZ/8cXI9fA6Zc+kBVCbOy6SGemLm /dhpn+dCKxTGvQ8czjSDbT+7T7rsq9/HMlT8ZdLQFcBPauy6fo4fGSK7TBegTdG8 CVuW8UdQuEZdDgRM4eHlehUB0g8MT9QfJAATBdvb+iQkHtNXmmnDEzqNR+zDYy+F /7NhSwsJt/+6/nn/FDsel0hdlgXwbjL549GusQbMb1blW9LkazGMGrxn/O5sL2Kv SBGs0FFMX9rvsE+bwJUfL9PNPM4vjUgfdX+8+qWKvojoPkZ85NJeG6c0QuxQ3PiT Tzw7qimd2JacbojlLkP/pg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1772843650; x= 1772850850; bh=SPSKM3QYVOcFDvng3faMKvZZN8LqVSIHWoAzKRCTAZ8=; b=K qShWAJyDTfnCdQZnIhmG8qd+x4Xs/Ruji8ir1L7PesfNax0QFqA956/qnihcklKl rZxtsAnVCZQ4aGvzp7Ms9Hj8WSEVJfdKY7lyKV2A1SCrBFKqZNcx7490en7/hGlP b1ZmWYTA2TCQ7Rh8qGTQv9BjQm7cU87JmyUY3eDVA5OykPHSzZ/s8LpRXNqhCYFO 47liRut97miphIicoLjbYsyRlwGEOwcdMh1V0z6iDazlUxtA6mqBUB8aGDFhEL4h qKEIYi3YfyNPD6W0QLIeYd4WnJuO+vB4tja2/p9F6TwXODtD3Kk21D8oOyMxm4lp 7Fiiu0jmTDEOJtsS2512A== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddvjedtjeehucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhepoffhfffugggtgffkvfevofgjfhesthekredtredtjeenucfhrhhomheplfgrvhhi vghrucfvihgruceofhhlohhsshesjhgvthhmrdhmvgeqnecuggftrfgrthhtvghrnhepve ektdfhffevuddtgfetieevtddvheduhfeggfekveejlefhleefieevueefiefhnecuvehl uhhsthgvrhfuihiivgepuddunecurfgrrhgrmhepmhgrihhlfhhrohhmpehflhhoshhsse hjvghtmhdrmhgvpdhnsggprhgtphhtthhopedvfedpmhhouggvpehsmhhtphhouhhtpdhr tghpthhtoheprghnghgvlhhoghhiohgrtggthhhinhhordguvghlrhgvghhnohestgholh hlrggsohhrrgdrtghomhdprhgtphhtthhopeefudelfeeifedusehgmhgrihhlrdgtohhm pdhrtghpthhtoheplhhoohhnghdrtdigtddtsehgmhgrihhlrdgtohhmpdhrtghpthhtoh eprghrihgvlhdrrhhoshgvnhhfvghlugdrjeehtdesghhmrghilhdrtghomhdprhgtphht thhopegthhgrphhuihhsuggrrhhiohegsehgmhgrihhlrdgtohhmpdhrtghpthhtohepgh hiohhsrghlledtsehgmhgrihhlrdgtohhmpdhrtghpthhtohepmhgrthhthhhirghsrdgs ghhgsehgmhgrihhlrdgtohhmpdhrtghpthhtoheprhgrughoihdrtghhrhhishesghhmrg hilhdrtghomhdprhgtphhtthhopehsrghmuhdrthholhhjrghmohesghhmrghilhdrtgho mh X-ME-Proxy: Feedback-ID: i9dde48b3:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id 1B2BF1EA006B; Fri, 6 Mar 2026 19:34:10 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface From: Javier Tia Date: Fri, 06 Mar 2026 18:33:33 -0600 Subject: [PATCH 14/18] wifi: mt76: mt7925: disable ASPM for MT7927 to fix throughput collapse Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260306-mt7927-wifi-support-v1-14-c77e7445511d@jetm.me> To: linux-wireless@vger.kernel.org, Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Matthias Brugger , AngeloGioacchino Del Regno , Deren Wu , Ming Yen Hsieh Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Marcin FM , Cristian-Florin Radoi , George Salukvadze , Evgeny Kapusta <3193631@gmail.com>, Samu Toljamo , Ariel Rosenfeld , Chapuis Dario , =?utf-8?q?Thibaut_Fran=C3=A7ois?= , =?utf-8?q?=E5=BC=A0=E6=97=AD=E6=B6=B5?= , Javier Tia X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2658; i=floss@jetm.me; h=from:subject:message-id; bh=tCHjsPhpfMH7ZEGqWpgSyLniBJo0Zn0CURYGz/GzZP4=; b=owEB7QES/pANAwAKAbXuwwuoZ3cfAcsmYgBpq3JQNGtFbWdcTB+Upou/8YMJmJGJHU4QfNdko PteefI72lmJAbMEAAEKAB0WIQSbE7ILzw7eI0VKk8m17sMLqGd3HwUCaatyUAAKCRC17sMLqGd3 H36oC/41zVdsrE9+qtrN8xyBaeB/dnsrzUqhOj8nfug75FVdVifSRtQeDkJreXUiZYZal5icoL6 XYbiTtxDACEOMEL2d/omAJ7EJXdH5BSftEhNr1+igQYE2xHjQZlYzN1ManvElv5hU0HYbWvVAdD INvyzqKA3ba4i9+xhsp6iQLTMuqYRH6+/Y1L83OmH4DeqmIPCcJbkAK0ZvuAJ4buaDYHfqcNeFu Lm2NXJCZ6L+6l35a6HseZiXr6pQl/WYEzRvEzPrmgzhgDByPovnFBykxJzrzgzghxxVIE0cEdNG tkXpAFrx2YP1EZOkutZc4ZXHSBq6dAyvSqutta4YKu3l6kKV6wVXoZVoOY7p9KkznlUd/+mjr8B bzfziceaPc0vkz+R2MAqfEGVIMvw97RRloirqSVXXIF3QKnsMpSSzZ2W3jxFGAU5WFspBiRoWAc nha6HcdDspsdcFxmFtdwBdRgRCZ31Ax+OUAFTCbgcmGGQIHYjoOaE82LeVlgfapHOi3xI= X-Developer-Key: i=floss@jetm.me; a=openpgp; fpr=9B13B20BCF0EDE23454A93C9B5EEC30BA867771F In-Reply-To: <20260306-mt7927-wifi-support-v1-0-c77e7445511d@jetm.me> References: <20260306-mt7927-wifi-support-v1-0-c77e7445511d@jetm.me> MT7927 (MT7927) exhibits severe throughput degradation when PCIe ASPM L1 is active. Upload throughput drops from 1+ Gbps to ~200 Mbps, and intermittent download drops to ~69 Mbps have been observed. The root cause is that MT7927's CONNINFRA power domain and WFDMA register access are unreliable when the PCIe link transitions in and out of L1 sleep state. Unlike MT7925, MT7927 depends on CONNINFRA being continuously accessible for CBTOP address remap, and its ROM reinitializes WFDMA on every CLR_OWN which can race with L1 transitions. Disable ASPM unconditionally for MT7927 at probe time using the existing mt76_pci_disable_aspm() helper, which handles both the device and parent bridge. This disables L0s in addition to L1; L0s power savings are negligible for a PCIe WLAN card and this avoids needing a separate L1-only code path with CONFIG_PCIEASPM fallback handling. After the disable, mt76_pci_aspm_supported() returns false so the 2-3 ms delay in __mt792xe_mcu_drv_pmctrl() is correctly skipped. The pci_disable_link_state() call persists across suspend/resume. Tested-by: Marcin FM Tested-by: Cristian-Florin Radoi Tested-by: George Salukvadze Tested-by: Evgeny Kapusta <3193631@gmail.com> Tested-by: Samu Toljamo Tested-by: Ariel Rosenfeld Tested-by: Chapuis Dario Tested-by: Thibaut Fran=C3=A7ois Tested-by: =E5=BC=A0=E6=97=AD=E6=B6=B5 Signed-off-by: Javier Tia --- drivers/net/wireless/mediatek/mt76/mt7925/pci.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/pci.c b/drivers/net/= wireless/mediatek/mt76/mt7925/pci.c index 6275e78777b0..e6830404c8fc 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7925/pci.c +++ b/drivers/net/wireless/mediatek/mt76/mt7925/pci.c @@ -516,7 +516,14 @@ static int mt7925_pci_probe(struct pci_dev *pdev, if (ret) goto err_free_pci_vec; =20 - if (mt7925_disable_aspm) + /* MT7927 CONNINFRA power domain and WFDMA register access are + * unreliable with PCIe L1 active, causing throughput to drop + * from 1+ Gbps to ~200 Mbps. Disable ASPM unconditionally + * rather than only L1, since L0s savings are negligible for + * a PCIe WLAN card and mt76_pci_disable_aspm() already + * handles both device and parent bridge in one call. + */ + if (mt7925_disable_aspm || is_mt7927_hw) mt76_pci_disable_aspm(pdev); =20 ops =3D mt792x_get_mac80211_ops(&pdev->dev, &mt7925_ops, --=20 2.53.0