All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ping-Ke Shih <pkshih@realtek.com>
To: <linux-wireless@vger.kernel.org>
Cc: <owen.hsiao@realtek.com>, <echuang@realtek.com>,
	<henchy.chen@realtek.com>, <phhuang@realtek.com>,
	<kevin_yang@realtek.com>
Subject: [PATCH rtw-next v2 01/14] wifi: rtw89: 8922de: add low latency quirk for Valve device
Date: Wed, 2 Sep 2026 13:29:45 +0800	[thread overview]
Message-ID: <20260902052958.50371-2-pkshih@realtek.com> (raw)
In-Reply-To: <20260902052958.50371-1-pkshih@realtek.com>

From: Hsiao-Yung Chen <henchy.chen@realtek.com>

Add RTW89_QUIRK_LOW_LATENCY to the rtw89_quirks enum for
latency-sensitive platforms. When set, the RA report handler skips
computing max_agg_wait and leaves it at its default of zero, which
makes rtw89_core_txq_agg_wait() bail out early, so frames are
dispatched immediately instead of being held to build an aggregate,
trading throughput for lower latency.

Apply the quirk for the Valve device (SSID 0x1e44:0x1400) on the
8922DE, and add RTW89_CUSTID_VALVE for that customer ID.

Signed-off-by: Hsiao-Yung Chen <henchy.chen@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
---
 drivers/net/wireless/realtek/rtw89/core.h      | 2 ++
 drivers/net/wireless/realtek/rtw89/phy.c       | 3 ++-
 drivers/net/wireless/realtek/rtw89/rtw8922de.c | 8 +++++++-
 3 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/realtek/rtw89/core.h b/drivers/net/wireless/realtek/rtw89/core.h
index 2b21d969ece7..b1a0103aaf0c 100644
--- a/drivers/net/wireless/realtek/rtw89/core.h
+++ b/drivers/net/wireless/realtek/rtw89/core.h
@@ -6465,6 +6465,7 @@ enum rtw89_quirks {
 	RTW89_QUIRK_THERMAL_PROT_110C,
 	RTW89_QUIRK_HW_INFO_SYSFS,
 	RTW89_QUIRK_DISABLE_2GHZ,
+	RTW89_QUIRK_LOW_LATENCY,
 
 	NUM_OF_RTW89_QUIRKS,
 };
@@ -6479,6 +6480,7 @@ enum rtw89_custid {
 	RTW89_CUSTID_AMD = 6,
 	RTW89_CUSTID_FUJITSU = 7,
 	RTW89_CUSTID_DELL = 8,
+	RTW89_CUSTID_VALVE, /* driver only */
 };
 
 enum rtw89_pkt_drop_sel {
diff --git a/drivers/net/wireless/realtek/rtw89/phy.c b/drivers/net/wireless/realtek/rtw89/phy.c
index c78107e92206..ebf6ecf08c35 100644
--- a/drivers/net/wireless/realtek/rtw89/phy.c
+++ b/drivers/net/wireless/realtek/rtw89/phy.c
@@ -3345,7 +3345,8 @@ static void __rtw89_phy_c2h_ra_rpt_iter(struct rtw89_sta_link *rtwsta_link,
 		*changed = true;
 	}
 
-	rtwsta_link->max_agg_wait = link_sta->agg.max_rc_amsdu_len / 1500 - 1;
+	if (!test_bit(RTW89_QUIRK_LOW_LATENCY, rtwdev->quirks))
+		rtwsta_link->max_agg_wait = link_sta->agg.max_rc_amsdu_len / 1500 - 1;
 }
 
 static void rtw89_phy_c2h_ra_rpt_iter(void *data, struct ieee80211_sta *sta)
diff --git a/drivers/net/wireless/realtek/rtw89/rtw8922de.c b/drivers/net/wireless/realtek/rtw89/rtw8922de.c
index a71e41f28544..b8dbb680c3bd 100644
--- a/drivers/net/wireless/realtek/rtw89/rtw8922de.c
+++ b/drivers/net/wireless/realtek/rtw89/rtw8922de.c
@@ -9,6 +9,12 @@
 #include "reg.h"
 #include "rtw8922d.h"
 
+static const struct rtw89_pci_ssid_quirk rtw8922de_pci_ssid_quirks[] = {
+	{RTW89_PCI_SSID(PCI_VENDOR_ID_REALTEK, 0x895D, 0x1E44, 0x1400, VALVE),
+		.bitmap = BIT(RTW89_QUIRK_LOW_LATENCY)},
+	{},
+};
+
 static const struct rtw89_pci_info rtw8922d_pci_info = {
 	.gen_def		= &rtw89_pci_gen_be,
 	.isr_def		= &rtw89_pci_isr_be_v1,
@@ -66,7 +72,7 @@ static const struct rtw89_pci_info rtw8922d_pci_info = {
 	.disable_intr		= rtw89_pci_disable_intr_v3,
 	.recognize_intrs	= rtw89_pci_recognize_intrs_v3,
 
-	.ssid_quirks		= NULL,
+	.ssid_quirks		= rtw8922de_pci_ssid_quirks,
 };
 
 static const struct rtw89_driver_info rtw89_8922de_vs_info = {
-- 
2.25.1


  reply	other threads:[~2026-09-02  5:30 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-02  5:29 [PATCH rtw-next v2 00/14] wifi: rtw89: update RTL8922D capabilities and settings, and enable P2P device Ping-Ke Shih
2026-09-02  5:29 ` Ping-Ke Shih [this message]
2026-09-08  3:15   ` [PATCH rtw-next v2 01/14] wifi: rtw89: 8922de: add low latency quirk for Valve device Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 02/14] wifi: rtw89: 8922d: disable VCORE for thermal protection by default Ping-Ke Shih
2026-09-08  6:03   ` Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 03/14] wifi: rtw89: allow two station interfaces in SCC Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 04/14] wifi: rtw89: 8922d: update BB wrapper RFSI ctrl to v4 Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 05/14] wifi: rtw89: 8922d: set BB wrapper settings according to operating channel Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 06/14] wifi: rtw89: 8922d: move conditionally disabled TX shape to common flow Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 07/14] wifi: rtw89: 8922d: update BB wrapper RFSI ctrl to v5 Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 08/14] wifi: rtw89: 8922d: send RFE type to firmware Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 09/14] wifi: rtw89: 8922d: bypass RX IQK when scan Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 10/14] wifi: rtw89: 8922d: correct selection of CCK rate circuit Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 11/14] wifi: rtw89: chan: introduce helper and refine active list iteration Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 12/14] wifi: rtw89: regd: check only active vifs when recalculating 6 GHz power type Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 13/14] wifi: rtw89: skip tracking things when entity is paused Ping-Ke Shih
2026-09-02  5:29 ` [PATCH rtw-next v2 14/14] wifi: rtw89: add p2p device declaration Ping-Ke Shih
2026-09-06  0:20 ` [PATCH rtw-next v2 00/14] wifi: rtw89: update RTL8922D capabilities and settings, and enable P2P device Maxim Skokov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260902052958.50371-2-pkshih@realtek.com \
    --to=pkshih@realtek.com \
    --cc=echuang@realtek.com \
    --cc=henchy.chen@realtek.com \
    --cc=kevin_yang@realtek.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=owen.hsiao@realtek.com \
    --cc=phhuang@realtek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.