summaryrefslogtreecommitdiff
path: root/package/madwifi/patches/310-noise_get.patch
blob: dec7217210644a9a82ad198244ad6149d6ae5d03 (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
Index: madwifi-dfs-r3053/ath/if_ath.c
===================================================================
--- madwifi-dfs-r3053.orig/ath/if_ath.c	2007-12-13 05:25:14.210435274 +0100
+++ madwifi-dfs-r3053/ath/if_ath.c	2007-12-13 05:25:14.558455106 +0100
@@ -1648,7 +1648,6 @@
 	/* XXXAPSD: build in check against max triggers we could see
 	 *          based on ic->ic_uapsdmaxtriggers. */
 	hw_tsf = ath_hal_gettsf64(ah);
-	ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
 
 	ATH_RXBUF_LOCK_IRQ(sc);
 	if (sc->sc_rxbufcur == NULL)
@@ -8815,6 +8814,7 @@
 		if (ath_calinterval == ATH_LONG_CALINTERVAL)
 			ath_calinterval = ATH_SHORT_CALINTERVAL;
 	}
+	ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
 
 	DPRINTF(sc, ATH_DEBUG_CALIBRATE, "%s: channel %u/%x -- IQ %s.\n",
 		__func__, sc->sc_curchan.channel, sc->sc_curchan.channelFlags,
@@ -8869,6 +8869,7 @@
 	struct ath_softc *sc = dev->priv;
 
 	(void) ath_chan_set(sc, ic->ic_curchan);
+	ic->ic_channoise = ath_hal_get_channel_noise(sc->sc_ah, &(sc->sc_curchan));
 	/*
 	 * If we are returning to our bss channel then mark state
 	 * so the next recv'd beacon's TSF will be used to sync the
@@ -9095,6 +9096,7 @@
 		}
 
 		ath_hal_process_noisefloor(ah);
+		ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
 		/*
 		 * Reset rssi stats; maybe not the best place...
 		 */