aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/380-0006-ath10k-add-support-to-configure-channel-dwell-time.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/380-0006-ath10k-add-support-to-configure-channel-dwell-time.patch')
-rw-r--r--package/kernel/mac80211/patches/380-0006-ath10k-add-support-to-configure-channel-dwell-time.patch92
1 files changed, 0 insertions, 92 deletions
diff --git a/package/kernel/mac80211/patches/380-0006-ath10k-add-support-to-configure-channel-dwell-time.patch b/package/kernel/mac80211/patches/380-0006-ath10k-add-support-to-configure-channel-dwell-time.patch
deleted file mode 100644
index 3451a9930b..0000000000
--- a/package/kernel/mac80211/patches/380-0006-ath10k-add-support-to-configure-channel-dwell-time.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From be8cce96f14dc925ecfb702be0392a52cf78adb5 Mon Sep 17 00:00:00 2001
-From: Pradeep Kumar Chitrapu <pradeepc@codeaurora.org>
-Date: Wed, 23 May 2018 11:09:09 +0300
-Subject: [PATCH] ath10k: add support to configure channel dwell time
-
-Configure channel dwell time from duration of the scan request
-received from mac80211 when the duration is non-zero. When the
-scan request does not have duration value, use the default ones,
-the current implementation.
-
-Corresponding flag NL80211_EXT_FEATURE_SET_SCAN_DWELL is
-advertized.
-
-Supported Chipsets:
- -QCA988X/QCA9887 PCI
- -QCA99X0/QCA9984/QCA9888/QCA4019 PCI
- -QCA6174/QCA9377 PCI/USB/SDIO
- -WCN3990 SNOC
-
-Tested on QCA9984 with firmware ver 10.4-3.6-0010
-
-Signed-off-by: Pradeep Kumar Chitrapu <pradeepc@codeaurora.org>
-Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
----
- drivers/net/wireless/ath/ath10k/core.h | 1 +
- drivers/net/wireless/ath/ath10k/mac.c | 23 ++++++++++++++++++++---
- 2 files changed, 21 insertions(+), 3 deletions(-)
-
---- a/drivers/net/wireless/ath/ath10k/core.h
-+++ b/drivers/net/wireless/ath/ath10k/core.h
-@@ -43,6 +43,7 @@
- #define WO(_f) ((_f##_OFFSET) >> 2)
-
- #define ATH10K_SCAN_ID 0
-+#define ATH10K_SCAN_CHANNEL_SWITCH_WMI_EVT_OVERHEAD 10 /* msec */
- #define WMI_READY_TIMEOUT (5 * HZ)
- #define ATH10K_FLUSH_TIMEOUT_HZ (5 * HZ)
- #define ATH10K_CONNECTION_LOSS_HZ (3 * HZ)
---- a/drivers/net/wireless/ath/ath10k/mac.c
-+++ b/drivers/net/wireless/ath/ath10k/mac.c
-@@ -5597,6 +5597,7 @@ static int ath10k_hw_scan(struct ieee802
- struct wmi_start_scan_arg arg;
- int ret = 0;
- int i;
-+ u32 scan_timeout;
-
- mutex_lock(&ar->conf_mutex);
-
-@@ -5647,6 +5648,22 @@ static int ath10k_hw_scan(struct ieee802
- arg.channels[i] = req->channels[i]->center_freq;
- }
-
-+ /* if duration is set, default dwell times will be overwritten */
-+ if (req->duration) {
-+ arg.dwell_time_active = req->duration;
-+ arg.dwell_time_passive = req->duration;
-+ arg.burst_duration_ms = req->duration;
-+
-+ scan_timeout = min_t(u32, arg.max_rest_time *
-+ (arg.n_channels - 1) + (req->duration +
-+ ATH10K_SCAN_CHANNEL_SWITCH_WMI_EVT_OVERHEAD) *
-+ arg.n_channels, arg.max_scan_time + 200);
-+
-+ } else {
-+ /* Add a 200ms margin to account for event/command processing */
-+ scan_timeout = arg.max_scan_time + 200;
-+ }
-+
- ret = ath10k_start_scan(ar, &arg);
- if (ret) {
- ath10k_warn(ar, "failed to start hw scan: %d\n", ret);
-@@ -5655,10 +5672,8 @@ static int ath10k_hw_scan(struct ieee802
- spin_unlock_bh(&ar->data_lock);
- }
-
-- /* Add a 200ms margin to account for event/command processing */
- ieee80211_queue_delayed_work(ar->hw, &ar->scan.timeout,
-- msecs_to_jiffies(arg.max_scan_time +
-- 200));
-+ msecs_to_jiffies(scan_timeout));
-
- exit:
- mutex_unlock(&ar->conf_mutex);
-@@ -8267,6 +8282,8 @@ int ath10k_mac_register(struct ath10k *a
- }
-
- wiphy_ext_feature_set(ar->hw->wiphy, NL80211_EXT_FEATURE_VHT_IBSS);
-+ wiphy_ext_feature_set(ar->hw->wiphy,
-+ NL80211_EXT_FEATURE_SET_SCAN_DWELL);
-
- /*
- * on LL hardware queues are managed entirely by the FW