blob: 46c480aac2f8f747341dfcd60c63ca3bd8b32f64 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
--- a/ath/if_ath.c
+++ b/ath/if_ath.c
@@ -1774,17 +1774,14 @@
* may have occurred in the intervening timeframe. */
bf->bf_channoise = ic->ic_channoise;
- if (rs->rs_status) {
- if ((HAL_RXERR_PHY == rs->rs_status) &&
- (HAL_PHYERR_RADAR ==
- (rs->rs_phyerr & 0x1f)) &&
- (0 == (bf->bf_status &
- ATH_BUFSTATUS_RADAR_DONE))) {
- check_for_radar = 1;
- }
- /* Skip past the error now */
+ if ((HAL_RXERR_PHY == rs->rs_status) &&
+ (HAL_PHYERR_RADAR == (rs->rs_phyerr & 0x1f)) &&
+ (0 == (bf->bf_status & ATH_BUFSTATUS_RADAR_DONE)) &&
+ (ic->ic_flags & IEEE80211_F_DOTH))
+ check_for_radar = 1;
+
+ if (rs->rs_status) /* Skip past the error now */
continue;
- }
/* Prepare wireless header for examination */
bus_dma_sync_single(sc->sc_bdev, bf->bf_skbaddr,
--- a/ath/if_ath_radar.c
+++ b/ath/if_ath_radar.c
@@ -261,7 +261,7 @@
unsigned int new_rxfilt = old_rxfilt;
ath_hal_intrset(ah, old_ier & ~HAL_INT_GLOBAL);
- if (required) {
+ if ((required) && (ic->ic_flags & IEEE80211_F_DOTH)) {
new_radar |= AR5K_PHY_RADAR_ENABLE;
new_filter |= AR5K_AR5212_PHY_ERR_FIL_RADAR;
new_rxfilt |= (HAL_RX_FILTER_PHYERR |
|