-Index: madwifi-ng-r2834-20071106/ath/if_ath.c
+Index: madwifi-trunk-r3314/ath/if_ath.c
===================================================================
---- madwifi-ng-r2834-20071106.orig/ath/if_ath.c 2007-11-07 14:02:05.625691466 +0100
-+++ madwifi-ng-r2834-20071106/ath/if_ath.c 2007-11-07 14:02:06.001712892 +0100
-@@ -1417,7 +1417,6 @@
+--- madwifi-trunk-r3314.orig/ath/if_ath.c 2008-02-20 21:58:41.864545316 +0100
++++ madwifi-trunk-r3314/ath/if_ath.c 2008-02-20 21:58:45.732765757 +0100
+@@ -1692,8 +1692,6 @@
+ * get to reality. This value is used in monitor mode and by tools like
* Wireshark and Kismet.
*/
- 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)
-@@ -8182,6 +8181,7 @@
- struct net_device *dev = (struct net_device *) arg;
- struct ath_softc *sc = dev->priv;
- struct ath_hal *ah = sc->sc_ah;
-+ struct ieee80211com *ic = &sc->sc_ic;
- /* u_int32_t nchans; */
- HAL_BOOL isIQdone = AH_FALSE;
-
-@@ -8210,6 +8210,7 @@
- ath_calinterval = ATH_LONG_CALINTERVAL;
- else
- ath_calinterval = ATH_SHORT_CALINTERVAL;
+ sc->sc_rxbufcur = STAILQ_FIRST(&sc->sc_rxbuf);
+@@ -8959,6 +8957,7 @@
+ sc->sc_curchan.channel);
+ sc->sc_stats.ast_per_calfail++;
+ }
+ ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
- sc->sc_cal_ch.expires = jiffies + (ath_calinterval * HZ);
- add_timer(&sc->sc_cal_ch);
-@@ -8260,6 +8261,7 @@
+ ath_hal_process_noisefloor(ah);
+ if (isIQdone == AH_TRUE) {
+@@ -9027,6 +9026,7 @@
struct ath_softc *sc = dev->priv;
(void) ath_chan_set(sc, ic->ic_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
-@@ -8474,6 +8476,7 @@
+@@ -9295,6 +9295,7 @@
}
ath_hal_process_noisefloor(ah);
+ ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
/*
- * Configure the beacon and sleep timers.
+ * Reset rssi stats; maybe not the best place...
*/