mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-31 10:31:33 -04:00
wifi: rtw88: disable ASPM and deep PS on ASUS TUF Gaming A15 FA506II
The RTL8822CE on the ASUS TUF Gaming A15 FA506II wedges during normal use. The driver watchdog toggles PCIe ASPM while leaving power save; the DBI read of the ASPM link-config register fails with -EIO, the PCIe link becomes unstable, and the device drops off the bus, taking Wi-Fi down until a cold power cycle: rtw88_8822ce 0000:03:00.0: failed to read ASPM, ret=-5 rtw88_8822ce 0000:03:00.0: firmware failed to leave lps state rtw88_8822ce 0000:03:00.0: mac power on failed This is the same platform ASPM inter-operability problem already handled for other machines through rtw_pci_quirks[]. Disabling PCI ASPM and deep power save on this model stops the failure. Add a DMI quirk so the workaround is applied automatically. Signed-off-by: Mihail Dimoski <mihaildimoski@gmail.com> Acked-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Link: https://patch.msgid.link/20260718124045.23493-1-mihaildimoski@gmail.com
This commit is contained in:
committed by
Ping-Ke Shih
parent
38c58d541c
commit
b0034a2e41
@@ -1779,6 +1779,16 @@ 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 = "ASUS TUF Gaming A15 FA506II",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
|
||||
DMI_MATCH(DMI_BOARD_NAME, "FA506II"),
|
||||
},
|
||||
.driver_data = (void *)(BIT(QUIRK_DIS_CAP_PCI_ASPM) |
|
||||
BIT(QUIRK_DIS_CAP_LPS_DEEP)),
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user