summaryrefslogtreecommitdiff
path: root/package/kernel/mac80211/patches/303-ath9k-add-DFS-support-for-extension-channel.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/303-ath9k-add-DFS-support-for-extension-channel.patch')
-rw-r--r--package/kernel/mac80211/patches/303-ath9k-add-DFS-support-for-extension-channel.patch76
1 files changed, 0 insertions, 76 deletions
diff --git a/package/kernel/mac80211/patches/303-ath9k-add-DFS-support-for-extension-channel.patch b/package/kernel/mac80211/patches/303-ath9k-add-DFS-support-for-extension-channel.patch
deleted file mode 100644
index ed268ea..0000000
--- a/package/kernel/mac80211/patches/303-ath9k-add-DFS-support-for-extension-channel.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From: Zefir Kurtisi <zefir.kurtisi@neratec.com>
-Date: Tue, 10 Mar 2015 17:49:30 +0100
-Subject: [PATCH] ath9k: add DFS support for extension channel
-
-In HT40 modes, pulse events on primary and extension
-channel are processed individually. If valid, a pulse
-event will be fed into the detector
-* for primary frequency, or
-* for extension frequency (+/-20MHz based on HT40-mode)
-* or both
-
-With that, a 40MHz radar will result in two individual
-radar events.
-
-Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com>
----
-
---- a/drivers/net/wireless/ath/ath9k/dfs.c
-+++ b/drivers/net/wireless/ath/ath9k/dfs.c
-@@ -126,8 +126,19 @@ ath9k_postprocess_radar_event(struct ath
- DFS_STAT_INC(sc, pulses_detected);
- return true;
- }
--#undef PRI_CH_RADAR_FOUND
--#undef EXT_CH_RADAR_FOUND
-+
-+static void
-+ath9k_dfs_process_radar_pulse(struct ath_softc *sc, struct pulse_event *pe)
-+{
-+ struct dfs_pattern_detector *pd = sc->dfs_detector;
-+ DFS_STAT_INC(sc, pulses_processed);
-+ if (pd == NULL)
-+ return;
-+ if (!pd->add_pulse(pd, pe))
-+ return;
-+ DFS_STAT_INC(sc, radar_detected);
-+ ieee80211_radar_detected(sc->hw);
-+}
-
- /*
- * DFS: check PHY-error for radar pulse and feed the detector
-@@ -176,18 +187,21 @@ void ath9k_dfs_process_phyerr(struct ath
- ard.pulse_length_pri = vdata_end[-3];
- pe.freq = ah->curchan->channel;
- pe.ts = mactime;
-- if (ath9k_postprocess_radar_event(sc, &ard, &pe)) {
-- struct dfs_pattern_detector *pd = sc->dfs_detector;
-- ath_dbg(common, DFS,
-- "ath9k_dfs_process_phyerr: channel=%d, ts=%llu, "
-- "width=%d, rssi=%d, delta_ts=%llu\n",
-- pe.freq, pe.ts, pe.width, pe.rssi,
-- pe.ts - sc->dfs_prev_pulse_ts);
-- sc->dfs_prev_pulse_ts = pe.ts;
-- DFS_STAT_INC(sc, pulses_processed);
-- if (pd != NULL && pd->add_pulse(pd, &pe)) {
-- DFS_STAT_INC(sc, radar_detected);
-- ieee80211_radar_detected(sc->hw);
-- }
-+ if (!ath9k_postprocess_radar_event(sc, &ard, &pe))
-+ return;
-+
-+ ath_dbg(common, DFS,
-+ "ath9k_dfs_process_phyerr: type=%d, freq=%d, ts=%llu, "
-+ "width=%d, rssi=%d, delta_ts=%llu\n",
-+ ard.pulse_bw_info, pe.freq, pe.ts, pe.width, pe.rssi,
-+ pe.ts - sc->dfs_prev_pulse_ts);
-+ sc->dfs_prev_pulse_ts = pe.ts;
-+ if (ard.pulse_bw_info & PRI_CH_RADAR_FOUND)
-+ ath9k_dfs_process_radar_pulse(sc, &pe);
-+ if (ard.pulse_bw_info & EXT_CH_RADAR_FOUND) {
-+ pe.freq += IS_CHAN_HT40PLUS(ah->curchan) ? 20 : -20;
-+ ath9k_dfs_process_radar_pulse(sc, &pe);
- }
- }
-+#undef PRI_CH_RADAR_FOUND
-+#undef EXT_CH_RADAR_FOUND