[PATCH] wifi: rtw88: disable ASPM for Lenovo IdeaPad S340-14IWL

Ata İlhan Köktürk posted 1 patch 1 month, 1 week ago
There is a newer version of this series
drivers/net/wireless/realtek/rtw88/pci.c | 9 +++++++++
1 file changed, 9 insertions(+)
[PATCH] wifi: rtw88: disable ASPM for Lenovo IdeaPad S340-14IWL
Posted by Ata İlhan Köktürk 1 month, 1 week ago
The Lenovo IdeaPad S340-14IWL (DMI product name "81N4") experiences
severe connectivity issues with the rtw88 PCIe wireless card when
ASPM is enabled. Reported symptoms include frequent disconnections,
kernel panics, and the driver failing to load.

The issue can be worked around by either adding pci=noaspm to the
kernel command line or by reloading the driver via modprobe. Add a
DMI quirk to disable ASPM automatically for this device.

Signed-off-by: Ata İlhan Köktürk <atailhan2006@gmail.com>
---
 drivers/net/wireless/realtek/rtw88/pci.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/net/wireless/realtek/rtw88/pci.c b/drivers/net/wireless/realtek/rtw88/pci.c
index a30467228..9df8954d8 100644
--- a/drivers/net/wireless/realtek/rtw88/pci.c
+++ b/drivers/net/wireless/realtek/rtw88/pci.c
@@ -1779,6 +1779,15 @@ static const struct dmi_system_id rtw_pci_quirks[] = {
 		.driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM) |
 					BIT(QUIRK_DIS_CAP_LPS_DEEP)),
 	},
+	{
+		.callback = rtw_pci_disable_caps,
+		.ident = "Lenovo IdeaPad S340-14IWL",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "81N4"),
+		},
+		.driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM)),
+	},
 	{}
 };
 
-- 
2.55.0

Re: [PATCH] wifi: rtw88: disable ASPM for Lenovo IdeaPad S340-14IWL
Posted by Bitterblue Smith 1 month, 1 week ago
On 20/08/2026 13:16, Ata İlhan Köktürk wrote:
> The Lenovo IdeaPad S340-14IWL (DMI product name "81N4") experiences
> severe connectivity issues with the rtw88 PCIe wireless card when
> ASPM is enabled. Reported symptoms include frequent disconnections,
> kernel panics, and the driver failing to load.
> 
> The issue can be worked around by either adding pci=noaspm to the
> kernel command line or by reloading the driver via modprobe. Add a
> DMI quirk to disable ASPM automatically for this device.
> 
> Signed-off-by: Ata İlhan Köktürk <atailhan2006@gmail.com>
> ---
>  drivers/net/wireless/realtek/rtw88/pci.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/net/wireless/realtek/rtw88/pci.c b/drivers/net/wireless/realtek/rtw88/pci.c
> index a30467228..9df8954d8 100644
> --- a/drivers/net/wireless/realtek/rtw88/pci.c
> +++ b/drivers/net/wireless/realtek/rtw88/pci.c
> @@ -1779,6 +1779,15 @@ static const struct dmi_system_id rtw_pci_quirks[] = {
>  		.driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM) |
>  					BIT(QUIRK_DIS_CAP_LPS_DEEP)),
>  	},
> +	{
> +		.callback = rtw_pci_disable_caps,
> +		.ident = "Lenovo IdeaPad S340-14IWL",
> +		.matches = {
> +			DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> +			DMI_MATCH(DMI_PRODUCT_NAME, "81N4"),
> +		},
> +		.driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM)),
> +	},
>  	{}
>  };
>  

By the way, what wifi chip do you have? It would be good to mention
that in the summary.
RE: [PATCH] wifi: rtw88: disable ASPM for Lenovo IdeaPad S340-14IWL
Posted by Ping-Ke Shih 1 month, 1 week ago
Ata İlhan Köktürk <atailhan2006@gmail.com> wrote:
> The Lenovo IdeaPad S340-14IWL (DMI product name "81N4") experiences
> severe connectivity issues with the rtw88 PCIe wireless card when
> ASPM is enabled. Reported symptoms include frequent disconnections,
> kernel panics, and the driver failing to load.
> 
> The issue can be worked around by either adding pci=noaspm to the
> kernel command line or by reloading the driver via modprobe. Add a
> DMI quirk to disable ASPM automatically for this device.
> 
> Signed-off-by: Ata İlhan Köktürk <atailhan2006@gmail.com>
> ---
>  drivers/net/wireless/realtek/rtw88/pci.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/net/wireless/realtek/rtw88/pci.c b/drivers/net/wireless/realtek/rtw88/pci.c
> index a30467228..9df8954d8 100644
> --- a/drivers/net/wireless/realtek/rtw88/pci.c
> +++ b/drivers/net/wireless/realtek/rtw88/pci.c
> @@ -1779,6 +1779,15 @@ static const struct dmi_system_id rtw_pci_quirks[] = {
>                 .driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM) |
>                                         BIT(QUIRK_DIS_CAP_LPS_DEEP)),
>         },
> +       {
> +               .callback = rtw_pci_disable_caps,
> +               .ident = "Lenovo IdeaPad S340-14IWL",
> +               .matches = {
> +                       DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> +                       DMI_MATCH(DMI_PRODUCT_NAME, "81N4"),
> +               },
> +               .driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM)),

Remove redundant parenthesis. 

.driver_data = (void *)BIT(QUIRK_DIS_CAP_PCI_ASPM),


> +       },
>         {}
>  };
> 
> --
> 2.55.0