Opennet Firmware
radar_silent_chirp.patch
gehe zur Dokumentation dieser Datei
1 Deactivate messages "not enough packets for chirp".
2 
3 Author: Kai-Uwe
4 
5 Index: on_firmware/openwrt/package/kernel/mac80211/patches/ath/495_silent_chirp.patch
6 ===================================================================
7 --- /dev/null
8 +++ on_firmware/openwrt/package/kernel/mac80211/patches/ath/495_silent_chirp.patch
9 @@ -0,0 +1,75 @@
10 +--- a/drivers/net/wireless/ath/ath9k/dfs.c
11 ++++ b/drivers/net/wireless/ath/ath9k/dfs.c
12 +@@ -112,16 +112,16 @@
13 + if (num_fft_packets == 0)
14 + return false;
15 +
16 +- ath_dbg(common, DFS, "HT40: datalen=%d, num_fft_packets=%d\n",
17 +- datalen, num_fft_packets);
18 ++ //ath_dbg(common, DFS, "HT40: datalen=%d, num_fft_packets=%d\n",
19 ++ //datalen, num_fft_packets);
20 + if (num_fft_packets < FFT_NUM_SAMPLES) {
21 +- ath_dbg(common, DFS, "not enough packets for chirp\n");
22 ++ //ath_dbg(common, DFS, "not enough packets for chirp\n");
23 + return false;
24 + }
25 + /* HW sometimes adds 2 garbage bytes in front of FFT samples */
26 + if ((datalen % sizeof(*fft)) == 2) {
27 + fft = (struct ath9k_dfs_fft_40 *) (data + 2);
28 +- ath_dbg(common, DFS, "fixing datalen by 2\n");
29 ++ //ath_dbg(common, DFS, "fixing datalen by 2\n");
30 + }
31 + if (IS_CHAN_HT40MINUS(ah->curchan))
32 + swap(is_ctl, is_ext);
33 +@@ -134,18 +134,18 @@
34 + int num_fft_packets = datalen / sizeof(*fft);
35 + if (num_fft_packets == 0)
36 + return false;
37 +- ath_dbg(common, DFS, "HT20: datalen=%d, num_fft_packets=%d\n",
38 +- datalen, num_fft_packets);
39 ++ //ath_dbg(common, DFS, "HT20: datalen=%d, num_fft_packets=%d\n",
40 ++ //datalen, num_fft_packets);
41 + if (num_fft_packets < FFT_NUM_SAMPLES) {
42 +- ath_dbg(common, DFS, "not enough packets for chirp\n");
43 ++ //ath_dbg(common, DFS, "not enough packets for chirp\n");
44 + return false;
45 + }
46 + /* in ht20, this is a 6-bit signed number => shift it to 0 */
47 + for (i = 0; i < FFT_NUM_SAMPLES; i++)
48 + max_bin[i] = fft_max_index(fft[i].lower_bins) ^ 0x20;
49 + }
50 +- ath_dbg(common, DFS, "bin_max = [%d, %d, %d, %d]\n",
51 +- max_bin[0], max_bin[1], max_bin[2], max_bin[3]);
52 ++ //ath_dbg(common, DFS, "bin_max = [%d, %d, %d, %d]\n",
53 ++ //max_bin[0], max_bin[1], max_bin[2], max_bin[3]);
54 +
55 + /* Check for chirp attributes within specs
56 + * a) delta of adjacent max_bins is within range
57 +@@ -158,21 +158,21 @@
58 +
59 + /* ensure gradient is within valid range */
60 + if (abs(delta) < BIN_DELTA_MIN || abs(delta) > BIN_DELTA_MAX) {
61 +- ath_dbg(common, DFS, "CHIRP: invalid delta %d "
62 +- "in sample %d\n", delta, i);
63 ++ //ath_dbg(common, DFS, "CHIRP: invalid delta %d "
64 ++ //"in sample %d\n", delta, i);
65 + return false;
66 + }
67 + if (i == 0)
68 + goto done;
69 + ddelta = delta - prev_delta;
70 + if (abs(ddelta) > MAX_DIFF) {
71 +- ath_dbg(common, DFS, "CHIRP: ddelta %d too high\n",
72 +- ddelta);
73 ++ //ath_dbg(common, DFS, "CHIRP: ddelta %d too high\n",
74 ++ //ddelta);
75 + return false;
76 + }
77 + done:
78 +- ath_dbg(common, DFS, "CHIRP - %d: delta=%d, ddelta=%d\n",
79 +- i, delta, ddelta);
80 ++ //ath_dbg(common, DFS, "CHIRP - %d: delta=%d, ddelta=%d\n",
81 ++ //i, delta, ddelta);
82 + prev_delta = delta;
83 + }
84 + return true;