diff options
author | Kalle Valo <kvalo@codeaurora.org> | 2020-11-19 21:03:33 +0200 |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2020-11-19 21:03:33 +0200 |
commit | a9ce8040a968bdbb5aad2d767298d390e2507b16 (patch) | |
tree | a19eb9562a2528713a1d941785ab1661c2f97cec | |
parent | a327caa4a5a677161a6f1d29514e8cb42236e956 (diff) |
HACK: ath11k: add delays to suspend and resume handlersath11k-qca6390-bringup-202011191920
Resume was failing most of the time when connected to an AP. Adding these
delays seem to solve that, which points that we have a some kind of race
condition in ath11k.
This is not the proper fix, only a temporary workaround.
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
-rw-r--r-- | drivers/net/wireless/ath/ath11k/pci.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath11k/pci.c b/drivers/net/wireless/ath/ath11k/pci.c index 4f058ceaa0f1..044b09463873 100644 --- a/drivers/net/wireless/ath/ath11k/pci.c +++ b/drivers/net/wireless/ath/ath11k/pci.c @@ -1189,10 +1189,14 @@ static __maybe_unused int ath11k_pci_pm_suspend(struct device *dev) struct ath11k_base *ab = dev_get_drvdata(dev); int ret; + msleep(3000); + ret = ath11k_core_suspend(ab); if (ret) ath11k_warn(ab, "failed to suspend hif: %d\n", ret); + msleep(3000); + return ret; } @@ -1201,10 +1205,14 @@ static __maybe_unused int ath11k_pci_pm_resume(struct device *dev) struct ath11k_base *ab = dev_get_drvdata(dev); int ret; + msleep(3000); + ret = ath11k_core_resume(ab); if (ret) ath11k_warn(ab, "failed to resume hif: %d\n", ret); + msleep(3000); + return ret; } |