blob: 2336d7484ea6e8a2d10aae7a204d290868548cfe (
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
@@ -1778,17 +1778,14 @@ ath_uapsd_processtriggers(struct ath_sof
* 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
@@ -265,7 +265,7 @@ int ath_radar_update(struct ath_softc *s
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 |
|