Root/package/madwifi/patches/310-noise_get.patch

1--- a/ath/if_ath.c
2+++ b/ath/if_ath.c
3@@ -1699,8 +1699,6 @@ ath_uapsd_processtriggers(struct ath_sof
4      * get to reality. This value is used in monitor mode and by tools like
5      * Wireshark and Kismet.
6      */
7- ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
8-
9     ATH_RXBUF_LOCK_IRQ(sc);
10     if (sc->sc_rxbufcur == NULL)
11         sc->sc_rxbufcur = STAILQ_FIRST(&sc->sc_rxbuf);
12@@ -8975,6 +8973,7 @@ ath_calibrate(unsigned long arg)
13             sc->sc_curchan.channel);
14         sc->sc_stats.ast_per_calfail++;
15     }
16+ ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
17 
18     ath_hal_process_noisefloor(ah);
19     if (isIQdone == AH_TRUE) {
20@@ -9043,6 +9042,7 @@ ath_set_channel(struct ieee80211com *ic)
21     struct ath_softc *sc = dev->priv;
22 
23     (void) ath_chan_set(sc, ic->ic_curchan);
24+ ic->ic_channoise = ath_hal_get_channel_noise(sc->sc_ah, &(sc->sc_curchan));
25     /*
26      * If we are returning to our bss channel then mark state
27      * so the next recv'd beacon's TSF will be used to sync the
28@@ -9311,6 +9311,7 @@ ath_newstate(struct ieee80211vap *vap, e
29         }
30 
31         ath_hal_process_noisefloor(ah);
32+ ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
33         /*
34          * Reset rssi stats; maybe not the best place...
35          */
36--- a/net80211/ieee80211_wireless.c
37+++ b/net80211/ieee80211_wireless.c
38@@ -4358,6 +4358,7 @@ get_sta_info(void *arg, struct ieee80211
39     si->isi_state = ni->ni_flags;
40     si->isi_authmode = ni->ni_authmode;
41     si->isi_rssi = ic->ic_node_getrssi(ni);
42+ si->isi_noise = ic->ic_channoise;
43     si->isi_capinfo = ni->ni_capinfo;
44     si->isi_athflags = ni->ni_ath_flags;
45     si->isi_erp = ni->ni_erp;
46--- a/net80211/ieee80211_ioctl.h
47+++ b/net80211/ieee80211_ioctl.h
48@@ -311,6 +311,7 @@ struct ieee80211req_sta_info {
49     u_int16_t isi_state; /* state flags */
50     u_int8_t isi_authmode; /* authentication algorithm */
51     u_int8_t isi_rssi;
52+ int8_t isi_noise;
53     u_int16_t isi_capinfo; /* capabilities */
54     u_int8_t isi_athflags; /* Atheros capabilities */
55     u_int8_t isi_erp; /* ERP element */
56

Archive Download this file



interactive