]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Reapply "wifi: ath11k: restore country code during resume"
authorBaochen Qiang <quic_bqiang@quicinc.com>
Fri, 28 Mar 2025 05:32:29 +0000 (13:32 +0800)
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>
Mon, 31 Mar 2025 21:43:13 +0000 (14:43 -0700)
This reverts commit d3e154d7776ba57ab679fb816fb87b627fba21c9.

With non-WoWLAN suspend support brought back, commit 7f0343b7b871 ("wifi:
ath11k: restore country code during resume") needs to be brought back
as well.

Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.30

Tested-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Tested-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Baochen Qiang <quic_bqiang@quicinc.com>
Link: https://patch.msgid.link/20250328-ath11k-bring-hibernation-back-v3-6-23405ae23431@quicinc.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
drivers/net/wireless/ath/ath11k/core.c

index cde009c3bdaf1e7a4f64a10df61029ef83408cd0..3f0e8e65e8e907d70705634b62909886a09b3b70 100644 (file)
@@ -1185,6 +1185,7 @@ EXPORT_SYMBOL(ath11k_core_resume_early);
 
 static int ath11k_core_resume_default(struct ath11k_base *ab)
 {
+       struct ath11k *ar;
        long time_left;
        int ret;
 
@@ -1195,6 +1196,20 @@ static int ath11k_core_resume_default(struct ath11k_base *ab)
                return -ETIMEDOUT;
        }
 
+       /* So far only single_pdev_only devices can reach here,
+        * so it is valid to handle the first, and the only, pdev.
+        */
+       ar = ab->pdevs[0].ar;
+       if (ab->hw_params.current_cc_support &&
+           ar->alpha2[0] != 0 && ar->alpha2[1] != 0) {
+               ret = ath11k_reg_set_cc(ar);
+               if (ret) {
+                       ath11k_warn(ab, "failed to set country code during resume: %d\n",
+                                   ret);
+                       return ret;
+               }
+       }
+
        ret = ath11k_dp_rx_pktlog_start(ab);
        if (ret)
                ath11k_warn(ab, "failed to start rx pktlog during resume: %d\n",