mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 22:47:56 +00:00
789a0bac35
Synchronize the ath11k backports with the current ath-next tree. This brings in actually setting the MU-MIMO parameters in HW and 6GHz regulatory support along with some minor resource handling fixes. This allows to easily backport further fixes as cherry picking them has started requiring manual conflict resolution. Signed-off-by: Robert Marko <robimarko@gmail.com>
44 lines
1.5 KiB
Diff
44 lines
1.5 KiB
Diff
From 7c15430822e71e90203d87e6d0cfe83fa058b0dc Mon Sep 17 00:00:00 2001
|
|
From: Len Brown <len.brown@intel.com>
|
|
Date: Wed, 1 Feb 2023 12:32:01 -0600
|
|
Subject: [PATCH] wifi: ath11k: allow system suspend to survive ath11k
|
|
|
|
When ath11k runs into internal errors upon suspend,
|
|
it returns an error code to pci_pm_suspend, which
|
|
aborts the entire system suspend.
|
|
|
|
The driver should not abort system suspend, but should
|
|
keep its internal errors to itself, and allow the system
|
|
to suspend. Otherwise, a user can suspend a laptop
|
|
by closing the lid and sealing it into a case, assuming
|
|
that is will suspend, rather than heating up and draining
|
|
the battery when in transit.
|
|
|
|
In practice, the ath11k device seems to have plenty of transient
|
|
errors, and subsequent suspend cycles after this failure
|
|
often succeed.
|
|
|
|
https://bugzilla.kernel.org/show_bug.cgi?id=216968
|
|
|
|
Fixes: d1b0c33850d29 ("ath11k: implement suspend for QCA6390 PCI devices")
|
|
|
|
Signed-off-by: Len Brown <len.brown@intel.com>
|
|
Cc: stable@vger.kernel.org
|
|
Signed-off-by: Kalle Valo <kvalo@kernel.org>
|
|
Link: https://lore.kernel.org/r/20230201183201.14431-1-len.brown@intel.com
|
|
---
|
|
drivers/net/wireless/ath/ath11k/pci.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
--- a/drivers/net/wireless/ath/ath11k/pci.c
|
|
+++ b/drivers/net/wireless/ath/ath11k/pci.c
|
|
@@ -981,7 +981,7 @@ static __maybe_unused int ath11k_pci_pm_
|
|
if (ret)
|
|
ath11k_warn(ab, "failed to suspend core: %d\n", ret);
|
|
|
|
- return ret;
|
|
+ return 0;
|
|
}
|
|
|
|
static __maybe_unused int ath11k_pci_pm_resume(struct device *dev)
|