mac80211: add ath11k PCI support
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / ath11k / 0009-wifi-ath11k-Send-PME-message-during-wakeup-from-D3co.patch
diff --git a/package/kernel/mac80211/patches/ath11k/0009-wifi-ath11k-Send-PME-message-during-wakeup-from-D3co.patch b/package/kernel/mac80211/patches/ath11k/0009-wifi-ath11k-Send-PME-message-during-wakeup-from-D3co.patch
new file mode 100644 (file)
index 0000000..1e04c97
--- /dev/null
@@ -0,0 +1,39 @@
+From 3f9b09ccf7d5f23066b02881a737bee42def9d1a Mon Sep 17 00:00:00 2001
+From: Baochen Qiang <quic_bqiang@quicinc.com>
+Date: Mon, 10 Oct 2022 11:32:37 +0800
+Subject: [PATCH 9/9] wifi: ath11k: Send PME message during wakeup from D3cold
+
+We are seeing system stuck on some specific platforms due to
+WLAN chip fails to wakeup from D3cold state.
+
+With this flag, firmware will send PME message during wakeup
+and this issue is gone.
+
+Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3
+
+Signed-off-by: Baochen Qiang <quic_bqiang@quicinc.com>
+Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
+Link: https://lore.kernel.org/r/20221010033237.415478-1-quic_bqiang@quicinc.com
+---
+ drivers/net/wireless/ath/ath11k/qmi.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/net/wireless/ath/ath11k/qmi.c
++++ b/drivers/net/wireless/ath/ath11k/qmi.c
+@@ -19,6 +19,7 @@
+ #define SLEEP_CLOCK_SELECT_INTERNAL_BIT       0x02
+ #define HOST_CSTATE_BIT                       0x04
+ #define PLATFORM_CAP_PCIE_GLOBAL_RESET        0x08
++#define PLATFORM_CAP_PCIE_PME_D3COLD  0x10
+ #define FW_BUILD_ID_MASK "QC_IMAGE_VERSION_STRING="
+@@ -1752,6 +1753,8 @@ static int ath11k_qmi_host_cap_send(stru
+       if (ab->hw_params.global_reset)
+               req.nm_modem |= PLATFORM_CAP_PCIE_GLOBAL_RESET;
++      req.nm_modem |= PLATFORM_CAP_PCIE_PME_D3COLD;
++
+       ath11k_dbg(ab, ATH11K_DBG_QMI, "qmi host cap request\n");
+       ret = qmi_txn_init(&ab->qmi.handle, &txn,