From: William Hansen-Baird <william.hansen.baird@gmail.com>
To: pkshih@realtek.com
Cc: linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org,
William Hansen-Baird <william.hansen.baird@gmail.com>
Subject: [PATCH rtw-next v3 2/3] wifi: rtlwifi: convert pci if-statement to ID table
Date: Fri, 26 Jun 2026 11:56:47 +0200 [thread overview]
Message-ID: <20260626095648.1124924-3-william.hansen.baird@gmail.com> (raw)
In-Reply-To: <20260626095648.1124924-1-william.hansen.baird@gmail.com>
Refactor the ASUSTek quirk logic from an if-statement to a standard
rtl_aspm_quirks pci_device_id table. This allows future devices with
the same quirk to be added more easily while avoiding a large if-chain.
Signed-off-by: William Hansen-Baird <william.hansen.baird@gmail.com>
---
drivers/net/wireless/realtek/rtlwifi/pci.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/realtek/rtlwifi/pci.c b/drivers/net/wireless/realtek/rtlwifi/pci.c
index 38eca8d91581..44121203671c 100644
--- a/drivers/net/wireless/realtek/rtlwifi/pci.c
+++ b/drivers/net/wireless/realtek/rtlwifi/pci.c
@@ -31,6 +31,12 @@ static const u8 ac_to_hwq[] = {
BK_QUEUE
};
+static const struct pci_device_id rtl_aspm_quirks[] = {
+ /* ASUSTek F441U/X555UQ */
+ { PCI_DEVICE_SUB(PCI_VENDOR_ID_REALTEK, 0xb723, 0x11ad, 0x1723) },
+ { }
+};
+
static u8 _rtl_mac_to_hwqueue(struct ieee80211_hw *hw, struct sk_buff *skb)
{
struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
@@ -330,19 +336,15 @@ static void rtl_pci_init_aspm(struct ieee80211_hw *hw)
{
struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw));
struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw));
- struct rtl_priv *rtlpriv = rtl_priv(hw);
_rtl_pci_update_default_setting(hw);
/*
- * RTL8723BE found on some ASUSTek laptops, such as F441U and
- * X555UQ with subsystem ID 11ad:1723 are known to output large
+ * Certain pci devices are known to output large
* amounts of PCIe AER errors during and after boot up, causing
* heavy lags, poor network throughput, and occasional lock-ups.
*/
- if (rtlpriv->rtlhal.hw_type == HARDWARE_TYPE_RTL8723BE &&
- (rtlpci->pdev->subsystem_vendor == 0x11ad &&
- rtlpci->pdev->subsystem_device == 0x1723)) {
+ if (pci_match_id(rtl_aspm_quirks, rtlpci->pdev)) {
__rtl_pci_disable_aspm(hw);
ppsc->support_aspm = false;
}
--
2.54.0
next prev parent reply other threads:[~2026-06-26 9:57 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-26 9:56 [PATCH rtw-next v3 0/3] wifi: rtlwifi: fix ASPM AER flooding on RTL8723BE devices William Hansen-Baird
2026-06-26 9:56 ` [PATCH rtw-next v3 1/3] wifi: rtlwifi: fix disabling of ASPM for RTL8723BE with AER flooding William Hansen-Baird
2026-06-29 1:59 ` Ping-Ke Shih
2026-06-26 9:56 ` William Hansen-Baird [this message]
2026-06-29 2:01 ` [PATCH rtw-next v3 2/3] wifi: rtlwifi: convert pci if-statement to ID table Ping-Ke Shih
2026-06-26 9:56 ` [PATCH rtw-next v3 3/3] wifi: rtlwifi: disable ASPM for RTL8723BE with subsystem ID 17aa:b736 William Hansen-Baird
2026-06-30 14:15 ` [PATCH rtw-next v4 0/3] wifi: rtlwifi: fix ASPM AER flooding on RTL8723BE devices William Hansen-Baird
2026-06-30 14:15 ` [PATCH rtw-next v4 1/3] wifi: rtlwifi: fix disabling of ASPM for RTL8723BE with AER flooding William Hansen-Baird
2026-07-03 4:07 ` Ping-Ke Shih
2026-06-30 14:15 ` [PATCH rtw-next v4 2/3] wifi: rtlwifi: convert pci if-statement to ID table William Hansen-Baird
2026-06-30 14:15 ` [PATCH rtw-next v4 3/3] wifi: rtlwifi: disable ASPM for RTL8723BE with subsystem ID 17aa:b736 William Hansen-Baird
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=20260626095648.1124924-3-william.hansen.baird@gmail.com \
--to=william.hansen.baird@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=pkshih@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.