+++ /dev/null
---- a/ath/if_ath.c
-+++ b/ath/if_ath.c
-@@ -8997,6 +8997,7 @@
- ATH_LONG_CALINTERVAL_SECS :
- ATH_SHORT_CALINTERVAL_SECS;
- }
-+ ic->ic_channoise = ath_hal_get_channel_noise(ah, &(sc->sc_curchan));
-
- DPRINTF(sc, ATH_DEBUG_CALIBRATE, "Channel %u [flags=%04x] -- IQ %s.\n",
- sc->sc_curchan.channel, sc->sc_curchan.channelFlags,
-@@ -9052,6 +9053,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
---- a/net80211/ieee80211_wireless.c
-+++ b/net80211/ieee80211_wireless.c
-@@ -4396,6 +4396,7 @@
- si->isi_state = ni->ni_flags;
- si->isi_authmode = ni->ni_authmode;
- si->isi_rssi = ic->ic_node_getrssi(ni);
-+ si->isi_noise = ic->ic_channoise;
- si->isi_capinfo = ni->ni_capinfo;
- si->isi_athflags = ni->ni_ath_flags;
- si->isi_erp = ni->ni_erp;
---- a/net80211/ieee80211_ioctl.h
-+++ b/net80211/ieee80211_ioctl.h
-@@ -312,6 +312,7 @@
- u_int16_t isi_state; /* state flags */
- u_int8_t isi_authmode; /* authentication algorithm */
- u_int8_t isi_rssi;
-+ int8_t isi_noise;
- u_int16_t isi_capinfo; /* capabilities */
- u_int8_t isi_athflags; /* Atheros capabilities */
- u_int8_t isi_erp; /* ERP element */